diff --git a/lispusers/COMPAREDIRECTORIES b/lispusers/COMPAREDIRECTORIES
index cfe48dc5..2531735b 100644
--- a/lispusers/COMPAREDIRECTORIES
+++ b/lispusers/COMPAREDIRECTORIES
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "25-Oct-2025 23:59:24" {MEDLEY}<lispusers>COMPAREDIRECTORIES.;2 135376 
+(FILECREATED " 8-Nov-2025 13:07:39" {WMEDLEY}<lispusers>COMPAREDIRECTORIES.;285 138536 
 
       :EDIT-BY rmk
 
-      :CHANGES-TO (FNS CDBROWSER-COPY)
+      :CHANGES-TO (FNS CD-MENUFN CDBROWSER-COPY)
 
-      :PREVIOUS-DATE "22-Oct-2025 08:32:01" {WMEDLEY}<lispusers>COMPAREDIRECTORIES.;272)
+      :PREVIOUS-DATE "28-Oct-2025 14:52:05" {WMEDLEY}<lispusers>COMPAREDIRECTORIES.;280)
 
 
 (PRETTYCOMPRINT COMPAREDIRECTORIESCOMS)
@@ -1707,6 +1707,8 @@
 (CDBROWSER
   [LAMBDA (CDVALUE TITLE COLHEADINGS BROWSERPROPS SEPARATEDIRECTIONS MENUITEMS)
 
+    (* ;; "Edited 28-Oct-2025 14:49 by rmk")
+
     (* ;; "Edited 28-Jan-2022 17:01 by rmk: a table browser for the differences in CDVALUE.")
 
     (* ;; "Creates a table browser for the differences in CDVALUE.")
@@ -1752,7 +1754,7 @@
              [SETQ BROWSER (TB.MAKE.BROWSER (FOR PAIR IN STRINGS COLLECT (CD.TABLEITEM PAIR))
                                   WINDOW
                                   `(PRINTFN CD.TABLEITEM.PRINTFN COPYFN CD.TABLEITEM.COPYFN USERDATA
-                                          ,(APPEND BROWSERPROPS (LIST 'CDVALUE CDVALUE]
+                                          (,@BROWSERPROPS (CDVALUE ,@CDVALUE]
              (ATTACHMENU (CREATE MENU
                                 TITLE _ " CD commands "
                                 MENUFONT _ DEFAULTFONT
@@ -1893,7 +1895,8 @@
            'DON'T])
 
 (CD.COMMANDSELECTEDFN
-  [LAMBDA (MENUITEM MENU KEY)                                (* ; "Edited  6-Mar-2022 19:52 by rmk")
+  [LAMBDA (MENUITEM MENU KEY)                                (* ; "Edited 28-Oct-2025 14:34 by rmk")
+                                                             (* ; "Edited  6-Mar-2022 19:52 by rmk")
                                                              (* ; "Edited 24-Feb-2022 19:52 by rmk")
                                                              (* ; "Edited  5-Feb-2022 17:23 by rmk")
                                                              (* ; "Edited 27-Jan-2022 17:46 by rmk")
@@ -1944,7 +1947,8 @@
                                             (LABEL1 (OR (CAR LABELS)
                                                         FILE1))
                                             (LABEL2 (OR (CADR LABELS)
-                                                        FILE2)))
+                                                        FILE2))
+                                            TEMP)
                                            (DECLARE (SPECVARS . T))
 
                                            (* ;; 
@@ -1958,6 +1962,16 @@
                                                                     OF (FETCH (CDENTRY INFO2)
                                                                           OF CDENTRY)))
                                                   (SETQ FILE2 NIL))
+                                           (CL:WHEN (SETQ TEMP (SGETMULTI (fetch (TABLEBROWSER 
+                                                                                        TBUSERDATA)
+                                                                             of CDBROWSER)
+                                                                      'ORIGINALFILES FILE1))
+                                                  (SETQ FILE1 TEMP))
+                                           (CL:WHEN (SETQ TEMP (SGETMULTI (fetch (TABLEBROWSER 
+                                                                                        TBUSERDATA)
+                                                                             of CDBROWSER)
+                                                                      'ORIGINALFILES FILE2))
+                                                  (SETQ FILE2 TEMP))
 
                                  (* ;; "If USERDATA contains a LABELFN, then it is applied to the files and the rest of the USERDATA to produce abbreviated labels for titles and headers.")
 
@@ -1969,6 +1983,10 @@
 (CD-MENUFN
   [LAMBDA (TBITEM MENUITEM CDBROWSER KEY)
 
+    (* ;; "Edited  8-Nov-2025 13:06 by rmk")
+
+    (* ;; "Edited 28-Oct-2025 17:35 by rmk")
+
     (* ;; "Edited 26-Mar-2025 09:39 by rmk")
 
     (* ;; "Edited 18-Feb-2025 23:36 by rmk")
@@ -1996,7 +2014,8 @@
               (Compare (IF (AND FILE1 FILE2)
                            THEN (CD-COMPARE-FILES FILE1 FILE2 LABEL1 LABEL2 TYPE (WINDOWPROP
                                                                                   WINDOW
-                                                                                  'REGION))
+                                                                                  'REGION)
+                                       CDBROWSER)
                          ELSE (FLASHWINDOW T)
                               (PRIN3 "Only one file" T)))
               (See% left (IF FILE1
@@ -2060,18 +2079,20 @@
                                         NIL))))
               (Copy% -> (CDBROWSER-COPY CDBROWSER TBITEM 'LEFT))
               (Copy% <- (CDBROWSER-COPY CDBROWSER TBITEM 'RIGHT))
-              (Delete% <- (CDBROWSER-DELETE-FILE CDBROWSER TBITEM 'LEFT T))
+              (Delete% <- (CDBROWSER-DELETE-FILE CDBROWSER TBITEM KEY 'LEFT T))
               (|Delete ALL <-| 
-                   (CDBROWSER-DELETE-FILE CDBROWSER TBITEM 'LEFT NIL))
-              (Delete% -> (CDBROWSER-DELETE-FILE CDBROWSER TBITEM 'RIGHT T))
+                   (CDBROWSER-DELETE-FILE CDBROWSER TBITEM KEY 'LEFT NIL))
+              (Delete% -> (CDBROWSER-DELETE-FILE CDBROWSER TBITEM KEY 'RIGHT T))
               (|Delete ALL ->| 
-                   (CDBROWSER-DELETE-FILE CDBROWSER TBITEM 'RIGHT NIL))
+                   (CDBROWSER-DELETE-FILE CDBROWSER TBITEM KEY 'RIGHT NIL))
               (SHOULDNT)))
          (CLOSEWITH CHILDREN WINDOW)
          (MOVEWITH CHILDREN WINDOW])
 
 (CD-COMPARE-FILES
-  [LAMBDA (FILE1 FILE2 LABEL1 LABEL2 TYPE PARENTREGION)      (* ; "Edited 22-May-2022 14:41 by rmk")
+  [LAMBDA (FILE1 FILE2 LABEL1 LABEL2 TYPE PARENTREGION CDBROWSER)
+                                                             (* ; "Edited 28-Oct-2025 10:42 by rmk")
+                                                             (* ; "Edited 22-May-2022 14:41 by rmk")
     (PROG NIL
           (SETQ FILE1 (OR (STREAMP FILE1)
                           (INFILEP FILE1)))
@@ -2094,7 +2115,7 @@
                                                         `(,PARENTREGION 0.125)
                                                         (IPLUS (FETCH (REGION BOTTOM) OF PARENTREGION
                                                                       )
-                                                               20)
+                                                               70)
                                                         NIL))))
                       (COMPILED (FLASHWINDOW T)
                                 (PRIN3 "Cannot compare compiled files" T))
