From 01a532491b2f5e4fb10e65d478ac9f2136b8127f Mon Sep 17 00:00:00 2001 From: Larry Masinter Date: Thu, 26 Nov 2020 21:21:57 -0800 Subject: [PATCH] reduce options to simplify --- greetfiles/SIMPLE-INIT | 2 +- run-medley | 215 ++++++++++------------------------------- 2 files changed, 51 insertions(+), 166 deletions(-) diff --git a/greetfiles/SIMPLE-INIT b/greetfiles/SIMPLE-INIT index ce56e33b..2cb30a9a 100644 --- a/greetfiles/SIMPLE-INIT +++ b/greetfiles/SIMPLE-INIT @@ -1 +1 @@ -(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP") (FILECREATED "25-Nov-2020 18:29:03" {DSK}larry>ilisp>medley>greetfiles>SIMPLE-INIT.;2 4356 changes to%: (VARS SIMPLE-INITCOMS) (FNS shell FIXVERSION) (TEMPLATES WITHOUT.PAGEHOLD) previous date%: "24-Nov-2020 10:20:03" {DSK}larry>SIMPLE-INIT.;1) (PRETTYCOMPRINT SIMPLE-INITCOMS) (RPAQQ SIMPLE-INITCOMS [[VARS (MEDLEYDIR (UNIX-GETENV 'MEDLEYDIR] (VARS (LISPUSERSDIRECTORIES (LIST (CONCAT MEDLEYDIR "/lispusers") (CONCAT MEDLEYDIR "/library") (CONCAT MEDLEYDIR "/internal/library"))) (LISPSOURCEDIRECTORIES (LIST (CONCAT MEDLEYDIR "/sources"))) (IRM.HOST&DIR (CONCAT MEDLEYDIR "/docs/dinfo/")) (DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES))) [VARS (LOGINHOST/DIR (OR (UNIX-GETENV "LOGINHOST/DIR") "{DSK}")) (USERGREETFILES (LET ((BASE (CONCAT LOGINHOST/DIR "/INIT"))) (LIST (CONCAT BASE ".LCOM") (CONCAT BASE ".DFASL") BASE] [VARS (DISPLAYFONTDIRECTORIES (LIST (CONCAT MEDLEYDIR "/fonts/dispplayfonts") (CONCAT MEDLEYDIR "/fonts/altofonts"))) (INTERPRESSFONTDIRECTORIES (LIST (CONCAT MEDLEYDIR "/fonts/ipfonts"))) (POSTSCRIPTFONTDIRECTORIES (LIST (CONCAT MEDLEYDIR "/fonts/postscriptfonts"] [P (KEYACTION 'LOCK '(LOCKTOGGLE . IGNORE] (COMMANDS cd pwd) (FNS shell) [P (CL:WHEN (GETD 'XCL::ADD-WHERE-IS-DATABASE) (XCL::ADD-WHERE-IS-DATABASE (CONCAT MEDLEYDIR "/loadups/WHEREIS.HASH")) (XCL::ADD-WHERE-IS-DATABASE (CONCAT MEDLEYDIR "/loadups/system.hash")))] (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA shell) (NLAML) (LAMA]) (RPAQ MEDLEYDIR (UNIX-GETENV 'MEDLEYDIR)) (RPAQ LISPUSERSDIRECTORIES (LIST (CONCAT MEDLEYDIR "/lispusers") (CONCAT MEDLEYDIR "/library") (CONCAT MEDLEYDIR "/internal/library"))) (RPAQ LISPSOURCEDIRECTORIES (LIST (CONCAT MEDLEYDIR "/sources"))) (RPAQ IRM.HOST&DIR (CONCAT MEDLEYDIR "/docs/dinfo/")) (RPAQ DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES)) (RPAQ LOGINHOST/DIR (OR (UNIX-GETENV "LOGINHOST/DIR") "{DSK}")) (RPAQ USERGREETFILES (LET ((BASE (CONCAT LOGINHOST/DIR "/INIT"))) (LIST (CONCAT BASE ".LCOM") (CONCAT BASE ".DFASL") BASE))) (RPAQ DISPLAYFONTDIRECTORIES (LIST (CONCAT MEDLEYDIR "/fonts/dispplayfonts") (CONCAT MEDLEYDIR "/fonts/altofonts"))) (RPAQ INTERPRESSFONTDIRECTORIES (LIST (CONCAT MEDLEYDIR "/fonts/ipfonts"))) (RPAQ POSTSCRIPTFONTDIRECTORIES (LIST (CONCAT MEDLEYDIR "/fonts/postscriptfonts"))) (KEYACTION 'LOCK '(LOCKTOGGLE . IGNORE)) (DEFCOMMAND cd (DIR) (/CNDIR DIR)) (DEFCOMMAND pwd NIL (DIRECTORYNAME T)) (DEFINEQ (shell [NLAMBDA LINE (* ;  "Edited 7-Sep-2020 13:28 by rmk:") [SETQ LINE (CONCATLIST (for X in LINE join (LIST X " "] (CL:WITH-OPEN-FILE (STREAM "{NODIRCORE}shell-dribble.txt" :DIRECTION :IO) (ShellCommand LINE STREAM) (SETFILEPTR STREAM 0) (until (EOFP STREAM) collect (CL:READ-LINE STREAM :EOF-ERROR-P NIL :EOF-VALUE NIL]) ) (CL:WHEN (GETD 'XCL::ADD-WHERE-IS-DATABASE) (XCL::ADD-WHERE-IS-DATABASE (CONCAT MEDLEYDIR "/loadups/WHEREIS.HASH")) (XCL::ADD-WHERE-IS-DATABASE (CONCAT MEDLEYDIR "/loadups/system.hash"))) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDTOVAR NLAMA shell) (ADDTOVAR NLAML ) (ADDTOVAR LAMA ) ) (DECLARE%: DONTCOPY (FILEMAP (NIL (3482 3998 (shell 3492 . 3996))))) STOP \ No newline at end of file +(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP") (FILECREATED "26-Nov-2020 16:25:44" {DSK}larry>ilisp>medley>greetfiles>SIMPLE-INIT.;7 5667 changes to%: (VARS SIMPLE-INITCOMS) (FNS MEDLEYDIR shell FIXVERSION) (TEMPLATES WITHOUT.PAGEHOLD) previous date%: "26-Nov-2020 11:19:28" {DSK}larry>ilisp>medley>greetfiles>SIMPLE-INIT.;5 ) (PRETTYCOMPRINT SIMPLE-INITCOMS) (RPAQQ SIMPLE-INITCOMS [(FNS MEDLEYDIR INTERLISPMODE) [VARS (MEDLEYDIR (DIRECTORYNAME (OR (UNIX-GETENV "MEDLEYDIR") (DIRECTORYNAME] (VARS (LISPUSERSDIRECTORIES (LIST (MEDLEYDIR "lispusers") (MEDLEYDIR "library") (MEDLEYDIR "internal/library"))) (LISPSOURCEDIRECTORIES (LIST (MEDLEYDIR "sources"))) (IRM.HOST&DIR (MEDLEYDIR "/docs/dinfo/")) (DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES))) [VARS (LOGINHOST/DIR (DIRECTORYNAME (UNIX-GETENV "LOGINDIR")) (USERGREETFILES (LET ((BASE (CONCAT LOGINHOST/DIR "INIT"))) (LIST (CONCAT BASE ".LCOM") (CONCAT BASE ".DFASL") BASE] [VARS (DISPLAYFONTDIRECTORIES (LIST (MEDLEYDIR "/fonts/displayfonts/") (MEDLEYDIR "/fonts/altofonts/"))) (INTERPRESSFONTDIRECTORIES (LIST (MEDLEYDIR "/fonts/ipfonts/"))) (POSTSCRIPTFONTDIRECTORIES (LIST (MEDLEYDIR "/fonts/postscriptfonts/"] [P (KEYACTION 'LOCK '(LOCKTOGGLE . IGNORE] (COMMANDS cd pwd) (FNS shell) [P (CL:WHEN (GETD 'XCL::ADD-WHERE-IS-DATABASE) (XCL::ADD-WHERE-IS-DATABASE (CONCAT (MEDLEYDIR "loadups") "/WHEREIS.HASH")) (XCL::ADD-WHERE-IS-DATABASE (CONCAT (MEDLEYDIR "loadups") "system.hash")))] (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA shell) (NLAML) (LAMA]) (DEFINEQ (MEDLEYDIR [LAMBDA (STR) (* ; "Edited 26-Nov-2020 15:58 by larry") (DIRECTORYNAME (CONCAT MEDLEYDIR STR]) (INTERLISPMODE [LAMBDA (OLD?) (* N.H.Briggs " 2-Feb-88 14:26") (PROCESSPROP 'EXEC 'PROFILE (XCL:COPY-PROFILE (if OLD? then "OLD-INTERLISP-T" else "INTERLISP"))) (XCL:SET-DEFAULT-EXEC-TYPE (if OLD? then "OLD-INTERLISP-T" else "INTERLISP")) (SETQ *DEFAULT-MAKEFILE-ENVIRONMENT* (LIST :READTABLE (if OLD? then "OLD-INTERLISP-FILE" else "INTERLISP") :PACKAGE "INTERLISP"]) ) (RPAQ MEDLEYDIR (DIRECTORYNAME (OR (UNIX-GETENV "MEDLEYDIR") (DIRECTORYNAME)))) (RPAQ LISPUSERSDIRECTORIES (LIST (MEDLEYDIR "lispusers") (MEDLEYDIR "library") (MEDLEYDIR "internal/library"))) (RPAQ LISPSOURCEDIRECTORIES (LIST (MEDLEYDIR "sources"))) (RPAQ IRM.HOST&DIR (MEDLEYDIR "/docs/dinfo/")) (RPAQ DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES)) (RPAQ LOGINHOST/DIR (DIRECTORYNAME (UNIX-GETENV "LOGINDIR")) (USERGREETFILES (LET ((BASE (CONCAT LOGINHOST/DIR "INIT"))) (LIST (CONCAT BASE ".LCOM") (CONCAT BASE ".DFASL") BASE)))) (RPAQ DISPLAYFONTDIRECTORIES (LIST (MEDLEYDIR "/fonts/displayfonts/") (MEDLEYDIR "/fonts/altofonts/"))) (RPAQ INTERPRESSFONTDIRECTORIES (LIST (MEDLEYDIR "/fonts/ipfonts/"))) (RPAQ POSTSCRIPTFONTDIRECTORIES (LIST (MEDLEYDIR "/fonts/postscriptfonts/"))) (KEYACTION 'LOCK '(LOCKTOGGLE . IGNORE)) (DEFCOMMAND cd (DIR) (/CNDIR DIR)) (DEFCOMMAND pwd NIL (DIRECTORYNAME T)) (DEFINEQ (shell [NLAMBDA LINE (* ;  "Edited 7-Sep-2020 13:28 by rmk:") [SETQ LINE (CONCATLIST (for X in LINE join (LIST X " "] (CL:WITH-OPEN-FILE (STREAM "{NODIRCORE}shell-dribble.txt" :DIRECTION :IO) (ShellCommand LINE STREAM) (SETFILEPTR STREAM 0) (until (EOFP STREAM) collect (CL:READ-LINE STREAM :EOF-ERROR-P NIL :EOF-VALUE NIL]) ) (CL:WHEN (GETD 'XCL::ADD-WHERE-IS-DATABASE) (XCL::ADD-WHERE-IS-DATABASE (CONCAT (MEDLEYDIR "loadups") "/WHEREIS.HASH")) (XCL::ADD-WHERE-IS-DATABASE (CONCAT (MEDLEYDIR "loadups") "system.hash"))) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDTOVAR NLAMA shell) (ADDTOVAR NLAML ) (ADDTOVAR LAMA ) ) (DECLARE%: DONTCOPY (FILEMAP (NIL (2423 3412 (MEDLEYDIR 2433 . 2595) (INTERLISPMODE 2597 . 3410)) (4700 5216 (shell 4710 . 5214))))) STOP \ No newline at end of file diff --git a/run-medley b/run-medley index e3e1e9ac..cab615f9 100755 --- a/run-medley +++ b/run-medley @@ -1,36 +1,32 @@ #!/bin/sh -# + # Run Medley # -# Syntax: run-medley [-nogreet][-xns][-noxns] [-geometry pixelgeometry] -# [-display xdisplay-device] [-screensize pixelgeometry] -# [-raw] [-t xtimeout][-prog executable-program] -# [-vmem savevmemfilename] | -# [-m memorylimit] [-kbd keyboardtype] [-key key] -# [sysoutfilename | -lfg | -lisp | -full | -# -{name of any in the sysouts} ] +# Syntax: run-medley [options] [sysout name] +# Options + +# -nogreet ; just run sysout +# -greet greetfile ; which greetfile to use + +# -geometry pixelgeometry +# -screensize pixelgeometry + +# -display xdisplay-device e.g. :0 + +# -vmem savevmemfilename + +# current limits the size of the screen to +# 65536*32 bits so 1600x1200 will do # -# -xns means leave unix xns running -# -noxns means suppress Lisp xns. - -# LDESRCESYSOUT -# LDESOURCESYSOUT SYSOUT full-file name you want to run - -# LDEDESTSYSOUT SYSOUT name for destination of SAVEVM/LOGOUT - -# LDEKBDTYPE -# type2 -# type3 -# type4 -# jle -# as3000j -# LDEFILETIMEOUT - -export HOSTNAME=`hostname` -export OSVERSION=`uname -r` - +# Environment variables set # Directory variables are accessible from Lisp via UNIX-GETENV +# LDESRCESYSOUT SYSOUT full-file name you want to run +# LDESOURCESYSOUT +# LDEDESTSYSOUT name for destination of SAVEVM/LOGOUT +# MEDLEYDIR + + if [ -z "$MEDLEYDIR" ] ; then export MEDLEYDIR=`pwd`; fi if [ ! -d $MEDLEYDIR/loadups ] ; then echo MEDLEYDIR not found: "$MEDLEYDIR" @@ -45,44 +41,15 @@ if [ -z "$MAIKODIR" ] ; then fi fi -export LDEINIT="$MEDLEYDIR/greetfiles/SIMPLE-INIT" - -mem="-m 256" # Default, has to be set -#geometry="-g 1060x790" -# MBA screensize geometry="-g 1440x900" screensize="-sc 1440x900" + +export LDEINIT="$MEDLEYDIR/greetfiles/SIMPLE-INIT" export LDEKBDTYPE=x -ICONSPEC=" " - -export LDEFILETIMEOUT=60 -export TAKEXNSDOWN=0 -export LDELISPXNS=0 -#default is no lispxns - +export LDEDESTSYSOUT=~/lisp.virtualmem while [ "$#" -ne 0 ]; do case "$1" in - "-m") - mem="-m $2" - shift - ;; - "-xlisp") - export LDESRCESYSOUT="$MEDLEYDIR/loadups/xlisp.sysout" - ;; - "-lisp") - export LDESRCESYSOUT="$MEDLEYDIR/loadups/lisp.sysout" - ;; - "-xfull35") - export LDESRCESYSOUT="$MEDLEYDIR/loadups/xfull35.sysout" - ;; - "-full") - export LDESRCESYSOUT="$MEDLEYDIR/loadups/full.sysout" - ;; - "-lfg" | "-lfg35" | "-xlfg35") - export LDESRCESYSOUT="$LFGPARSERDIR/release/lfg35.sysout" - ICONSPEC="-iconbitmap $LFGPARSERDIR/release/lfg.xbm -icontitle Xerox" - ;; "-nogreet") export LDEINIT="" ;; @@ -90,22 +57,11 @@ while [ "$#" -ne 0 ]; do export LDEINIT="$2" shift ;; - "-xns") - export TAKEXNSDOWN=1 - export LDELISPXNS=1 - ;; - "-noxns") - export TAKEXNSDOWN=0 - export LDELISPXNS=0 - ;; - "-raw") - unset DISPLAY - ;; "-geometry") geometry="-g $2" shift ;; - "-screensize") + "-screensize") screensize="-sc $2" shift ;; @@ -113,113 +69,42 @@ while [ "$#" -ne 0 ]; do export DISPLAY=$2 shift ;; - "-t") - xtimeout=$2 - shift - ;; - "-prog") - progparam=$2 - shift - ;; - "-vmem") - export LDEDESTSYSOUT=$2 - shift - ;; - "-kbd") - export LDEKBDTYPE=$2 - shift - ;; + "-vmem") + LDEDESTSYSOUT=$2 + shift + ;; + "-"*) + echo unrecognized option "$1" + exit 1 + ;; *) - # anything else is a public sysout name - case "$1" in - "-"*) - name=`expr substr $1 2 999` - export LDESRCESYSOUT="$MEDLEYDIR/loadups/${name}.sysout" - ;; - *) # not an option so must be a sysout name - export LDESRCESYSOUT=$1 ;; - esac - ;; + # not an option so must be a sysout name + export LDESRCESYSOUT=$1 + ;; esac shift done -if [ -z "$LDEDESTSYSOUT" ] ; then - if [ -f /$HOSTNAME/$LOGNAME/lisp.virtualmem ]; then - export LDEDESTSYSOUT=/$HOSTNAME/$LOGNAME/lisp.virtualmem - elif [ -f ~/lisp.virtualmem ]; then - export LDEDESTSYSOUT=~/lisp.virtualmem - elif [ -d /$HOSTNAME/$LOGNAME ]; then - export LDEDESTSYSOUT=/$HOSTNAME/$LOGNAME/lisp.virtualmem - fi -fi - if [ -z "$LDESRCESYSOUT" ] ; then - export LDESRCESYSOUT="$LDEDESTSYSOUT" + if [ -f "$LDEDESTSYSOUT" ] ; then + export LDESRCESYSOUT="$LDEDESTSYSOUT" + fi +else + export LDESRCSYSOUT="$MEDLEYDIR/loadups/xfull35.sysout" ; fi -# if [ ! -z "$LDEKBDTYPE" ] ; then -# # switch (`/usr/bin/hostinfo keyboardtype`) -# # endsw -# fi -echo "keyboard type is " $LDEKBDTYPE - export INMEDLEY=1 echo "sysout is " $LDESRCESYSOUT -#version = `medley-lisp-version $LDESRCESYSOUT` -version="35010" - -if [ "$LDELISPXNS" -ne "0" ] ; then - prog="ldeether" -else - prog="lde" - echo "running without xns protocols" -fi -case "$version" in - "35000") - version="3.5" - ;; - "35010") - version="3.501" - ;; - *) - version="3.5" - ;; -esac -echo "using emulator version $version" - -case "$version" in - "3.5"|"3.501") - - export PATH=.:"$PATH" - old_wd=`pwd` - cd "$MAIKODIR"/bin - export PATH=$MAIKODIR/`osversion`.`machinetype`:"$PATH" - cd $old_wd - - # if ${?DISPLAY} then # we are running under X - $prog $mem $geometry $screensize $ICONSPEC - # else $prog $mem - # endif - ;; - - *) echo HMM - -esac - -# -# Now we are done, so clean up after ourselves -# -cleanup: - -# if ${?DISPLAY} then -# # do X cleanup -# else -# # reset -# endif +prog="lde" +oldpath="$PATH" +export PATH=.:"$PATH" +cd "$MAIKODIR"/bin +export PATH=$MAIKODIR/`osversion`.`machinetype`:"$oldpath" +cd $old_wd +$prog $geometry $screensize -t "Medley Interlisp @ https://Interlisp.org"