1
0
mirror of synced 2026-01-13 15:37:38 +00:00

Change default EOL to LF on UFS (#312)

UFS changes the the default in \UFSeol to LF.EOLC.  LLREAD changes \rprint2 to convert EOL to LF if escaped in a string.  NSPROTECTION eliminates literal EOL
This commit is contained in:
rmkaplan 2021-04-22 21:10:48 -07:00 committed by GitHub
parent f0b9ce3dae
commit 21c8759084
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 277 additions and 206 deletions

View File

@ -1,16 +1,47 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED " 7-Sep-89 12:31:44" "{piglet/n}<piglet>vanmelle>lispusers>nsprotection;4" 31274
(FILECREATED "21-Apr-2021 11:56:06" 
{DSK}<Users>kaplan>Local>medley3.5>git-medley>lispusers>NSPROTECTION.;4 32481
changes to%: (FNS NSPROT.SET.MULTIPLE))
changes to%: (FNS NSPROT.LIMITCHARS)
previous date%: " 7-Sep-89 12:31:44"
{DSK}<Users>kaplan>Local>medley3.5>git-medley>lispusers>NSPROTECTION.;2)
(* "
Copyright (c) 1987, 1989 by Xerox Corporation. All rights reserved.
(* ; "
Copyright (c) 1987, 1989, 2021 by Xerox Corporation.
")
(PRETTYCOMPRINT NSPROTECTIONCOMS)
(RPAQQ NSPROTECTIONCOMS ((COMS (* ; "Main window selection handlers") (FNS NSPROTECTION NSPROT.SHOW NSPROT.FETCH.PROTECTION NSPROT.NEW.ENTRY NSPROT.APPLY NSPROT.SET.PROTECTION NSPROT.SET.PROTECTION.ONE NSPROT.SET.MULTIPLE NSPROT.SET.TO.DEFAULT NSPROT.BEGIN.COMMAND) (FNS NSPROT.HANDLE.TYPE NSPROT.RESTORE.TYPE NSPROT.HANDLE.VERIFY NSPROT.RESTORE.VERIFY NSPROT.PARSE.FILENAME NSPROT.PARSE.PROTECTIONS NSPROT.STRIP.HOST NSPROT.EXPAND.FULLNAME)) (COMS (* ; "Handle protection submenus") (FNS NSPROT.GET.SUBMENU NSPROT.ADD.SUBMENU NSPROT.REMOVE.SUBMENUS NSPROT.CHANGE.STATE NSPROT.HANDLE.ALL NSPROT.MESSAGE.ALL NSPROT.HANDLE.SUBTYPE NSPROT.SHOW.PROT.VALUE)) (COMS (* ; "utilities") (FNS NSPROT.DIRECTORY.SYNTAXP NSPROT.TOP.LEVELP NSPROT.GET.FONT NSPROT.PROMPT NSPROT.CLEAR.PROMPT NSPROT.LIMITCHARS NSPROT.PAGEFULLFN NSPROT.ICONFN)) (INITVARS NSPROT.PLAIN.FONT NSPROT.BOLD.FONT) (VARS NSPROT.ICON) (GLOBALVARS NSPROT.PLAIN.FONT NSPROT.BOLD.FONT \NSFILING.ATTRIBUTES NSPROT.ICON \DEFAULTTTYDISPLAYSTREAM) (LOCALVARS . T) (COMS (DECLARE%: DONTEVAL@LOAD DOCOPY (P (AND (EQ MAKESYSNAME :LYRIC) (FILESLOAD (SYSLOAD) NSRANDOM)))) (FNS ADD.NSPROTECTION) (DECLARE%: DONTEVAL@LOAD DOCOPY (P (ADD.NSPROTECTION)))) (DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA) (NLAML) (LAMA NSPROT.PROMPT)))))
(RPAQQ NSPROTECTIONCOMS
[(COMS (* ; "Main window selection handlers")
(FNS NSPROTECTION NSPROT.SHOW NSPROT.FETCH.PROTECTION NSPROT.NEW.ENTRY NSPROT.APPLY
NSPROT.SET.PROTECTION NSPROT.SET.PROTECTION.ONE NSPROT.SET.MULTIPLE
NSPROT.SET.TO.DEFAULT NSPROT.BEGIN.COMMAND)
(FNS NSPROT.HANDLE.TYPE NSPROT.RESTORE.TYPE NSPROT.HANDLE.VERIFY NSPROT.RESTORE.VERIFY
NSPROT.PARSE.FILENAME NSPROT.PARSE.PROTECTIONS NSPROT.STRIP.HOST
NSPROT.EXPAND.FULLNAME))
(COMS (* ; "Handle protection submenus")
(FNS NSPROT.GET.SUBMENU NSPROT.ADD.SUBMENU NSPROT.REMOVE.SUBMENUS NSPROT.CHANGE.STATE
NSPROT.HANDLE.ALL NSPROT.MESSAGE.ALL NSPROT.HANDLE.SUBTYPE NSPROT.SHOW.PROT.VALUE)
)
(COMS (* ; "utilities")
(FNS NSPROT.DIRECTORY.SYNTAXP NSPROT.TOP.LEVELP NSPROT.GET.FONT NSPROT.PROMPT
NSPROT.CLEAR.PROMPT NSPROT.LIMITCHARS NSPROT.PAGEFULLFN NSPROT.ICONFN))
(INITVARS NSPROT.PLAIN.FONT NSPROT.BOLD.FONT)
(VARS NSPROT.ICON)
(GLOBALVARS NSPROT.PLAIN.FONT NSPROT.BOLD.FONT \NSFILING.ATTRIBUTES NSPROT.ICON
\DEFAULTTTYDISPLAYSTREAM)
(LOCALVARS . T)
[COMS [DECLARE%: DONTEVAL@LOAD DOCOPY (P (AND (EQ MAKESYSNAME :LYRIC)
(FILESLOAD (SYSLOAD)
NSRANDOM]
(FNS ADD.NSPROTECTION)
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (ADD.NSPROTECTION]
(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA)
(NLAML)
(LAMA])
@ -159,8 +190,16 @@ Copyright (c) 1987, 1989 by Xerox Corporation. All rights reserved.
)
(NSPROT.LIMITCHARS
(LAMBDA (ITEM WINDOW CHAR) (* ; "Edited 21-Aug-87 12:00 by bvm:") (SELECTQ CHAR ((%
Â) (FM.SKIPNEXT WINDOW) NIL) T)))
[LAMBDA (ITEM WINDOW CHAR) (* ; "Edited 21-Apr-2021 11:55 by rmk:")
(* ;; "RMK: Got rid of literal %%<CR> in favor of CHARCODE CR, for switch to default LF EOL convention. But compiled file may end up with LF")
(SELECTC CHAR
((LIST (CHARACTER (CHARCODE CR))
'Â)
(FM.SKIPNEXT WINDOW)
NIL)
T])
(NSPROT.PAGEFULLFN
(LAMBDA (PW) (* ; "Edited 2-Aug-89 16:19 by bvm") (* ;; "PAGEFULLFN for prompt window--makes the window a line bigger and allows output to proceed") (SETQ \CURRENTDISPLAYLINE (PROG1 \#DISPLAYLINES (GETPROMPTWINDOW (MAINWINDOW PW) (+ 1 \#DISPLAYLINES)) (* ; "\Currentdisplayline is the line we're on when window fills, origin zero"))))
@ -171,14 +210,17 @@ Copyright (c) 1987, 1989 by Xerox Corporation. All rights reserved.
)
)
(RPAQ? NSPROT.PLAIN.FONT NIL)
(RPAQ? NSPROT.PLAIN.FONT NIL)
(RPAQ? NSPROT.BOLD.FONT NIL)
(RPAQ? NSPROT.BOLD.FONT NIL)
(RPAQQ NSPROT.ICON (#*(80 40)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@AN@@CL@@@@@@@@@@@@@@GOH@CL@@@@@@@@@@@@@@OOL@CL@@@@@@@@@@@@@AOCN@CL@@@@@@@@@@@@@ANAN@CL@@@@@@@@@@@@@CL@O@CL@@@@@@@@@@@@@CL@O@CL@@@@@@@@@@@@@GH@G@CL@@@@@@@@@@@@@GH@GHCL@@@@@@@@@@@@@GH@GHCL@@@@@@@@@@@@@O@@CHCL@@@@@@@@@@@@@O@@CHCLAOOOOOOOOOOOOO@@CHCLCOOOOOOOOOOOOO@@CHCLCOOOOOOOOOOOOO@@CHCLAOOOOOOOOOOOOO@@CHCL@GNGNGN@@@@@@O@@CHCL@GNGNGN@@@@@@O@@CHCL@GNFFGN@@@@@@GH@GHCL@FFFFGN@@@@@@GH@GHCL@FF@@GN@@@@@@GH@G@CL@@@@@FF@@@@@@CL@O@CL@@@@@FF@@@@@@CL@O@CL@@@@@@@@@@@@@ANAN@CL@@@@@@@@@@@@@AOCN@CL@@@@@@@@@@@@@@OOL@CL@@@@@@@@@@@@@@GOH@CL@@@@@@@@@@@@@@CO@@CL@@@@@@@@@@@@@@@L@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@COOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO NIL (4 22 51 14)))
(RPAQQ NSPROT.ICON (#*(80 40)OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@AN@@CL@@@@@@@@@@@@@@GOH@CL@@@@@@@@@@@@@@OOL@CL@@@@@@@@@@@@@AOCN@CL@@@@@@@@@@@@@ANAN@CL@@@@@@@@@@@@@CL@O@CL@@@@@@@@@@@@@CL@O@CL@@@@@@@@@@@@@GH@G@CL@@@@@@@@@@@@@GH@GHCL@@@@@@@@@@@@@GH@GHCL@@@@@@@@@@@@@O@@CHCL@@@@@@@@@@@@@O@@CHCLAOOOOOOOOOOOOO@@CHCLCOOOOOOOOOOOOO@@CHCLCOOOOOOOOOOOOO@@CHCLAOOOOOOOOOOOOO@@CHCL@GNGNGN@@@@@@O@@CHCL@GNGNGN@@@@@@O@@CHCL@GNFFGN@@@@@@GH@GHCL@FFFFGN@@@@@@GH@GHCL@FF@@GN@@@@@@GH@G@CL@@@@@FF@@@@@@CL@O@CL@@@@@FF@@@@@@CL@O@CL@@@@@@@@@@@@@ANAN@CL@@@@@@@@@@@@@AOCN@CL@@@@@@@@@@@@@@OOL@CL@@@@@@@@@@@@@@GOH@CL@@@@@@@@@@@@@@CO@@CL@@@@@@@@@@@@@@@L@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@CL@@@@@@@@@@@@@@@@@@COOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
NIL
(4 22 51 14)))
(DECLARE%: DOEVAL@COMPILE DONTCOPY
(GLOBALVARS NSPROT.PLAIN.FONT NSPROT.BOLD.FONT \NSFILING.ATTRIBUTES NSPROT.ICON \DEFAULTTTYDISPLAYSTREAM)
(GLOBALVARS NSPROT.PLAIN.FONT NSPROT.BOLD.FONT \NSFILING.ATTRIBUTES NSPROT.ICON
\DEFAULTTTYDISPLAYSTREAM)
)
(DECLARE%: DOEVAL@COMPILE DONTCOPY
@ -186,7 +228,9 @@ Copyright (c) 1987, 1989 by Xerox Corporation. All rights reserved.
)
(DECLARE%: DONTEVAL@LOAD DOCOPY
(AND (EQ MAKESYSNAME :LYRIC) (FILESLOAD (SYSLOAD) NSRANDOM))
(AND (EQ MAKESYSNAME :LYRIC)
(FILESLOAD (SYSLOAD)
NSRANDOM))
)
(DEFINEQ
@ -196,30 +240,30 @@ Copyright (c) 1987, 1989 by Xerox Corporation. All rights reserved.
)
(DECLARE%: DONTEVAL@LOAD DOCOPY
(ADD.NSPROTECTION)
(ADD.NSPROTECTION)
)
(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS
(ADDTOVAR NLAMA)
(ADDTOVAR NLAMA )
(ADDTOVAR NLAML)
(ADDTOVAR NLAML )
(ADDTOVAR LAMA NSPROT.PROMPT)
(ADDTOVAR LAMA )
)
(PUTPROPS NSPROTECTION COPYRIGHT ("Xerox Corporation" 1987 1989))
(PUTPROPS NSPROTECTION COPYRIGHT ("Xerox Corporation" 1987 1989 2021))
(DECLARE%: DONTCOPY
(FILEMAP (NIL (1695 14166 (NSPROTECTION 1705 . 4891) (NSPROT.SHOW 4893 . 5411) (
NSPROT.FETCH.PROTECTION 5413 . 8347) (NSPROT.NEW.ENTRY 8349 . 8972) (NSPROT.APPLY 8974 . 9903) (
NSPROT.SET.PROTECTION 9905 . 10481) (NSPROT.SET.PROTECTION.ONE 10483 . 11359) (NSPROT.SET.MULTIPLE
11361 . 12860) (NSPROT.SET.TO.DEFAULT 12862 . 13674) (NSPROT.BEGIN.COMMAND 13676 . 14164)) (14167
21199 (NSPROT.HANDLE.TYPE 14177 . 14477) (NSPROT.RESTORE.TYPE 14479 . 14830) (NSPROT.HANDLE.VERIFY
14832 . 15192) (NSPROT.RESTORE.VERIFY 15194 . 15525) (NSPROT.PARSE.FILENAME 15527 . 17256) (
NSPROT.PARSE.PROTECTIONS 17258 . 19753) (NSPROT.STRIP.HOST 19755 . 20136) (NSPROT.EXPAND.FULLNAME
20138 . 21197)) (21243 25794 (NSPROT.GET.SUBMENU 21253 . 23057) (NSPROT.ADD.SUBMENU 23059 . 23366) (
NSPROT.REMOVE.SUBMENUS 23368 . 23788) (NSPROT.CHANGE.STATE 23790 . 24072) (NSPROT.HANDLE.ALL 24074 .
24316) (NSPROT.MESSAGE.ALL 24318 . 24590) (NSPROT.HANDLE.SUBTYPE 24592 . 25137) (
NSPROT.SHOW.PROT.VALUE 25139 . 25792)) (25821 29042 (NSPROT.DIRECTORY.SYNTAXP 25831 . 26015) (
NSPROT.TOP.LEVELP 26017 . 26179) (NSPROT.GET.FONT 26181 . 26700) (NSPROT.PROMPT 26702 . 27226) (
NSPROT.CLEAR.PROMPT 27228 . 28111) (NSPROT.LIMITCHARS 28113 . 28254) (NSPROT.PAGEFULLFN 28256 . 28616)
(NSPROT.ICONFN 28618 . 29040)) (30249 30998 (ADD.NSPROTECTION 30259 . 30996)))))
(FILEMAP (NIL (2525 14996 (NSPROTECTION 2535 . 5721) (NSPROT.SHOW 5723 . 6241) (
NSPROT.FETCH.PROTECTION 6243 . 9177) (NSPROT.NEW.ENTRY 9179 . 9802) (NSPROT.APPLY 9804 . 10733) (
NSPROT.SET.PROTECTION 10735 . 11311) (NSPROT.SET.PROTECTION.ONE 11313 . 12189) (NSPROT.SET.MULTIPLE
12191 . 13690) (NSPROT.SET.TO.DEFAULT 13692 . 14504) (NSPROT.BEGIN.COMMAND 14506 . 14994)) (14997
22029 (NSPROT.HANDLE.TYPE 15007 . 15307) (NSPROT.RESTORE.TYPE 15309 . 15660) (NSPROT.HANDLE.VERIFY
15662 . 16022) (NSPROT.RESTORE.VERIFY 16024 . 16355) (NSPROT.PARSE.FILENAME 16357 . 18086) (
NSPROT.PARSE.PROTECTIONS 18088 . 20583) (NSPROT.STRIP.HOST 20585 . 20966) (NSPROT.EXPAND.FULLNAME
20968 . 22027)) (22073 26624 (NSPROT.GET.SUBMENU 22083 . 23887) (NSPROT.ADD.SUBMENU 23889 . 24196) (
NSPROT.REMOVE.SUBMENUS 24198 . 24618) (NSPROT.CHANGE.STATE 24620 . 24902) (NSPROT.HANDLE.ALL 24904 .
25146) (NSPROT.MESSAGE.ALL 25148 . 25420) (NSPROT.HANDLE.SUBTYPE 25422 . 25967) (
NSPROT.SHOW.PROT.VALUE 25969 . 26622)) (26651 30154 (NSPROT.DIRECTORY.SYNTAXP 26661 . 26845) (
NSPROT.TOP.LEVELP 26847 . 27009) (NSPROT.GET.FONT 27011 . 27530) (NSPROT.PROMPT 27532 . 28056) (
NSPROT.CLEAR.PROMPT 28058 . 28941) (NSPROT.LIMITCHARS 28943 . 29366) (NSPROT.PAGEFULLFN 29368 . 29728)
(NSPROT.ICONFN 29730 . 30152)) (31446 32195 (ADD.NSPROTECTION 31456 . 32193)))))
STOP

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1,23 +1,25 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED "31-Dec-2000 12:38:40" {DSK}<project>medley3.5>sources>UFS.;2 69364
(FILECREATED "21-Apr-2021 11:36:54" {DSK}<Users>kaplan>Local>medley3.5>git-medley>sources>UFS.;5 69271
changes to%: (VARS UFSCOMS)
changes to%: (FNS \UFSeol)
previous date%: "29-Mar-95 17:50:11" {DSK}<project>medley3.5>sources>UFS.;1)
previous date%: "20-Apr-2021 12:11:36"
{DSK}<Users>kaplan>Local>medley3.5>git-medley>sources>UFS.;4)
(* ; "
Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 2000 by Venue & Xerox Corporation. All rights reserved.
Copyright (c) 1988-1995, 2000, 2021 by Venue & Xerox Corporation.
")
(PRETTYCOMPRINT UFSCOMS)
(RPAQQ UFSCOMS
(RPAQQ UFSCOMS
[(PROP (FILETYPE MAKEFILE-ENVIRONMENT)
UFS)
(DECLARE%: EVAL@COMPILE DONTEVAL@LOAD DONTCOPY (FILES (LOADCOMP)
DIRECTORY FILEIO))
(COMS (* ; "Create FDEV function.")
(INITVARS (\UFS.DEFAULT.EOLC NIL))
(COMS (* ; "Create FDEV function.")
(FNS \UFSCreateDevice \UFS.CREATE.DEVICE \UFSOpenDevice \UFSCloseDevice)
(INITVARS (\UFSdevice)
(\UFStopMonitor (CREATE.MONITORLOCK "UFSTopMonitor")))
@ -25,15 +27,15 @@ Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 2000 by Venue & Xe
(COMS (DECLARE%: DONTCOPY (EXPORT (RECORDS UFSGENFILESTATE)))
(INITRECORDS UFSGENFILESTATE)
(SYSRECORDS UFSGENFILESTATE))
(COMS (* ;
 "UNIX File System's FDEV methods.")
(COMS (* ;
 "UNIX File System's FDEV methods.")
(FNS \UFSOpenFile \UFS.OPENP \UFS.RECOGNIZE.FILE \UFS.DIRECTORY.NAME \UFSCloseFile
\UFSGetFileName \UFSDeleteFile \UFSRenameFile \UFSReadPages \UFSWritePages
\UFSTruncateFile \UFSDirectoryNameP \UFSEventFn \UFSGetFileInfo \UFS.CREATE.PROPS
\UFSSetFileInfo \UFSGenerateFiles \UFS.NEXTFILEFN \UFS.FILEINFOFN \UFS.VALID.PROPP
\UFS.REGISTER.GFS \UFS.UNREGISTER.GFS \UFS.ABORT.DIRECTORY \UFS.ABORT.CL-DIRECTORY
\UFS.CLEANUP.GFS.TABLE))
(COMS (* ; "File Name parsing")
(COMS (* ; "File Name parsing")
(FNS \UFSMakeUnixFormatName \UFSParseNameString \UFSParse-Directory \UFS.PARSE.BODY
\UFS.ADJUST.HOST \UFS.FULLNAME \UFS.ADD.HOST.FIELD \UFS.REMOVE.HOST.FIELD
\UFS.HANDLE.RELATIVEDIRECTORY)
@ -54,22 +56,22 @@ Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 2000 by Venue & Xe
\UFS.DEFAULT.DIRECTORY *DSK-UPPER-CASE-FILE-NAMES* \UFS.GFS.TABLE
*DSK-HOST-NAME* *UFS-HOST-NAME*))
(COMS
(* ;; "Change UNIX Curent Directory")
(* ;; "Change UNIX Curent Directory")
(FNS CHDIR)
(* ;; "To access UNIX special files by like {UNIX}/dev/ttya.")
(* ;; "To access UNIX special files by like {UNIX}/dev/ttya.")
(FNS \DEVICEFILE.EOSERROR)
(* ;; "flush/revalidate unvisible stream, like dribble files.")
(* ;; "flush/revalidate unvisible stream, like dribble files.")
(FNS \UNVISIBLE.PAGED.REVALIDATEFILELST \UNVISIBLE.FLUSH.OPEN.STREAMS)
(* ;; " Error handler")
(* ;; " Error handler")
(FNS \UFSError))
(COMS (* ; "File Type and EOL handling")
(COMS (* ; "File Type and EOL handling")
(FNS \UFSGetFileType \UFSSetFileType \UFSeol)
[DECLARE%: DONTEVAL@LOAD DOCOPY (VARS (DEFAULTFILETYPE 'BINARY)
(DEFAULTFILETYPELIST '((NIL . BINARY)
@ -108,26 +110,28 @@ Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 2000 by Venue & Xe
(VM . BINARY]
(GLOBALVARS DEFAULTFILETYPE DEFAULTFILETYPELIST))
(DECLARE%: EVAL@COMPILE DONTCOPY (COMS * UFSDECLS))
(COMS (* ; "Filetypepatch functions. ")
(COMS (* ; "Filetypepatch functions. ")
(FNS \UFSGetPrintFileType \UFSGetFileTypeConfirm \UFSPrintTypeMenu)
(* ; "for hardcopy")
(* ; "for hardcopy")
(FNS \UFStoOtherCopyMess \UFStoOtherRenameMess)
(* ; "for copyfile,renamefile")
(* ; "for copyfile,renamefile")
(INITVARS (FileTypeConfirmFlg T))
(GLOBALVARS FileTypeMenu FileTypeConfirmFlg))
(DECLARE%: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA)
(NLAML)
(LAMA])
(PUTPROPS UFS FILETYPE :BCOMPL)
(PUTPROPS UFS FILETYPE :BCOMPL)
(PUTPROPS UFS MAKEFILE-ENVIRONMENT (:PACKAGE "INTERLISP" :READTABLE "INTERLISP" :BASE 10))
(PUTPROPS UFS MAKEFILE-ENVIRONMENT (:PACKAGE "INTERLISP" :READTABLE "INTERLISP" :BASE 10))
(DECLARE%: EVAL@COMPILE DONTEVAL@LOAD DONTCOPY
(FILESLOAD (LOADCOMP)
DIRECTORY FILEIO)
)
(RPAQ? \UFS.DEFAULT.EOLC NIL)
(* ; "Create FDEV function.")
@ -154,12 +158,12 @@ Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 2000 by Venue & Xe
(* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE
(DATATYPE UFSGENFILESTATE (
(* ;;
 "Holds the file-directory-generator state for %"Unix%" file system enumeration.")
(* ;;
 "Holds the file-directory-generator state for %"Unix%" file system enumeration.")
(FINFOID FIXP)
(FILEID FIXP) (* ;
 "Current file in list of 1 to TOTALNUM files.")
(FILEID FIXP) (* ;
 "Current file in list of 1 to TOTALNUM files.")
(TOTALNUM FIXP)
DIRECTORY DEV (PROPP FLAG)
THISFILE
@ -171,12 +175,12 @@ Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 2000 by Venue & Xe
(PROTECTION FIXP)
AUTHOR
(AULEN FIXP)
SUBGENERATORS (* ;
"A push-down list of generators for subdirectories. Used to generate to multiple-directory depths.")
CURRENT-DEPTH (* ;
 "Current depth in the directory tree, so we can obey FILING.ENUMERATION.DEPTH")
MAX-DEPTH (* ;
 "Value of FILING.ENUMERATION.DEPTH we were started with, so we can obey it.")
SUBGENERATORS (* ;
"A push-down list of generators for subdirectories. Used to generate to multiple-directory depths.")
CURRENT-DEPTH (* ;
 "Current depth in the directory tree, so we can obey FILING.ENUMERATION.DEPTH")
MAX-DEPTH (* ;
 "Value of FILING.ENUMERATION.DEPTH we were started with, so we can obey it.")
))
)
@ -409,46 +413,65 @@ update the map") (SETQ PAGES (RESTOREMAP STREAM))) (DELETED (* ; "the file disap
(\UFSSetFileType (LAMBDA (FILENAME TYPE) (* ; "Edited 6-Jun-88 13:48 by HH") (LET ((EXTENSION (MKATOM (U-CASE (LISTGET (\UFSParseNameString FILENAME) (QUOTE EXTENSION)))))) (SETQ TYPE (MKATOM (U-CASE TYPE))) (for PAIR in DEFAULTFILETYPELIST bind PAIR finally (RETURN (EQ TYPE (MKATOM (U-CASE DEFAULTFILETYPE)))) do (if (EQUAL EXTENSION (MKATOM (U-CASE (CAR PAIR)))) then (RETURN (EQ TYPE (MKATOM (U-CASE (CDR PAIR))))))))) )
(\UFSeol (LAMBDA (FILENAME TYPE RECOG) (* ; "Edited 27-Feb-89 16:21 by bvm") (if (AND (SETQ TYPE (SELECTQ (CADR TYPE) (TEXT (QUOTE TEXT)) (NIL NIL) (PROGN (* ; "Anything else reduces to binary") (QUOTE BINARY)))) (EQ RECOG (QUOTE NEW)) (NEQ TYPE (\UFSGetFileType FILENAME))) then (* ; "Warn user that TYPE will not be properly inferred when we next read this file") (PRINTOUT PROMPTWINDOW T "Warning: creating " TYPE " file, but name '" (\UFS.PARSE.BODY (\UFSParseNameString FILENAME)) "' does not have a " TYPE " extension.")) (SELECTQ (OR TYPE (\UFSGetFileType FILENAME)) (TEXT LF.EOLC) (PROGN (* ; "BINARY or unknown") CR.EOLC))) )
(\UFSeol
[LAMBDA (FILENAME TYPE RECOG) (* ; "Edited 21-Apr-2021 11:36 by rmk:")
(if (AND [SETQ TYPE (SELECTQ (CADR TYPE)
(TEXT 'TEXT)
(NIL NIL)
(PROGN (* ; "Anything else reduces to binary")
'BINARY]
(EQ RECOG 'NEW)
(NEQ TYPE (\UFSGetFileType FILENAME)))
then (* ;
 "Warn user that TYPE will not be properly inferred when we next read this file")
(PRINTOUT PROMPTWINDOW T "Warning: creating " TYPE " file, but name '"
(\UFS.PARSE.BODY (\UFSParseNameString FILENAME))
"' does not have a " TYPE " extension."))
(SELECTQ (OR TYPE (\UFSGetFileType FILENAME))
(TEXT LF.EOLC)
(PROGN (* ;
 "BINARY or unknown. RMK: Switch default to LF")
(OR \UFS.DEFAULT.EOLC LF.EOLC])
)
(DECLARE%: DONTEVAL@LOAD DOCOPY
(RPAQQ DEFAULTFILETYPE BINARY)
(RPAQQ DEFAULTFILETYPELIST ((NIL . BINARY)
(C . TEXT)
(H . TEXT)
(EL . TEXT)
(IM . TEXT)
(LISP . TEXT)
(LSP . TEXT)
(O . BINARY)
(OUT . BINARY)
(LCOM . BINARY)
(DFASL . BINARY)
(DCOM . BINARY)
(SKETCH . BINARY)
(TEDIT . BINARY)
(TED . BINARY)
(DISPLAYFONT . BINARY)
(AC . BINARY)
(WD . BINARY)
(IP . BINARY)
(INTERPRESS . BINARY)
(PRESS . BINARY)
(PSCFONT . BINARY)
(RST . BINARY)
(BIN . BINARY)
(MAIL . BINARY)
(SYSOUT . BINARY)
(SYSOUT.Z . BINARY)
(TAR . BINARY)
(INDEX . BINARY)
(HASH . BINARY)
(NOTEFILE . BINARY)
(Z . BINARY)
(VIRTUALMEM . BINARY)
(VM . BINARY)))
(RPAQQ DEFAULTFILETYPELIST
((NIL . BINARY)
(C . TEXT)
(H . TEXT)
(EL . TEXT)
(IM . TEXT)
(LISP . TEXT)
(LSP . TEXT)
(O . BINARY)
(OUT . BINARY)
(LCOM . BINARY)
(DFASL . BINARY)
(DCOM . BINARY)
(SKETCH . BINARY)
(TEDIT . BINARY)
(TED . BINARY)
(DISPLAYFONT . BINARY)
(AC . BINARY)
(WD . BINARY)
(IP . BINARY)
(INTERPRESS . BINARY)
(PRESS . BINARY)
(PSCFONT . BINARY)
(RST . BINARY)
(BIN . BINARY)
(MAIL . BINARY)
(SYSOUT . BINARY)
(SYSOUT.Z . BINARY)
(TAR . BINARY)
(INDEX . BINARY)
(HASH . BINARY)
(NOTEFILE . BINARY)
(Z . BINARY)
(VIRTUALMEM . BINARY)
(VM . BINARY)))
)
(DECLARE%: DOEVAL@COMPILE DONTCOPY
@ -456,124 +479,127 @@ update the map") (SETQ PAGES (RESTOREMAP STREAM))) (DELETED (* ; "the file disap
)
(DECLARE%: EVAL@COMPILE DONTCOPY
(RPAQQ UFSDECLS ((MACROS \UFS.FULLNAME.M \UFSGetMonitor \UFS.DEFAULT.DIR \UFS.FILE.RECOGNIZER
\UFS.DIRECTORY.RECOGNIZER DSKP)
(RECORDS UFSSTREAM NAME&ALLPROPS)
(* ;; "File attribute code. For interface between Cfunc and LISPfunc.")
(RPAQQ UFSDECLS
((MACROS \UFS.FULLNAME.M \UFSGetMonitor \UFS.DEFAULT.DIR \UFS.FILE.RECOGNIZER
\UFS.DIRECTORY.RECOGNIZER DSKP)
(RECORDS UFSSTREAM NAME&ALLPROPS)
(* ;; "File attribute code. For interface between Cfunc and LISPfunc.")
(CONSTANTS (ATTR-LENGTH 1)
(ATTR-WDATE 2)
(ATTR-RDATE 3)
(ATTR-CDATE 4)
(ATTR-AUTHOR 5)
(ATTR-PROTECTION 6)
(ATTR-EOL 7)
(ATTR-ALL 8))
(* ;; "File RECOG code. For interface between Cfunc and LISPfunc.")
(CONSTANTS (ATTR-LENGTH 1)
(ATTR-WDATE 2)
(ATTR-RDATE 3)
(ATTR-CDATE 4)
(ATTR-AUTHOR 5)
(ATTR-PROTECTION 6)
(ATTR-EOL 7)
(ATTR-ALL 8))
(* ;; "File RECOG code. For interface between Cfunc and LISPfunc.")
(CONSTANTS (RECOG-OLD 0)
(RECOG-OLDEST 1)
(RECOG-NEW 2)
(RECOG-NEW-OLD 3)
(RECOG-OTHER 4)
(RECOG-NON 5))
(* ;; "File ACCESS code. For interface between Cfunc and LISPfunc.")
(CONSTANTS (RECOG-OLD 0)
(RECOG-OLDEST 1)
(RECOG-NEW 2)
(RECOG-NEW-OLD 3)
(RECOG-OTHER 4)
(RECOG-NON 5))
(* ;; "File ACCESS code. For interface between Cfunc and LISPfunc.")
(CONSTANTS (ACCESS-INPUT 0)
(ACCESS-OUTPUT 1)
(ACCESS-BOTH 2)
(ACCESS-APPEND 3)
(ACCESS-OTHER 4))
(* ;; "\UFSGetFileInfo allocate this size buffer to keep the user name.")
(CONSTANTS (ACCESS-INPUT 0)
(ACCESS-OUTPUT 1)
(ACCESS-BOTH 2)
(ACCESS-APPEND 3)
(ACCESS-OTHER 4))
(* ;; "\UFSGetFileInfo allocate this size buffer to keep the user name.")
(CONSTANTS (MAX-UNAME-LEN 512))
(* ;; "\UFSGetFileName allocate this size buffer to keep the path name.")
(CONSTANTS (MAX-UNAME-LEN 512))
(* ;; "\UFSGetFileName allocate this size buffer to keep the path name.")
(CONSTANTS (MAX-PATHNAME-LEN 256))
(FILES (LOADCOMP)
PMAP)
(* ; "For \devicefile.eoserror")))
(CONSTANTS (MAX-PATHNAME-LEN 256))
(FILES (LOADCOMP)
PMAP)
(* ; "For \devicefile.eoserror")))
(DECLARE%: EVAL@COMPILE
[PUTPROPS \UFS.FULLNAME.M MACRO (LAMBDA (DIR NAME DEV ATOMP)
(DECLARE (GLOBALVARS *DSK-HOST-NAME* *UFS-HOST-NAME*))
(PUTPROPS \UFS.FULLNAME.M MACRO [LAMBDA (DIR NAME DEV ATOMP)
(DECLARE (GLOBALVARS *DSK-HOST-NAME* *UFS-HOST-NAME*))
(* ;; "NAME is a name string returned from UNIX. We turn it into a Lisp %"full file name%". This function is redefinable by code that hacks ufs names.")
(COND
(NAME (* ; "Pass NIL thru transparently")
(COND
[(DSKP DEV)
(SETQ NAME (CONCAT *DSK-HOST-NAME* DIR NAME))
(COND
[*DSK-UPPER-CASE-FILE-NAMES*
(* ;; "DSK code uses *DSK-UPPER-CASE-FILE-NAMES* instead of *UPPER-CASE-FILE-NAMES*. I think the capability of case insensitive file recognition in Medley-S {DSK} device is essentially optional and implemented only to keep the compatibility with D-Machines. Actually the case insensitive file recognition is significantly slower than on the correct case (AR 11074). There is no reasonable way to solve this problem because the underlying UNIX file ysystem is case sensitive. Thus, I introduced the new parameter *DSK-UPPER-CASE-FILE-NAMES* with its default value NIL.")
(* ;; "NAME is a name string returned from UNIX. We turn it into a Lisp %"full file name%". This function is redefinable by code that hacks ufs names.")
(COND
(NAME (* ; "Pass NIL thru transparently")
(COND
(ATOMP (MKATOM (U-CASE NAME)))
(T (U-CASE NAME]
(T (COND
(ATOMP (MKATOM NAME))
(T NAME]
(T (SETQ NAME (CONCAT *UFS-HOST-NAME* DIR NAME))
(COND
(ATOMP (MKATOM NAME))
(T NAME]
[(DSKP DEV)
(SETQ NAME (CONCAT *DSK-HOST-NAME* DIR NAME))
(COND
[*DSK-UPPER-CASE-FILE-NAMES*
(PUTPROPS \UFSGetMonitor MACRO ((DEV)
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK \DSKtopMonitor)
(UNIX \UFStopMonitor)
NIL)))
(* ;; "DSK code uses *DSK-UPPER-CASE-FILE-NAMES* instead of *UPPER-CASE-FILE-NAMES*. I think the capability of case insensitive file recognition in Medley-S {DSK} device is essentially optional and implemented only to keep the compatibility with D-Machines. Actually the case insensitive file recognition is significantly slower than on the correct case (AR 11074). There is no reasonable way to solve this problem because the underlying UNIX file ysystem is case sensitive. Thus, I introduced the new parameter *DSK-UPPER-CASE-FILE-NAMES* with its default value NIL.")
(PUTPROPS \UFS.DEFAULT.DIR MACRO ((DEV)
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK \DSK.DEFAULT.DIRECTORY)
(UNIX \UFS.DEFAULT.DIRECTORY)
NIL)))
(COND
(ATOMP (MKATOM (U-CASE NAME)))
(T (U-CASE NAME]
(T (COND
(ATOMP (MKATOM NAME))
(T NAME]
(T (SETQ NAME (CONCAT *UFS-HOST-NAME* DIR NAME)
)
(COND
(ATOMP (MKATOM NAME))
(T NAME])
[PUTPROPS \UFS.FILE.RECOGNIZER MACRO ((DEV)
(PUTPROPS \UFSGetMonitor MACRO ((DEV)
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK \DSKtopMonitor)
(UNIX \UFStopMonitor)
NIL)))
(* ;;
 "Return a function that will do name recognition for this device")
(PUTPROPS \UFS.DEFAULT.DIR MACRO ((DEV)
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK \DSK.DEFAULT.DIRECTORY)
(UNIX \UFS.DEFAULT.DIRECTORY)
NIL)))
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK (FUNCTION \DSKGetFileName-C))
(UNIX (FUNCTION \UFSGetFileName-C))
(FUNCTION SHOULDNT]
(PUTPROPS \UFS.FILE.RECOGNIZER MACRO ((DEV)
[PUTPROPS \UFS.DIRECTORY.RECOGNIZER MACRO ((DEV)
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK (FUNCTION \DSKDirectoryNameP-C))
(UNIX (FUNCTION \UFSDirectoryNameP-C))
(FUNCTION SHOULDNT]
(* ;;
 "Return a function that will do name recognition for this device")
[PUTPROPS DSKP MACRO ((DEV)
(EQ (fetch (FDEV DEVICENAME) of DEV)
'DSK]
(SELECTQ (fetch (FDEV DEVICENAME) of DEV)
(DSK (FUNCTION \DSKGetFileName-C))
(UNIX (FUNCTION \UFSGetFileName-C))
(FUNCTION SHOULDNT))))
(PUTPROPS \UFS.DIRECTORY.RECOGNIZER MACRO ((DEV)
(SELECTQ (fetch (FDEV DEVICENAME) of
DEV)
(DSK (FUNCTION \DSKDirectoryNameP-C))
(UNIX (FUNCTION \UFSDirectoryNameP-C))
(FUNCTION SHOULDNT))))
(PUTPROPS DSKP MACRO ((DEV)
(EQ (fetch (FDEV DEVICENAME) of DEV)
'DSK)))
)
(DECLARE%: EVAL@COMPILE
(ACCESSFNS UFSSTREAM (
(* ;;
 "Overlay for the STREAM record to allow mnemonic access to stream fields for ufs streams.")
(* ;;
 "Overlay for the STREAM record to allow mnemonic access to stream fields for ufs streams.")
(FILEID (fetch F1 of DATUM)
(REPLACE F1 OF DATUM WITH NEWVALUE))
(* ; "Unix file handle")
(* ; "Unix file handle")
(CDATE (fetch F2 of DATUM)
(REPLACE F2 OF DATUM WITH NEWVALUE))
(* ; "IDate given to openstream")
(* ; "IDate given to openstream")
(UNIXNAME (fetch F5 of DATUM)
(REPLACE F5 OF DATUM WITH NEWVALUE))
(* ;
 "The name by which Unix knows this file")
(* ;
 "The name by which Unix knows this file")
))
(RECORD NAME&ALLPROPS (NAME . ALLPROPS))
@ -747,25 +773,26 @@ update the map") (SETQ PAGES (RESTOREMAP STREAM))) (DELETED (* ; "the file disap
(ADDTOVAR LAMA )
)
(PUTPROPS UFS COPYRIGHT ("Venue & Xerox Corporation" 1988 1989 1990 1991 1992 1993 1994 1995 2000))
(PUTPROPS UFS COPYRIGHT ("Venue & Xerox Corporation" 1988 1989 1990 1991 1992 1993 1994 1995 2000 2021
))
(DECLARE%: DONTCOPY
(FILEMAP (NIL (8170 9723 (\UFSCreateDevice 8180 . 8545) (\UFS.CREATE.DEVICE 8547 . 9403) (
\UFSOpenDevice 9405 . 9582) (\UFSCloseDevice 9584 . 9721)) (13884 41794 (\UFSOpenFile 13894 . 17188) (
\UFS.OPENP 17190 . 17687) (\UFS.RECOGNIZE.FILE 17689 . 18442) (\UFS.DIRECTORY.NAME 18444 . 19187) (
\UFSCloseFile 19189 . 20165) (\UFSGetFileName 20167 . 20366) (\UFSDeleteFile 20368 . 20908) (
\UFSRenameFile 20910 . 22075) (\UFSReadPages 22077 . 23212) (\UFSWritePages 23214 . 24434) (
\UFSTruncateFile 24436 . 25933) (\UFSDirectoryNameP 25935 . 26989) (\UFSEventFn 26991 . 27653) (
\UFSGetFileInfo 27655 . 29937) (\UFS.CREATE.PROPS 29939 . 30292) (\UFSSetFileInfo 30294 . 31523) (
\UFSGenerateFiles 31525 . 34237) (\UFS.NEXTFILEFN 34239 . 38382) (\UFS.FILEINFOFN 38384 . 39833) (
\UFS.VALID.PROPP 39835 . 40127) (\UFS.REGISTER.GFS 40129 . 40384) (\UFS.UNREGISTER.GFS 40386 . 40969)
(\UFS.ABORT.DIRECTORY 40971 . 41319) (\UFS.ABORT.CL-DIRECTORY 41321 . 41608) (\UFS.CLEANUP.GFS.TABLE
41610 . 41792)) (41829 48513 (\UFSMakeUnixFormatName 41839 . 42860) (\UFSParseNameString 42862 . 43236
) (\UFSParse-Directory 43238 . 43779) (\UFS.PARSE.BODY 43781 . 44326) (\UFS.ADJUST.HOST 44328 . 44487)
(\UFS.FULLNAME 44489 . 45697) (\UFS.ADD.HOST.FIELD 45699 . 46059) (\UFS.REMOVE.HOST.FIELD 46061 .
47731) (\UFS.HANDLE.RELATIVEDIRECTORY 47733 . 48511)) (49329 49942 (CHDIR 49339 . 49940)) (50014 51000
(\DEVICEFILE.EOSERROR 50024 . 50998)) (51073 52310 (\UNVISIBLE.PAGED.REVALIDATEFILELST 51083 . 51928)
(\UNVISIBLE.FLUSH.OPEN.STREAMS 51930 . 52308)) (52343 53969 (\UFSError 52353 . 53967)) (54013 55697 (
\UFSGetFileType 54023 . 54624) (\UFSSetFileType 54626 . 55055) (\UFSeol 55057 . 55695)) (66049 67173 (
\UFSGetPrintFileType 66059 . 66471) (\UFSGetFileTypeConfirm 66473 . 66921) (\UFSPrintTypeMenu 66923 .
67171)) (67203 68951 (\UFStoOtherCopyMess 67213 . 68204) (\UFStoOtherRenameMess 68206 . 68949)))))
(FILEMAP (NIL (8248 9801 (\UFSCreateDevice 8258 . 8623) (\UFS.CREATE.DEVICE 8625 . 9481) (
\UFSOpenDevice 9483 . 9660) (\UFSCloseDevice 9662 . 9799)) (13962 41872 (\UFSOpenFile 13972 . 17266) (
\UFS.OPENP 17268 . 17765) (\UFS.RECOGNIZE.FILE 17767 . 18520) (\UFS.DIRECTORY.NAME 18522 . 19265) (
\UFSCloseFile 19267 . 20243) (\UFSGetFileName 20245 . 20444) (\UFSDeleteFile 20446 . 20986) (
\UFSRenameFile 20988 . 22153) (\UFSReadPages 22155 . 23290) (\UFSWritePages 23292 . 24512) (
\UFSTruncateFile 24514 . 26011) (\UFSDirectoryNameP 26013 . 27067) (\UFSEventFn 27069 . 27731) (
\UFSGetFileInfo 27733 . 30015) (\UFS.CREATE.PROPS 30017 . 30370) (\UFSSetFileInfo 30372 . 31601) (
\UFSGenerateFiles 31603 . 34315) (\UFS.NEXTFILEFN 34317 . 38460) (\UFS.FILEINFOFN 38462 . 39911) (
\UFS.VALID.PROPP 39913 . 40205) (\UFS.REGISTER.GFS 40207 . 40462) (\UFS.UNREGISTER.GFS 40464 . 41047)
(\UFS.ABORT.DIRECTORY 41049 . 41397) (\UFS.ABORT.CL-DIRECTORY 41399 . 41686) (\UFS.CLEANUP.GFS.TABLE
41688 . 41870)) (41907 48591 (\UFSMakeUnixFormatName 41917 . 42938) (\UFSParseNameString 42940 . 43314
) (\UFSParse-Directory 43316 . 43857) (\UFS.PARSE.BODY 43859 . 44404) (\UFS.ADJUST.HOST 44406 . 44565)
(\UFS.FULLNAME 44567 . 45775) (\UFS.ADD.HOST.FIELD 45777 . 46137) (\UFS.REMOVE.HOST.FIELD 46139 .
47809) (\UFS.HANDLE.RELATIVEDIRECTORY 47811 . 48589)) (49407 50020 (CHDIR 49417 . 50018)) (50092 51078
(\DEVICEFILE.EOSERROR 50102 . 51076)) (51151 52388 (\UNVISIBLE.PAGED.REVALIDATEFILELST 51161 . 52006)
(\UNVISIBLE.FLUSH.OPEN.STREAMS 52008 . 52386)) (52421 54047 (\UFSError 52431 . 54045)) (54091 56338 (
\UFSGetFileType 54101 . 54702) (\UFSSetFileType 54704 . 55133) (\UFSeol 55135 . 56336)) (65950 67074 (
\UFSGetPrintFileType 65960 . 66372) (\UFSGetFileTypeConfirm 66374 . 66822) (\UFSPrintTypeMenu 66824 .
67072)) (67104 68852 (\UFStoOtherCopyMess 67114 . 68105) (\UFStoOtherRenameMess 68107 . 68850)))))
STOP

Binary file not shown.