diff --git a/doctools/IMTEDIT b/doctools/IMTEDIT
index e5cb3416..31b3417c 100644
--- a/doctools/IMTEDIT
+++ b/doctools/IMTEDIT
@@ -1,20 +1,21 @@
-(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
-(FILECREATED " 8-Dec-91 15:41:54" {DSK}<users>sybalsky>PUBS>IMTEDIT.;2 116642 
+(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-      changes to%:  (FNS TRANSLATE.DUMPOUT DUMP DUMP.HEADERS.FOOTERS DUMP.HRULE CHANGE.FONT 
-                         IM.BOUT.IMAGEOBJ IM.TEDIT.DUMP.COMMANDS IM.TEDIT.DUMP.FOOTNOTES 
-                         MAKE.IM.DOCUMENT PRINT.VRULES.ON.PAGE CREATE.FOLIO.OBJECT GET.FOLIO.STRING)
+(FILECREATED "20-Jul-2022 15:10:53" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>doctools>IMTEDIT.;2 117347 
 
-      previous date%: " 4-Aug-86 11:53:22" {DSK}<users>sybalsky>PUBS>IMTEDIT.;1)
+      :CHANGES-TO (FNS MAKE.IM.DOCUMENT)
+
+      :PREVIOUS-DATE " 8-Dec-91 15:41:54" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>doctools>IMTEDIT.;1)
 
 
 (* ; "
-Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights reserved.
+Copyright (c) 1983-1986, 1991 by Xerox Corporation.
 ")
 
 (PRETTYCOMPRINT IMTEDITCOMS)
 
-(RPAQQ IMTEDITCOMS 
+(RPAQQ IMTEDITCOMS
        ((FNS IM.TEDIT DUMP DUMP.HEADERS.FOOTERS DUMP.HRULE CHANGE.FONT IM.BOUT.IMAGEOBJ 
              IM.TEDIT.DUMP.COMMANDS IM.TEDIT.DUMP.FOOTNOTES IM.TEDIT.DUMP.PARA INDEXX.PARSE.TYPE 
              FORMAT.DEF FORMAT.LISPWORD MAKE.IM.DOCUMENT PRINT.NOTE SEND.INFO)
@@ -493,26 +494,26 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
 
 (MAKE.IM.DOCUMENT
   [LAMBDA (FORM OUTFILE.FLG PAGE.LAYOUT OUTPUT.MESSAGE DEFAULT.PARALOOKS PTRFILENAME)
+                                                             (* ; "Edited 20-Jul-2022 15:10 by rmk")
                                                              (* mjs " 4-Aug-86 10:52")
 
          (* * this function creates an IM output file, in XPS-compatible format.
-       If sets up all of the special variables needed by DUMP, evaluates FORM, and 
-       sets all of the para and font looks)
+         If sets up all of the special variables needed by DUMP, evaluates FORM, and sets 
+         all of the para and font looks)
 
-         (* * If OUTFILE.FLG is NIL, the output file is just sent to the default 
-       printer. If OUTFILE.FLG is T, the outfile textstream is simply returned.
-       If OUTFILE.FLG = anything else, it is taken as a file name to put the press 
-       file which is created <but not printed>.)
+         (* * If OUTFILE.FLG is NIL, the output file is just sent to the default printer.
+         If OUTFILE.FLG is T, the outfile textstream is simply returned.
+         If OUTFILE.FLG = anything else, it is taken as a file name to put the press file 
+         which is created <but not printed>.)
 
-         (* * if PAGE.LAYOUT is non-NIL, it should be the compound page layout to be 
-       used.)
+         (* * if PAGE.LAYOUT is non-NIL, it should be the compound page layout to be used.)
 
          (* * if OUTPUT.MESSAGE is non-NIL, it is printed on the hardcopy output)
 
          (* * PTRFILENAME is the name to be used if an index pointer file is generated 
-       during hardcopy <by printing index objects>)
+         during hardcopy <by printing index objects>)
 
-    (PROG ((IM.OUTFILE (OPENTEXTSTREAM "" NIL NIL NIL (LIST 'IM.INDEX.PTRFILENAME PTRFILENAME)))
+    (PROG ((IM.OUTFILE (OPENTEXTSTREAM NIL NIL NIL NIL (LIST 'IM.INDEX.PTRFILENAME PTRFILENAME)))
            (FONT.STACK (CONS))
            (IM.TEDIT.LAST.PARA.BEGIN 1)
            (IM.TEDIT.LAST.FONT.BEGIN 1)
@@ -523,10 +524,10 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
            (IM.TEDIT.FOOTNOTE.SAVES NIL)
            (IM.TEDIT.SUB.SUPER.BEGIN NIL)
            IM.CHARLOOKS IM.PARALOOKS)
-          (DECLARE (SPECVARS IM.OUTFILE FONT.STACK IM.TEDIT.LAST.PARA.BEGIN 
-                              IM.TEDIT.LAST.FONT.BEGIN IM.TEDIT.PARA.LOOKS IM.TEDIT.LAST.PARA.LOOKS 
-                              IM.TEDIT.FONT IM.TEDIT.CR.FLG IM.TEDIT.FOOTNOTE.SAVES 
-                              IM.TEDIT.SUB.SUPER.BEGIN IM.CHARLOOKS IM.PARALOOKS))
+          (DECLARE (SPECVARS IM.OUTFILE FONT.STACK IM.TEDIT.LAST.PARA.BEGIN IM.TEDIT.LAST.FONT.BEGIN
+                          IM.TEDIT.PARA.LOOKS IM.TEDIT.LAST.PARA.LOOKS IM.TEDIT.FONT IM.TEDIT.CR.FLG
+                          IM.TEDIT.FOOTNOTE.SAVES IM.TEDIT.SUB.SUPER.BEGIN IM.CHARLOOKS IM.PARALOOKS)
+                 )
           (SETQ IM.VRULE.STATE.LIST NIL)
           (DUMP.HEADERS.FOOTERS "  " "  ")
           (DUMPOUT CR CR START.PARA PARALOOKS
@@ -543,8 +544,8 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
              (IM.EVEN.FLG 
 
          (* if you must quarantee that you have an even number of pages for two-sided 
-       copying, dump out a blank page no matter what --
-       it can always be discarded)
+         copying, dump out a blank page no matter what --
+         it can always be discarded)
 
                     (DUMPOUT CR CR START.PARA PARALOOKS
                            `(NEWPAGEBEFORE T QUAD LEFT 1STLEFTMARGIN 0 LEFTMARGIN 0 RIGHTMARGIN %, 
@@ -552,8 +553,8 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
                                    IM.BLANKPAGE.SPECIALY)
                            DUMP.CHARS "[This page intentionally left blank]" CR CR)))
 
-         (* after converting document, make sure that last para is formatted correctly 
-       by changing font, ending current para, and starting new para)
+         (* after converting document, make sure that last para is formatted correctly by 
+         changing font, ending current para, and starting new para)
 
           (DUMPOUT CR CR FONT NIL)
           (DUMP '(START.PARA))
@@ -595,7 +596,7 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
                                                   IM.DRAFT.MESSAGE.BOTTOM.Y]
 
          (* * dump default char and para looks for whole document --
-       and looks that should be different should be specified in the fns)
+         and looks that should be different should be specified in the fns)
 
           (TEDIT.LOOKS IM.OUTFILE IM.TEXT.FONT 1 (GETFILEINFO IM.OUTFILE 'LENGTH))
           (TEDIT.PARALOOKS IM.OUTFILE
@@ -608,26 +609,24 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
                  (GETFILEINFO IM.OUTFILE 'LENGTH))
 
          (* must reverse list because the order of some char and paragraph looks is 
-       significant << earlier looks are overridden by later ones >>)
+         significant << earlier looks are overridden by later ones >>)
 
           (SETQ IM.CHARLOOKS (DREVERSE IM.CHARLOOKS))
           (SETQ IM.PARALOOKS (DREVERSE IM.PARALOOKS))
-          [while IM.CHARLOOKS bind (LOOKS CH# LEN)
-             do (BLOCK)
-                   (SETQ LEN (pop IM.CHARLOOKS))
-                   (SETQ CH# (ADD1 (pop IM.CHARLOOKS)))
-                   (SETQ LOOKS (pop IM.CHARLOOKS))
-                   (COND
-                      ((IGREATERP LEN 0)
-                       (TEDIT.LOOKS IM.OUTFILE LOOKS CH# LEN]
-          [while IM.PARALOOKS bind (LOOKS CH# LEN)
-             do (BLOCK)
-                   (SETQ LEN (pop IM.PARALOOKS))
-                   (SETQ CH# (ADD1 (pop IM.PARALOOKS)))
-                   (SETQ LOOKS (pop IM.PARALOOKS))
-                   (COND
-                      ((IGREATERP LEN 0)
-                       (TEDIT.PARALOOKS IM.OUTFILE LOOKS CH# LEN]
+          [while IM.CHARLOOKS bind (LOOKS CH# LEN) do (BLOCK)
+                                                      (SETQ LEN (pop IM.CHARLOOKS))
+                                                      (SETQ CH# (ADD1 (pop IM.CHARLOOKS)))
+                                                      (SETQ LOOKS (pop IM.CHARLOOKS))
+                                                      (COND
+                                                         ((IGREATERP LEN 0)
+                                                          (TEDIT.LOOKS IM.OUTFILE LOOKS CH# LEN]
+          [while IM.PARALOOKS bind (LOOKS CH# LEN) do (BLOCK)
+                                                      (SETQ LEN (pop IM.PARALOOKS))
+                                                      (SETQ CH# (ADD1 (pop IM.PARALOOKS)))
+                                                      (SETQ LOOKS (pop IM.PARALOOKS))
+                                                      (COND
+                                                         ((IGREATERP LEN 0)
+                                                          (TEDIT.PARALOOKS IM.OUTFILE LOOKS CH# LEN]
           (COND
              ((NULL OUTFILE.FLG)
               (TEDIT.HARDCOPY IM.OUTFILE NIL NIL OUTPUT.MESSAGE)
@@ -1648,7 +1647,7 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
                  (SAVE.DUMPOUT FONT LISP DUMP.CHARS (GET.ARG.SAV NAME])
 )
 
-(RPAQQ TO.NAME.LIST 
+(RPAQQ TO.NAME.LIST
        (ANONARG ARG ATOM BIGLISPCODE BRACKET BREAKCOM BULLET CHAPTER COMMENT CRSYMBOL DEF EDITCOM 
               ELLIPSIS EMDASH ENDASH FIGURE FIGUREREF FILECOM FN FNDEF FOOT GE INCLUDE INDEX INDEXX 
               IT LABELEDLIST LBRACKET LE LISP LISPCODE MAC MACDEF NE NOTE NUMBEREDLIST PACOM PAGEREF
@@ -1656,409 +1655,409 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
               UNNUMBEREDLIST VAR VARDEF))
 
 (RPAQQ TO.SYNONYM.LIST ((CR CRSYMBOL)
-                            (EMPHASIZE IT)
-                            (FOOTNOTE FOOT)
-                            (ITALICS IT)
-                            (LITATOM ATOM)
-                            (UNLABELEDLIST UNNUMBEREDLIST)))
+                        (EMPHASIZE IT)
+                        (FOOTNOTE FOOT)
+                        (ITALICS IT)
+                        (LITATOM ATOM)
+                        (UNLABELEDLIST UNNUMBEREDLIST)))
 
-(RPAQQ TO.NAME.LIST 
+(RPAQQ TO.NAME.LIST
        (ANONARG ARG ATOM BIGLISPCODE BRACKET BREAKCOM BULLET CHAPTER COMMENT CRSYMBOL DEF EDITCOM 
               ELLIPSIS EMDASH ENDASH FIGURE FIGUREREF FILECOM FN FNDEF FOOT GE INCLUDE INDEX INDEXX 
               IT LABELEDLIST LBRACKET LE LISP LISPCODE MAC MACDEF NE NOTE NUMBEREDLIST PACOM PAGEREF
               PI PLUSMINUS PROP PROPDEF RBRACKET RM SECTIONREF SP SUB SUBSEC SUPER TABLE TAG TERM 
               UNNUMBEREDLIST VAR VARDEF))
 
-(PUTPROPS ANONARG TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS ANONARG TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS ARG TO.PROG ARG#TOPROG)
+(PUTPROPS ARG TO.PROG ARG#TOPROG)
 
-(PUTPROPS ATOM TO.PROG LISPWORD#TOPROG)
+(PUTPROPS ATOM TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS BIGLISPCODE TO.PROG BIGLISPCODE#TOPROG)
+(PUTPROPS BIGLISPCODE TO.PROG BIGLISPCODE#TOPROG)
 
-(PUTPROPS BRACKET TO.PROG BRACKET#TOPROG)
+(PUTPROPS BRACKET TO.PROG BRACKET#TOPROG)
 
-(PUTPROPS BREAKCOM TO.PROG LISPWORD#TOPROG)
+(PUTPROPS BREAKCOM TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS BULLET TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS BULLET TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS CHAPTER TO.PROG CHAPTER#TOPROG)
+(PUTPROPS CHAPTER TO.PROG CHAPTER#TOPROG)
 
-(PUTPROPS COMMENT TO.PROG COMMENT#TOPROG)
+(PUTPROPS COMMENT TO.PROG COMMENT#TOPROG)
 
-(PUTPROPS CRSYMBOL TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS CRSYMBOL TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS DEF TO.PROG DEF#TOPROG)
+(PUTPROPS DEF TO.PROG DEF#TOPROG)
 
-(PUTPROPS EDITCOM TO.PROG LISPWORD#TOPROG)
+(PUTPROPS EDITCOM TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS ELLIPSIS TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS ELLIPSIS TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS EMDASH TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS EMDASH TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS ENDASH TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS ENDASH TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS FIGURE TO.PROG FIGURE#TOPROG)
+(PUTPROPS FIGURE TO.PROG FIGURE#TOPROG)
 
-(PUTPROPS FIGUREREF TO.PROG REF#TOPROG)
+(PUTPROPS FIGUREREF TO.PROG REF#TOPROG)
 
-(PUTPROPS FILECOM TO.PROG LISPWORD#TOPROG)
+(PUTPROPS FILECOM TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS FN TO.PROG FN#TOPROG)
+(PUTPROPS FN TO.PROG FN#TOPROG)
 
-(PUTPROPS FNDEF TO.PROG FNDEF#TOPROG)
+(PUTPROPS FNDEF TO.PROG FNDEF#TOPROG)
 
-(PUTPROPS FOOT TO.PROG FOOT#TOPROG)
+(PUTPROPS FOOT TO.PROG FOOT#TOPROG)
 
-(PUTPROPS GE TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS GE TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS INCLUDE TO.PROG INCLUDE#TOPROG)
+(PUTPROPS INCLUDE TO.PROG INCLUDE#TOPROG)
 
-(PUTPROPS INDEX TO.PROG INDEX#TOPROG)
+(PUTPROPS INDEX TO.PROG INDEX#TOPROG)
 
-(PUTPROPS INDEXX TO.PROG INDEXX#TOPROG)
+(PUTPROPS INDEXX TO.PROG INDEXX#TOPROG)
 
-(PUTPROPS IT TO.PROG IT#TOPROG)
+(PUTPROPS IT TO.PROG IT#TOPROG)
 
-(PUTPROPS LABELEDLIST TO.PROG LIST#TOPROG)
+(PUTPROPS LABELEDLIST TO.PROG LIST#TOPROG)
 
-(PUTPROPS LBRACKET TO.PROG LBRACKET#TOPROG)
+(PUTPROPS LBRACKET TO.PROG LBRACKET#TOPROG)
 
-(PUTPROPS LE TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS LE TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS LISP TO.PROG LISP#TOPROG)
+(PUTPROPS LISP TO.PROG LISP#TOPROG)
 
-(PUTPROPS LISPCODE TO.PROG LISPCODE#TOPROG)
+(PUTPROPS LISPCODE TO.PROG LISPCODE#TOPROG)
 
-(PUTPROPS MAC TO.PROG LISPWORD#TOPROG)
+(PUTPROPS MAC TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS MACDEF TO.PROG MACDEF#TOPROG)
+(PUTPROPS MACDEF TO.PROG MACDEF#TOPROG)
 
-(PUTPROPS NE TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS NE TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS NOTE TO.PROG NOTE#TOPROG)
+(PUTPROPS NOTE TO.PROG NOTE#TOPROG)
 
-(PUTPROPS NUMBEREDLIST TO.PROG LIST#TOPROG)
+(PUTPROPS NUMBEREDLIST TO.PROG LIST#TOPROG)
 
-(PUTPROPS PACOM TO.PROG LISPWORD#TOPROG)
+(PUTPROPS PACOM TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS PAGEREF TO.PROG REF#TOPROG)
+(PUTPROPS PAGEREF TO.PROG REF#TOPROG)
 
-(PUTPROPS PI TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS PI TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS PLUSMINUS TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS PLUSMINUS TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS PROP TO.PROG LISPWORD#TOPROG)
+(PUTPROPS PROP TO.PROG LISPWORD#TOPROG)
 
-(PUTPROPS PROPDEF TO.PROG PROPDEF#TOPROG)
+(PUTPROPS PROPDEF TO.PROG PROPDEF#TOPROG)
 
-(PUTPROPS RBRACKET TO.PROG RBRACKET#TOPROG)
+(PUTPROPS RBRACKET TO.PROG RBRACKET#TOPROG)
 
-(PUTPROPS RM TO.PROG RM#TOPROG)
+(PUTPROPS RM TO.PROG RM#TOPROG)
 
-(PUTPROPS SECTIONREF TO.PROG REF#TOPROG)
+(PUTPROPS SECTIONREF TO.PROG REF#TOPROG)
 
-(PUTPROPS SP TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
+(PUTPROPS SP TO.PROG PRINT.SPECIAL.CHARS#TOPROG)
 
-(PUTPROPS SUB TO.PROG SUB#TOPROG)
+(PUTPROPS SUB TO.PROG SUB#TOPROG)
 
-(PUTPROPS SUBSEC TO.PROG SUBSEC#TOPROG)
+(PUTPROPS SUBSEC TO.PROG SUBSEC#TOPROG)
 
-(PUTPROPS SUPER TO.PROG SUPER#TOPROG)
+(PUTPROPS SUPER TO.PROG SUPER#TOPROG)
 
-(PUTPROPS TABLE TO.PROG TABLE#TOPROG)
+(PUTPROPS TABLE TO.PROG TABLE#TOPROG)
 
-(PUTPROPS TAG TO.PROG TAG#TOPROG)
+(PUTPROPS TAG TO.PROG TAG#TOPROG)
 
-(PUTPROPS TERM TO.PROG TERM#TOPROG)
+(PUTPROPS TERM TO.PROG TERM#TOPROG)
 
-(PUTPROPS UNNUMBEREDLIST TO.PROG LIST#TOPROG)
+(PUTPROPS UNNUMBEREDLIST TO.PROG LIST#TOPROG)
 
-(PUTPROPS VAR TO.PROG VAR#TOPROG)
+(PUTPROPS VAR TO.PROG VAR#TOPROG)
 
-(PUTPROPS VARDEF TO.PROG VARDEF#TOPROG)
+(PUTPROPS VARDEF TO.PROG VARDEF#TOPROG)
 
-(PUTPROPS CHAPTER TO.ARGS ((TITLE NUMBER)
-                               TEXT))
-
-(PUTPROPS DEF TO.ARGS ((TYPE NAME PRINTNAME ARGS PARENS NOPARENS)
+(PUTPROPS CHAPTER TO.ARGS ((TITLE NUMBER)
                            TEXT))
 
-(PUTPROPS FIGURE TO.ARGS ((TAG)
-                              (TEXT)
-                              (CAPTION)))
+(PUTPROPS DEF TO.ARGS ((TYPE NAME PRINTNAME ARGS PARENS NOPARENS)
+                       TEXT))
 
-(PUTPROPS FNDEF TO.ARGS (NAME (ARGS)
-                                  (TYPE)
-                                  TEXT))
+(PUTPROPS FIGURE TO.ARGS ((TAG)
+                          (TEXT)
+                          (CAPTION)))
 
-(PUTPROPS INDEXX TO.ARGS ((TYPE NAME INFO TEXT SUBNAME SUBTYPE SUBTEXT SUBSUBNAME SUBSUBTYPE 
-                                    SUBSUBTEXT)))
+(PUTPROPS FNDEF TO.ARGS (NAME (ARGS)
+                              (TYPE)
+                              TEXT))
 
-(PUTPROPS LABELEDLIST TO.ARGS ((LNAME NAME ITEM INDENT MAX UNINDENTED)))
+(PUTPROPS INDEXX TO.ARGS ((TYPE NAME INFO TEXT SUBNAME SUBTYPE SUBTEXT SUBSUBNAME SUBSUBTYPE 
+                                SUBSUBTEXT)))
 
-(PUTPROPS MACDEF TO.ARGS (NAME (ARGS)
-                                   (TYPE)
-                                   TEXT))
+(PUTPROPS LABELEDLIST TO.ARGS ((LNAME NAME ITEM INDENT MAX UNINDENTED)))
 
-(PUTPROPS NUMBEREDLIST TO.ARGS ((ITEM)))
+(PUTPROPS MACDEF TO.ARGS (NAME (ARGS)
+                               (TYPE)
+                               TEXT))
 
-(PUTPROPS PROPDEF TO.ARGS (NAME TEXT))
+(PUTPROPS NUMBEREDLIST TO.ARGS ((ITEM)))
 
-(PUTPROPS SUBSEC TO.ARGS (TITLE TEXT))
+(PUTPROPS PROPDEF TO.ARGS (NAME TEXT))
 
-(PUTPROPS TABLE TO.ARGS ((FIRST NEXT COLUMN UNDERLINE MULTIPAGE HSKIP VSKIP)))
+(PUTPROPS SUBSEC TO.ARGS (TITLE TEXT))
 
-(PUTPROPS UNNUMBEREDLIST TO.ARGS ((ITEM)))
+(PUTPROPS TABLE TO.ARGS ((FIRST NEXT COLUMN UNDERLINE MULTIPAGE HSKIP VSKIP)))
 
-(PUTPROPS VARDEF TO.ARGS (NAME TEXT))
+(PUTPROPS UNNUMBEREDLIST TO.ARGS ((ITEM)))
 
-(PUTPROPS FNDEF TO.ARG.SYNONYMS (FNNAME NAME FNARGS ARGS FNTYPE TYPE))
+(PUTPROPS VARDEF TO.ARGS (NAME TEXT))
 
-(PUTPROPS LABELEDLIST TO.ARG.SYNONYMS (LABEL NAME TEXT ITEM UNINDENT UNINDENTED UNLABELED 
-                                                 UNINDENTED UNLABEL UNINDENTED))
+(PUTPROPS FNDEF TO.ARG.SYNONYMS (FNNAME NAME FNARGS ARGS FNTYPE TYPE))
 
-(PUTPROPS NUMBEREDLIST TO.ARG.SYNONYMS (TEXT ITEM))
+(PUTPROPS LABELEDLIST TO.ARG.SYNONYMS (LABEL NAME TEXT ITEM UNINDENT UNINDENTED UNLABELED UNINDENTED
+                                             UNLABEL UNINDENTED))
 
-(PUTPROPS TABLE TO.ARG.SYNONYMS (COL COLUMN MULTI MULTIPAGE))
+(PUTPROPS NUMBEREDLIST TO.ARG.SYNONYMS (TEXT ITEM))
 
-(PUTPROPS UNNUMBEREDLIST TO.ARG.SYNONYMS (TEXT ITEM))
+(PUTPROPS TABLE TO.ARG.SYNONYMS (COL COLUMN MULTI MULTIPAGE))
 
-(PUTPROPS ANONARG TO.TYPE SIMPLE)
+(PUTPROPS UNNUMBEREDLIST TO.ARG.SYNONYMS (TEXT ITEM))
 
-(PUTPROPS ARG TO.TYPE SIMPLE)
+(PUTPROPS ANONARG TO.TYPE SIMPLE)
 
-(PUTPROPS ATOM TO.TYPE SIMPLE)
+(PUTPROPS ARG TO.TYPE SIMPLE)
 
-(PUTPROPS BIGLISPCODE TO.TYPE NIL)
+(PUTPROPS ATOM TO.TYPE SIMPLE)
 
-(PUTPROPS BRACKET TO.TYPE SIMPLE)
+(PUTPROPS BIGLISPCODE TO.TYPE NIL)
 
-(PUTPROPS BREAKCOM TO.TYPE SIMPLE)
+(PUTPROPS BRACKET TO.TYPE SIMPLE)
 
-(PUTPROPS BULLET TO.TYPE SIMPLE)
+(PUTPROPS BREAKCOM TO.TYPE SIMPLE)
 
-(PUTPROPS CHAPTER TO.TYPE NIL)
+(PUTPROPS BULLET TO.TYPE SIMPLE)
 
-(PUTPROPS COMMENT TO.TYPE SIMPLE)
+(PUTPROPS CHAPTER TO.TYPE NIL)
 
-(PUTPROPS CRSYMBOL TO.TYPE SIMPLE)
+(PUTPROPS COMMENT TO.TYPE SIMPLE)
 
-(PUTPROPS EDITCOM TO.TYPE SIMPLE)
+(PUTPROPS CRSYMBOL TO.TYPE SIMPLE)
 
-(PUTPROPS ELLIPSIS TO.TYPE SIMPLE)
+(PUTPROPS EDITCOM TO.TYPE SIMPLE)
 
-(PUTPROPS EMDASH TO.TYPE SIMPLE)
+(PUTPROPS ELLIPSIS TO.TYPE SIMPLE)
 
-(PUTPROPS ENDASH TO.TYPE SIMPLE)
+(PUTPROPS EMDASH TO.TYPE SIMPLE)
 
-(PUTPROPS FIGURE TO.TYPE NIL)
+(PUTPROPS ENDASH TO.TYPE SIMPLE)
 
-(PUTPROPS FIGUREREF TO.TYPE SIMPLE)
+(PUTPROPS FIGURE TO.TYPE NIL)
 
-(PUTPROPS FILECOM TO.TYPE SIMPLE)
+(PUTPROPS FIGUREREF TO.TYPE SIMPLE)
 
-(PUTPROPS FN TO.TYPE SIMPLE)
+(PUTPROPS FILECOM TO.TYPE SIMPLE)
 
-(PUTPROPS FNDEF TO.TYPE NIL)
+(PUTPROPS FN TO.TYPE SIMPLE)
 
-(PUTPROPS FOOT TO.TYPE SIMPLE)
+(PUTPROPS FNDEF TO.TYPE NIL)
 
-(PUTPROPS GE TO.TYPE SIMPLE)
+(PUTPROPS FOOT TO.TYPE SIMPLE)
 
-(PUTPROPS INCLUDE TO.TYPE SIMPLE)
+(PUTPROPS GE TO.TYPE SIMPLE)
 
-(PUTPROPS INDEX TO.TYPE SIMPLE)
+(PUTPROPS INCLUDE TO.TYPE SIMPLE)
 
-(PUTPROPS INDEXX TO.TYPE SIMPLE)
+(PUTPROPS INDEX TO.TYPE SIMPLE)
 
-(PUTPROPS IT TO.TYPE SIMPLE)
+(PUTPROPS INDEXX TO.TYPE SIMPLE)
 
-(PUTPROPS LABELEDLIST TO.TYPE NIL)
+(PUTPROPS IT TO.TYPE SIMPLE)
 
-(PUTPROPS LBRACKET TO.TYPE SIMPLE)
+(PUTPROPS LABELEDLIST TO.TYPE NIL)
 
-(PUTPROPS LE TO.TYPE SIMPLE)
+(PUTPROPS LBRACKET TO.TYPE SIMPLE)
 
-(PUTPROPS LISP TO.TYPE SIMPLE)
+(PUTPROPS LE TO.TYPE SIMPLE)
 
-(PUTPROPS LISPCODE TO.TYPE NIL)
+(PUTPROPS LISP TO.TYPE SIMPLE)
 
-(PUTPROPS MAC TO.TYPE SIMPLE)
+(PUTPROPS LISPCODE TO.TYPE NIL)
 
-(PUTPROPS MACDEF TO.TYPE NIL)
+(PUTPROPS MAC TO.TYPE SIMPLE)
 
-(PUTPROPS NE TO.TYPE SIMPLE)
+(PUTPROPS MACDEF TO.TYPE NIL)
 
-(PUTPROPS NOTE TO.TYPE SIMPLE)
+(PUTPROPS NE TO.TYPE SIMPLE)
 
-(PUTPROPS NUMBEREDLIST TO.TYPE NIL)
+(PUTPROPS NOTE TO.TYPE SIMPLE)
 
-(PUTPROPS PACOM TO.TYPE SIMPLE)
+(PUTPROPS NUMBEREDLIST TO.TYPE NIL)
 
-(PUTPROPS PAGEREF TO.TYPE SIMPLE)
+(PUTPROPS PACOM TO.TYPE SIMPLE)
 
-(PUTPROPS PI TO.TYPE SIMPLE)
+(PUTPROPS PAGEREF TO.TYPE SIMPLE)
 
-(PUTPROPS PLUSMINUS TO.TYPE SIMPLE)
+(PUTPROPS PI TO.TYPE SIMPLE)
 
-(PUTPROPS PROP TO.TYPE SIMPLE)
+(PUTPROPS PLUSMINUS TO.TYPE SIMPLE)
 
-(PUTPROPS PROPDEF TO.TYPE NIL)
+(PUTPROPS PROP TO.TYPE SIMPLE)
 
-(PUTPROPS RBRACKET TO.TYPE SIMPLE)
+(PUTPROPS PROPDEF TO.TYPE NIL)
 
-(PUTPROPS RM TO.TYPE SIMPLE)
+(PUTPROPS RBRACKET TO.TYPE SIMPLE)
 
-(PUTPROPS SECTIONREF TO.TYPE SIMPLE)
+(PUTPROPS RM TO.TYPE SIMPLE)
 
-(PUTPROPS SP TO.TYPE SIMPLE)
+(PUTPROPS SECTIONREF TO.TYPE SIMPLE)
 
-(PUTPROPS SUB TO.TYPE SIMPLE)
+(PUTPROPS SP TO.TYPE SIMPLE)
 
-(PUTPROPS SUBSEC TO.TYPE NIL)
+(PUTPROPS SUB TO.TYPE SIMPLE)
 
-(PUTPROPS SUPER TO.TYPE SIMPLE)
+(PUTPROPS SUBSEC TO.TYPE NIL)
 
-(PUTPROPS TABLE TO.TYPE NIL)
+(PUTPROPS SUPER TO.TYPE SIMPLE)
 
-(PUTPROPS TAG TO.TYPE SIMPLE)
+(PUTPROPS TABLE TO.TYPE NIL)
 
-(PUTPROPS TERM TO.TYPE SIMPLE)
+(PUTPROPS TAG TO.TYPE SIMPLE)
 
-(PUTPROPS UNNUMBEREDLIST TO.TYPE NIL)
+(PUTPROPS TERM TO.TYPE SIMPLE)
 
-(PUTPROPS VAR TO.TYPE SIMPLE)
+(PUTPROPS UNNUMBEREDLIST TO.TYPE NIL)
 
-(PUTPROPS VARDEF TO.TYPE NIL)
+(PUTPROPS VAR TO.TYPE SIMPLE)
 
-(PUTPROPS ANONARG TO.ARG.TYPE CHARS)
+(PUTPROPS VARDEF TO.TYPE NIL)
 
-(PUTPROPS ARG TO.ARG.TYPE SIMPLE)
+(PUTPROPS ANONARG TO.ARG.TYPE CHARS)
 
-(PUTPROPS ATOM TO.ARG.TYPE SIMPLE)
+(PUTPROPS ARG TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS BIGLISPCODE TO.ARG.TYPE SIMPLE)
+(PUTPROPS ATOM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS BRACKET TO.ARG.TYPE SIMPLE)
+(PUTPROPS BIGLISPCODE TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS BREAKCOM TO.ARG.TYPE SIMPLE)
+(PUTPROPS BRACKET TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS BULLET TO.ARG.TYPE CHARS)
+(PUTPROPS BREAKCOM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS CHAPTER TO.ARG.TYPE (TITLE SIMPLE NUMBER CHARS))
+(PUTPROPS BULLET TO.ARG.TYPE CHARS)
 
-(PUTPROPS COMMENT TO.ARG.TYPE NIL)
+(PUTPROPS CHAPTER TO.ARG.TYPE (TITLE SIMPLE NUMBER CHARS))
 
-(PUTPROPS CRSYMBOL TO.ARG.TYPE CHARS)
+(PUTPROPS COMMENT TO.ARG.TYPE NIL)
 
-(PUTPROPS DEF TO.ARG.TYPE (TYPE CHARS NAME SIMPLE PRINTNAME SIMPLE PARENS CHARS NOPARENS CHARS))
+(PUTPROPS CRSYMBOL TO.ARG.TYPE CHARS)
 
-(PUTPROPS EDITCOM TO.ARG.TYPE SIMPLE)
+(PUTPROPS DEF TO.ARG.TYPE (TYPE CHARS NAME SIMPLE PRINTNAME SIMPLE PARENS CHARS NOPARENS CHARS))
 
-(PUTPROPS ELLIPSIS TO.ARG.TYPE CHARS)
+(PUTPROPS EDITCOM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS EMDASH TO.ARG.TYPE CHARS)
+(PUTPROPS ELLIPSIS TO.ARG.TYPE CHARS)
 
-(PUTPROPS ENDASH TO.ARG.TYPE CHARS)
+(PUTPROPS EMDASH TO.ARG.TYPE CHARS)
 
-(PUTPROPS FIGURE TO.ARG.TYPE (TAG CHARS))
+(PUTPROPS ENDASH TO.ARG.TYPE CHARS)
 
-(PUTPROPS FIGUREREF TO.ARG.TYPE CHARS)
+(PUTPROPS FIGURE TO.ARG.TYPE (TAG CHARS))
 
-(PUTPROPS FILECOM TO.ARG.TYPE SIMPLE)
+(PUTPROPS FIGUREREF TO.ARG.TYPE CHARS)
 
-(PUTPROPS FN TO.ARG.TYPE SIMPLE)
+(PUTPROPS FILECOM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS FNDEF TO.ARG.TYPE (NAME SIMPLE ARGS SIMPLE TYPE CHARS))
+(PUTPROPS FN TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS FOOT TO.ARG.TYPE SIMPLE)
+(PUTPROPS FNDEF TO.ARG.TYPE (NAME SIMPLE ARGS SIMPLE TYPE CHARS))
 
-(PUTPROPS GE TO.ARG.TYPE CHARS)
+(PUTPROPS FOOT TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS INCLUDE TO.ARG.TYPE CHARS)
+(PUTPROPS GE TO.ARG.TYPE CHARS)
 
-(PUTPROPS INDEX TO.ARG.TYPE CHARS)
+(PUTPROPS INCLUDE TO.ARG.TYPE CHARS)
 
-(PUTPROPS INDEXX TO.ARG.TYPE 
-          (TYPE CHARS NAME CHARS INFO CHARS TEXT SIMPLE SUBNAME CHARS SUBTYPE CHARS SUBTEXT SIMPLE 
-                SUBSUBNAME CHARS SUBSUBTYPE CHARS SUBSUBTEXT SIMPLE))
+(PUTPROPS INDEX TO.ARG.TYPE CHARS)
 
-(PUTPROPS IT TO.ARG.TYPE SIMPLE)
+(PUTPROPS INDEXX TO.ARG.TYPE (TYPE CHARS NAME CHARS INFO CHARS TEXT SIMPLE SUBNAME CHARS SUBTYPE 
+                                   CHARS SUBTEXT SIMPLE SUBSUBNAME CHARS SUBSUBTYPE CHARS SUBSUBTEXT
+                                   SIMPLE))
 
-(PUTPROPS LABELEDLIST TO.ARG.TYPE (LNAME SIMPLE NAME SIMPLE INDENT CHARS MAX CHARS))
+(PUTPROPS IT TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS LBRACKET TO.ARG.TYPE CHARS)
+(PUTPROPS LABELEDLIST TO.ARG.TYPE (LNAME SIMPLE NAME SIMPLE INDENT CHARS MAX CHARS))
 
-(PUTPROPS LE TO.ARG.TYPE CHARS)
+(PUTPROPS LBRACKET TO.ARG.TYPE CHARS)
 
-(PUTPROPS LISP TO.ARG.TYPE SIMPLE)
+(PUTPROPS LE TO.ARG.TYPE CHARS)
 
-(PUTPROPS LISPCODE TO.ARG.TYPE SIMPLE)
+(PUTPROPS LISP TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS MAC TO.ARG.TYPE SIMPLE)
+(PUTPROPS LISPCODE TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS MACDEF TO.ARG.TYPE (NAME SIMPLE ARGS SIMPLE TYPE CHARS))
+(PUTPROPS MAC TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS NE TO.ARG.TYPE CHARS)
+(PUTPROPS MACDEF TO.ARG.TYPE (NAME SIMPLE ARGS SIMPLE TYPE CHARS))
 
-(PUTPROPS NOTE TO.ARG.TYPE NIL)
+(PUTPROPS NE TO.ARG.TYPE CHARS)
 
-(PUTPROPS NUMBEREDLIST TO.ARG.TYPE NIL)
+(PUTPROPS NOTE TO.ARG.TYPE NIL)
 
-(PUTPROPS PACOM TO.ARG.TYPE SIMPLE)
+(PUTPROPS NUMBEREDLIST TO.ARG.TYPE NIL)
 
-(PUTPROPS PAGEREF TO.ARG.TYPE CHARS)
+(PUTPROPS PACOM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS PI TO.ARG.TYPE CHARS)
+(PUTPROPS PAGEREF TO.ARG.TYPE CHARS)
 
-(PUTPROPS PLUSMINUS TO.ARG.TYPE CHARS)
+(PUTPROPS PI TO.ARG.TYPE CHARS)
 
-(PUTPROPS PROP TO.ARG.TYPE SIMPLE)
+(PUTPROPS PLUSMINUS TO.ARG.TYPE CHARS)
 
-(PUTPROPS PROPDEF TO.ARG.TYPE (NAME SIMPLE))
+(PUTPROPS PROP TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS RBRACKET TO.ARG.TYPE CHARS)
+(PUTPROPS PROPDEF TO.ARG.TYPE (NAME SIMPLE))
 
-(PUTPROPS RM TO.ARG.TYPE SIMPLE)
+(PUTPROPS RBRACKET TO.ARG.TYPE CHARS)
 
-(PUTPROPS SECTIONREF TO.ARG.TYPE CHARS)
+(PUTPROPS RM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS SP TO.ARG.TYPE CHARS)
+(PUTPROPS SECTIONREF TO.ARG.TYPE CHARS)
 
-(PUTPROPS SUB TO.ARG.TYPE SIMPLE)
+(PUTPROPS SP TO.ARG.TYPE CHARS)
 
-(PUTPROPS SUBSEC TO.ARG.TYPE (TITLE SIMPLE))
+(PUTPROPS SUB TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS SUPER TO.ARG.TYPE SIMPLE)
+(PUTPROPS SUBSEC TO.ARG.TYPE (TITLE SIMPLE))
 
-(PUTPROPS TABLE TO.ARG.TYPE (COLUMN CHARS UNDERLINE CHARS MULTIPAGE CHARS HSKIP CHARS VSKIP CHARS
-                                       ))
+(PUTPROPS SUPER TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS TAG TO.ARG.TYPE CHARS)
+(PUTPROPS TABLE TO.ARG.TYPE (COLUMN CHARS UNDERLINE CHARS MULTIPAGE CHARS HSKIP CHARS VSKIP CHARS))
 
-(PUTPROPS TERM TO.ARG.TYPE SIMPLE)
+(PUTPROPS TAG TO.ARG.TYPE CHARS)
 
-(PUTPROPS UNNUMBEREDLIST TO.ARG.TYPE NIL)
+(PUTPROPS TERM TO.ARG.TYPE SIMPLE)
 
-(PUTPROPS VAR TO.ARG.TYPE SIMPLE)
+(PUTPROPS UNNUMBEREDLIST TO.ARG.TYPE NIL)
 
-(PUTPROPS VARDEF TO.ARG.TYPE (NAME SIMPLE))
+(PUTPROPS VAR TO.ARG.TYPE SIMPLE)
 
-(RPAQ? IM.TEDIT.FONT.DEFS '(NIL (FAMILY MODERN FACE MRR SIZE 10)
-                                    FOOTNOTE
-                                    (FAMILY MODERN FACE MRR SIZE 10)
-                                    NOTE
-                                    (FAMILY MODERN FACE MIR SIZE 8)
-                                    BOLD
-                                    (FAMILY MODERN FACE BRR SIZE 10)
-                                    ITALIC
-                                    (FAMILY MODERN FACE MIR SIZE 10)
-                                    LISP
-                                    (FAMILY MODERN FACE BRR SIZE 10)
-                                    ARG
-                                    (FAMILY MODERN FACE MIR SIZE 10)))
+(PUTPROPS VARDEF TO.ARG.TYPE (NAME SIMPLE))
+
+(RPAQ? IM.TEDIT.FONT.DEFS
+       '(NIL (FAMILY MODERN FACE MRR SIZE 10)
+             FOOTNOTE
+             (FAMILY MODERN FACE MRR SIZE 10)
+             NOTE
+             (FAMILY MODERN FACE MIR SIZE 8)
+             BOLD
+             (FAMILY MODERN FACE BRR SIZE 10)
+             ITALIC
+             (FAMILY MODERN FACE MIR SIZE 10)
+             LISP
+             (FAMILY MODERN FACE BRR SIZE 10)
+             ARG
+             (FAMILY MODERN FACE MIR SIZE 10)))
 
 (RPAQ? IM.CHAPTER.TITLE.FONT '(FAMILY MODERN FACE BRR SIZE 18))
 
@@ -2076,10 +2075,10 @@ Copyright (c) 1983, 1984, 1985, 1986, 1991 by Xerox Corporation.  All rights res
 
 
 
-(* the following variables specify all of the lengths used for possitioning IM text, headers, etc. 
-on the page. All of these are measured with respect to the page *margins* <the region on the page 
-defined by the Tedit margin parameters> or with respect to the page *edges* <the edges of the physical
- page>.)
+(* the following variables specify all of the lengths used for possitioning IM text, headers, etc. on 
+the page. All of these are measured with respect to the page *margins* <the region on the page defined
+ by the Tedit margin parameters> or with respect to the page *edges* <the edges of the physical page>.
+)
 
 
 
@@ -2091,16 +2090,16 @@ come out correctly on your printer.)
 
 
 
-(* indentation of 1st line of definitian header, measured in points from left page margin. Also used
- for indentation of hrule under defn header.)
+(* indentation of 1st line of definitian header, measured in points from left page margin. Also used 
+for indentation of hrule under defn header.)
 
 
 (RPAQ? IM.DEF.TITLE.1STLEFTMARGIN 75)
 
 
 
-(* indentation of 2nd and other overflow lines of definition header, measured in points from left 
-page margin.)
+(* indentation of 2nd and other overflow lines of definition header, measured in points from left page
+ margin.)
 
 
 (RPAQ? IM.DEF.TITLE.LEFTMARGIN 204)
@@ -2198,9 +2197,9 @@ measured in points from the bottom page margin. The Y-pos is always the normal t
 
 
 
-(* Tedit tab setting used for subsection heading text. "(40 . LEFT)" determines the indentation of 
-the title after the subsec number, measured in points from the left page margin. "18" is the tab used 
-if the subsec number is wider than 40 pts.)
+(* Tedit tab setting used for subsection heading text. "(40 . LEFT)" determines the indentation of the
+ title after the subsec number, measured in points from the left page margin. "18" is the tab used if 
+the subsec number is wider than 40 pts.)
 
 
 (RPAQ? IM.SUBSEC.TITLE.TABS '(18 (40 . LEFT)))
@@ -2223,12 +2222,12 @@ right-justifies the label on the left of the center space. "(204 . LEFT)" starts
 
 
 (RPAQ? IM.LABELED.LIST.TABS '(18 (186 . RIGHT)
-                                     (204 . LEFT)))
+                                 (204 . LEFT)))
 
 
 
-(* left, right, top, and bottom margins of the "page region" %, measured in points from the four 
-edges of the page.)
+(* left, right, top, and bottom margins of the "page region" %, measured in points from the four edges
+ of the page.)
 
 
 (RPAQ? IM.PAGE.LEFTMARGIN 58)
@@ -2249,9 +2248,9 @@ chapter title>, measured in points from the top page edge.)
 
 
 
-(* top margin of the page region for the first page of the index, measured in points from the top 
-page edge. Note that in the case of the index, because it uses two columns, the index title is 
-implemented as a Tedit header, instead of as the first paragraph of the document.)
+(* top margin of the page region for the first page of the index, measured in points from the top page
+ edge. Note that in the case of the index, because it uses two columns, the index title is implemented
+ as a Tedit header, instead of as the first paragraph of the document.)
 
 
 (RPAQ? IM.INDEX.PAGE.FIRST.TOPMARGIN 144)
@@ -2286,8 +2285,7 @@ implemented as a Tedit header, instead of as the first paragraph of the document
 
 
 
-(* y-pos of lower-left corner of bottom draft message, measured in points from the bottom page edge.
-)
+(* y-pos of lower-left corner of bottom draft message, measured in points from the bottom page edge.)
 
 
 (RPAQ? IM.DRAFT.MESSAGE.BOTTOM.Y 5)
@@ -2301,8 +2299,8 @@ implemented as a Tedit header, instead of as the first paragraph of the document
 
 
 
-(* x-pos of lower-left corner of both top and bottom draft messages, measured in points from the 
-left page edge.)
+(* x-pos of lower-left corner of both top and bottom draft messages, measured in points from the left 
+page edge.)
 
 
 (RPAQ? IM.DRAFT.MESSAGE.X 200)
@@ -2400,35 +2398,35 @@ left page edge.)
 )
 (DECLARE%: EVAL@COMPILE 
 
-[PUTPROPS IM.HOLD.FOOTNOTES MACRO (X `(PROG NIL
+(PUTPROPS IM.HOLD.FOOTNOTES MACRO [X `(PROG NIL
                                             (PUT.MY.PROP 'PASSFOOT T)
                                         %,@
                                         X   (PUT.MY.PROP 'PASSFOOT NIL)
-                                            (DUMPOUT CR CR DUMP.FOOTNOTES]
+                                            (DUMPOUT CR CR DUMP.FOOTNOTES])
 
-(PUTPROPS DUMPOUT MACRO (X (TRANSLATE.DUMPOUT X)))
+(PUTPROPS DUMPOUT MACRO (X (TRANSLATE.DUMPOUT X)))
 
-(PUTPROPS SAVE.DUMPOUT MACRO (X (TRANSLATE.SAVE.DUMPOUT X)))
+(PUTPROPS SAVE.DUMPOUT MACRO (X (TRANSLATE.SAVE.DUMPOUT X)))
 )
 (PUTPROPS IMTEDIT COPYRIGHT ("Xerox Corporation" 1983 1984 1985 1986 1991))
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (10973 37992 (IM.TEDIT 10983 . 12664) (DUMP 12666 . 14961) (DUMP.HEADERS.FOOTERS 14963
- . 17329) (DUMP.HRULE 17331 . 18482) (CHANGE.FONT 18484 . 19678) (IM.BOUT.IMAGEOBJ 19680 . 20003) (
-IM.TEDIT.DUMP.COMMANDS 20005 . 23558) (IM.TEDIT.DUMP.FOOTNOTES 23560 . 24001) (IM.TEDIT.DUMP.PARA 
-24003 . 24777) (INDEXX.PARSE.TYPE 24779 . 26074) (FORMAT.DEF 26076 . 28207) (FORMAT.LISPWORD 28209 . 
-28360) (MAKE.IM.DOCUMENT 28362 . 36847) (PRINT.NOTE 36849 . 37063) (SEND.INFO 37065 . 37990)) (38101 
-42119 (IM.VRULE.DISPLAYFN 38111 . 38435) (CREATE.VRULE.OBJECT 38437 . 40217) (PRINT.VRULES.ON.PAGE 
-40219 . 42117)) (42277 47032 (IM.FOLIO.DISPLAYFN 42287 . 42965) (IM.FOLIO.SIZEFN 42967 . 43816) (
-CREATE.FOLIO.OBJECT 43818 . 45364) (GET.FOLIO.STRING 45366 . 47030)) (47164 93404 (ARG#TOPROG 47174 . 
-47313) (BIGLISPCODE#TOPROG 47315 . 48551) (BRACKET#TOPROG 48553 . 48717) (CHAPTER#TOPROG 48719 . 51400
-) (COMMENT#TOPROG 51402 . 51954) (DEF#TOPROG 51956 . 55291) (FIGURE#TOPROG 55293 . 56637) (FN#TOPROG 
-56639 . 57036) (FNDEF#TOPROG 57038 . 60930) (FOOT#TOPROG 60932 . 61473) (INCLUDE#TOPROG 61475 . 61790)
- (INDEX#TOPROG 61792 . 62882) (INDEXX#TOPROG 62884 . 64965) (IT#TOPROG 64967 . 65108) (LBRACKET#TOPROG
- 65110 . 65264) (LISP#TOPROG 65266 . 65407) (LISPCODE#TOPROG 65409 . 66528) (LISPWORD#TOPROG 66530 . 
-67270) (LIST#TOPROG 67272 . 71694) (MACDEF#TOPROG 71696 . 72874) (NOTE#TOPROG 72876 . 73556) (
-PRINT.SPECIAL.CHARS#TOPROG 73558 . 74535) (PROPDEF#TOPROG 74537 . 74814) (RBRACKET#TOPROG 74816 . 
-74970) (REF#TOPROG 74972 . 82811) (RM#TOPROG 82813 . 82951) (SUB#TOPROG 82953 . 83101) (SUBSEC#TOPROG 
-83103 . 87606) (SUPER#TOPROG 87608 . 87762) (TABLE#TOPROG 87764 . 91716) (TAG#TOPROG 91718 . 91985) (
-TERM#TOPROG 91987 . 92300) (VAR#TOPROG 92302 . 92705) (VARDEF#TOPROG 92707 . 93402)) (110656 116084 (
-TRANSLATE.DUMPOUT 110666 . 115683) (TRANSLATE.SAVE.DUMPOUT 115685 . 116082)))))
+  (FILEMAP (NIL (10773 38278 (IM.TEDIT 10783 . 12464) (DUMP 12466 . 14761) (DUMP.HEADERS.FOOTERS 14763
+ . 17129) (DUMP.HRULE 17131 . 18282) (CHANGE.FONT 18284 . 19478) (IM.BOUT.IMAGEOBJ 19480 . 19803) (
+IM.TEDIT.DUMP.COMMANDS 19805 . 23358) (IM.TEDIT.DUMP.FOOTNOTES 23360 . 23801) (IM.TEDIT.DUMP.PARA 
+23803 . 24577) (INDEXX.PARSE.TYPE 24579 . 25874) (FORMAT.DEF 25876 . 28007) (FORMAT.LISPWORD 28009 . 
+28160) (MAKE.IM.DOCUMENT 28162 . 37133) (PRINT.NOTE 37135 . 37349) (SEND.INFO 37351 . 38276)) (38387 
+42405 (IM.VRULE.DISPLAYFN 38397 . 38721) (CREATE.VRULE.OBJECT 38723 . 40503) (PRINT.VRULES.ON.PAGE 
+40505 . 42403)) (42563 47318 (IM.FOLIO.DISPLAYFN 42573 . 43251) (IM.FOLIO.SIZEFN 43253 . 44102) (
+CREATE.FOLIO.OBJECT 44104 . 45650) (GET.FOLIO.STRING 45652 . 47316)) (47450 93690 (ARG#TOPROG 47460 . 
+47599) (BIGLISPCODE#TOPROG 47601 . 48837) (BRACKET#TOPROG 48839 . 49003) (CHAPTER#TOPROG 49005 . 51686
+) (COMMENT#TOPROG 51688 . 52240) (DEF#TOPROG 52242 . 55577) (FIGURE#TOPROG 55579 . 56923) (FN#TOPROG 
+56925 . 57322) (FNDEF#TOPROG 57324 . 61216) (FOOT#TOPROG 61218 . 61759) (INCLUDE#TOPROG 61761 . 62076)
+ (INDEX#TOPROG 62078 . 63168) (INDEXX#TOPROG 63170 . 65251) (IT#TOPROG 65253 . 65394) (LBRACKET#TOPROG
+ 65396 . 65550) (LISP#TOPROG 65552 . 65693) (LISPCODE#TOPROG 65695 . 66814) (LISPWORD#TOPROG 66816 . 
+67556) (LIST#TOPROG 67558 . 71980) (MACDEF#TOPROG 71982 . 73160) (NOTE#TOPROG 73162 . 73842) (
+PRINT.SPECIAL.CHARS#TOPROG 73844 . 74821) (PROPDEF#TOPROG 74823 . 75100) (RBRACKET#TOPROG 75102 . 
+75256) (REF#TOPROG 75258 . 83097) (RM#TOPROG 83099 . 83237) (SUB#TOPROG 83239 . 83387) (SUBSEC#TOPROG 
+83389 . 87892) (SUPER#TOPROG 87894 . 88048) (TABLE#TOPROG 88050 . 92002) (TAG#TOPROG 92004 . 92271) (
+TERM#TOPROG 92273 . 92586) (VAR#TOPROG 92588 . 92991) (VARDEF#TOPROG 92993 . 93688)) (111336 116764 (
+TRANSLATE.DUMPOUT 111346 . 116363) (TRANSLATE.SAVE.DUMPOUT 116365 . 116762)))))
 STOP
diff --git a/doctools/IMTEDIT.LCOM b/doctools/IMTEDIT.LCOM
index 1e48a11d..ae61f369 100644
Binary files a/doctools/IMTEDIT.LCOM and b/doctools/IMTEDIT.LCOM differ
diff --git a/library/tedit/TEDIT-FILE b/library/tedit/TEDIT-FILE
index 2dd2a4b2..32288690 100644
--- a/library/tedit/TEDIT-FILE
+++ b/library/tedit/TEDIT-FILE
@@ -1,13 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "14-Jul-2022 21:52:00" 
-{DSK}<users>kaplan>local>medley3.5>working-medley>library>tedit>TEDIT-FILE.;2 232517 
+(FILECREATED "20-Jul-2022 15:06:59" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>TEDIT>TEDIT-FILE.;29 225044 
 
-      :CHANGES-TO (FNS TEDIT.BUILD.PCTB)
-                  (VARS TEDIT-FILECOMS)
+      :CHANGES-TO (FNS \TEDIT.CONVERT.FOREIGN.FORMAT)
 
-      :PREVIOUS-DATE "14-Jul-2022 16:55:44" 
-{DSK}<users>kaplan>local>medley3.5>working-medley>library>tedit>TEDIT-FILE.;1)
+      :PREVIOUS-DATE "20-Jul-2022 11:23:04" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>TEDIT>TEDIT-FILE.;28)
 
 
 (PRETTYCOMPRINT TEDIT-FILECOMS)
@@ -23,8 +22,8 @@
               (FNS TEDIT.BUILD.PCTB \TEDIT.CONVERT.FOREIGN.FORMAT TEDIT.FORMATTEDFILEP TEDIT.GET 
                    TEDIT.PARSE.PAGEFRAMES1 \ARBIN \ATMIN \DWIN \STRINGIN \TEDIT.FORMATTEDP1 
                    \TEDIT.SET.WINDOW TEDIT.GET.PASSWORD)
-              (FNS \TEDIT.READ.FORMATTED.FILE \TEDIT.READ.OLDFORMATTED.FILE 
-                   \TEDIT.READ.UNFORMATTED.FILE \TEDIT.CACHEFILE \TEDIT.UNIQUIFY.ALL))
+              (FNS \TEDIT.READ.FORMATTED.FILE \TEDIT.READ.UNFORMATTED.FILE \TEDIT.CACHEFILE 
+                   \TEDIT.UNIQUIFY.ALL))
         (COMS 
               (* ;; "INCLUDEing a file")
 
@@ -85,7 +84,7 @@
 
 (TEDIT.BUILD.PCTB
   [LAMBDA (TEXT TEXTOBJ START END DEFAULTLOOKS DEFAULTPARALOOKS UNFORMATTED?)
-                                                             (* ; "Edited 14-Jul-2022 10:01 by rmk")
+                                                             (* ; "Edited 19-Jul-2022 10:12 by rmk")
                                                             (* ; "Edited 29-Apr-2021 22:52 by rmk:")
                                                              (* ; "Edited 11-Jun-99 14:37 by rmk:")
                                                              (* ; "Edited 19-Apr-93 13:46 by jds")
@@ -137,8 +136,10 @@
              (SETQ PCCOUNT (\TEDIT.FORMATTEDP1 TEXT END)))
          [SETQ PCTB
           (COND
-             ((type? PIECE TEXT)                             (* ; 
-                              "If this isn't a stream, build a piece table with the one piece in it.")
+             ((type? PIECE TEXT)
+
+              (* ;; "If this isn't a stream, build a piece table containing one piece.")
+
               [COND
                  ((EQ (fetch (PIECE PLEN) of TEXT)
                       0)
@@ -159,20 +160,14 @@
                     (SETQ TEXT
                      (create PIECE
                             PFILE _ TEXT
-                            PFPOS _ (COND
-                                       (START START)
-                                       (T 0))
+                            PFPOS _ START
                             PLEN _ (IDIFFERENCE (OR END (GETEOFPTR TEXT))
-                                          (COND
-                                             (START START)
-                                             (T 0)))
+                                          START)
                             PREVPIECE _ NIL
                             PLOOKS _ DEFAULTLOOKS
                             PPARALAST _ NIL
                             PPARALOOKS _ DEFAULTPARALOOKS
                             PEXTERNALFORMAT _ (GETSTREAMPROP TEXT :EXTERNAL-FORMAT)))
-                                                             (* ; 
-                                                          "A single piece to describe the whole file")
                     (replace (PIECE PLOOKS) of TEXT with (\TEDIT.UNIQUIFY.CHARLOOKS
                                                           (fetch (PIECE PLOOKS) of TEXT)
                                                           TEXTOBJ))
@@ -186,10 +181,20 @@
               (\TEDIT.READ.UNFORMATTED.FILE TEXT TEXTOBJ START END DEFAULTLOOKS DEFAULTPARALOOKS))
              ((LISTP PCCOUNT)                                (* ; 
                                               "This is an obsolete version of the TEdit file format.")
-              (\TEDIT.READ.OLDFORMATTED.FILE TEXT TEXTOBJ START END PCCOUNT DEFAULTLOOKS 
-                     DEFAULTPARALOOKS))
+              (SELECTQ (CAR PCCOUNT)
+                  (0                                         (* ; "VERSION 0")
+                     (TEDIT.BUILD.PCTB0 TEXT TEXTOBJ (CDR PCCOUNT)
+                            START END DEFAULTLOOKS DEFAULTPARALOOKS))
+                  (1                                         (* ; 
+                                                   "Version 1;  obsoleted at INTERMEZZO release 2/85")
+                     (TEDIT.BUILD.PCTB1 TEXT TEXTOBJ (CDR PCCOUNT)
+                            START END DEFAULTLOOKS DEFAULTPARALOOKS))
+                  (2                                         (* ; "Version 2;  obsoleted 5/22/85")
+                     (TEDIT.BUILD.PCTB2 TEXT TEXTOBJ (CDR PCCOUNT)
+                            START END DEFAULTLOOKS DEFAULTPARALOOKS))
+                  (SHOULDNT "File format version incompatible with this version of TEdit.")))
              (T                                              (* ; 
-                                             "This IS a TEdit-format file, so read in all the parts.")
+                                                             "This is a current TEdit-format file")
                 (\TEDIT.READ.FORMATTED.FILE TEXT TEXTOBJ START END PCCOUNT DEFAULTLOOKS 
                        DEFAULTPARALOOKS]
          (\TEDIT.UNIQUIFY.ALL TEXTOBJ DEFAULTLOOKS)          (* ; 
@@ -221,31 +226,30 @@
 
 (\TEDIT.CONVERT.FOREIGN.FORMAT
   [LAMBDA (CONVERSIONFN FILE PREDICATERESULT TEXTOBJ DEFAULTLOOKS DEFAULTPARALOOKS)
+                                                             (* ; "Edited 20-Jul-2022 15:06 by rmk")
+                                                             (* ; "Edited 19-Jul-2022 10:09 by rmk")
                                                             (* ; "Edited 12-Jun-90 18:16 by mitani")
 
-         (* Perform the conversion from a foreign file format into TEdit-internal form as 
-         an open TextStream.)
+    (* ;; 
+  "Perform the conversion from a foreign file format into TEdit-internal form as an open TextStream.")
 
-    (PROG (TSTREAM TTEXTOBJ SEL WORKINGSTREAM)               (* See if there are Bravo headers)
-          (SETQ WORKINGSTREAM (OPENTEXTSTREAM ""))
-          (RESETLST
-              (RESETSAVE (\TEDIT.SET.WINDOW (CONS (TEXTOBJ WORKINGSTREAM)
-                                                  NIL)))
-              (SETQ TSTREAM (APPLY* CONVERSIONFN FILE PREDICATERESULT WORKINGSTREAM)))
-          (COND
-             (TEXTOBJ 
-
-         (* If we're filling in an existing TEXTOBJ, there are fields that need to be 
-         copied.)
-
-                    [OR (fetch (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ)
-                        (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (fetch (TEXTOBJ 
-                                                                                       TXTPAGEFRAMES)
-                                                                            of (TEXTOBJ TSTREAM]
-                                                             (* Such as the page formatting, which 
-                                                             the converter may well set.)
-                    ))
-          (RETURN (fetch (TEXTOBJ PCTB) of (TEXTOBJ TSTREAM])
+    (LET (TSTREAM TTEXTOBJ SEL WORKINGSTREAM)                (* ; "See if there are Bravo headers")
+         (SETQ WORKINGSTREAM (OPENTEXTSTREAM))
+         (RESETLST
+             (RESETSAVE (\TEDIT.SET.WINDOW (CONS (TEXTOBJ WORKINGSTREAM)
+                                                 NIL)))
+             (SETQ TSTREAM (APPLY* CONVERSIONFN FILE PREDICATERESULT WORKINGSTREAM)))
+         (COND
+            (TEXTOBJ                                         (* ; 
+                  "If we're filling in an existing TEXTOBJ, there are fields that need to be copied.")
+                   [OR (fetch (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ)
+                       (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (fetch (TEXTOBJ TXTPAGEFRAMES
+                                                                                      )
+                                                                           of (TEXTOBJ TSTREAM]
+                                                             (* ; 
+                                     "Such as the page formatting, which the converter may well set.")
+                   ))
+         (fetch (TEXTOBJ PCTB) of (TEXTOBJ TSTREAM])
 
 (TEDIT.FORMATTEDFILEP
   [LAMBDA (STREAM)                                           (* ; "Edited 19-Apr-93 11:57 by jds")
@@ -554,21 +558,16 @@
 
 (\TEDIT.READ.FORMATTED.FILE
   [LAMBDA (TEXT TEXTOBJ CURFILECH# END PCCOUNT DEFAULTLOOKS DEFAULTPARALOOKS)
-                                                             (* ; "Edited 14-Jul-2022 10:04 by rmk")
+                                                             (* ; "Edited 20-Jul-2022 11:10 by rmk")
+                                                             (* ; "Edited 19-Jul-2022 10:30 by rmk")
                                                              (* ; 
                                              "This IS a TEdit-format file, so read in all the parts.")
-    (LET (PCLEN PC TYPECODE PARAHASH LOOKSHASH PIECEINFOCH# (TEXTSTREAM (AND TEXTOBJ
-                                                                             (fetch (TEXTOBJ 
-                                                                                           STREAMHINT
-                                                                                           )
-                                                                                of TEXTOBJ)))
-                (PCTB (\MAKEPCTB NIL PCCOUNT)))
+    (LET (PARAHASH LOOKSHASH (PCTB (\MAKEPCTB NIL PCCOUNT)))
          (replace (TEXTOBJ PCTB) of TEXTOBJ with PCTB)
          (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
                                  8))
-         (SETQ PIECEINFOCH# (\DWIN TEXT))
-         (SETFILEPTR TEXT PIECEINFOCH#)
-         [bind (OLDPC _ NIL)
+         (SETFILEPTR TEXT (\DWIN TEXT))                      (* ; "Pieceinfo char #")
+         (bind PC TYPECODE PCLEN (OLDPC _ NIL)
                (OLDPARALOOKS _ DEFAULTPARALOOKS) for I from 1 to PCCOUNT as PCN from 1
             do (SETQ PC NIL)                                 (* ; 
                         "This loop may not really read a piece, so we have to distinguish that case.")
@@ -577,15 +576,12 @@
                [SELECTC TYPECODE
                    (\PieceDescriptorPAGEFRAME                (* ; 
                                                              "This is page layout info for the file")
-                        (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (
-                                                                                 TEDIT.GET.PAGEFRAMES
-                                                                                       TEXT)))
-                        (add PCN -1)
-
-                        (* ;; "(|add| pcn (iminus |\\EltsPerPiece|))")
+                        (CL:WHEN TEXTOBJ
+                            (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (TEDIT.GET.PAGEFRAMES
+                                                                              TEXT)))
                                                              (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                        )
+                        (add PCN -1))
                    (\PieceDescriptorCHARLOOKSLIST            (* ; 
                                               "This is the list of CHARLOOKSs used in this document.")
                         (replace (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ with (
@@ -597,13 +593,9 @@
                                                            of TEXTOBJ]
                                                              (* ; 
                                          "Build an array of the looks, so the reader can index them.")
-                        (for I from 1 as LOOKS in (fetch (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ)
-                           do (SETA LOOKSHASH I LOOKS))
+                        (for J from 1 as LOOKS in (fetch (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ)
+                           do (SETA LOOKSHASH J LOOKS))
                         (add PCN -1)
-
-                        (* ;; "(|add| pcn (iminus |\\EltsPerPiece|))")
-                                                             (* ; 
-                                "This didn't create a piece -- don't count it in the PCTB placement.")
                         (add I -1))
                    (\PieceDescriptorPARALOOKSLIST            (* ; 
                                               "This is the list of PARALOOKSs used in this document.")
@@ -615,31 +607,26 @@
                         [SETQ PARAHASH (ARRAY (FLENGTH (fetch (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ]
                                                              (* ; 
                                          "Build an array of the looks, so the reader can index them.")
-                        (for I from 1 as LOOKS in (fetch (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ)
-                           do (SETA PARAHASH I LOOKS))
+                        (for J from 1 as LOOKS in (fetch (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ)
+                           do (SETA PARAHASH J LOOKS))
                         (add PCN -1)
-
-                        (* ;; "(|add| pcn (iminus |\\EltsPerPiece|))")
-                                                             (* ; 
-                                "This didn't create a piece -- don't count it in the PCTB placement.")
                         (add I -1))
                    (\PieceDescriptorPARA                     (* ; 
                                                              "Reading a new set of paragraph looks.")
-                        (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
+                        (CL:WHEN OLDPC
+                            (replace (PIECE PPARALAST) of OLDPC with T))
                                                              (* ; 
                                                            "Mark the end of the preceding paragraph.")
                         (SETQ OLDPARALOOKS (\TEDIT.GET.PARALOOKS TEXT PARAHASH))
                                                              (* ; 
                                                  "Get the new set of looks, for use by later pieces.")
-                        (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T))
+                        (CL:WHEN TEXTOBJ
+                            (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T))
                                                              (* ; 
                                           "Mark the document as containing paragraph formatting info")
-                        (add PCN -1)
-
-                        (* ;; "(|add| pcn (iminus |\\EltsPerPiece|))")
                                                              (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                        )
+                        (add PCN -1))
                    (\PieceDescriptorLOOKS                    (* ; 
                                   "New character looks.  Build a piece to describe those characters.")
                         (SETQ PC
@@ -652,13 +639,12 @@
                         (\TEDIT.GET.CHARLOOKS PC TEXT LOOKSHASH OLDPC)
                                                              (* ; 
                                                              "Read the character looks for this guy.")
-                        (COND
-                           (OLDPC                            (* ; 
+                        (CL:WHEN OLDPC                       (* ; 
                                               "If there's a prior piece, hook this one on the chain.")
-                                  (replace (PIECE NEXTPIECE) of OLDPC with PC)))
-                        (add CURFILECH# PCLEN)               (* ; 
+                            (replace (PIECE NEXTPIECE) of OLDPC with PC))
+                                                             (* ; 
                                                              "And note the passing of characters.")
-                        )
+                        (add CURFILECH# PCLEN))
                    (\PieceDescriptorOBJECT                   (* ; 
    "It describes an object.  Read that, and perhaps some description of the charlooks to go with it.")
                         (SETQ PC
@@ -668,11 +654,11 @@
                                 PLEN _ PCLEN
                                 PREVPIECE _ OLDPC
                                 PPARALOOKS _ OLDPARALOOKS))
-                        (COND
-                           (OLDPC                            (* ; 
+                        (CL:WHEN OLDPC                       (* ; 
                                               "If there's a prior piece, hook this one on the chain.")
-                                  (replace (PIECE NEXTPIECE) of OLDPC with PC)))
-                        (TEDIT.GET.OBJECT TEXTSTREAM PC TEXT CURFILECH#)
+                            (replace (PIECE NEXTPIECE) of OLDPC with PC))
+                        (TEDIT.GET.OBJECT (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT) of TEXTOBJ))
+                               PC TEXT CURFILECH#)
                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
                         [COND
                            ((NOT (ZEROP (\BIN TEXT)))        (* ; 
@@ -683,54 +669,24 @@
                               (replace (PIECE PLOOKS) of PC with (OR (AND OLDPC (fetch (PIECE PLOOKS)
                                                                                    of OLDPC))
                                                                      DEFAULTLOOKS]
-                        (replace (PIECE PLEN) of PC with 1)  (* ; 
+                                                             (* ; 
                                                          "OBJECTs are officially one character long.")
-                        )
+                        (replace (PIECE PLEN) of PC with 1))
                    (PROGN (TEDIT.PROMPTPRINT TEXTOBJ "WARNING: Unknown-type piece skipped." T)
                           (SETFILEPTR TEXT (IPLUS (GETFILEPTR TEXT)
                                                   (\SMALLPIN TEXT]
-               (COND
-                  (PC (\INSERTPIECE PC 'LASTPIECE TEXTOBJ)   (* ; 
+               (CL:WHEN PC                                   (* ; 
                                                        "If we created a piece, save it in the table.")
-                      (SETQ OLDPC PC]
-         PCTB])
-
-(\TEDIT.READ.OLDFORMATTED.FILE
-  [LAMBDA (TEXT TEXTOBJ START END PCCOUNT DEFAULTLOOKS DEFAULTPARALOOKS)
-                                                             (* ; "Edited 13-Jul-2022 23:55 by rmk")
-    (LET (PCTB)
-         (SELECTQ (CAR PCCOUNT)
-             (0                                              (* ; "VERSION 0")
-                (SETQ PCTB (TEDIT.BUILD.PCTB0 TEXT TEXTOBJ (CDR PCCOUNT)
-                                  START END)))
-             (1                                              (* ; 
-                                                   "Version 1;  obsoleted at INTERMEZZO release 2/85")
-                (SETQ PCTB (TEDIT.BUILD.PCTB1 TEXT TEXTOBJ (CDR PCCOUNT)
-                                  START END)))
-             (2                                              (* ; "Version 2;  obsoleted 5/22/85")
-                (SETQ PCTB (TEDIT.BUILD.PCTB2 TEXT TEXTOBJ (CDR PCCOUNT)
-                                  START END)))
-             (SHOULDNT "File format version incompatible with this version of TEdit."))
-         (bind (PC _ (\GETBASEPTR (\FIRSTNODE PCTB)
-                            0)) while PC until (EQ PC 'LASTPIECE)
-            do                                               (* ; 
-                      "Run thru the converted pieces, noting CHARLOOKS and PARALOOKS for the caches.")
-               (replace (PIECE PLOOKS) of PC with (\TEDIT.UNIQUIFY.CHARLOOKS (fetch (PIECE PLOOKS)
-                                                                                of PC)
-                                                         TEXTOBJ))
-               (replace (PIECE PPARALOOKS) of PC with (\TEDIT.UNIQUIFY.PARALOOKS (fetch (PIECE 
-                                                                                           PPARALOOKS
-                                                                                               )
-                                                                                    of PC)
-                                                             TEXTOBJ))
-               (SETQ PC (fetch (PIECE NEXTPIECE) of PC)))
+                   (\INSERTPIECE PC 'LASTPIECE TEXTOBJ)
+                   (SETQ OLDPC PC)))
          PCTB])
 
 (\TEDIT.READ.UNFORMATTED.FILE
   [LAMBDA (TEXT TEXTOBJ START END DEFAULTLOOKS DEFAULTPARALOOKS)
+                                                             (* ; "Edited 19-Jul-2022 10:33 by rmk")
                                                              (* ; "Edited 13-Jul-2022 23:49 by rmk")
     (LET (USERFILEFORMAT USERTEMP PCTB)
-         (COND
+         [COND
             [(SETQ USERFILEFORMAT (for FILETYPE in TEDIT.INPUT.FORMATS
                                      when (SETQ USERTEMP (APPLY* (CAR FILETYPE)
                                                                 TEXT)) do (RETURN FILETYPE)))
@@ -742,7 +698,7 @@
                                                              (* ; 
                                                  "Convert the foreign format file, and grab its PCTB")
              (bind (PC _ (\GETBASEPTR (\FIRSTNODE PCTB)
-                                0)) while [AND PC (NOT (EQ PC 'LASTPIECE]
+                                0)) while PC until (EQ PC 'LASTPIECE)
                 do                                           (* ; 
         "Run thru the converted pieces, noting their CHARLOOKS and PARALOOKS for the get/put caches.")
                    (replace (PIECE PLOOKS) of PC with (\TEDIT.UNIQUIFY.CHARLOOKS (fetch (PIECE PLOOKS
@@ -753,9 +709,10 @@
                                                            (fetch (PIECE PPARALOOKS) of PC)
                                                            TEXTOBJ))
                    (SETQ PC (fetch (PIECE NEXTPIECE) of PC]
-            (T                                               (* ; 
-                                                             "Nope--it's straight unformatted text")
-               [SETQ PCTB (\MAKEPCTB (create PIECE
+            (T 
+               (* ;; "Nope--it's straight unformatted text.  Create a single piece to describe its contents ; Insert LASTPIECE here")
+
+               (SETQ PCTB (\MAKEPCTB (create PIECE
                                             PFILE _ TEXT
                                             PFPOS _ START
                                             PLEN _ (IDIFFERENCE (OR END (GETEOFPTR TEXT))
@@ -764,15 +721,8 @@
                                             PLOOKS _ (\TEDIT.UNIQUIFY.CHARLOOKS DEFAULTLOOKS TEXTOBJ)
                                             PPARALAST _ NIL
                                             PPARALOOKS _ (\TEDIT.UNIQUIFY.PARALOOKS DEFAULTPARALOOKS
-                                                                TEXTOBJ]
-                                                             (* ; 
-                                                  "So create a single piece to describe its contents")
-                                                             (* INSERT-BRT (CREATEPCNODE
-                                                             (ADD1 (IDIFFERENCE (OR END
-                                                             (GETEOFPTR TEXT)) START))
-                                                             (QUOTE LASTPIECE)) PCTB)
-                                                             (* ; "Insert LASTPIECE here")
-               ))
+                                                                TEXTOBJ)
+                                            PEXTERNALFORMAT _ (GETSTREAMPROP TEXT :EXTERNAL-FORMAT]
          PCTB])
 
 (\TEDIT.CACHEFILE
@@ -2146,7 +2096,10 @@
 (DEFINEQ
 
 (TEDIT.BUILD.PCTB2
-  [LAMBDA (TEXT TEXTOBJ PCCOUNT START END DEFAULTLOOKS)      (* ; "Edited  4-May-93 16:27 by jds")
+  [LAMBDA (TEXT TEXTOBJ PCCOUNT START END DEFAULTLOOKS DEFAULTPARALOOKS)
+                                                             (* ; "Edited 20-Jul-2022 11:22 by rmk")
+                                                             (* ; "Edited 19-Jul-2022 08:45 by rmk")
+                                                             (* ; "Edited  4-May-93 16:27 by jds")
 
     (* ;; "READ OBSOLETE FORMATS OF TEDIT FILE")
 
@@ -2154,167 +2107,146 @@
 
     (* ;; "END = use this as eofptr of file.  For use in reading files within files.")
 
-    (PROG (SEL LINES PCTB PC OLDPC TYPECODE PCLEN CHLOOKSSEEN NEWPC PARALOOKSSEEN PIECEINFOCH# CACHE
-               CACHE? TTEXTOBJ USER.CMFILE TSTREAM USERFILEFORMAT USERTEMP EXISTINGCHARLOOKS EXLOOK 
-               EXISTINGFMTSPECS (CURFILECH# (OR START 0))
-               (CURCH# 1)
-               (TEXTSTREAM (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT) of TEXTOBJ)))
-               LOOKSHASH PARAHASH)                           (* ; 
-              "Get the number of pieces needed (if AN formatted file), otherwise PCCOUNT will be NIL")
-          [SETQ DEFAULTPARALOOKS (OR DEFAULTPARALOOKS (COND
-                                                         (TEXTOBJ (fetch (TEXTOBJ FMTSPEC)
-                                                                     of TEXTOBJ))
-                                                         (T (create FMTSPEC using 
-                                                                                TEDIT.DEFAULT.FMTSPEC
-                                                                   ]
-          (SETQ DEFAULTLOOKS (OR DEFAULTLOOKS (CHARLOOKS.FROM.FONT DEFAULTFONT)))
-          (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with NIL))
-                                                             (* ; 
-                                                             "Start by assuming no page formatting")
-          (SETQ PCTB (\MAKEPCTB NIL PCCOUNT))
-          (replace (TEXTOBJ PCTB) of TEXTOBJ with PCTB)
-          (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
-                                  8))
-          (SETQ PIECEINFOCH# (\DWIN TEXT))
-          (SETFILEPTR TEXT PIECEINFOCH#)
-          (bind (OLDPC _ NIL)
-                (OLDPARALOOKS _ DEFAULTPARALOOKS) for I from 1 to PCCOUNT as PCN from 
+    (LET (PIECEINFOCH# (CURFILECH# (OR START 0))
+                LOOKSHASH PARAHASH (PCTB (\MAKEPCTB NIL PCCOUNT)))
+         (replace (TEXTOBJ PCTB) of TEXTOBJ with PCTB)
+         (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
+                                 8))
+         (SETQ PIECEINFOCH# (\DWIN TEXT))
+         (SETFILEPTR TEXT PIECEINFOCH#)
+         (bind PC TYPECODE PCLEN (OLDPC _ NIL)
+               (OLDPARALOOKS _ DEFAULTPARALOOKS) for I from 1 to PCCOUNT as PCN from 
                                                                                     \FirstPieceOffset
-             by \EltsPerPiece
-             do (SETQ PC NIL)                                (* ; 
+            by \EltsPerPiece
+            do (SETQ PC NIL)                                 (* ; 
                         "This loop may not really read a piece, so we have to distinguish that case.")
-                (SETQ PCLEN (\DWIN TEXT))
-                (SETQ TYPECODE (\SMALLPIN TEXT))             (* ; "What kind of piece is it?")
-                (SELECTC TYPECODE
-                    (\PieceDescriptorPAGEFRAME               (* ; 
+               (SETQ PCLEN (\DWIN TEXT))
+               (SETQ TYPECODE (\SMALLPIN TEXT))              (* ; "What kind of piece is it?")
+               (SELECTC TYPECODE
+                   (\PieceDescriptorPAGEFRAME                (* ; 
                                                              "This is page layout info for the file")
-                         (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (
+                        (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (
                                                                                  TEDIT.GET.PAGEFRAMES
-                                                                                        TEXT)))
-                         (add PCN (IMINUS \EltsPerPiece))    (* ; 
+                                                                                       TEXT)))
+                                                             (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                         )
-                    (\PieceDescriptorCHARLOOKSLIST           (* ; 
+                        (add PCN (IMINUS \EltsPerPiece)))
+                   (\PieceDescriptorCHARLOOKSLIST            (* ; 
                                               "This is the list of CHARLOOKSs used in this document.")
-                         (replace (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ with (
+                        (replace (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ with (
                                                                            \TEDIT.GET.CHARLOOKS.LIST2
-                                                                              TEXT))
+                                                                             TEXT))
                                                              (* ; 
                                                       "Read the list of looks used in this document.")
-                         [SETQ LOOKSHASH (ARRAY (FLENGTH (fetch (TEXTOBJ TXTCHARLOOKSLIST)
-                                                            of TEXTOBJ]
-                                                             (* ; 
-                                         "Build an array of the looks, so the reader can index them.")
-                         (for I from 1 as LOOKS in (fetch (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ)
-                            do (SETA LOOKSHASH I LOOKS))
-                         (add PCN (IMINUS \EltsPerPiece))    (* ; 
-                                "This didn't create a piece -- don't count it in the PCTB placement.")
-                         (add I -1))
-                    (\PieceDescriptorPARALOOKSLIST           (* ; 
-                                              "This is the list of PARALOOKSs used in this document.")
-                         (replace (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ with (
-                                                                           \TEDIT.GET.PARALOOKS.LIST2
-                                                                              TEXT))
-                                                             (* ; 
-                                                      "Read the list of looks used in this document.")
-                         [SETQ PARAHASH (ARRAY (FLENGTH (fetch (TEXTOBJ TXTPARALOOKSLIST)
+                        [SETQ LOOKSHASH (ARRAY (FLENGTH (fetch (TEXTOBJ TXTCHARLOOKSLIST)
                                                            of TEXTOBJ]
                                                              (* ; 
                                          "Build an array of the looks, so the reader can index them.")
-                         (for I from 1 as LOOKS in (fetch (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ)
-                            do (SETA PARAHASH I LOOKS))
-                         (add PCN (IMINUS \EltsPerPiece))    (* ; 
+                        (for I from 1 as LOOKS in (fetch (TEXTOBJ TXTCHARLOOKSLIST) of TEXTOBJ)
+                           do (SETA LOOKSHASH I LOOKS))
+                        (add PCN (IMINUS \EltsPerPiece))     (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                         (add I -1))
-                    (\PieceDescriptorPARA                    (* ; 
+                        (add I -1))
+                   (\PieceDescriptorPARALOOKSLIST            (* ; 
+                                              "This is the list of PARALOOKSs used in this document.")
+                        (replace (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ with (
+                                                                           \TEDIT.GET.PARALOOKS.LIST2
+                                                                             TEXT))
+                                                             (* ; 
+                                                      "Read the list of looks used in this document.")
+                        [SETQ PARAHASH (ARRAY (FLENGTH (fetch (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ]
+                                                             (* ; 
+                                         "Build an array of the looks, so the reader can index them.")
+                        (for I from 1 as LOOKS in (fetch (TEXTOBJ TXTPARALOOKSLIST) of TEXTOBJ)
+                           do (SETA PARAHASH I LOOKS))
+                        (add PCN (IMINUS \EltsPerPiece))     (* ; 
+                                "This didn't create a piece -- don't count it in the PCTB placement.")
+                        (add I -1))
+                   (\PieceDescriptorPARA                     (* ; 
                                                              "Reading a new set of paragraph looks.")
-                         (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
+                        (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
                                                              (* ; 
                                                            "Mark the end of the preceding paragraph.")
-                         (SETQ OLDPARALOOKS (\TEDIT.GET.PARALOOKS TEXT PARAHASH))
+                        (SETQ OLDPARALOOKS (\TEDIT.GET.PARALOOKS TEXT PARAHASH))
                                                              (* ; 
                                                  "Get the new set of looks, for use by later pieces.")
-                         (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T))
+                        (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T))
                                                              (* ; 
                                           "Mark the document as containing paragraph formatting info")
-                         (add PCN (IMINUS \EltsPerPiece))    (* ; 
+                                                             (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                         )
-                    (\PieceDescriptorLOOKS                   (* ; 
+                        (add PCN (IMINUS \EltsPerPiece)))
+                   (\PieceDescriptorLOOKS                    (* ; 
                                   "New character looks.  Build a piece to describe those characters.")
-                         (SETQ PC
-                          (create PIECE
-                                 PFILE _ TEXT
-                                 PFPOS _ CURFILECH#
-                                 PLEN _ PCLEN
-                                 PREVPIECE _ OLDPC
-                                 PPARALOOKS _ OLDPARALOOKS)) (* ; "Build the new piece")
-                         (\TEDIT.GET.CHARLOOKS PC TEXT LOOKSHASH OLDPC)
+                        (SETQ PC
+                         (create PIECE
+                                PFILE _ TEXT
+                                PFPOS _ CURFILECH#
+                                PLEN _ PCLEN
+                                PREVPIECE _ OLDPC
+                                PPARALOOKS _ OLDPARALOOKS))  (* ; "Build the new piece")
+                        (\TEDIT.GET.CHARLOOKS PC TEXT LOOKSHASH OLDPC)
                                                              (* ; 
                                                              "Read the character looks for this guy.")
-                         (COND
-                            [OLDPC                           (* ; 
+                        (COND
+                           [OLDPC                            (* ; 
                                               "If there's a prior piece, hook this one on the chain.")
-                                   (replace (PIECE NEXTPIECE) of OLDPC with PC)
-                                   (COND
-                                      ((AND (fetch (PIECE PFATP) of PC)
-                                            (NOT (fetch (PIECE PFATP) of OLDPC)))
+                                  (replace (PIECE NEXTPIECE) of OLDPC with PC)
+                                  (COND
+                                     ((AND (fetch (PIECE PFATP) of PC)
+                                           (NOT (fetch (PIECE PFATP) of OLDPC)))
                                                              (* ; 
                                       "Switching from not-fat to fat.  Add 3 bytes for the 255-255-0")
-                                       (add (fetch (PIECE PFPOS) of PC)
-                                            3)
-                                       (add CURFILECH# -3))
-                                      ((AND (fetch (PIECE PFATP) of OLDPC)
-                                            (NOT (fetch (PIECE PFATP) of PC)))
+                                      (add (fetch (PIECE PFPOS) of PC)
+                                           3)
+                                      (add CURFILECH# -3))
+                                     ((AND (fetch (PIECE PFATP) of OLDPC)
+                                           (NOT (fetch (PIECE PFATP) of PC)))
                                                              (* ; 
                                           "Switching from fat to not-fat.  Add 3 bytes for the 255-0")
-                                       (add (fetch (PIECE PFPOS) of PC)
-                                            2]
-                            ((fetch (PIECE PFATP) of PC)     (* ; 
+                                      (add (fetch (PIECE PFPOS) of PC)
+                                           2]
+                           ((fetch (PIECE PFATP) of PC)      (* ; 
                                       "Switching from not-fat to fat.  Add 3 bytes for the 255-255-0")
-                             (add (fetch (PIECE PFPOS) of PC)
-                                  3)
-                             (add CURFILECH# -3)))
-                         (add CURFILECH# PCLEN)              (* ; 
+                            (add (fetch (PIECE PFPOS) of PC)
+                                 3)
+                            (add CURFILECH# -3)))            (* ; 
                                                              "And note the passing of characters.")
-                         )
-                    (\PieceDescriptorOBJECT                  (* ; 
+                        (add CURFILECH# PCLEN))
+                   (\PieceDescriptorOBJECT                   (* ; 
    "It describes an object.  Read that, and perhaps some description of the charlooks to go with it.")
-                         (SETQ PC
-                          (create PIECE
-                                 PFILE _ TEXT
-                                 PFPOS _ CURFILECH#
-                                 PLEN _ PCLEN
-                                 PREVPIECE _ OLDPC
-                                 PPARALOOKS _ OLDPARALOOKS))
-                         (COND
-                            (OLDPC                           (* ; 
+                        (SETQ PC
+                         (create PIECE
+                                PFILE _ TEXT
+                                PFPOS _ CURFILECH#
+                                PLEN _ PCLEN
+                                PREVPIECE _ OLDPC
+                                PPARALOOKS _ OLDPARALOOKS))
+                        (COND
+                           (OLDPC                            (* ; 
                                               "If there's a prior piece, hook this one on the chain.")
-                                   (replace (PIECE NEXTPIECE) of OLDPC with PC)))
-                         (TEDIT.GET.OBJECT TEXTSTREAM PC TEXT CURFILECH#)
-                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
-                         [COND
-                            ((NOT (ZEROP (\BIN TEXT)))       (* ; 
+                                  (replace (PIECE NEXTPIECE) of OLDPC with PC)))
+                        (TEDIT.GET.OBJECT (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT) of TEXTOBJ))
+                               PC TEXT CURFILECH#)
+                        (add CURFILECH# (fetch (PIECE PLEN) of PC))
+                        [COND
+                           ((NOT (ZEROP (\BIN TEXT)))        (* ; 
                                       "There are new character looks for this object.  Read them in.")
-                             (replace (PIECE PLOOKS) of PC with (\TEDIT.GET.SINGLE.CHARLOOKS2 TEXT)))
-                            (T                               (* ; 
+                            (replace (PIECE PLOOKS) of PC with (\TEDIT.GET.SINGLE.CHARLOOKS2 TEXT)))
+                           (T                                (* ; 
                                                     "No new looks;  steal them from the prior piece.")
-                               (replace (PIECE PLOOKS) of PC with (OR (AND OLDPC (fetch (PIECE PLOOKS
-                                                                                               )
-                                                                                    of OLDPC))
-                                                                      DEFAULTLOOKS]
-                         (replace (PIECE PLEN) of PC with 1) (* ; 
+                              (replace (PIECE PLOOKS) of PC with (OR (AND OLDPC (fetch (PIECE PLOOKS)
+                                                                                   of OLDPC))
+                                                                     DEFAULTLOOKS]
+                                                             (* ; 
                                                          "OBJECTs are officially one character long.")
-                         )
-                    (SHOULDNT "Impossible piece-type code in BUILD.PCTB"))
-                (COND
-                   (PC                                       (* ; 
+                        (replace (PIECE PLEN) of PC with 1))
+                   (SHOULDNT "Impossible piece-type code in BUILD.PCTB"))
+               (CL:WHEN PC                                   (* ; 
                                                        "If we created a piece, save it in the table.")
-                       (\INSERTPIECE PC 'LASTPIECE TEXTOBJ)
-                       (add CURCH# (fetch (PIECE PLEN) of PC))
-                       (SETQ OLDPC PC))) finally             (* INSERT-BRT (CREATEPCNODE CURCH#
-                                                             (QUOTE LASTPIECE)) PCTB))
-          (RETURN PCTB])
+                   (\INSERTPIECE PC 'LASTPIECE TEXTOBJ)
+                   (SETQ OLDPC PC)))
+         PCTB])
 
 (\TEDIT.GET.CHARLOOKS.LIST2
   [LAMBDA (FILE)                                             (* jds "22-May-85 14:28")
@@ -2949,7 +2881,10 @@
 (DEFINEQ
 
 (TEDIT.BUILD.PCTB1
-  [LAMBDA (TEXT TEXTOBJ PCCOUNT START END DEFAULTLOOKS)      (* ; "Edited 22-May-92 18:00 by jds")
+  [LAMBDA (TEXT TEXTOBJ PCCOUNT START END DEFAULTLOOKS DEFAULTPARALOOKS)
+                                                             (* ; "Edited 20-Jul-2022 11:22 by rmk")
+                                                             (* ; "Edited 19-Jul-2022 08:33 by rmk")
+                                                             (* ; "Edited 22-May-92 18:00 by jds")
 
 (* ;;; "READ OBSOLETE FORMATS OF TEDIT FILE")
 
@@ -2957,136 +2892,98 @@
 
     (* ;; "END = use this as eofptr of file.  For use in reading files within files.")
 
-    (PROG [SEL LINES PCTB PC OLDPC TYPECODE PCLEN CHLOOKSSEEN NEWPC PARALOOKSSEEN PIECEINFOCH# CACHE
-               CACHE? TTEXTOBJ USER.CMFILE TSTREAM USERFILEFORMAT USERTEMP EXISTINGCHARLOOKS EXLOOK 
-               EXISTINGFMTSPECS (CURFILECH# (OR START 0))
-               (CURCH# 1)
-               (TEXTSTREAM (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT) of TEXTOBJ]
-
-     (* ;; "Get the number of pieces needed (if AN formatted file), otherwise PCCOUNT will be NIL")
-
-          [SETQ DEFAULTPARALOOKS (OR DEFAULTPARALOOKS (COND
-                                                         (TEXTOBJ (fetch (TEXTOBJ FMTSPEC)
-                                                                     of TEXTOBJ))
-                                                         (T (create FMTSPEC using 
-                                                                                TEDIT.DEFAULT.FMTSPEC
-                                                                   ]
-          (SETQ DEFAULTLOOKS (OR DEFAULTLOOKS (CHARLOOKS.FROM.FONT DEFAULTFONT)))
-          (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with NIL))
-                                                             (* ; 
-                                                             "Start by assuming no page formatting")
-          (SETQ PCTB (\MAKEPCTB NIL PCCOUNT))
-          (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
-                                  8))
-          (SETQ PIECEINFOCH# (\DWIN TEXT))
-          (SETFILEPTR TEXT PIECEINFOCH#)
-          (bind (OLDPC _ NIL)
-                (OLDPARALOOKS _ DEFAULTPARALOOKS) for I from 1 to PCCOUNT as PCN from 
+    (LET (PIECEINFOCH# TSTREAM (CURFILECH# (OR START 0))
+                (PCTB (\MAKEPCTB NIL PCCOUNT)))
+         (replace (TEXTOBJ PCTB) of TEXTOBJ with PCTB)
+         (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
+                                 8))
+         (SETQ PIECEINFOCH# (\DWIN TEXT))
+         (SETFILEPTR TEXT PIECEINFOCH#)
+         (bind PC TYPECODE PCLEN (OLDPC _ NIL)
+               (OLDPARALOOKS _ DEFAULTPARALOOKS) for I from 1 to PCCOUNT as PCN from 
                                                                                     \FirstPieceOffset
-             by \EltsPerPiece
-             do (SETQ PC NIL)                                (* ; 
+            by \EltsPerPiece
+            do (SETQ PC NIL)                                 (* ; 
                         "This loop may not really read a piece, so we have to distinguish that case.")
-                (SETQ PCLEN (\DWIN TEXT))
-                (SETQ TYPECODE (\SMALLPIN TEXT))             (* ; "What kind of piece is it?")
-                (SELECTC TYPECODE
-                    (\PieceDescriptorPAGEFRAME               (* ; 
+               (SETQ PCLEN (\DWIN TEXT))
+               (SETQ TYPECODE (\SMALLPIN TEXT))              (* ; "What kind of piece is it?")
+               (SELECTC TYPECODE
+                   (\PieceDescriptorPAGEFRAME                (* ; 
                                                              "This is page layout info for the file")
-                         (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (
+                        (AND TEXTOBJ (replace (TEXTOBJ TXTPAGEFRAMES) of TEXTOBJ with (
                                                                                 TEDIT.GET.PAGEFRAMES1
-                                                                                        TEXT)))
-                         (add PCN (IMINUS \EltsPerPiece))    (* ; 
+                                                                                       TEXT)))
+                        (add PCN (IMINUS \EltsPerPiece))     (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                         )
-                    (\PieceDescriptorPARA                    (* ; 
+                        )
+                   (\PieceDescriptorPARA                     (* ; 
                                                              "Reading a new set of paragraph looks.")
-                         (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
+                        (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
                                                              (* ; 
                                                            "Mark the end of the preceding paragraph.")
-                         (SETQ OLDPARALOOKS (\TEDIT.GET.PARALOOKS1 TEXT))
+                        (SETQ OLDPARALOOKS (\TEDIT.GET.PARALOOKS1 TEXT))
                                                              (* ; 
                                                  "Get the new set of looks, for use by later pieces.")
-                         (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T))
+                        (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T))
                                                              (* ; 
                                           "Mark the document as containing paragraph formatting info")
-                         (add PCN (IMINUS \EltsPerPiece))    (* ; 
+                        (add PCN (IMINUS \EltsPerPiece))     (* ; 
                                 "This didn't create a piece -- don't count it in the PCTB placement.")
-                         )
-                    (\PieceDescriptorLOOKS                   (* ; 
+                        )
+                   (\PieceDescriptorLOOKS                    (* ; 
                                   "New character looks.  Build a piece to describe those characters.")
-                         (SETQ PC
-                          (create PIECE
-                                 PFILE _ TEXT
-                                 PFPOS _ CURFILECH#
-                                 PLEN _ PCLEN
-                                 PREVPIECE _ OLDPC
-                                 PPARALOOKS _ OLDPARALOOKS)) (* ; "Build the new piece")
-                         (COND
-                            (OLDPC                           (* ; 
+                        (SETQ PC
+                         (create PIECE
+                                PFILE _ TEXT
+                                PFPOS _ CURFILECH#
+                                PLEN _ PCLEN
+                                PREVPIECE _ OLDPC
+                                PPARALOOKS _ OLDPARALOOKS))  (* ; "Build the new piece")
+                        (CL:WHEN OLDPC                       (* ; 
                                               "If there's a prior piece, hook this one on the chain.")
-                                   (replace (PIECE NEXTPIECE) of OLDPC with PC)))
-                         (\TEDIT.GET.CHARLOOKS1 PC TEXT)     (* ; 
+                            (replace (PIECE NEXTPIECE) of OLDPC with PC))
+                        (\TEDIT.GET.CHARLOOKS1 PC TEXT)      (* ; 
                                                              "Read the character looks for this guy.")
-                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
+                        (add CURFILECH# (fetch (PIECE PLEN) of PC))
                                                              (* ; 
                                                              "And note the passing of characters.")
-                         )
-                    (\PieceDescriptorOBJECT                  (* ; 
+                        )
+                   (\PieceDescriptorOBJECT                   (* ; 
    "It describes an object.  Read that, and perhaps some description of the charlooks to go with it.")
-                         (SETQ PC
-                          (create PIECE
-                                 PFILE _ TEXT
-                                 PFPOS _ CURFILECH#
-                                 PLEN _ PCLEN
-                                 PREVPIECE _ OLDPC
-                                 PPARALOOKS _ OLDPARALOOKS))
-                         (COND
-                            (OLDPC                           (* ; 
+                        (SETQ PC
+                         (create PIECE
+                                PFILE _ TEXT
+                                PFPOS _ CURFILECH#
+                                PLEN _ PCLEN
+                                PREVPIECE _ OLDPC
+                                PPARALOOKS _ OLDPARALOOKS))
+                        (CL:WHEN OLDPC                       (* ; 
                                               "If there's a prior piece, hook this one on the chain.")
-                                   (replace (PIECE NEXTPIECE) of OLDPC with PC)))
-                         (TEDIT.GET.OBJECT1 TEXTSTREAM PC TEXT CURFILECH#)
-                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
-                         [COND
-                            ((NOT (ZEROP (\BIN TEXT)))       (* ; 
+                            (replace (PIECE NEXTPIECE) of OLDPC with PC))
+                        (TEDIT.GET.OBJECT1 (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT) of TEXTOBJ))
+                               PC TEXT CURFILECH#)
+                        (add CURFILECH# (fetch (PIECE PLEN) of PC))
+                        [COND
+                           ((NOT (ZEROP (\BIN TEXT)))        (* ; 
                                       "There are new character looks for this object.  Read them in.")
-                             (\DWIN TEXT)
-                             (\WIN TEXT)                     (* ; 
+                            (\DWIN TEXT)
+                            (\WIN TEXT)                      (* ; 
                                               "Skip over the piece-type code we know has to be here.")
-                             (\TEDIT.GET.CHARLOOKS1 PC TEXT))
-                            (T                               (* ; 
+                            (\TEDIT.GET.CHARLOOKS1 PC TEXT))
+                           (T                                (* ; 
                                                     "No new looks;  steal them from the prior piece.")
-                               (replace (PIECE PLOOKS) of PC with (OR (AND OLDPC (fetch (PIECE PLOOKS
-                                                                                               )
-                                                                                    of OLDPC))
-                                                                      DEFAULTLOOKS]
-                         (replace (PIECE PLEN) of PC with 1) (* ; 
-                                                         "OBJECTs are officially one character long.")
-                         )
-                    (SHOULDNT "Impossible piece-type code in BUILD.PCTB"))
-                (COND
-                   (PC                                       (* ; 
-                                                       "If we created a piece, save it in the table.")
-                       [COND
-                          ((SETQ EXLOOK (for LOOK in EXISTINGCHARLOOKS
-                                           thereis (EQCLOOKS (fetch (PIECE PLOOKS) of PC)
-                                                          LOOK)))
-                                                             (* ; 
-                         "These charlooks are a duplicate of pre-existing ones.  Re-use the old one.")
-                           (replace (PIECE PLOOKS) of PC with EXLOOK))
-                          (T (push EXISTINGCHARLOOKS (fetch (PIECE PLOOKS) of PC]
-                       [COND
-                          ((SETQ EXLOOK (for LOOK in EXISTINGFMTSPECS
-                                           thereis (EQFMTSPEC (fetch (PIECE PPARALOOKS) of PC)
-                                                          LOOK)))
-                                                             (* ; 
-                         "These paralooks are a duplicate of pre-existing ones.  Re-use the old one.")
-                           (replace (PIECE PPARALOOKS) of PC with EXLOOK))
-                          (T (push EXISTINGFMTSPECS (fetch (PIECE PPARALOOKS) of PC]
-                       (INSERT-BRT (CREATEPCNODE CURCH# PC)
-                              PCTB)
-                       (add CURCH# (fetch (PIECE PLEN) of PC))
-                       (SETQ OLDPC PC))) finally (INSERT-BRT (CREATEPCNODE CURCH# 'LASTPIECE)
-                                                        PCTB))
-          (RETURN PCTB])
+                              (replace (PIECE PLOOKS) of PC with (OR (AND OLDPC (fetch (PIECE PLOOKS)
+                                                                                   of OLDPC))
+                                                                     DEFAULTLOOKS]
+
+                        (* ;; "OBJECTs are officially one character long.")
+
+                        (replace (PIECE PLEN) of PC with 1))
+                   (SHOULDNT "Impossible piece-type code in BUILD.PCTB"))
+               (CL:WHEN PC
+                   (\INSERTPIECE PC 'LASTPIECE TEXTOBJ)
+                   (SETQ OLDPC PC)))
+         PCTB])
 
 (TEDIT.GET.PAGEFRAMES1
   [LAMBDA (FILE)                                             (* jds " 1-Feb-85 14:55")
@@ -3253,69 +3150,62 @@
 (DEFINEQ
 
 (TEDIT.BUILD.PCTB0
-  [LAMBDA (TEXT TEXTOBJ PCCOUNT START END)                   (* ; "Edited 22-May-92 18:01 by jds")
+  [LAMBDA (TEXT TEXTOBJ PCCOUNT START END DEFAULTLOOKS DEFAULTPARALOOKS)
+                                                             (* ; "Edited 20-Jul-2022 11:21 by rmk")
+                                                             (* ; "Edited 19-Jul-2022 08:41 by rmk")
+                                                             (* ; "Edited 22-May-92 18:01 by jds")
 
 (* ;;; "READ OBSOLETE FORMATS OF TEDIT FILE")
 
-    (PROG [SEL LINES PCTB PC OLDPC TYPECODE PCLEN CHLOOKSSEEN NEWPC PARALOOKSSEEN PIECEINFOCH# CACHE
-               TTEXTOBJ USER.CMFILE TSTREAM USERFILEFORMAT USERTEMP (CURFILECH# (OR START 0))
-               (CURCH# 1)
-               (TEXTSTREAM (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT) of TEXTOBJ]
+    (LET (PCTB OLDPC TYPECODE PCLEN PIECEINFOCH# TSTREAM USERFILEFORMAT USERTEMP
+               (CURFILECH# (OR START 0)))
+         (SETQ PCTB (\MAKEPCTB NIL PCCOUNT))
+         (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
+                                 8))
+         (SETQ PIECEINFOCH# (\DWIN TEXT))
+         (SETFILEPTR TEXT PIECEINFOCH#)
+         (bind PC TYPECODE PCLEN (OLDPC _ NIL) for I from 1 to PCCOUNT as PCN from \FirstPieceOffset
+            by \EltsPerPiece do (SETQ PC (create PIECE
+                                                PFILE _ TEXT
+                                                PFPOS _ CURFILECH#
+                                                PLEN _ (SETQ PCLEN (\DWIN TEXT))
+                                                PREVPIECE _ OLDPC
+                                                PPARALOOKS _ DEFAULTPARALOOKS))
+                                [COND
+                                   (OLDPC (replace (PIECE NEXTPIECE) of OLDPC with PC)
+                                          (replace (PIECE PPARALOOKS) of PC
+                                             with (fetch (PIECE PPARALOOKS) of OLDPC]
+                                (SETQ TYPECODE (\SMALLPIN TEXT))
+                                (SELECTC TYPECODE
+                                    (\PieceDescriptorLOOKS 
+                                         (TEDIT.GET.CHARLOOKS0 PC TEXT)
+                                         (add CURFILECH# (fetch (PIECE PLEN) of PC)))
+                                    (\PieceDescriptorOBJECT 
+                                         (TEDIT.GET.OBJECT0 (AND TEXTOBJ (fetch (TEXTOBJ STREAMHINT)
+                                                                            of TEXTOBJ))
+                                                PC TEXT CURFILECH#)
+                                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
+                                         (replace (PIECE PLEN) of PC with 1)
                                                              (* ; 
-              "Get the number of pieces needed (if AN formatted file), otherwise PCCOUNT will be NIL")
-          [SETQ DEFAULTPARALOOKS (OR DEFAULTPARALOOKS (COND
-                                                         (TEXTOBJ (fetch (TEXTOBJ FMTSPEC)
-                                                                     of TEXTOBJ))
-                                                         (T (create FMTSPEC using 
-                                                                                TEDIT.DEFAULT.FMTSPEC
-                                                                   ]
-          (SETQ PCTB (\MAKEPCTB NIL PCCOUNT))
-          (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT))
-                                  8))
-          (SETQ PIECEINFOCH# (\DWIN TEXT))
-          (SETFILEPTR TEXT PIECEINFOCH#)
-          (bind (OLDPC _ NIL) for I from 1 to PCCOUNT as PCN from \FirstPieceOffset by \EltsPerPiece
-             do (SETQ PC (create PIECE
-                                PFILE _ TEXT
-                                PFPOS _ CURFILECH#
-                                PLEN _ (SETQ PCLEN (\DWIN TEXT))
-                                PREVPIECE _ OLDPC
-                                PPARALOOKS _ DEFAULTPARALOOKS))
-                [COND
-                   (OLDPC (replace (PIECE NEXTPIECE) of OLDPC with PC)
-                          (replace (PIECE PPARALOOKS) of PC with (fetch (PIECE PPARALOOKS)
-                                                                    of OLDPC]
-                (SETQ TYPECODE (\SMALLPIN TEXT))
-                (SELECTC TYPECODE
-                    (\PieceDescriptorLOOKS 
-                         (TEDIT.GET.CHARLOOKS0 PC TEXT)
-                         (add CURFILECH# (fetch (PIECE PLEN) of PC)))
-                    (\PieceDescriptorOBJECT 
-                         (TEDIT.GET.OBJECT0 TEXTSTREAM PC TEXT CURFILECH#)
-                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
-                         (replace (PIECE PLEN) of PC with 1) (* ; 
                                             "Only object--can't be followed by either ot the others.")
-                         )
-                    (\PieceDescriptorPARA 
-                         (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
-                         (TEDIT.GET.PARALOOKS0 PC TEXT)
-                         (replace (PIECE PLEN) of PC with (\DWIN TEXT))
+                                         )
+                                    (\PieceDescriptorPARA 
+                                         (AND OLDPC (replace (PIECE PPARALAST) of OLDPC with T))
+                                         (TEDIT.GET.PARALOOKS0 PC TEXT)
+                                         (replace (PIECE PLEN) of PC with (\DWIN TEXT))
                                                              (* ; 
                                                   "Set this piece's length from the character looks.")
-                         (\SMALLPIN TEXT)                    (* ; 
+                                         (\SMALLPIN TEXT)    (* ; 
                                                 "Skip the piece-type code, since we know what's next")
-                         (TEDIT.GET.CHARLOOKS0 PC TEXT)      (* ; "This document is 'formatted' .")
-                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
-                         (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ with T)))
-                    (SHOULDNT "Impossible piece-type code in BUILD.PCTB"))
-                (SETQ OLDPC PC)
-                (INSERT-BRT (CREATEPCNODE CURCH# PC)
-                       PCTB)
-                (add CURCH# (fetch (PIECE PLEN) of PC)) finally (INSERT-BRT (CREATEPCNODE
-                                                                             CURCH#
-                                                                             'LASTPIECE)
-                                                                       PCTB))
-          (RETURN PCTB])
+                                         (TEDIT.GET.CHARLOOKS0 PC TEXT)
+                                                             (* ; "This document is 'formatted' .")
+                                         (add CURFILECH# (fetch (PIECE PLEN) of PC))
+                                         (AND TEXTOBJ (replace (TEXTOBJ FORMATTEDP) of TEXTOBJ
+                                                         with T)))
+                                    (SHOULDNT "Impossible piece-type code in BUILD.PCTB"))
+                                (SETQ OLDPC PC)
+                                (\INSERTPIECE PC 'LASTPIECE TEXTOBJ))
+         PCTB])
 
 (TEDIT.GET.CHARLOOKS0
   [LAMBDA (PC FILE)                                          (* ; "Edited 30-May-91 20:26 by jds")
@@ -3460,27 +3350,27 @@
               (RPLACD TABSPEC TABS])
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (3224 33441 (TEDIT.BUILD.PCTB 3234 . 12880) (\TEDIT.CONVERT.FOREIGN.FORMAT 12882 . 14462
-) (TEDIT.FORMATTEDFILEP 14464 . 17676) (TEDIT.GET 17678 . 26160) (TEDIT.PARSE.PAGEFRAMES1 26162 . 
-27868) (\ARBIN 27870 . 28486) (\ATMIN 28488 . 28813) (\DWIN 28815 . 29089) (\STRINGIN 29091 . 29695) (
-\TEDIT.FORMATTEDP1 29697 . 31954) (\TEDIT.SET.WINDOW 31956 . 32467) (TEDIT.GET.PASSWORD 32469 . 33439)
-) (33442 52110 (\TEDIT.READ.FORMATTED.FILE 33452 . 43928) (\TEDIT.READ.OLDFORMATTED.FILE 43930 . 46162
-) (\TEDIT.READ.UNFORMATTED.FILE 46164 . 49918) (\TEDIT.CACHEFILE 49920 . 51128) (\TEDIT.UNIQUIFY.ALL 
-51130 . 52108)) (52146 71704 (TEDIT.INCLUDE 52156 . 62928) (TEDIT.RAW.INCLUDE 62930 . 71702)) (71738 
-113586 (TEDIT.PUT 71748 . 81709) (TEDIT.PUT.PCTB 81711 . 107267) (\TEDIT.PUTRESET 107269 . 107511) (
-TEDIT.PUT.PIECE.DESCRIPTOR 107513 . 110157) (\ARBOUT 110159 . 111310) (\ATMOUT 111312 . 111823) (
-\DWOUT 111825 . 112104) (\STRINGOUT 112106 . 112542) (\TEDIT-OPEN-FONT-FILE 112544 . 113584)) (113587 
-125015 (\TEDIT.GET.CHARLOOKS.LIST 113597 . 113998) (\TEDIT.GET.SINGLE.CHARLOOKS 114000 . 117799) (
-\TEDIT.PUT.CHARLOOKS.LIST 117801 . 119738) (\TEDIT.PUT.SINGLE.CHARLOOKS 119740 . 125013)) (125016 
-139292 (\TEDIT.GET.PARALOOKS.LIST 125026 . 125435) (\TEDIT.GET.SINGLE.PARALOOKS 125437 . 132074) (
-\TEDIT.PUT.PARALOOKS.LIST 132076 . 133083) (\TEDIT.PUT.SINGLE.PARALOOKS 133085 . 139290)) (139600 
-196898 (TEDIT.BUILD.PCTB2 139610 . 152410) (\TEDIT.GET.CHARLOOKS.LIST2 152412 . 152815) (
-\TEDIT.GET.SINGLE.CHARLOOKS2 152817 . 156294) (\TEDIT.PUT.SINGLE.PARALOOKS2 156296 . 160795) (
-\TEDIT.PUT.SINGLE.CHARLOOKS2 160797 . 165313) (\TEDIT.GET.PARALOOKS.LIST2 165315 . 165718) (
-\TEDIT.GET.SINGLE.PARALOOKS2 165720 . 170343) (TEDIT.PUT.PCTB2 170345 . 193959) (
-\TEDIT.PUT.CHARLOOKS.LIST2 193961 . 195900) (\TEDIT.PUT.PARALOOKS.LIST2 195902 . 196896)) (196975 
-218077 (TEDIT.BUILD.PCTB1 196985 . 206903) (TEDIT.GET.PAGEFRAMES1 206905 . 207261) (
-\TEDIT.GET.CHARLOOKS1 207263 . 211425) (\TEDIT.GET.PARALOOKS1 211427 . 216043) (TEDIT.GET.OBJECT1 
-216045 . 218075)) (218137 232494 (TEDIT.BUILD.PCTB0 218147 . 222497) (TEDIT.GET.CHARLOOKS0 222499 . 
-226927) (TEDIT.GET.OBJECT0 226929 . 228959) (TEDIT.GET.PARALOOKS0 228961 . 232492)))))
+  (FILEMAP (NIL (3169 33941 (TEDIT.BUILD.PCTB 3179 . 13168) (\TEDIT.CONVERT.FOREIGN.FORMAT 13170 . 14962
+) (TEDIT.FORMATTEDFILEP 14964 . 18176) (TEDIT.GET 18178 . 26660) (TEDIT.PARSE.PAGEFRAMES1 26662 . 
+28368) (\ARBIN 28370 . 28986) (\ATMIN 28988 . 29313) (\DWIN 29315 . 29589) (\STRINGIN 29591 . 30195) (
+\TEDIT.FORMATTEDP1 30197 . 32454) (\TEDIT.SET.WINDOW 32456 . 32967) (TEDIT.GET.PASSWORD 32969 . 33939)
+) (33942 48973 (\TEDIT.READ.FORMATTED.FILE 33952 . 43494) (\TEDIT.READ.UNFORMATTED.FILE 43496 . 46781)
+ (\TEDIT.CACHEFILE 46783 . 47991) (\TEDIT.UNIQUIFY.ALL 47993 . 48971)) (49009 68567 (TEDIT.INCLUDE 
+49019 . 59791) (TEDIT.RAW.INCLUDE 59793 . 68565)) (68601 110449 (TEDIT.PUT 68611 . 78572) (
+TEDIT.PUT.PCTB 78574 . 104130) (\TEDIT.PUTRESET 104132 . 104374) (TEDIT.PUT.PIECE.DESCRIPTOR 104376 . 
+107020) (\ARBOUT 107022 . 108173) (\ATMOUT 108175 . 108686) (\DWOUT 108688 . 108967) (\STRINGOUT 
+108969 . 109405) (\TEDIT-OPEN-FONT-FILE 109407 . 110447)) (110450 121878 (\TEDIT.GET.CHARLOOKS.LIST 
+110460 . 110861) (\TEDIT.GET.SINGLE.CHARLOOKS 110863 . 114662) (\TEDIT.PUT.CHARLOOKS.LIST 114664 . 
+116601) (\TEDIT.PUT.SINGLE.CHARLOOKS 116603 . 121876)) (121879 136155 (\TEDIT.GET.PARALOOKS.LIST 
+121889 . 122298) (\TEDIT.GET.SINGLE.PARALOOKS 122300 . 128937) (\TEDIT.PUT.PARALOOKS.LIST 128939 . 
+129946) (\TEDIT.PUT.SINGLE.PARALOOKS 129948 . 136153)) (136463 192394 (TEDIT.BUILD.PCTB2 136473 . 
+147906) (\TEDIT.GET.CHARLOOKS.LIST2 147908 . 148311) (\TEDIT.GET.SINGLE.CHARLOOKS2 148313 . 151790) (
+\TEDIT.PUT.SINGLE.PARALOOKS2 151792 . 156291) (\TEDIT.PUT.SINGLE.CHARLOOKS2 156293 . 160809) (
+\TEDIT.GET.PARALOOKS.LIST2 160811 . 161214) (\TEDIT.GET.SINGLE.PARALOOKS2 161216 . 165839) (
+TEDIT.PUT.PCTB2 165841 . 189455) (\TEDIT.PUT.CHARLOOKS.LIST2 189457 . 191396) (
+\TEDIT.PUT.PARALOOKS.LIST2 191398 . 192392)) (192471 210789 (TEDIT.BUILD.PCTB1 192481 . 199615) (
+TEDIT.GET.PAGEFRAMES1 199617 . 199973) (\TEDIT.GET.CHARLOOKS1 199975 . 204137) (\TEDIT.GET.PARALOOKS1 
+204139 . 208755) (TEDIT.GET.OBJECT1 208757 . 210787)) (210849 225021 (TEDIT.BUILD.PCTB0 210859 . 
+215024) (TEDIT.GET.CHARLOOKS0 215026 . 219454) (TEDIT.GET.OBJECT0 219456 . 221486) (
+TEDIT.GET.PARALOOKS0 221488 . 225019)))))
 STOP
diff --git a/library/tedit/TEDIT-FILE.LCOM b/library/tedit/TEDIT-FILE.LCOM
index 4380e2ae..744b2a37 100644
Binary files a/library/tedit/TEDIT-FILE.LCOM and b/library/tedit/TEDIT-FILE.LCOM differ
diff --git a/library/tedit/TEDIT-TEXTOFD b/library/tedit/TEDIT-TEXTOFD
index bf7082ab..f7704f06 100644
--- a/library/tedit/TEDIT-TEXTOFD
+++ b/library/tedit/TEDIT-TEXTOFD
@@ -1,10 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "14-Jul-2022 17:00:29" 
-{DSK}<users>kaplan>local>medley3.5>working-medley>library>tedit>TEDIT-TEXTOFD.;1 174498 
+(FILECREATED "20-Jul-2022 08:09:55" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>TEDIT>TEDIT-TEXTOFD.;2 174869 
 
-      :PREVIOUS-DATE "14-Jul-2022 11:08:01" 
-{DSK}<users>kaplan>local>medley3.5>working-medley>library>newtedit>TEDIT-TEXTOFD.;2)
+      :CHANGES-TO (FNS \CREATEPIECEORSTREAM)
+
+      :PREVIOUS-DATE "14-Jul-2022 17:00:29" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>library>TEDIT>TEDIT-TEXTOFD.;1)
 
 
 (PRETTYCOMPRINT TEDIT-TEXTOFDCOMS)
@@ -1202,7 +1204,8 @@
     (HELP])
 
 (\CREATEPIECEORSTREAM
-  [LAMBDA (TEXT LOOKS PARALOOKS START END)                   (* ; "Edited 13-Jul-2022 18:46 by rmk")
+  [LAMBDA (TEXT LOOKS PARALOOKS START END)                   (* ; "Edited 20-Jul-2022 08:09 by rmk")
+                                                             (* ; "Edited 13-Jul-2022 18:46 by rmk")
                                                              (* ; "Edited 11-Jun-99 14:25 by rmk:")
                                                              (* ; "Edited 31-May-91 14:18 by jds")
 
@@ -1214,6 +1217,7 @@
           [SETQ PC
            (COND
               ((STRINGP TEXT)                                (* ; "It's a string.")
+               (HELP "STRING TEXTS ARE NOW INTERPRETED AS FILE NAMES" TEXT)
                (create PIECE
                       PSTR _ TEXT
                       PFILE _ NIL
@@ -1230,6 +1234,7 @@
                       PPARALAST _ NIL
                       PPARALOOKS _ PARALOOKS))
               ((ATOM TEXT)                                   (* ; "An atom is a file name.  Open it.")
+               (HELP "ATOM TEXTS SHOULD ALREADY HAVE BEEN COERCED TO STREAMS" TEXT)
                [SETQ TEXT (OPENSTREAM TEXT 'INPUT 'OLD '(TYPE TEXT]
                (RETURN TEXT))
               ((STREAMP TEXT)                                (* ; 
@@ -1243,6 +1248,7 @@
                TEXT)
               (T                                             (* ; 
                                                         "Anything else is coerced to a string first.")
+                 (HELP "ONLY STREAMS CAN BE EDITGED" TEXT)
                  (SETQ TEXT (MKSTRING TEXT))
                  (create PIECE
                         PSTR _ TEXT
@@ -2594,25 +2600,25 @@
 (ADDTOVAR LAMA TEXTPROP)
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (2896 51935 (COPYTEXTSTREAM 2906 . 5645) (OPENTEXTSTREAM 5647 . 20914) (REOPENTEXTSTREAM
- 20916 . 21342) (TEDIT.STREAMCHANGEDP 21344 . 21646) (TEXTSTREAMP 21648 . 22062) (TXTFILE 22064 . 
-22517) (\DELETECH 22519 . 32935) (\SETUPGETCH 32937 . 39715) (\TEDIT.REOPEN.STREAM 39717 . 41542) (
-\TEDIT.COPYTEXTSTREAM.PIECEMAPFN 41544 . 44016) (\TEXTINIT 44018 . 49968) (\TEXTMARK 49970 . 50722) (
-\TEXTTTYBOUT 50724 . 51933)) (51936 77485 (\INSERTCH 51946 . 75777) (\INSERTCR 75779 . 77483)) (77551 
-96475 (\CHTOPC 77561 . 79013) (\CHTOPCNO 79015 . 80169) (\CLEARPCTB 80171 . 80955) (
-\CREATEPIECEORSTREAM 80957 . 84017) (\DELETEPIECE 84019 . 84938) (\FINDPIECE 84940 . 85312) (
-\INSERTPIECE 85314 . 88080) (\MAKEPCTB 88082 . 89908) (\SPLITPIECE 89910 . 95647) (\INSERT.FIRST.PIECE
- 95649 . 96473)) (96527 118502 (\TEXTCLOSEF 96537 . 97751) (\TEXTCLOSEF-SUBTREE 97753 . 98463) (
-\TEXTDSPFONT 98465 . 99461) (\TEXTEOFP 99463 . 100526) (\TEXTGETEOFPTR 100528 . 100742) (
-\TEXTGETFILEPTR 100744 . 102676) (\TEXTOPENF 102678 . 103448) (\TEXTOPENF-SUBTREE 103450 . 104186) (
-\TEXTOUTCHARFN 104188 . 104479) (\TEXTBACKFILEPTR 104481 . 110030) (\TEXTBOUT 110032 . 112586) (
-\TEDITOUTCCODEFN 112588 . 113699) (\TEXTSETEOF 113701 . 114216) (\TEXTSETFILEPTR 114218 . 115451) (
-\TEXTDSPXPOSITION 115453 . 116313) (\TEXTDSPYPOSITION 116315 . 116862) (\TEXTLEFTMARGIN 116864 . 
-117286) (\TEXTRIGHTMARGIN 117288 . 118036) (\TEXTDSPCHARWIDTH 118038 . 118215) (\TEXTDSPSTRINGWIDTH 
-118217 . 118396) (\TEXTDSPLINEFEED 118398 . 118500)) (118503 153841 (\TEXTBIN 118513 . 139392) (
-\TEDIT.TEXTBIN.STRINGSETUP 139394 . 144358) (\TEDIT.TEXTBIN.FILESETUP 144360 . 149881) (
-\TEDIT.TEXTBIN.NEW.PAGE 149883 . 153839)) (153842 168715 (\TEXTPEEKBIN 153852 . 165345) (
-\TEDIT.PEEKBIN.NEW.PAGE 165347 . 168713)) (168753 173973 (CGETTEXTPROP 168763 . 169223) (CTEXTPROP 
-169225 . 171573) (GETTEXTPROP 171575 . 172174) (PUTTEXTPROP 172176 . 173507) (TEXTPROP 173509 . 173971
+  (FILEMAP (NIL (2939 51978 (COPYTEXTSTREAM 2949 . 5688) (OPENTEXTSTREAM 5690 . 20957) (REOPENTEXTSTREAM
+ 20959 . 21385) (TEDIT.STREAMCHANGEDP 21387 . 21689) (TEXTSTREAMP 21691 . 22105) (TXTFILE 22107 . 
+22560) (\DELETECH 22562 . 32978) (\SETUPGETCH 32980 . 39758) (\TEDIT.REOPEN.STREAM 39760 . 41585) (
+\TEDIT.COPYTEXTSTREAM.PIECEMAPFN 41587 . 44059) (\TEXTINIT 44061 . 50011) (\TEXTMARK 50013 . 50765) (
+\TEXTTTYBOUT 50767 . 51976)) (51979 77528 (\INSERTCH 51989 . 75820) (\INSERTCR 75822 . 77526)) (77594 
+96846 (\CHTOPC 77604 . 79056) (\CHTOPCNO 79058 . 80212) (\CLEARPCTB 80214 . 80998) (
+\CREATEPIECEORSTREAM 81000 . 84388) (\DELETEPIECE 84390 . 85309) (\FINDPIECE 85311 . 85683) (
+\INSERTPIECE 85685 . 88451) (\MAKEPCTB 88453 . 90279) (\SPLITPIECE 90281 . 96018) (\INSERT.FIRST.PIECE
+ 96020 . 96844)) (96898 118873 (\TEXTCLOSEF 96908 . 98122) (\TEXTCLOSEF-SUBTREE 98124 . 98834) (
+\TEXTDSPFONT 98836 . 99832) (\TEXTEOFP 99834 . 100897) (\TEXTGETEOFPTR 100899 . 101113) (
+\TEXTGETFILEPTR 101115 . 103047) (\TEXTOPENF 103049 . 103819) (\TEXTOPENF-SUBTREE 103821 . 104557) (
+\TEXTOUTCHARFN 104559 . 104850) (\TEXTBACKFILEPTR 104852 . 110401) (\TEXTBOUT 110403 . 112957) (
+\TEDITOUTCCODEFN 112959 . 114070) (\TEXTSETEOF 114072 . 114587) (\TEXTSETFILEPTR 114589 . 115822) (
+\TEXTDSPXPOSITION 115824 . 116684) (\TEXTDSPYPOSITION 116686 . 117233) (\TEXTLEFTMARGIN 117235 . 
+117657) (\TEXTRIGHTMARGIN 117659 . 118407) (\TEXTDSPCHARWIDTH 118409 . 118586) (\TEXTDSPSTRINGWIDTH 
+118588 . 118767) (\TEXTDSPLINEFEED 118769 . 118871)) (118874 154212 (\TEXTBIN 118884 . 139763) (
+\TEDIT.TEXTBIN.STRINGSETUP 139765 . 144729) (\TEDIT.TEXTBIN.FILESETUP 144731 . 150252) (
+\TEDIT.TEXTBIN.NEW.PAGE 150254 . 154210)) (154213 169086 (\TEXTPEEKBIN 154223 . 165716) (
+\TEDIT.PEEKBIN.NEW.PAGE 165718 . 169084)) (169124 174344 (CGETTEXTPROP 169134 . 169594) (CTEXTPROP 
+169596 . 171944) (GETTEXTPROP 171946 . 172545) (PUTTEXTPROP 172547 . 173878) (TEXTPROP 173880 . 174342
 )))))
 STOP
diff --git a/library/tedit/TEDIT-TEXTOFD.LCOM b/library/tedit/TEDIT-TEXTOFD.LCOM
index 89c8e8e7..e5e87195 100644
Binary files a/library/tedit/TEDIT-TEXTOFD.LCOM and b/library/tedit/TEDIT-TEXTOFD.LCOM differ
diff --git a/lispusers/COMPAREDIRECTORIES b/lispusers/COMPAREDIRECTORIES
index c1c5a167..270a4318 100644
--- a/lispusers/COMPAREDIRECTORIES
+++ b/lispusers/COMPAREDIRECTORIES
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "17-Jul-2022 11:04:12" 
-{DSK}<Users>kaplan>Local>medley3.5>working-medley>lispusers>COMPAREDIRECTORIES.;245 127291 
+(FILECREATED "20-Jul-2022 08:54:12" 
+{DSK}<users>kaplan>local>medley3.5>working-medley>lispusers>COMPAREDIRECTORIES.;246 128062 
 
-      :CHANGES-TO (VARS COMPAREDIRECTORIESCOMS)
+      :CHANGES-TO (FNS CDPRINT.COLUMNS)
 
-      :PREVIOUS-DATE "16-Jul-2022 10:41:54" 
-{DSK}<Users>kaplan>Local>medley3.5>working-medley>lispusers>COMPAREDIRECTORIES.;244)
+      :PREVIOUS-DATE "17-Jul-2022 11:04:12" 
+{DSK}<users>kaplan>local>medley3.5>working-medley>lispusers>COMPAREDIRECTORIES.;245)
 
 
 (* ; "
@@ -753,7 +753,8 @@ Copyright (c) 1985-1988, 1990, 1994, 1998, 2018, 2020-2021 by Venue & Xerox Corp
              (TERPRI STREAM)))])
 
 (CDPRINT.COLUMNS
-  [LAMBDA (CDVALUE COLHEADINGS PRINTAUTHOR)                  (* ; "Edited 16-Jul-2022 10:40 by rmk")
+  [LAMBDA (CDVALUE COLHEADINGS PRINTAUTHOR)                  (* ; "Edited 20-Jul-2022 08:53 by rmk")
+                                                             (* ; "Edited 16-Jul-2022 10:40 by rmk")
                                                             (* ; "Edited 30-Nov-2021 14:03 by rmk:")
 
     (* ;; "Compute the column locations for CDPRINT.LINE")
@@ -780,10 +781,18 @@ Copyright (c) 1985-1988, 1990, 1994, 1998, 2018, 2020-2021 by Venue & Xerox Corp
 
                   (* ;; "Even though the longest length and author might not go with the longest file name, it is a reasonable approximation to assume that in fact the longest filename did have the longest length.  Lengths differ by just a few characters, and a long length with a short filename might balance out.  If the long file did have a long length, then it would all be exact. ")
 
-                  (SETQ MAXNAME1 (IDIFFERENCE (fetch NCFULLNAME of MAXWIDTHS1)
-                                        (fetch NCDIR OF MAXWIDTHS1)))
-                  (SETQ MAXNAME2 (IDIFFERENCE (fetch NCFULLNAME of MAXWIDTHS2)
-                                        (fetch NCDIR OF MAXWIDTHS2)))
+                  [SETQ MAXNAME1 (IF (IGREATERP (fetch NCFULLNAME of MAXWIDTHS1)
+                                            0)
+                                     THEN (IDIFFERENCE (fetch NCFULLNAME of MAXWIDTHS1)
+                                                 (fetch NCDIR OF MAXWIDTHS1))
+                                   ELSE                      (* ; 
+                                                             "Nothing in column 1, space out a bit")
+                                        (IMAX 20 (NCHARS (CAR (LISTP COLHEADINGS]
+                  [SETQ MAXNAME2 (IF (IGREATERP (fetch NCFULLNAME of MAXWIDTHS2)
+                                            0)
+                                     THEN (IDIFFERENCE (fetch NCFULLNAME of MAXWIDTHS2)
+                                                 (fetch NCDIR OF MAXWIDTHS2))
+                                   ELSE (IMAX 20 (NCHARS (CAR (LISTP COLHEADINGS]
                   (CL:WHEN PRINTAUTHOR
 
                       (* ;; "MAXAUTHOR includes its own suffixspace")
@@ -2141,25 +2150,25 @@ Copyright (c) 1985-1988, 1990, 1994, 1998, 2018, 2020-2021 by Venue & Xerox Corp
 (PUTPROPS COMPAREDIRECTORIES COPYRIGHT ("Venue & Xerox Corporation" 1985 1986 1987 1988 1990 1994 1998
  2018 2020 2021))
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (2640 22197 (COMPAREDIRECTORIES 2650 . 7483) (COMPAREDIRECTORIES.INFOS 7485 . 10359) (
-COMPAREDIRECTORIES.CANDIDATES 10361 . 13746) (CDENTRIES.SELECT 13748 . 18523) (
-COMPAREDIRECTORIES.INFOS.TYPE 18525 . 19431) (MATCHNAME 19433 . 20113) (CD.INSURECDVALUE 20115 . 21729
-) (CD.UPDATEWIDTHS 21731 . 22195)) (22198 31867 (CDFILES 22208 . 27961) (CDFILES.MATCH 27963 . 29588) 
-(CDFILES.PATS 29590 . 31865)) (31868 48910 (CDPRINT 31878 . 34395) (CDPRINT.HEADER 34397 . 35294) (
-CDPRINT.LINE 35296 . 38528) (CDPRINT.MAXWIDTHS 38530 . 42645) (CDPRINT.COLHEADERS 42647 . 43932) (
-CDPRINT.COLUMNS 43934 . 48275) (CDTEDIT 48277 . 48908)) (48911 57280 (CDMAP 48921 . 50353) (CDENTRY 
-50355 . 50664) (CDSUBSET 50666 . 52105) (CDMERGE 52107 . 55961) (CDMERGE.COMMON 55963 . 57278)) (57281
- 64819 (BINCOMP 57291 . 61580) (EOLTYPE 61582 . 64144) (EOLTYPE.SHOW 64146 . 64817)) (65347 77874 (
-FIND-UNCOMPILED-FILES 65357 . 69000) (FIND-UNSOURCED-FILES 69002 . 71386) (FIND-SOURCE-FILES 71388 . 
-73126) (FIND-COMPILED-FILES 73128 . 75005) (FIND-UNLOADED-FILES 75007 . 75860) (FIND-LOADED-FILES 
-75862 . 76290) (FIND-MULTICOMPILED-FILES 76292 . 77872)) (77875 86306 (CREATED-AS 77885 . 82682) (
-SOURCE-FOR-COMPILED-P 82684 . 85611) (COMPILE-SOURCE-DATE-DIFF 85613 . 86304)) (86307 96613 (
-FIX-DIRECTORY-DATES 86317 . 89310) (FIX-EQUIV-DATES 89312 . 90837) (COPY-COMPARED-FILES 90839 . 92660)
- (COPY-MISSING-FILES 92662 . 94819) (COMPILED-ON-SAME-SOURCE 94821 . 96611)) (96807 104153 (CDBROWSER 
-96817 . 100744) (CDBROWSER.STRINGS 100746 . 104151)) (104315 106051 (CD.TABLEITEM 104325 . 104545) (
-CD.TABLEITEM.PRINTFN 104547 . 104746) (CD.TABLEITEM.COPYFN 104748 . 105806) (
-CDTABLEBROWSER.HEADING.REPAINTFN 105808 . 106049)) (106052 126707 (CDTABLEBROWSER.WHENSELECTEDFN 
-106062 . 106530) (CD.COMMANDSELECTEDFN 106532 . 111633) (CD-MENUFN 111635 . 115946) (CD-COMPARE-FILES 
-115948 . 119300) (CDBROWSER-COPY 119302 . 122971) (CDBROWSER-DELETE-FILE 122973 . 126186) (CD-SWAPDIRS
- 126188 . 126705)))))
+  (FILEMAP (NIL (2632 22189 (COMPAREDIRECTORIES 2642 . 7475) (COMPAREDIRECTORIES.INFOS 7477 . 10351) (
+COMPAREDIRECTORIES.CANDIDATES 10353 . 13738) (CDENTRIES.SELECT 13740 . 18515) (
+COMPAREDIRECTORIES.INFOS.TYPE 18517 . 19423) (MATCHNAME 19425 . 20105) (CD.INSURECDVALUE 20107 . 21721
+) (CD.UPDATEWIDTHS 21723 . 22187)) (22190 31859 (CDFILES 22200 . 27953) (CDFILES.MATCH 27955 . 29580) 
+(CDFILES.PATS 29582 . 31857)) (31860 49681 (CDPRINT 31870 . 34387) (CDPRINT.HEADER 34389 . 35286) (
+CDPRINT.LINE 35288 . 38520) (CDPRINT.MAXWIDTHS 38522 . 42637) (CDPRINT.COLHEADERS 42639 . 43924) (
+CDPRINT.COLUMNS 43926 . 49046) (CDTEDIT 49048 . 49679)) (49682 58051 (CDMAP 49692 . 51124) (CDENTRY 
+51126 . 51435) (CDSUBSET 51437 . 52876) (CDMERGE 52878 . 56732) (CDMERGE.COMMON 56734 . 58049)) (58052
+ 65590 (BINCOMP 58062 . 62351) (EOLTYPE 62353 . 64915) (EOLTYPE.SHOW 64917 . 65588)) (66118 78645 (
+FIND-UNCOMPILED-FILES 66128 . 69771) (FIND-UNSOURCED-FILES 69773 . 72157) (FIND-SOURCE-FILES 72159 . 
+73897) (FIND-COMPILED-FILES 73899 . 75776) (FIND-UNLOADED-FILES 75778 . 76631) (FIND-LOADED-FILES 
+76633 . 77061) (FIND-MULTICOMPILED-FILES 77063 . 78643)) (78646 87077 (CREATED-AS 78656 . 83453) (
+SOURCE-FOR-COMPILED-P 83455 . 86382) (COMPILE-SOURCE-DATE-DIFF 86384 . 87075)) (87078 97384 (
+FIX-DIRECTORY-DATES 87088 . 90081) (FIX-EQUIV-DATES 90083 . 91608) (COPY-COMPARED-FILES 91610 . 93431)
+ (COPY-MISSING-FILES 93433 . 95590) (COMPILED-ON-SAME-SOURCE 95592 . 97382)) (97578 104924 (CDBROWSER 
+97588 . 101515) (CDBROWSER.STRINGS 101517 . 104922)) (105086 106822 (CD.TABLEITEM 105096 . 105316) (
+CD.TABLEITEM.PRINTFN 105318 . 105517) (CD.TABLEITEM.COPYFN 105519 . 106577) (
+CDTABLEBROWSER.HEADING.REPAINTFN 106579 . 106820)) (106823 127478 (CDTABLEBROWSER.WHENSELECTEDFN 
+106833 . 107301) (CD.COMMANDSELECTEDFN 107303 . 112404) (CD-MENUFN 112406 . 116717) (CD-COMPARE-FILES 
+116719 . 120071) (CDBROWSER-COPY 120073 . 123742) (CDBROWSER-DELETE-FILE 123744 . 126957) (CD-SWAPDIRS
+ 126959 . 127476)))))
 STOP
diff --git a/lispusers/COMPAREDIRECTORIES.LCOM b/lispusers/COMPAREDIRECTORIES.LCOM
index f5c00c66..322d9505 100644
Binary files a/lispusers/COMPAREDIRECTORIES.LCOM and b/lispusers/COMPAREDIRECTORIES.LCOM differ
diff --git a/lispusers/EDITKEYS b/lispusers/EDITKEYS
index b1b9c7aa..b1b74a7c 100644
--- a/lispusers/EDITKEYS
+++ b/lispusers/EDITKEYS
@@ -1,70 +1,96 @@
-(DEFINE-FILE-INFO §READTABLE "INTERLISP" §PACKAGE "INTERLISP")
-(FILECREATED " 9-Feb-87 21:28:31" {ERIS}<LISPUSERS>LYRIC>EDITKEYS.;2 5949   
+(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-      previous date%: " 5-Nov-85 15:37:40" {ERIS}<LISPUSERS>LYRIC>EDITKEYS.;1)
+(FILECREATED "20-Jul-2022 08:41:05" 
+{DSK}<users>kaplan>local>medley3.5>working-medley>lispusers>EDITKEYS.;3 7073   
+
+      :CHANGES-TO (FNS BUILDFNKEYS)
+                  (VARS EDITKEYSCOMS)
+
+      :PREVIOUS-DATE " 9-Feb-87 21:28:31" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>lispusers>EDITKEYS.;1)
 
 
-(* "
-Copyright (c) 1985, 1987 by Xerox Corporation.  All rights reserved.
+(* ; "
+Copyright (c) 1985, 1987 by Xerox Corporation.
 ")
 
 (PRETTYCOMPRINT EDITKEYSCOMS)
 
-(RPAQQ EDITKEYSCOMS ((VARS KEY.TEMPLATE)
-                     (FNS BUILDFNKEYS KEY.BITMAP)
-                     (P (* could have (STRIKEOUT))
-                        (BUILDFNKEYS '((BOLD BOLD)
-                                       (ITALICS ITALICS)
-                                       (UNDERLINE (UNDER- LINE))
-                                       (SUPERSCRIPT (SUPER/ SUB))
-                                       (LARGER (LARGER SMALLER))
-                                       (DEFAULTS DEFAULTS)
-                                       (CASE CASE)
-                                       (CENTER JUSTIFY)
-                                       (AGAIN REDO)
-                                       (HELP HELP)) '(Function Keys) 1))))
+(RPAQQ EDITKEYSCOMS
+       ((VARS KEY.TEMPLATE)
+        (FNS BUILDFNKEYS KEY.BITMAP)
+        (P (* could have (STRIKEOUT))
+           (BUILDFNKEYS '((BOLD BOLD)
+                          (ITALICS ITALICS)
+                          (UNDERLINE (UNDER- LINE))
+                          (SUPERSCRIPT (SUPER/ SUB))
+                          (LARGER (LARGER SMALLER))
+                          (DEFAULTS DEFAULTS)
+                          (CASE CASE)
+                          (CENTER JUSTIFY)
+                          (AGAIN REDO)
+                          (HELP HELP))
+                  '(Tedit Keys)
+                  1))))
 
 (RPAQQ KEY.TEMPLATE #*(78 48)OOOOOOOOOOOOOOOOOOOLON@@@@@@@@@@@@@@@AOLO@@@@@@@@@@@@@@@@@CLO@@@@@@@@@@@@@@@@@CLMH@@@@@@@@@@@@@@@@DLNLGOOOOOOOOOOOOOOHHLMFL@@@@@@@@@@@@@@M@LJK@@@@@@@@@@@@@@@B@DMF@@@@@@@@@@@@@@@A@DJN@@@@@@@@@@@@@@@AHDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMD@@@@@@@@@@@@@@@@HDJL@@@@@@@@@@@@@@@@HDMF@@@@@@@@@@@@@@@AHDJJ@@@@@@@@@@@@@@@A@DMG@@@@@@@@@@@@@@@B@DNEL@@@@@@@@@@@@@@O@LLIGOOOOOOOOOOOOOOMHLOBBJJJJJJJJJJJJJJJLLNDEEEEEEEEEEEEEEEEGLOHJJJJJJJJJJJJJJJJKLOLEEEEEEEEEEEEEEEEOLOOOOOOOOOOOOOOOOOOOL
 )
 (DEFINEQ
 
 (BUILDFNKEYS
-  [LAMBDA (KEYS TITLE NROWS)                                 (* lmm " 5-Nov-85 15:35")
-    (SHRINKW
-     (ADDMENU
-      [create
-       MENU
-       ITEMS _
-       [for KEY in KEYS
-          collect (LIST (KEY.BITMAP (CADR KEY))
-                        (LET [(KEYN (OR (SMALLP (CAR KEY))
-                                        (\KEYNAMETONUMBER (CAR KEY]
-                             (for LST in (LIST \DOVEKEYACTIONS \DLIONKEYACTIONS \ORIGKEYACTIONS)
-                                do (AND [SETQ $$VAL (for KEY in LST
-                                                       when (EQ (OR (SMALLP (CAR KEY))
-                                                                    (\KEYNAMETONUMBER (CAR KEY)))
-                                                                KEYN)
-                                                       do (RETURN (CADR KEY]
-                                        (RETURN (LIST (OR (SMALLP (CAR $$VAL))
-                                                          (CHARCODE.DECODE (CAR $$VAL)))
-                                                      (OR (SMALLP (CADR $$VAL))
-                                                          (CHARCODE.DECODE (CADR $$VAL]
-       TITLE _ (SUBSTRING TITLE 2 -2)
-       MENUROWS _ NROWS
-       WHENSELECTEDFN _ (FUNCTION (LAMBDA (X)
-                                    (BKSYSCHARCODE (if (SHIFTDOWNP 'SHIFT)
-                                                       then (CADR (CADR X))
-                                                     else (CAR (CADR X]
-      NIL
-      (create POSITION
-             XCOORD _ (PLUS (DIFFERENCE (QUOTIENT SCREENWIDTH 2)
-                                   (QUOTIENT (TIMES (BITMAPWIDTH KEY.TEMPLATE)
-                                                    (LENGTH KEYS))
-                                          2))
-                            (TIMES 2 WBorder))
-             YCOORD _ 0))
-     (KEY.BITMAP TITLE)
-     '(0 . 0])
+  [LAMBDA (KEYS TITLE NROWS)
+
+    (* ;; "Edited 20-Jul-2022 08:40 by rmk:  BKSYSBUF only if the TTY is TEDIT, change title to Tedit Keys, expand with left button.  Move with background menu")
+
+    (* ;; "Edited 20-Jul-2022 07:56 by rmk")
+                                                             (* lmm " 5-Nov-85 15:35")
+    (LET
+     (ICONWINDOW)
+     [SETQ ICONWINDOW
+      (SHRINKW
+       (ADDMENU
+        [create
+         MENU
+         ITEMS _
+         [for KEY in KEYS
+            collect
+            (LIST (KEY.BITMAP (CADR KEY))
+                  (LET [(KEYN (OR (SMALLP (CAR KEY))
+                                  (\KEYNAMETONUMBER (CAR KEY]
+                       (for LST in (LIST \DOVEKEYACTIONS \DLIONKEYACTIONS \ORIGKEYACTIONS)
+                          do (AND [SETQ $$VAL (for KEY in LST
+                                                 when (EQ (OR (SMALLP (CAR KEY))
+                                                              (\KEYNAMETONUMBER (CAR KEY)))
+                                                          KEYN) do (RETURN (CADR KEY]
+                                  (RETURN (LIST (OR (SMALLP (CAR $$VAL))
+                                                    (CHARCODE.DECODE (CAR $$VAL)))
+                                                (OR (SMALLP (CADR $$VAL))
+                                                    (CHARCODE.DECODE (CADR $$VAL]
+         TITLE _ (SUBSTRING TITLE 2 -2)
+         MENUROWS _ NROWS
+         WHENSELECTEDFN _ (FUNCTION (LAMBDA (X)
+                                      (CL:WHEN (EQ '\TEDIT.PROCENTRYFN (FETCH (PROCESS PROCTTYENTRYFN
+                                                                                     ) OF (
+                                                                                          TTY.PROCESS
+                                                                                           )))
+                                          [BKSYSCHARCODE (if (SHIFTDOWNP 'SHIFT)
+                                                             then (CADR (CADR X))
+                                                           else (CAR (CADR X])]
+        NIL
+        (create POSITION
+               XCOORD _ (PLUS (DIFFERENCE (QUOTIENT SCREENWIDTH 2)
+                                     (QUOTIENT (TIMES (BITMAPWIDTH KEY.TEMPLATE)
+                                                      (LENGTH KEYS))
+                                            2))
+                              (TIMES 2 WBorder))
+               YCOORD _ 0))
+       (KEY.BITMAP TITLE)
+       '(0 . 0]
+     [WINDOWPROP ICONWINDOW 'BUTTONEVENTFN (FUNCTION (LAMBDA (ICONW)
+                                                       (CL:WHEN (LASTMOUSESTATE (OR LEFT MIDDLE))
+                                                           (CURSOR (PROG1 (CURSOR WAITINGCURSOR)
+                                                                          (EXPANDW ICONW))))]
+     ICONWINDOW])
 
 (KEY.BITMAP
   [LAMBDA (X)                                                (* lmm " 5-Nov-85 14:04")
@@ -97,8 +123,10 @@ Copyright (c) 1985, 1987 by Xerox Corporation.  All rights reserved.
                        DS)))
           (RETURN BITMAP])
 )
-(* could have (STRIKEOUT))
-(BUILDFNKEYS '((BOLD BOLD)
+
+                                                             (* could have (STRIKEOUT))
+
+(BUILDFNKEYS '((BOLD BOLD)
                (ITALICS ITALICS)
                (UNDERLINE (UNDER- LINE))
                (SUPERSCRIPT (SUPER/ SUB))
@@ -107,8 +135,10 @@ Copyright (c) 1985, 1987 by Xerox Corporation.  All rights reserved.
                (CASE CASE)
                (CENTER JUSTIFY)
                (AGAIN REDO)
-               (HELP HELP)) '(Function Keys) 1)
+               (HELP HELP))
+       '(Tedit Keys)
+       1)
 (PUTPROPS EDITKEYS COPYRIGHT ("Xerox Corporation" 1985 1987))
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (2077 5483 (BUILDFNKEYS 2087 . 4099) (KEY.BITMAP 4101 . 5481)))))
+  (FILEMAP (NIL (2103 6525 (BUILDFNKEYS 2113 . 5141) (KEY.BITMAP 5143 . 6523)))))
 STOP
diff --git a/lispusers/EDITKEYS.LCOM b/lispusers/EDITKEYS.LCOM
index 1b79ab56..21452fbb 100644
Binary files a/lispusers/EDITKEYS.LCOM and b/lispusers/EDITKEYS.LCOM differ
diff --git a/lispusers/GITFNS b/lispusers/GITFNS
index a9ef67b1..c5b6720e 100644
--- a/lispusers/GITFNS
+++ b/lispusers/GITFNS
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "17-Jul-2022 11:13:13" 
-{DSK}<Users>kaplan>Local>medley3.5>working-medley>lispusers>GITFNS.;418 112329 
+(FILECREATED "18-Jul-2022 21:45:18" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>lispusers>GITFNS.;428 113994 
 
-      :CHANGES-TO (FNS GIT-PULL-REQUESTS GIT-BRANCH-DIFF PROCESS-COMMAND)
+      :CHANGES-TO (FNS GIT-MAKE-BRANCH)
 
-      :PREVIOUS-DATE "16-Jul-2022 22:22:54" 
-{DSK}<users>kaplan>local>medley3.5>working-medley>lispusers>GITFNS.;414)
+      :PREVIOUS-DATE "18-Jul-2022 09:53:48" 
+{DSK}<Users>kaplan>Local>medley3.5>working-medley>lispusers>GITFNS.;427)
 
 
 (PRETTYCOMPRINT GITFNSCOMS)
@@ -102,7 +102,7 @@
         (* ;; "Utilities")
 
         (FNS CDGITDIR GIT-COMMAND GITORIGIN GIT-INITIALS GIT-COMMAND-TO-FILE PROCESS-COMMAND 
-             GIT-RESULT-TO-LINES)
+             GIT-RESULT-TO-LINES STRIPLOCAL)
         (PROPS (GITFNS FILETYPE))))
 
 
@@ -803,6 +803,8 @@
 (GIT-GET-FILE
   [LAMBDA (BRANCH GITFILE LOCALFILE NOERROR PROJECT)
 
+    (* ;; "Edited 18-Jul-2022 09:18 by rmk")
+
     (* ;; "Edited  8-Jul-2022 10:36 by rmk")
 
     (* ;; "Edited  5-Jul-2022 00:09 by rmk: Redirect show command to tmp/ rename to localfile")
@@ -833,8 +835,8 @@
          (IF RESULTFILE
              THEN (CL:MULTIPLE-VALUE-SETQ (TYPE DATE)
                          (LISPFILETYPE RESULTFILE))
-                  (SETFILEINFO RESULTFILE 'CREATIONDATE (OR DATE (GIT-FILE-DATE GITFILE BRANCH 
-                                                                        PROJECT)))
+                  (CL:WHEN (OR DATE (SETQ DATE (GIT-FILE-DATE GITFILE BRANCH PROJECT NOERROR)))
+                      (SETFILEINFO RESULTFILE 'CREATIONDATE DATE))
                   (RENAMEFILE RESULTFILE LOCALFILE)
            ELSEIF NOERROR
              THEN NIL
@@ -1166,7 +1168,8 @@
     (MKATOM (CONCAT "local/" (CAR (GIT-COMMAND "git rev-parse --abbrev-ref HEAD" NIL NIL PROJECT])
 
 (GIT-MAKE-BRANCH
-  [LAMBDA (NAME TITLESTRING PROJECT)                         (* ; "Edited 19-May-2022 17:57 by rmk")
+  [LAMBDA (NAME TITLESTRING PROJECT)                         (* ; "Edited 18-Jul-2022 21:45 by rmk")
+                                                             (* ; "Edited 19-May-2022 17:57 by rmk")
                                                              (* ; "Edited  9-May-2022 15:13 by rmk")
 
     (* ;; " The new branch is directly under the currently checked out branch.  Maybe it should always make it under the main branch?")
@@ -1188,19 +1191,25 @@
                                                     ELSE C]
         (SETQ NAME (CONCAT NAME "--" TITLESTRING)))
     (LET ((UNDER (GIT-WHICH-BRANCH PROJECT))
-          (RESULT (GIT-COMMAND (CONCAT "git checkout -b " NAME)
-                         NIL NIL PROJECT)))
-         (IF (STREQUAL (CAR RESULT)
-                    (CONCAT "Switched to a new branch '" NAME "'"))
-             THEN (CONCAT (CAR RESULT)
-                         " under " UNDER)
-           ELSEIF (STREQUAL (CAR RESULT)
-                         (CONCAT "fatal: A branch named '" NAME "' already exists."))
-             THEN (ERROR NAME "already exists")
-           ELSE (HELP "Unexpected git result" RESULT])
+          RESULT)
+         (IF (EQ 'Y (ASKUSER NIL 'N (CONCAT "Branch " NAME " will be created under " UNDER 
+                                           ". Is that OK? ")))
+             THEN (SETQ RESULT (GIT-COMMAND (CONCAT "git checkout -b " NAME)
+                                      NIL NIL PROJECT))
+                  (IF (STREQUAL (CAR RESULT)
+                             (CONCAT "Switched to a new branch '" NAME "'"))
+                      THEN (CONCAT (CAR RESULT)
+                                  " under " UNDER)
+                    ELSEIF (STREQUAL (CAR RESULT)
+                                  (CONCAT "fatal: A branch named '" NAME "' already exists."))
+                      THEN (ERROR NAME "already exists")
+                    ELSE (HELP "Unexpected git result" RESULT))
+           ELSE (PRINTOUT T "New branch not created" T)
+                NIL])
 
 (GIT-BRANCHES
-  [LAMBDA (WHERE PROJECT EXCLUDEMERGED)                      (* ; "Edited  8-Jul-2022 10:33 by rmk")
+  [LAMBDA (WHERE PROJECT EXCLUDEMERGED)                      (* ; "Edited 18-Jul-2022 08:11 by rmk")
+                                                             (* ; "Edited  8-Jul-2022 10:33 by rmk")
                                                              (* ; "Edited 23-May-2022 14:25 by rmk")
                                                              (* ; "Edited 19-May-2022 10:06 by rmk")
                                                              (* ; "Edited  9-May-2022 14:10 by rmk")
@@ -1211,17 +1220,20 @@
 
     (LET ([LOCAL (CL:WHEN (MEMB (U-CASE WHERE)
                                 '(NIL ALL LOCAL))
-                     (FOR B IN (GIT-COMMAND "git branch" NIL NIL PROJECT)
-                        COLLECT (PACK* "local/" (SUBATOM B 3))))]
+                     [FOR B IN (GIT-COMMAND "git branch" NIL NIL PROJECT)
+                        COLLECT (SUBATOM B 3 (SUB1 (OR (STRPOS " -> " B)
+                                                       0])]
           [REMOTE (CL:WHEN (MEMB (U-CASE WHERE)
                                  '(NIL ALL REMOTE T))
-                      (FOR B IN (GIT-COMMAND "git branch -r" NIL NIL PROJECT)
-                         COLLECT (SUBATOM B 3)))]
+                      [FOR B IN (GIT-COMMAND "git branch -r" NIL NIL PROJECT)
+                         COLLECT (SUBATOM B 3 (SUB1 (OR (STRPOS " -> " B)
+                                                        0])]
           BRANCHES)
-         (SETQ BRANCHES (APPEND LOCAL REMOTE))
+         (SETQ BRANCHES (UNION LOCAL REMOTE))
          (CL:WHEN EXCLUDEMERGED
              (SETQ BRANCHES (FOR B (MAINBRANCH _ (GIT-MAINBRANCH PROJECT 'LOCAL)) IN BRANCHES
-                               WHEN (GIT-COMMIT-DIFFS B MAINBRANCH PROJECT) COLLECT B)))
+                               WHEN (EQUAL (GIT-COMMAND (CONCAT "git merge-base " B " " MAINBRANCH))
+                                           (GIT-COMMAND (CONCAT "git rev-parse " B))) COLLECT B)))
          (SORT BRANCHES])
 
 (GIT-BRANCH-EXISTS?
@@ -2030,7 +2042,8 @@
         (ERROR "INITIALS is not set"])
 
 (GIT-COMMAND-TO-FILE
-  [LAMBDA (CMD PROJECT NOERROR)                              (* ; "Edited 16-Jul-2022 10:09 by rmk")
+  [LAMBDA (CMD PROJECT NOERROR)                              (* ; "Edited 18-Jul-2022 09:53 by rmk")
+                                                             (* ; "Edited 16-Jul-2022 10:09 by rmk")
                                                              (* ; "Edited  9-Jul-2022 18:55 by rmk")
                                                              (* ; "Edited  8-Jul-2022 08:51 by rmk")
 
@@ -2040,6 +2053,7 @@
 
     (* ;; "Filename of  the form /tmp/medley-gitresult-{IDATE}-{rand} ")
 
+    (SETQ CMD (STRIPLOCAL CMD))
     (LET* ([PROJECTNAME (L-CASE (GIT-GET-PROJECT PROJECT 'PROJECTNAME]
            (DATE (IDATE))
            (RAND (RAND))
@@ -2104,35 +2118,47 @@
                                                                         NIL :EOF-VALUE NIL))
                                                       (OR ALL (NOT (STRPOS ".git" LINE 1]
               COLLECT LINE])
+
+(STRIPLOCAL
+  [LAMBDA (STRING)                                           (* ; "Edited 18-Jul-2022 09:52 by rmk")
+
+    (* ;; "Removes local/ substrings wherever they appear.  To be used in coerecing from a lisp internal convention that local branches carry a local tag to the git convention that an unqualified name is local.")
+
+    [BIND POS WHILE (SETQ POS (STRPOS "local/" STRING))
+       DO (SETQ STRING (CONCAT (SUBSTRING STRING 1 (SUB1 POS))
+                              (OR (SUBSTRING STRING (IPLUS POS (CONSTANT (NCHARS "local/")))
+                                         -1)
+                                  ""]
+    STRING])
 )
 
 (PUTPROPS GITFNS FILETYPE :TCOMPL)
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (3626 18158 (GIT-CLONEP 3636 . 4899) (GIT-MAKE-PROJECT 4901 . 12999) (GIT-GET-PROJECT 
-13001 . 14926) (GIT-PROJECT-PATH 14928 . 15972) (FIND-ANCESTOR-DIRECTORY 15974 . 16323) (
-GIT-FIND-CLONE 16325 . 17406) (GIT-MAINBRANCH 17408 . 17803) (GIT-MAINBRANCH? 17805 . 18156)) (24475 
-27263 (ALLSUBDIRS 24485 . 25771) (MEDLEYSUBDIRS 25773 . 26466) (GITSUBDIRS 26468 . 27261)) (27264 
-32054 (TOGIT 27274 . 28680) (FROMGIT 28682 . 29663) (GIT-DELETE-FILE 29665 . 30511) (
-MYMEDLEY-DELETE-FILES 30513 . 32052)) (32055 34587 (MYMEDLEYSUBDIR 32065 . 32521) (GITSUBDIR 32523 . 
-32966) (STRIPDIR 32968 . 33339) (STRIPHOST 33341 . 33581) (STRIPNAME 33583 . 34336) (STRIPWHERE 34338
- . 34585)) (34588 36490 (GFILE4MFILE 34598 . 34961) (MFILE4GFILE 34963 . 35532) (GIT-REPO-FILENAME 
-35534 . 36488)) (36539 46327 (GIT-COMMIT 36549 . 37375) (GIT-PUSH 37377 . 38021) (GIT-PULL 38023 . 
-38635) (GIT-APPROVAL 38637 . 38986) (GIT-GET-FILE 38988 . 40919) (GIT-FILE-EXISTS? 40921 . 41195) (
-GIT-REMOTE-UPDATE 41197 . 41921) (GIT-REMOTE-ADD 41923 . 42230) (GIT-FILE-DATE 42232 . 43163) (
-GIT-FILE-HISTORY 43165 . 45099) (GIT-PRINT-FILE-HISTORY 45101 . 46151) (GIT-FETCH 46153 . 46325)) (
-46357 57089 (GIT-BRANCH-DIFF 46367 . 53151) (GIT-COMMIT-DIFFS 53153 . 53706) (GIT-BRANCH-RELATIONS 
-53708 . 57087)) (57134 67092 (GIT-BRANCH-NUM 57144 . 57717) (GIT-CHECKOUT 57719 . 58778) (
-GIT-WHICH-BRANCH 58780 . 59078) (GIT-MAKE-BRANCH 59080 . 60824) (GIT-BRANCHES 60826 . 62424) (
-GIT-BRANCH-EXISTS? 62426 . 63130) (GIT-PICK-BRANCH 63132 . 63460) (GIT-PRC-MENU 63462 . 65210) (
-GIT-PULL-REQUESTS 65212 . 66478) (GIT-SHORT-BRANCH-NAME 66480 . 66771) (GIT-LONG-NAME 66773 . 67090)) 
-(67122 70457 (GIT-MY-CURRENT-BRANCH 67132 . 67502) (GIT-MY-BRANCHP 67504 . 68009) (GIT-MY-NEXT-BRANCH 
-68011 . 68505) (GIT-MY-BRANCHES 68507 . 70455)) (70503 74455 (GIT-ADD-WORKTREE 70513 . 71997) (
-GIT-REMOVE-WORKTREE 71999 . 72929) (GIT-LIST-WORKTREES 72931 . 73735) (WORKTREEDIR 73737 . 74453)) (
-74503 104485 (GIT-GET-DIFFERENT-FILES 74513 . 80338) (GIT-BRANCHES-COMPARE-DIRECTORIES 80340 . 86182) 
-(GIT-WORKING-COMPARE-DIRECTORIES 86184 . 90930) (GIT-COMPARE-WORKTREE 90932 . 94910) (GITCDOBJBUTTONFN
- 94912 . 99402) (GIT-CD-LABELFN 99404 . 100486) (GIT-CD-MENUFN 100488 . 102695) (
-GIT-WORKING-COMPARE-FILES 102697 . 103317) (GIT-BRANCHES-COMPARE-FILES 103319 . 104483)) (104555 
-112262 (CDGITDIR 104565 . 105125) (GIT-COMMAND 105127 . 106685) (GITORIGIN 106687 . 107384) (
-GIT-INITIALS 107386 . 107690) (GIT-COMMAND-TO-FILE 107692 . 111036) (PROCESS-COMMAND 111038 . 111651) 
-(GIT-RESULT-TO-LINES 111653 . 112260)))))
+  (FILEMAP (NIL (3603 18135 (GIT-CLONEP 3613 . 4876) (GIT-MAKE-PROJECT 4878 . 12976) (GIT-GET-PROJECT 
+12978 . 14903) (GIT-PROJECT-PATH 14905 . 15949) (FIND-ANCESTOR-DIRECTORY 15951 . 16300) (
+GIT-FIND-CLONE 16302 . 17383) (GIT-MAINBRANCH 17385 . 17780) (GIT-MAINBRANCH? 17782 . 18133)) (24452 
+27240 (ALLSUBDIRS 24462 . 25748) (MEDLEYSUBDIRS 25750 . 26443) (GITSUBDIRS 26445 . 27238)) (27241 
+32031 (TOGIT 27251 . 28657) (FROMGIT 28659 . 29640) (GIT-DELETE-FILE 29642 . 30488) (
+MYMEDLEY-DELETE-FILES 30490 . 32029)) (32032 34564 (MYMEDLEYSUBDIR 32042 . 32498) (GITSUBDIR 32500 . 
+32943) (STRIPDIR 32945 . 33316) (STRIPHOST 33318 . 33558) (STRIPNAME 33560 . 34313) (STRIPWHERE 34315
+ . 34562)) (34565 36467 (GFILE4MFILE 34575 . 34938) (MFILE4GFILE 34940 . 35509) (GIT-REPO-FILENAME 
+35511 . 36465)) (36516 46338 (GIT-COMMIT 36526 . 37352) (GIT-PUSH 37354 . 37998) (GIT-PULL 38000 . 
+38612) (GIT-APPROVAL 38614 . 38963) (GIT-GET-FILE 38965 . 40930) (GIT-FILE-EXISTS? 40932 . 41206) (
+GIT-REMOTE-UPDATE 41208 . 41932) (GIT-REMOTE-ADD 41934 . 42241) (GIT-FILE-DATE 42243 . 43174) (
+GIT-FILE-HISTORY 43176 . 45110) (GIT-PRINT-FILE-HISTORY 45112 . 46162) (GIT-FETCH 46164 . 46336)) (
+46368 57100 (GIT-BRANCH-DIFF 46378 . 53162) (GIT-COMMIT-DIFFS 53164 . 53717) (GIT-BRANCH-RELATIONS 
+53719 . 57098)) (57145 67947 (GIT-BRANCH-NUM 57155 . 57728) (GIT-CHECKOUT 57730 . 58789) (
+GIT-WHICH-BRANCH 58791 . 59089) (GIT-MAKE-BRANCH 59091 . 61304) (GIT-BRANCHES 61306 . 63279) (
+GIT-BRANCH-EXISTS? 63281 . 63985) (GIT-PICK-BRANCH 63987 . 64315) (GIT-PRC-MENU 64317 . 66065) (
+GIT-PULL-REQUESTS 66067 . 67333) (GIT-SHORT-BRANCH-NAME 67335 . 67626) (GIT-LONG-NAME 67628 . 67945)) 
+(67977 71312 (GIT-MY-CURRENT-BRANCH 67987 . 68357) (GIT-MY-BRANCHP 68359 . 68864) (GIT-MY-NEXT-BRANCH 
+68866 . 69360) (GIT-MY-BRANCHES 69362 . 71310)) (71358 75310 (GIT-ADD-WORKTREE 71368 . 72852) (
+GIT-REMOVE-WORKTREE 72854 . 73784) (GIT-LIST-WORKTREES 73786 . 74590) (WORKTREEDIR 74592 . 75308)) (
+75358 105340 (GIT-GET-DIFFERENT-FILES 75368 . 81193) (GIT-BRANCHES-COMPARE-DIRECTORIES 81195 . 87037) 
+(GIT-WORKING-COMPARE-DIRECTORIES 87039 . 91785) (GIT-COMPARE-WORKTREE 91787 . 95765) (GITCDOBJBUTTONFN
+ 95767 . 100257) (GIT-CD-LABELFN 100259 . 101341) (GIT-CD-MENUFN 101343 . 103550) (
+GIT-WORKING-COMPARE-FILES 103552 . 104172) (GIT-BRANCHES-COMPARE-FILES 104174 . 105338)) (105410 
+113927 (CDGITDIR 105420 . 105980) (GIT-COMMAND 105982 . 107540) (GITORIGIN 107542 . 108239) (
+GIT-INITIALS 108241 . 108545) (GIT-COMMAND-TO-FILE 108547 . 112036) (PROCESS-COMMAND 112038 . 112651) 
+(GIT-RESULT-TO-LINES 112653 . 113260) (STRIPLOCAL 113262 . 113925)))))
 STOP
diff --git a/lispusers/GITFNS.LCOM b/lispusers/GITFNS.LCOM
index 2e26b497..e70e6490 100644
Binary files a/lispusers/GITFNS.LCOM and b/lispusers/GITFNS.LCOM differ