@@ -2123,7 +2144,8 @@
                                                              NIL])
 
 (CDBROWSER-COPY
-  [LAMBDA (CDBROWSER TBITEM SOURCE UNIXDEST)                 (* ; "Edited 25-Oct-2025 23:58 by rmk")
+  [LAMBDA (CDBROWSER TBITEM SOURCE UNIXDEST)                 (* ; "Edited 28-Oct-2025 17:39 by rmk")
+                                                             (* ; "Edited 25-Oct-2025 23:58 by rmk")
                                                              (* ; "Edited 24-May-2022 15:49 by rmk")
                                                              (* ; "Edited 25-Apr-2022 09:24 by rmk")
                                                              (* ; "Edited  5-Feb-2022 17:27 by rmk")
@@ -2137,7 +2159,7 @@
     (* ;; "Returns NIL if the copy fails.")
 
     (CL:UNLESS (TB.ITEM.DELETED? CDBROWSER TBITEM)
-        (PROG* ((CDVALUE (LISTGET (TB.USERDATA CDBROWSER)
+        (PROG* ((CDVALUE (GETMULTI (TB.USERDATA CDBROWSER)
                                 'CDVALUE))
                 (SOURCEDIR (FETCH (CDVALUE CDDIR1) OF CDVALUE))
                 (DESTDIR (FETCH (CDVALUE CDDIR2) OF CDVALUE))
@@ -2178,7 +2200,9 @@
                (CL:UNLESS DESTFILE
                    (SETQ DESTFILE (CD-SWAPDIRS SOURCEFILE SOURCEDIR DESTDIR)))
                [SETQ RESULT (if UNIXDEST
-                                then [PSEUDOFILENAME (PACKFILENAME 'HOST 'DSK 'BODY
+                                then (SPUTMULTI (fetch (TABLEBROWSER TBUSERDATA) of CDBROWSER)
+                                            'ORIGINALFILES DESTFILE (COPYFILE DESTFILE '{NODIRCORE))
+                                     [PSEUDOFILENAME (PACKFILENAME 'HOST 'DSK 'BODY
                                                             (COPYFILE SOURCEFILE (PACKFILENAME
                                                                                   'HOST
                                                                                   'UNIX
@@ -2197,7 +2221,8 @@
                (RETURN RESULT)))])
 
 (CDBROWSER-DELETE-FILE
-  [LAMBDA (CDBROWSER TBITEM SIDE ONLYONE SAVE)               (* ; "Edited 25-Apr-2022 09:06 by rmk")
+  [LAMBDA (CDBROWSER TBITEM KEY SIDE ONLYONE SAVE DONTMARK)  (* ; "Edited 28-Oct-2025 13:30 by rmk")
+                                                             (* ; "Edited 25-Apr-2022 09:06 by rmk")
                                                              (* ; "Edited  5-Feb-2022 17:46 by rmk")
                                                              (* ; "Edited 18-Jan-2022 23:02 by rmk")
                                                              (* ; "Edited 19-Dec-2021 23:33 by rmk")
@@ -2210,38 +2235,58 @@
 
     (* ;; "If SAVE, then the files are renamed to a deleted directory, not actually expunged, so that they can be restored if needed.  The deleted directory is defined by sticking deleted> on the front of FILE's directory.")
 
+    (DECLARE (USEDFREE LABEL1 LABEL2 PWINDOW))
     (CL:UNLESS (TB.ITEM.DELETED? CDBROWSER TBITEM)
-        [LET ((CDENTRY (CADR (FETCH TIDATA OF TBITEM)))
-              FILE OTHERFILE)
-             (SETQ FILE (FETCH (CDINFO FULLNAME) OF (FETCH (CDENTRY INFO1) OF CDENTRY)))
-             (SETQ OTHERFILE (FETCH (CDINFO FULLNAME) OF (FETCH (CDENTRY INFO2) OF CDENTRY)))
-             (CL:WHEN (EQ SIDE 'RIGHT)
-                    (SWAP FILE OTHERFILE))
-             (CL:WHEN FILE
-                 (FOR F INSIDE (IF (FILENAMEFIELD.STRING FILE 'VERSION)
-                                   THEN [IF ONLYONE
-                                            THEN FILE
-                                          ELSE (DREVERSE (FILDIR (PACKFILENAME.STRING 'VERSION "*"
-                                                                        'BODY FILE]
-                                 ELSE FILE)
-                    COLLECT 
+        [LET
+         ((CDENTRY (CADR (fetch TIDATA of TBITEM)))
+          FILE OTHERFILE DELFILES)
+         (SETQ FILE (fetch (CDINFO FULLNAME) of (fetch (CDENTRY INFO1) of CDENTRY)))
+         (SETQ OTHERFILE (fetch (CDINFO FULLNAME) of (fetch (CDENTRY INFO2) of CDENTRY)))
+         (CL:WHEN (EQ SIDE 'RIGHT)
+             (SWAP FILE OTHERFILE)
+             (SWAP LABEL1 LABEL2))
+         (SETQ DELFILES (if (FILENAMEFIELD.STRING FILE 'VERSION)
+                            then [if ONLYONE
+                                     then (MKLIST FILE)
+                                   else (DREVERSE (FILDIR (PACKFILENAME.STRING 'VERSION "*"
+                                                                 'BODY FILE]
+                          else FILE))
+         (CL:WHEN DELFILES
+             (GIVE.TTY.PROCESS PWINDOW)
+             (CLEARW T)
+             (FLASHWINDOW T)
+             (CL:WHEN [OR (EQ KEY 'MIDDLE)
+                          (EQ 'Y (ASKUSER NIL 'N (CONCAT "Delete " (CL:IF (CDR DELFILES)
+                                                                       "ALL versions of "
+                                                                       "")
+                                                        LABEL1 " ? "]
+                 (for F in DELFILES
+                    collect 
 
                           (* ;; "Delete the earlier ones first, if it goes bad, you don't want them to persist.  This preserves the original version numbers, maybe it should start fresh from 1 (or from whatever might have been deleted before).")
 
-                          (IF SAVE
-                              THEN (CL:UNLESS (RENAMEFILE F (PACKFILENAME.STRING
-                                                             'DIRECTORY
-                                                             (CONCAT "deleted>" (FILENAMEFIELD.STRING
-                                                                                 F
-                                                                                 'DIRECTORY))
-                                                             'BODY F))
-                                          (ERROR "Could not delete " F))
-                            ELSE (DELFILE FILE))
-                          F FINALLY 
+                          (* ;; "Save copies locally in this browser, for potential Undelete.  Undelete would have to match all of the versions")
+
+                          (CL:UNLESS (if SAVE
+                                         then (PUTMULTI (fetch (TABLEBROWSER TBUSERDATA) of CDBROWSER
+                                                               )
+                                                     'ORIGINALFILES
+                                                     (RENAMEFILE F (PACKFILENAME.STRING
+                                                                    'DIRECTORY
+                                                                    (CONCAT "deleted>"
+                                                                           (FILENAMEFIELD.STRING
+                                                                            F
+                                                                            'DIRECTORY))
+                                                                    'BODY F)))
+                                       else (PUTMULTI (fetch (TABLEBROWSER TBUSERDATA) of CDBROWSER)
+                                                   'ORIGINALFILES FILE (COPYFILE FILE '{NODIRCORE}))
+                                            (DELFILE FILE))
+                                 (ERROR "Could not delete " F))
+                          F finally 
 
                                   (* ;; "Perhaps only mark it as deleted if both files are gone?")
 
-                                  (TB.DELETE.ITEM CDBROWSER TBITEM)))])])
+                                  (CL:UNLESS DONTMARK (TB.DELETE.ITEM CDBROWSER TBITEM)))))])])
 
 (CD-SWAPDIRS
   [LAMBDA (FILE FROMDIR TODIR KEEPVERSION)                   (* ; "Edited  2-Feb-2022 19:10 by rmk")
@@ -2258,38 +2303,43 @@
 
 (RPAQ? CD-LINELENGTH NIL)
 
-(RPAQQ CDTABLEBROWSER.MENUITEMS ((Compare CD-MENUFN)
-                                 (Copy% -> CD-MENUFN)
-                                 (Copy% <- CD-MENUFN)
-                                 (See% left CD-MENUFN)
-                                 (See% right CD-MENUFN)
-                                 (See% both CD-MENUFN)
-                                 (See CD-MENUFN)))
+(RPAQQ CDTABLEBROWSER.MENUITEMS
+       ((Compare CD-MENUFN)
+        (Copy% -> CD-MENUFN)
+        (Copy% <- CD-MENUFN)
+        (See% left CD-MENUFN)
+        (See% right CD-MENUFN)
+        (See% both CD-MENUFN)
+        (See CD-MENUFN)
+        (Delete% <- CD-MENUFN)
+        (|Delete ALL <-| CD-MENUFN)
+        (Delete% -> CD-MENUFN)
+        (|Delete ALL ->| CD-MENUFN)))
 
 (FILESLOAD (SYSLOAD)
        COMPARESOURCES COMPARETEXT)
 
 (MOVD? 'NILL 'TEDIT.FILEDATE)
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (2655 23634 (COMPAREDIRECTORIES 2665 . 8000) (COMPAREDIRECTORIES.INFOS 8002 . 11231) (
-COMPAREDIRECTORIES.CANDIDATES 11233 . 14618) (CDENTRIES.SELECT 14620 . 19522) (
-COMPAREDIRECTORIES.INFOS.TYPE 19524 . 20868) (MATCHNAME 20870 . 21550) (CD.INSURECDVALUE 21552 . 23166
-) (CD.UPDATEWIDTHS 23168 . 23632)) (23635 34340 (CDFILES 23645 . 29742) (CDFILES.MATCH 29744 . 31369) 
-(CDFILES.PATS 31371 . 34338)) (34341 52359 (CDPRINT 34351 . 36868) (CDPRINT.HEADER 36870 . 37767) (
-CDPRINT.LINE 37769 . 41198) (CDPRINT.MAXWIDTHS 41200 . 45315) (CDPRINT.COLHEADERS 45317 . 46602) (
-CDPRINT.COLUMNS 46604 . 51724) (CDTEDIT 51726 . 52357)) (52360 61481 (CDMAP 52370 . 53802) (CDENTRY 
-53804 . 54113) (CDSUBSET 54115 . 55554) (CDMERGE 55556 . 59540) (CDMERGE.COMMON 59542 . 60857) (
-CD.SORT 60859 . 61479)) (61482 69020 (BINCOMP 61492 . 65781) (EOLTYPE 65783 . 68345) (EOLTYPE.SHOW 
-68347 . 69018)) (69548 82075 (FIND-UNCOMPILED-FILES 69558 . 73201) (FIND-UNSOURCED-FILES 73203 . 75587
-) (FIND-SOURCE-FILES 75589 . 77327) (FIND-COMPILED-FILES 77329 . 79206) (FIND-UNLOADED-FILES 79208 . 
-80061) (FIND-LOADED-FILES 80063 . 80491) (FIND-MULTICOMPILED-FILES 80493 . 82073)) (82076 90507 (
-CREATED-AS 82086 . 86883) (SOURCE-FOR-COMPILED-P 86885 . 89812) (COMPILE-SOURCE-DATE-DIFF 89814 . 
-90505)) (90508 101271 (FIX-DIRECTORY-DATES 90518 . 93968) (FIX-EQUIV-DATES 93970 . 95495) (
-COPY-COMPARED-FILES 95497 . 97318) (COPY-MISSING-FILES 97320 . 99477) (COMPILED-ON-SAME-SOURCE 99479
- . 101269)) (101465 109303 (CDBROWSER 101475 . 105402) (CDBROWSER.STRINGS 105404 . 109301)) (109465 
-111201 (CD.TABLEITEM 109475 . 109695) (CD.TABLEITEM.PRINTFN 109697 . 109896) (CD.TABLEITEM.COPYFN 
-109898 . 110956) (CDTABLEBROWSER.HEADING.REPAINTFN 110958 . 111199)) (111202 134851 (
-CDTABLEBROWSER.WHENSELECTEDFN 111212 . 111680) (CD.COMMANDSELECTEDFN 111682 . 116783) (CD-MENUFN 
-116785 . 123011) (CD-COMPARE-FILES 123013 . 126365) (CDBROWSER-COPY 126367 . 131115) (
-CDBROWSER-DELETE-FILE 131117 . 134330) (CD-SWAPDIRS 134332 . 134849)))))
+  (FILEMAP (NIL (2668 23647 (COMPAREDIRECTORIES 2678 . 8013) (COMPAREDIRECTORIES.INFOS 8015 . 11244) (
+COMPAREDIRECTORIES.CANDIDATES 11246 . 14631) (CDENTRIES.SELECT 14633 . 19535) (
+COMPAREDIRECTORIES.INFOS.TYPE 19537 . 20881) (MATCHNAME 20883 . 21563) (CD.INSURECDVALUE 21565 . 23179
+) (CD.UPDATEWIDTHS 23181 . 23645)) (23648 34353 (CDFILES 23658 . 29755) (CDFILES.MATCH 29757 . 31382) 
+(CDFILES.PATS 31384 . 34351)) (34354 52372 (CDPRINT 34364 . 36881) (CDPRINT.HEADER 36883 . 37780) (
+CDPRINT.LINE 37782 . 41211) (CDPRINT.MAXWIDTHS 41213 . 45328) (CDPRINT.COLHEADERS 45330 . 46615) (
+CDPRINT.COLUMNS 46617 . 51737) (CDTEDIT 51739 . 52370)) (52373 61494 (CDMAP 52383 . 53815) (CDENTRY 
+53817 . 54126) (CDSUBSET 54128 . 55567) (CDMERGE 55569 . 59553) (CDMERGE.COMMON 59555 . 60870) (
+CD.SORT 60872 . 61492)) (61495 69033 (BINCOMP 61505 . 65794) (EOLTYPE 65796 . 68358) (EOLTYPE.SHOW 
+68360 . 69031)) (69561 82088 (FIND-UNCOMPILED-FILES 69571 . 73214) (FIND-UNSOURCED-FILES 73216 . 75600
+) (FIND-SOURCE-FILES 75602 . 77340) (FIND-COMPILED-FILES 77342 . 79219) (FIND-UNLOADED-FILES 79221 . 
+80074) (FIND-LOADED-FILES 80076 . 80504) (FIND-MULTICOMPILED-FILES 80506 . 82086)) (82089 90520 (
+CREATED-AS 82099 . 86896) (SOURCE-FOR-COMPILED-P 86898 . 89825) (COMPILE-SOURCE-DATE-DIFF 89827 . 
+90518)) (90521 101284 (FIX-DIRECTORY-DATES 90531 . 93981) (FIX-EQUIV-DATES 93983 . 95508) (
+COPY-COMPARED-FILES 95510 . 97331) (COPY-MISSING-FILES 97333 . 99490) (COMPILED-ON-SAME-SOURCE 99492
+ . 101282)) (101478 109356 (CDBROWSER 101488 . 105455) (CDBROWSER.STRINGS 105457 . 109354)) (109518 
+111254 (CD.TABLEITEM 109528 . 109748) (CD.TABLEITEM.PRINTFN 109750 . 109949) (CD.TABLEITEM.COPYFN 
+109951 . 111009) (CDTABLEBROWSER.HEADING.REPAINTFN 111011 . 111252)) (111255 138020 (
+CDTABLEBROWSER.WHENSELECTEDFN 111265 . 111733) (CD.COMMANDSELECTEDFN 111735 . 117908) (CD-MENUFN 
+117910 . 124301) (CD-COMPARE-FILES 124303 . 127830) (CDBROWSER-COPY 127832 . 132894) (
+CDBROWSER-DELETE-FILE 132896 . 137499) (CD-SWAPDIRS 137501 . 138018)))))
 STOP
diff --git a/lispusers/COMPAREDIRECTORIES.LCOM b/lispusers/COMPAREDIRECTORIES.LCOM
index 0fb8ccd9..7569b398 100644
Binary files a/lispusers/COMPAREDIRECTORIES.LCOM and b/lispusers/COMPAREDIRECTORIES.LCOM differ
diff --git a/lispusers/EXAMINEDEFS b/lispusers/EXAMINEDEFS
index 0ec8b973..5c5ef0f1 100644
--- a/lispusers/EXAMINEDEFS
+++ b/lispusers/EXAMINEDEFS
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "25-Oct-2025 10:24:30" {WMEDLEY}<lispusers>EXAMINEDEFS.;59 17123  
+(FILECREATED "28-Oct-2025 14:24:17" {WMEDLEY}<lispusers>EXAMINEDEFS.;60 17313  
 
       :EDIT-BY rmk
 
-      :CHANGES-TO (FNS EXAMINEDEFS)
+      :CHANGES-TO (FNS EXAMINEFILES)
 
-      :PREVIOUS-DATE " 6-Apr-2025 23:54:50" {WMEDLEY}<lispusers>EXAMINEDEFS.;57)
+      :PREVIOUS-DATE "25-Oct-2025 10:24:30" {WMEDLEY}<lispusers>EXAMINEDEFS.;59)
 
 
 (PRETTYCOMPRINT EXAMINEDEFSCOMS)
@@ -173,7 +173,8 @@
                     (EDITE DEF2])
 
 (EXAMINEFILES
-  [LAMBDA (FILE1 FILE2 TITLE1 TITLE2 REGION)                 (* ; "Edited 19-Jul-2023 13:48 by rmk")
+  [LAMBDA (FILE1 FILE2 TITLE1 TITLE2 REGION)                 (* ; "Edited 28-Oct-2025 14:23 by rmk")
+                                                             (* ; "Edited 19-Jul-2023 13:48 by rmk")
                                                              (* ; "Edited  1-Feb-2022 23:15 by rmk")
                                                              (* ; "Edited 25-Jan-2022 10:08 by rmk")
                                                              (* ; "Edited  2-Jan-2022 23:15 by rmk")
@@ -183,7 +184,8 @@
 
     (CL:UNLESS REGION
         (SETQ REGION (GETREGION)))
-    (LIST (AND (INFILEP FILE1)
+    (LIST (AND (OR (STREAMP FILE1)
+                   (INFILEP FILE1))
                (TEDIT-SEE FILE1 (RELCREATEREGION `(,REGION 0.5 -1)
                                        REGION
                                        'RIGHT
@@ -191,7 +193,8 @@
                                        `(,REGION 0.5)
                                        (FETCH (REGION TOP) OF REGION))
                       NIL TITLE1))
-          (AND (INFILEP FILE2)
+          (AND (OR (STREAMP FILE2)
+                   (INFILEP FILE2))
                (TEDIT-SEE FILE2 (RELCREATEREGION `(,REGION 0.5 1)
                                        REGION
                                        'LEFT
@@ -284,6 +287,6 @@
 (FILESLOAD (SYSLOAD)
        COMPARETEXT VERSIONDEFS)
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (665 16892 (EXAMINEDEFS 675 . 11290) (EXAMINEFILES 11292 . 12774) (TEDITDEF 12776 . 
-15098) (EXVV 15100 . 16890)))))
+  (FILEMAP (NIL (666 17082 (EXAMINEDEFS 676 . 11291) (EXAMINEFILES 11293 . 12964) (TEDITDEF 12966 . 
+15288) (EXVV 15290 . 17080)))))
 STOP
diff --git a/lispusers/EXAMINEDEFS.LCOM b/lispusers/EXAMINEDEFS.LCOM
index 4db3ff8c..afc886ac 100644
Binary files a/lispusers/EXAMINEDEFS.LCOM and b/lispusers/EXAMINEDEFS.LCOM differ
diff --git a/lispusers/GITFNS b/lispusers/GITFNS
index 015d1e52..4b5cbe62 100644
--- a/lispusers/GITFNS
+++ b/lispusers/GITFNS
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "26-Oct-2025 00:01:44" {WMEDLEY}<lispusers>GITFNS.;565 135222 
+(FILECREATED "28-Oct-2025 14:10:06" {WMEDLEY}<lispusers>GITFNS.;569 131593 
 
       :EDIT-BY rmk
 
-      :CHANGES-TO (FNS GIT-WORKING-COMPARE-DIRECTORIES GIT-CD-MENUFN GIT-MAKE-PROJECT GIT-CLONEP)
+      :CHANGES-TO (FNS GIT-WORKING-COMPARE-DIRECTORIES GIT-BRANCHES-COMPARE-DIRECTORIES)
 
-      :PREVIOUS-DATE "25-Oct-2025 10:37:40" {WMEDLEY}<lispusers>GITFNS.;562)
+      :PREVIOUS-DATE "28-Oct-2025 13:32:16" {WMEDLEY}<lispusers>GITFNS.;568)
 
 
 (PRETTYCOMPRINT GITFNSCOMS)
@@ -59,7 +59,7 @@
         (* ;; "File correspondents")
 
         (FNS ALLSUBDIRS MEDLEYSUBDIRS GITSUBDIRS)
-        (FNS TOGIT FROMGIT GIT-DELETE-FILE MYMEDLEY-DELETE-FILES)
+        (FNS TOGIT FROMGIT)
         (FNS MYMEDLEYSUBDIR GITSUBDIR STRIPDIR STRIPHOST STRIPNAME STRIPWHERE)
         (FNS GFILE4MFILE MFILE4GFILE GIT-REPO-FILENAME)
         
@@ -720,46 +720,6 @@
                            (CONCAT GF " cannot be copied"))
                     T)
              DEST])
-
-(GIT-DELETE-FILE
-  [LAMBDA (FILE PROJECT)                                     (* ; "Edited  8-May-2022 09:27 by rmk")
-                                                             (* ; "Edited 18-Jan-2022 23:07 by rmk")
-                                                             (* ; "Edited 19-Dec-2021 16:11 by rmk")
-                                                             (* ; "Edited 16-Dec-2021 13:00 by rmk")
-
-    (* ;; "This deletes a file in the local checkout git directory {UNIX}...  FILE has to already be a full file name, for safety.")
-
-    (* ;; "Since git files are on UNIX, we don't have to worry about older version numbers. ")
-
-    (* ;; "We could make this undoable by copying it to deleted/, but git also can restore.")
-
-    (GIT-CLONEP FILE NIL T)
-    (DELFILE FILE])
-
-(MYMEDLEY-DELETE-FILES
-  [LAMBDA (FILE PROJECT)                                     (* ; "Edited 13-May-2022 10:40 by rmk")
-                                                             (* ; "Edited  8-May-2022 23:31 by rmk")
-
-    (* ;; "FILE is presumably the latest version of a file in the MyMedley directory, and we are presumably removing all versions of that file.  If we left older versions, we would really trash ourselves.")
-
-    (* ;; "But to guard against mistakes, %"deletion%" consists of moving all versions of the file from its current location to a deleted/ subdirectory of MEDLEYDIR, one that does not correspond to a git subdirectory.")
-
-    (SETQ FILE (CONTRACT.PH FILE (FETCH WHOST OF PROJECT)))
-    (CL:WHEN (EQ (FILENAMEFIELD (FETCH WHOST OF PROJECT)
-                        'HOST)
-                 (FILENAMEFIELD FILE 'HOST))
-        (FOR F IN (DREVERSE (FILDIR (PACKFILENAME 'VERSION '* 'BODY FILE)))
-           COLLECT 
-
-                 (* ;; 
-                 "Delete the earlier ones first, if it goes bad, you don't want them to persist")
-
-                 (CL:UNLESS (RENAMEFILE F (PACKFILENAME 'DIRECTORY (CONCAT "deleted>"
-                                                                          (FILENAMEFIELD F
-                                                                                 'DIRECTORY))
-                                                 'BODY F))
-                        (ERROR "Could not delete " F))
-                 F))])
 )
 (DEFINEQ
 
@@ -1846,7 +1806,8 @@
          (LIST DIR1 DIR2 MAPPINGS))])
 
 (GIT-BRANCHES-COMPARE-DIRECTORIES
-  [LAMBDA (BRANCH1 BRANCH2 LOCAL PROJECT)                    (* ; "Edited  2-Oct-2025 23:12 by rmk")
+  [LAMBDA (BRANCH1 BRANCH2 LOCAL PROJECT)                    (* ; "Edited 28-Oct-2025 14:01 by rmk")
+                                                             (* ; "Edited  2-Oct-2025 23:12 by rmk")
                                                              (* ; "Edited 12-Jun-2024 22:52 by mth")
                                                              (* ; "Edited 10-Jun-2024 18:42 by mth")
                                                              (* ; "Edited  1-May-2024 14:58 by rmk")
@@ -1938,8 +1899,10 @@
                                                      (LENGTH (fetch (CDVALUE CDENTRIES) of CDVALUE))
                                                      " files")
                                   (LIST SHORT1 SHORT2)
-                                  `(LABELFN GIT-CD-LABELFN BRANCH1 ,BRANCH1 BRANCH2 ,BRANCH2 PROJECT
-                                          ,PROJECT)
+                                  `((LABELFN . GIT-CD-LABELFN)
+                                    (BRANCH1 ,@BRANCH1)
+                                    (BRANCH2 ,@BRANCH2)
+                                    (PROJECT ,@PROJECT))
                                   GIT-CDBROWSER-SEPARATE-DIRECTIONS
                                   `(Compare See))
                            (SETQ NENTRIES (LENGTH (fetch (CDVALUE CDENTRIES) of CDVALUE)))
@@ -1952,6 +1915,8 @@
 (GIT-WORKING-COMPARE-DIRECTORIES
   [LAMBDA (SUBDIRS SELECT EXCLUDEDFILES FIXDIRECTORYDATES UPDATE PROJECT)
 
+    (* ;; "Edited 28-Oct-2025 14:00 by rmk")
+
     (* ;; "Edited 25-Oct-2025 23:32 by rmk")
 
     (* ;; "Edited 29-Apr-2025 15:14 by rmk")
@@ -2031,9 +1996,12 @@
                      do (SETQ TITLE (CONCAT WPROJ "  vs.   " BRANCH2 "      " SUBDIR "         "
                                            (LENGTH (fetch (CDVALUE CDENTRIES) of CDVAL))
                                            " files"))
-                        [CDBROWSER CDVAL TITLE `(,WPROJ ,BRANCH2)
-                               `(BRANCH1 ,WPROJ BRANCH2 ,BRANCH2 SUBDIR ,SUBDIR LABELFN 
-                                       GIT-CD-LABELFN PROJECT ,PROJECT)
+                        [CDBROWSER CDVAL TITLE `(,WPROJ ,@BRANCH2)
+                               `((BRANCH1 ,@WPROJ)
+                                 (BRANCH2 ,@BRANCH2)
+                                 (SUBDIR ,@SUBDIR)
+                                 (LABELFN . GIT-CD-LABELFN)
+                                 (PROJECT ,@PROJECT))
                                GIT-CDBROWSER-SEPARATE-DIRECTIONS
                                `(Compare See "" Copy% <- (|Delete ALL <-| GIT-CD-MENUFN)
                                        ,@(CL:UNLESS (GIT-MAINBRANCH? BRANCH2 PROJECT T)
@@ -2213,7 +2181,8 @@
                (OR LABEL2 FILE2])
 
 (GIT-CD-MENUFN
-  [LAMBDA (TBITEM MENUITEM CDBROWSER KEY)                    (* ; "Edited 25-Oct-2025 23:44 by rmk")
+  [LAMBDA (TBITEM MENUITEM CDBROWSER KEY)                    (* ; "Edited 28-Oct-2025 11:50 by rmk")
+                                                             (* ; "Edited 25-Oct-2025 23:44 by rmk")
                                                              (* ; "Edited 21-Sep-2022 21:34 by rmk")
                                                              (* ; "Edited 22-May-2022 19:13 by rmk")
                                                              (* ; "Edited  8-May-2022 09:26 by rmk")
@@ -2221,35 +2190,9 @@
 
     (* ;; "MENUITEM is of the form (display-atom <this function> . extrainfo).  The selector for the selectq is either the CAR of the extrainfo or the display atom")
 
-    (DECLARE (USEDFREE FILE1 FILE2 LABEL2 TYPE CDENTRY))
+    (DECLARE (USEDFREE FILE1 FILE2 LABEL2 TYPE CDENTRY USERDATA PWINDOW))
     (SELECTQ (OR (CADDR MENUITEM)
                  (CAR MENUITEM))
-        (Delete% -> (FLASHWINDOW PWINDOW)
-                    (GIVE.TTY.PROCESS PWINDOW)
-                    (CL:WHEN [OR (EQ KEY 'MIDDLE)
-                                 (EQ 'Y (ASKUSER NIL 'N (CONCAT "Delete " LABEL2 " ? "]
-                        (GIT-DELETE-FILE FILE2 (LISTGET USERDATA 'PROJECT))
-                        (TB.DELETE.ITEM CDBROWSER TBITEM)))
-        (|Delete ALL <-| 
-             (FLASHWINDOW PWINDOW)
-             (GIVE.TTY.PROCESS PWINDOW)
-             (if (NAMEFIELD LABEL1 T)
-                 then (CL:WHEN [OR (EQ KEY 'MIDDLE)
-                                   (EQ 'Y (ASKUSER NIL 'N (CONCAT "Delete ALL versions of "
-                                                                 (NAMEFIELD LABEL1 T)
-                                                                 " ? "]
-                          (MYMEDLEY-DELETE-FILES FILE1 (LISTGET USERDATA 'PROJECT))
-                          (TB.DELETE.ITEM CDBROWSER TBITEM))
-               else (PRINTOUT T "Nothing to delete")))
-        (Delete% BOTH (FLASHWINDOW PWINDOW)
-                      (GIVE.TTY.PROCESS PWINDOW)
-                      (CL:WHEN (EQ 'Y (ASKUSER NIL 'N (CONCAT 
-                                                             "Delete all Medley and git versions of "
-                                                             (NAMEFIELD LABEL1 T)
-                                                             " ? ")))
-                          (GIT-DELETE-FILE FILE2 (LISTGET USERDATA 'PROJECT))
-                          (MYMEDLEY-DELETE-FILES FILE1 (LISTGET USERDATA 'PROJECT))
-                          (TB.DELETE.ITEM CDBROWSER TBITEM)))
         (Copy% -> (CDBROWSER-COPY CDBROWSER TBITEM 'LEFT (CADDDR MENUITEM)))
         (SHOULDNT])
 
@@ -2451,33 +2394,32 @@
 
 (PUTPROPS GITFNS FILETYPE :TCOMPL)
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (4243 21049 (GIT-CLONEP 4253 . 5684) (GIT-INIT 5686 . 6316) (GIT-MAKE-PROJECT 6318 . 
-14107) (GIT-GET-PROJECT 14109 . 16034) (GIT-PUT-PROJECT-FIELD 16036 . 17677) (GIT-PROJECT-PATH 17679
- . 18723) (FIND-ANCESTOR-DIRECTORY 18725 . 19074) (GIT-FIND-CLONE 19076 . 20157) (GIT-MAINBRANCH 20159
- . 20554) (GIT-MAINBRANCH? 20556 . 21047)) (26512 31441 (PRC-COMMAND 26522 . 31439)) (31497 34285 (
-ALLSUBDIRS 31507 . 32793) (MEDLEYSUBDIRS 32795 . 33488) (GITSUBDIRS 33490 . 34283)) (34286 39076 (
-TOGIT 34296 . 35702) (FROMGIT 35704 . 36685) (GIT-DELETE-FILE 36687 . 37533) (MYMEDLEY-DELETE-FILES 
-37535 . 39074)) (39077 42080 (MYMEDLEYSUBDIR 39087 . 39543) (GITSUBDIR 39545 . 39988) (STRIPDIR 39990
- . 40361) (STRIPHOST 40363 . 40603) (STRIPNAME 40605 . 41358) (STRIPWHERE 41360 . 42078)) (42081 44316
- (GFILE4MFILE 42091 . 42787) (MFILE4GFILE 42789 . 43358) (GIT-REPO-FILENAME 43360 . 44314)) (44365 
-54620 (GIT-COMMIT 44375 . 45201) (GIT-PUSH 45203 . 45963) (GIT-PULL 45965 . 46717) (GIT-APPROVAL 46719
- . 47068) (GIT-GET-FILE 47070 . 48985) (GIT-FILE-EXISTS? 48987 . 49261) (GIT-REMOTE-UPDATE 49263 . 
-50098) (GIT-REMOTE-ADD 50100 . 50407) (GIT-FILE-DATE 50409 . 51456) (GIT-FILE-HISTORY 51458 . 53392) (
-GIT-PRINT-FILE-HISTORY 53394 . 54444) (GIT-FETCH 54446 . 54618)) (54650 66130 (GIT-BRANCH-DIFF 54660
- . 61549) (GIT-COMMIT-DIFFS 61551 . 62442) (GIT-BRANCH-RELATIONS 62444 . 66128)) (66175 84914 (
-GIT-BRANCH-NUM 66185 . 66758) (GIT-CHECKOUT 66760 . 68046) (GIT-WHICH-BRANCH 68048 . 68455) (
-GIT-MAKE-BRANCH 68457 . 71036) (GIT-BRANCHES 71038 . 73633) (GIT-BRANCH-EXISTS? 73635 . 74506) (
-GIT-PICK-BRANCH 74508 . 74998) (GIT-BRANCH-MENU 75000 . 75881) (GIT-BRANCH-WHENSELECTEDFN 75883 . 
-77422) (GIT-PULL-REQUESTS 77424 . 81295) (GIT-SHORT-BRANCH-NAME 81297 . 81588) (GIT-LONG-NAME 81590 . 
-81907) (GIT-PRC-BRANCHES 81909 . 84912)) (84944 88392 (GIT-MY-CURRENT-BRANCH 84954 . 85324) (
-GIT-MY-BRANCHP 85326 . 85944) (GIT-MY-NEXT-BRANCH 85946 . 86440) (GIT-MY-BRANCHES 86442 . 88390)) (
-88438 92513 (GIT-ADD-WORKTREE 88448 . 90055) (GIT-REMOVE-WORKTREE 90057 . 90987) (GIT-LIST-WORKTREES 
-90989 . 91793) (WORKTREEDIR 91795 . 92511)) (92561 126762 (GIT-GET-DIFFERENT-FILES 92571 . 99479) (
-GIT-BRANCHES-COMPARE-DIRECTORIES 99481 . 106920) (GIT-WORKING-COMPARE-DIRECTORIES 106922 . 112559) (
-GIT-COMPARE-WORKTREE 112561 . 116539) (GITCDOBJBUTTONFN 116541 . 121031) (GIT-CD-LABELFN 121033 . 
-122115) (GIT-CD-MENUFN 122117 . 124743) (GIT-WORKING-COMPARE-FILES 124745 . 125365) (
-GIT-BRANCHES-COMPARE-FILES 125367 . 126531) (GIT-PR-COMPARE 126533 . 126760)) (126832 135155 (CDGITDIR
- 126842 . 127529) (GIT-COMMAND 127531 . 129089) (GITORIGIN 129091 . 129788) (GIT-INITIALS 129790 . 
-130094) (GIT-COMMAND-TO-FILE 130096 . 133581) (GIT-RESULT-TO-LINES 133583 . 134488) (STRIPLOCAL 134490
- . 135153)))))
+  (FILEMAP (NIL (4196 21002 (GIT-CLONEP 4206 . 5637) (GIT-INIT 5639 . 6269) (GIT-MAKE-PROJECT 6271 . 
+14060) (GIT-GET-PROJECT 14062 . 15987) (GIT-PUT-PROJECT-FIELD 15989 . 17630) (GIT-PROJECT-PATH 17632
+ . 18676) (FIND-ANCESTOR-DIRECTORY 18678 . 19027) (GIT-FIND-CLONE 19029 . 20110) (GIT-MAINBRANCH 20112
+ . 20507) (GIT-MAINBRANCH? 20509 . 21000)) (26465 31394 (PRC-COMMAND 26475 . 31392)) (31450 34238 (
+ALLSUBDIRS 31460 . 32746) (MEDLEYSUBDIRS 32748 . 33441) (GITSUBDIRS 33443 . 34236)) (34239 36640 (
+TOGIT 34249 . 35655) (FROMGIT 35657 . 36638)) (36641 39644 (MYMEDLEYSUBDIR 36651 . 37107) (GITSUBDIR 
+37109 . 37552) (STRIPDIR 37554 . 37925) (STRIPHOST 37927 . 38167) (STRIPNAME 38169 . 38922) (
+STRIPWHERE 38924 . 39642)) (39645 41880 (GFILE4MFILE 39655 . 40351) (MFILE4GFILE 40353 . 40922) (
+GIT-REPO-FILENAME 40924 . 41878)) (41929 52184 (GIT-COMMIT 41939 . 42765) (GIT-PUSH 42767 . 43527) (
+GIT-PULL 43529 . 44281) (GIT-APPROVAL 44283 . 44632) (GIT-GET-FILE 44634 . 46549) (GIT-FILE-EXISTS? 
+46551 . 46825) (GIT-REMOTE-UPDATE 46827 . 47662) (GIT-REMOTE-ADD 47664 . 47971) (GIT-FILE-DATE 47973
+ . 49020) (GIT-FILE-HISTORY 49022 . 50956) (GIT-PRINT-FILE-HISTORY 50958 . 52008) (GIT-FETCH 52010 . 
+52182)) (52214 63694 (GIT-BRANCH-DIFF 52224 . 59113) (GIT-COMMIT-DIFFS 59115 . 60006) (
+GIT-BRANCH-RELATIONS 60008 . 63692)) (63739 82478 (GIT-BRANCH-NUM 63749 . 64322) (GIT-CHECKOUT 64324
+ . 65610) (GIT-WHICH-BRANCH 65612 . 66019) (GIT-MAKE-BRANCH 66021 . 68600) (GIT-BRANCHES 68602 . 71197
+) (GIT-BRANCH-EXISTS? 71199 . 72070) (GIT-PICK-BRANCH 72072 . 72562) (GIT-BRANCH-MENU 72564 . 73445) (
+GIT-BRANCH-WHENSELECTEDFN 73447 . 74986) (GIT-PULL-REQUESTS 74988 . 78859) (GIT-SHORT-BRANCH-NAME 
+78861 . 79152) (GIT-LONG-NAME 79154 . 79471) (GIT-PRC-BRANCHES 79473 . 82476)) (82508 85956 (
+GIT-MY-CURRENT-BRANCH 82518 . 82888) (GIT-MY-BRANCHP 82890 . 83508) (GIT-MY-NEXT-BRANCH 83510 . 84004)
+ (GIT-MY-BRANCHES 84006 . 85954)) (86002 90077 (GIT-ADD-WORKTREE 86012 . 87619) (GIT-REMOVE-WORKTREE 
+87621 . 88551) (GIT-LIST-WORKTREES 88553 . 89357) (WORKTREEDIR 89359 . 90075)) (90125 123133 (
+GIT-GET-DIFFERENT-FILES 90135 . 97043) (GIT-BRANCHES-COMPARE-DIRECTORIES 97045 . 104672) (
+GIT-WORKING-COMPARE-DIRECTORIES 104674 . 110470) (GIT-COMPARE-WORKTREE 110472 . 114450) (
+GITCDOBJBUTTONFN 114452 . 118942) (GIT-CD-LABELFN 118944 . 120026) (GIT-CD-MENUFN 120028 . 121114) (
+GIT-WORKING-COMPARE-FILES 121116 . 121736) (GIT-BRANCHES-COMPARE-FILES 121738 . 122902) (
+GIT-PR-COMPARE 122904 . 123131)) (123203 131526 (CDGITDIR 123213 . 123900) (GIT-COMMAND 123902 . 
+125460) (GITORIGIN 125462 . 126159) (GIT-INITIALS 126161 . 126465) (GIT-COMMAND-TO-FILE 126467 . 
+129952) (GIT-RESULT-TO-LINES 129954 . 130859) (STRIPLOCAL 130861 . 131524)))))
 STOP
diff --git a/lispusers/GITFNS.LCOM b/lispusers/GITFNS.LCOM
index bab7dfcc..da2bc98b 100644
Binary files a/lispusers/GITFNS.LCOM and b/lispusers/GITFNS.LCOM differ
