diff --git a/lispusers/COMPAREDIRECTORIES b/lispusers/COMPAREDIRECTORIES
index abd0eba0..4fc0dd6c 100644
--- a/lispusers/COMPAREDIRECTORIES
+++ b/lispusers/COMPAREDIRECTORIES
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "25-Feb-2022 21:30:55" 
-{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>COMPAREDIRECTORIES.;209 124231 
+(FILECREATED "27-Feb-2022 12:47:42" 
+{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>COMPAREDIRECTORIES.;211 124421 
 
-      :CHANGES-TO (FNS CDFILES)
+      :CHANGES-TO (FNS CD-MENUFN)
 
-      :PREVIOUS-DATE "24-Feb-2022 21:13:32" 
-{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>COMPAREDIRECTORIES.;208)
+      :PREVIOUS-DATE "25-Feb-2022 21:30:55" 
+{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>COMPAREDIRECTORIES.;209)
 
 
 (* ; "
@@ -1883,7 +1883,7 @@ Copyright (c) 1985-1988, 1990, 1994, 1998, 2018, 2020-2021 by Venue & Xerox Corp
 (CD-MENUFN
   [LAMBDA (TBITEM MENUITEM CDBROWSER KEY)
 
-    (* ;; "Edited 23-Feb-2022 22:27 by rmk: FILELABELFN, if provided, can be used to calculate abbreviated labels for the file, for example, to strip off any long common prefixes.")
+    (* ;; "Edited 27-Feb-2022 12:47 by rmk: FILELABELFN, if provided, can be used to calculate abbreviated labels for the file, for example, to strip off any long common prefixes.")
 
     (* ;; "The FILELABELFN, if provided, can be used to calculate abbreviated labels for the file, for example, to strip off any long common prefixes.")
 
@@ -1920,12 +1920,14 @@ Copyright (c) 1985-1988, 1990, 1994, 1998, 2018, 2020-2021 by Venue & Xerox Corp
                                                     (* ;; 
                                        "Works for TEDIT, but doesn't detect image object differences")
 
-                                     (COMPARETEXT FILE1 FILE2 'LINE
-                                            (RELCREATEPOSITION `(,WINDOW 0.5)
-                                                   (IPLUS (FETCH (REGION BOTTOM)
-                                                             OF (WINDOWPROP WINDOW 'REGION))
-                                                          20))
-                                            (LIST LABEL1 LABEL2)))
+                                     (LET ((COMPARETEXT.ALLCHUNKS))
+                                          (DECLARE (SPECVARS COMPARETEXT.ALLCHUNKS))
+                                          (COMPARETEXT FILE1 FILE2 'LINE
+                                                 (RELCREATEPOSITION `(,WINDOW 0.5)
+                                                        (IPLUS (FETCH (REGION BOTTOM)
+                                                                  OF (WINDOWPROP WINDOW 'REGION))
+                                                               20))
+                                                 (LIST LABEL1 LABEL2))))
                                 (PROGN (FLASHWINDOW T)
                                        (PRIN3 "Unable to compare, showing both" T)
                                        (EXAMINEFILES FILE1 FILE2 LABEL1 LABEL2
@@ -2106,24 +2108,24 @@ 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 (2597 22158 (COMPAREDIRECTORIES 2607 . 7834) (COMPAREDIRECTORIES.INFOS 7836 . 10598) (
-COMPAREDIRECTORIES.CANDIDATES 10600 . 13985) (CDENTRIES.SELECT 13987 . 18762) (
-COMPAREDIRECTORIES.INFOS.TYPE 18764 . 19392) (MATCHNAME 19394 . 20074) (CD.INSURECDVALUE 20076 . 21690
-) (CD.UPDATEWIDTHS 21692 . 22156)) (22159 32408 (CDFILES 22169 . 28502) (CDFILES.MATCH 28504 . 30129) 
-(CDFILES.PATS 30131 . 32406)) (32409 47494 (CDPRINT 32419 . 34764) (CDPRINT.HEADER 34766 . 35663) (
-CDPRINT.LINE 35665 . 38221) (CDPRINT.MAXWIDTHS 38223 . 42338) (CDPRINT.COLHEADERS 42340 . 42978) (
-CDPRINT.COLUMNS 42980 . 46859) (CDTEDIT 46861 . 47492)) (47495 55864 (CDMAP 47505 . 48937) (CDENTRY 
-48939 . 49248) (CDSUBSET 49250 . 50689) (CDMERGE 50691 . 54545) (CDMERGE.COMMON 54547 . 55862)) (55865
- 63403 (BINCOMP 55875 . 60164) (EOLTYPE 60166 . 62728) (EOLTYPE.SHOW 62730 . 63401)) (63931 77138 (
-FIND-UNCOMPILED-FILES 63941 . 67584) (FIND-UNSOURCED-FILES 67586 . 70395) (FIND-SOURCE-FILES 70397 . 
-72101) (FIND-COMPILED-FILES 72103 . 74181) (FIND-UNLOADED-FILES 74183 . 74927) (FIND-LOADED-FILES 
-74929 . 75483) (FIND-MULTICOMPILED-FILES 75485 . 77136)) (77139 85341 (CREATED-AS 77149 . 81946) (
-SOURCE-FOR-COMPILED-P 81948 . 84646) (COMPILE-SOURCE-DATE-DIFF 84648 . 85339)) (85342 95648 (
-FIX-DIRECTORY-DATES 85352 . 88345) (FIX-EQUIV-DATES 88347 . 89872) (COPY-COMPARED-FILES 89874 . 91695)
- (COPY-MISSING-FILES 91697 . 93854) (COMPILED-ON-SAME-SOURCE 93856 . 95646)) (95842 103188 (CDBROWSER 
-95852 . 99779) (CDBROWSER.STRINGS 99781 . 103186)) (103350 105086 (CD.TABLEITEM 103360 . 103580) (
-CD.TABLEITEM.PRINTFN 103582 . 103781) (CD.TABLEITEM.COPYFN 103783 . 104841) (
-CDTABLEBROWSER.HEADING.REPAINTFN 104843 . 105084)) (105087 123647 (CDTABLEBROWSER.WHENSELECTEDFN 
-105097 . 105565) (CD.COMMANDSELECTEDFN 105567 . 110555) (CD-MENUFN 110557 . 116732) (CDBROWSER-COPY 
-116734 . 120105) (CDBROWSER-DELETE-FILE 120107 . 123126) (CD-SWAPDIRS 123128 . 123645)))))
+  (FILEMAP (NIL (2599 22160 (COMPAREDIRECTORIES 2609 . 7836) (COMPAREDIRECTORIES.INFOS 7838 . 10600) (
+COMPAREDIRECTORIES.CANDIDATES 10602 . 13987) (CDENTRIES.SELECT 13989 . 18764) (
+COMPAREDIRECTORIES.INFOS.TYPE 18766 . 19394) (MATCHNAME 19396 . 20076) (CD.INSURECDVALUE 20078 . 21692
+) (CD.UPDATEWIDTHS 21694 . 22158)) (22161 32410 (CDFILES 22171 . 28504) (CDFILES.MATCH 28506 . 30131) 
+(CDFILES.PATS 30133 . 32408)) (32411 47496 (CDPRINT 32421 . 34766) (CDPRINT.HEADER 34768 . 35665) (
+CDPRINT.LINE 35667 . 38223) (CDPRINT.MAXWIDTHS 38225 . 42340) (CDPRINT.COLHEADERS 42342 . 42980) (
+CDPRINT.COLUMNS 42982 . 46861) (CDTEDIT 46863 . 47494)) (47497 55866 (CDMAP 47507 . 48939) (CDENTRY 
+48941 . 49250) (CDSUBSET 49252 . 50691) (CDMERGE 50693 . 54547) (CDMERGE.COMMON 54549 . 55864)) (55867
+ 63405 (BINCOMP 55877 . 60166) (EOLTYPE 60168 . 62730) (EOLTYPE.SHOW 62732 . 63403)) (63933 77140 (
+FIND-UNCOMPILED-FILES 63943 . 67586) (FIND-UNSOURCED-FILES 67588 . 70397) (FIND-SOURCE-FILES 70399 . 
+72103) (FIND-COMPILED-FILES 72105 . 74183) (FIND-UNLOADED-FILES 74185 . 74929) (FIND-LOADED-FILES 
+74931 . 75485) (FIND-MULTICOMPILED-FILES 75487 . 77138)) (77141 85343 (CREATED-AS 77151 . 81948) (
+SOURCE-FOR-COMPILED-P 81950 . 84648) (COMPILE-SOURCE-DATE-DIFF 84650 . 85341)) (85344 95650 (
+FIX-DIRECTORY-DATES 85354 . 88347) (FIX-EQUIV-DATES 88349 . 89874) (COPY-COMPARED-FILES 89876 . 91697)
+ (COPY-MISSING-FILES 91699 . 93856) (COMPILED-ON-SAME-SOURCE 93858 . 95648)) (95844 103190 (CDBROWSER 
+95854 . 99781) (CDBROWSER.STRINGS 99783 . 103188)) (103352 105088 (CD.TABLEITEM 103362 . 103582) (
+CD.TABLEITEM.PRINTFN 103584 . 103783) (CD.TABLEITEM.COPYFN 103785 . 104843) (
+CDTABLEBROWSER.HEADING.REPAINTFN 104845 . 105086)) (105089 123837 (CDTABLEBROWSER.WHENSELECTEDFN 
+105099 . 105567) (CD.COMMANDSELECTEDFN 105569 . 110557) (CD-MENUFN 110559 . 116922) (CDBROWSER-COPY 
+116924 . 120295) (CDBROWSER-DELETE-FILE 120297 . 123316) (CD-SWAPDIRS 123318 . 123835)))))
 STOP
diff --git a/lispusers/COMPAREDIRECTORIES.LCOM b/lispusers/COMPAREDIRECTORIES.LCOM
index da14e6c2..8289e613 100644
Binary files a/lispusers/COMPAREDIRECTORIES.LCOM and b/lispusers/COMPAREDIRECTORIES.LCOM differ
diff --git a/lispusers/GITFNS b/lispusers/GITFNS
index f32b82e9..69d229f2 100644
--- a/lispusers/GITFNS
+++ b/lispusers/GITFNS
@@ -1,11 +1,11 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "26-Feb-2022 12:26:02" {DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>GITFNS.;102 70973  
+(FILECREATED "28-Feb-2022 13:29:00" {DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>GITFNS.;105 71756  
 
-      :CHANGES-TO (FNS GIT-REPO-FILENAME)
+      :CHANGES-TO (COMMANDS prc)
 
-      :PREVIOUS-DATE "26-Feb-2022 11:58:56" 
-{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>GITFNS.;101)
+      :PREVIOUS-DATE "28-Feb-2022 12:39:42" 
+{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>GITFNS.;103)
 
 
 (PRETTYCOMPRINT GITFNSCOMS)
@@ -24,7 +24,9 @@
                                                 'HOST
                                                 'UNIX)
                                        T))
-               (MYMEDLEYDIR (UNSLASHIT (PACKFILENAME 'BODY (OR (UNIX-GETENV "MYMEDLEYDIR")
+               (MYMEDLEYDIR (UNSLASHIT (PACKFILENAME 'BODY (OR (AND (BOUNDP 'MYMEDLEYDIR)
+                                                                    MYMEDLEYDIR)
+                                                               (UNIX-GETENV "MYMEDLEYDIR")
                                                                MEDLEYDIR)
                                               'HOST
                                               'DSK)
@@ -117,7 +119,9 @@
                                     'UNIX)
                            T))
 
-(RPAQ? MYMEDLEYDIR (UNSLASHIT (PACKFILENAME 'BODY (OR (UNIX-GETENV "MYMEDLEYDIR")
+(RPAQ? MYMEDLEYDIR (UNSLASHIT (PACKFILENAME 'BODY (OR (AND (BOUNDP 'MYMEDLEYDIR)
+                                                           MYMEDLEYDIR)
+                                                      (UNIX-GETENV "MYMEDLEYDIR")
                                                       MEDLEYDIR)
                                      'HOST
                                      'DSK)
@@ -184,19 +188,30 @@
 
     (GIT-COMPARE-BRANCHES BRANCH1 BRANCH2 LOCAL))
 
-(DEFCOMMAND prc (REMOTEBRANCH)
+(DEFCOMMAND prc (REMOTEBRANCH DRAFTS)
 
    (* ;; "Compares REMOTEBRANCH against origin/master, for pull-request assessment")
 
-    (IF REMOTEBRANCH
-        THEN (GIT-COMPARE-BRANCHES REMOTEBRANCH 'origin/master NIL)
-      ELSE (LET [(PRITEMS (FOR PR IN (GIT-PULL-REQUESTS T) COLLECT (LIST (CADDR PR)
-                                                                         (CADDR PR)
-                                                                         (CONCAT " " (CADR PR)
-                                                                                "  #"
-                                                                                (CAR PR]
-                (GIT-COMPARE-BRANCHES (PICK-BRANCH (OR PRITEMS 'REMOTE)
-                                             "Pull requests")
+    (LET ((RB REMOTEBRANCH)
+          (DR DRAFTS))
+         (CL:WHEN (MEMB (U-CASE RB)
+                        '(DRAFT DRAFTS))
+             (SETQ RB NIL)
+             (SETQ DR T))
+         (IF RB
+             THEN (GIT-COMPARE-BRANCHES RB 'origin/master)
+           ELSE (GIT-COMPARE-BRANCHES (PICK-BRANCH
+                                       (OR [FOR PR IN (GIT-PULL-REQUESTS T DR)
+                                              COLLECT (LIST (CL:IF (MEMB 'DRAFT PR)
+                                                                (CONCAT (CADDR PR)
+                                                                       " (draft)")
+                                                                (CADDR PR))
+                                                            (CADDR PR)
+                                                            (CONCAT " " (CADR PR)
+                                                                   "  #"
+                                                                   (CAR PR]
+                                           'REMOTE)
+                                       "Pull requests")
                        'origin/master NIL))))
 
 (DEFCOMMAND cob (BRANCH)
@@ -1388,22 +1403,22 @@
         (ERROR "INITIALS is not set"])
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (4364 5210 (GIT-CLONEP 4374 . 5208)) (7068 9104 (ALLSUBDIRS 7078 . 8302) (MEDLEYSUBDIRS 
-8304 . 8743) (GITSUBDIRS 8745 . 9102)) (9105 14579 (TOGIT 9115 . 11263) (FROMGIT 11265 . 12243) (
-GIT-DELETE-FILE 12245 . 13139) (MYMEDLEY-DELETE-FILES 13141 . 14577)) (14580 16729 (MYMEDLEYSUBDIR 
-14590 . 15036) (GITSUBDIR 15038 . 15361) (STRIPDIR 15363 . 15734) (STRIPHOST 15736 . 15972) (STRIPNAME
- 15974 . 16727)) (16730 18258 (GFILE4MFILE 16740 . 16986) (MFILE4GFILE 16988 . 17330) (
-GIT-REPO-FILENAME 17332 . 18256)) (18307 28711 (GIT-COMMIT 18317 . 18895) (GIT-PUSH 18897 . 19453) (
-GIT-PULL 19455 . 19861) (GIT-BRANCH-DIFF 19863 . 23715) (GIT-APPROVAL 23717 . 23918) (GIT-GET-FILE 
-23920 . 26123) (GIT-FILE-EXISTS? 26125 . 26849) (GIT-REMOTE-UPDATE 26851 . 27893) (GIT-REMOTE-ADD 
-27895 . 28202) (GIT-FILE-DATE 28204 . 28709)) (28756 34375 (GIT-CHECKOUT 28766 . 29007) (
-GIT-WHICH-BRANCH 29009 . 29593) (GIT-MAKE-BRANCH 29595 . 31086) (GIT-BRANCHES 31088 . 32066) (
-GIT-BRANCH-EXISTS? 32068 . 33129) (PICK-BRANCH 33131 . 33475) (GIT-PULL-REQUESTS 33477 . 34373)) (
-34405 37110 (GIT-MY-CURRENT-BRANCH 34415 . 34588) (GIT-MY-BRANCHP 34590 . 35509) (GIT-MY-NEXT-BRANCH 
-35511 . 35952) (GIT-MY-BRANCHES 35954 . 37108)) (37156 40926 (GIT-ADD-WORKTREE 37166 . 38926) (
-GIT-REMOVE-WORKTREE 38928 . 39506) (GIT-LIST-WORKTREES 39508 . 40312) (WORKTREEDIR 40314 . 40924)) (
-40974 67428 (GIT-GET-DIFFERENT-FILES 40984 . 46074) (GIT-COMPARE-BRANCHES 46076 . 51568) (
-GIT-COMPARE-WITH-MYMEDLEY 51570 . 55290) (GIT-COMPARE-WORKTREE 55292 . 58769) (GITCDOBJBUTTONFN 58771
- . 63775) (GIT-CD-LABELFN 63777 . 64859) (GIT-CD-MENUFN 64861 . 67426)) (67498 70950 (CDGITDIR 67508
- . 68088) (GIT-COMMAND 68090 . 70063) (GITORIGIN 70065 . 70642) (GIT-INITIALS 70644 . 70948)))))
+  (FILEMAP (NIL (4679 5525 (GIT-CLONEP 4689 . 5523)) (7851 9887 (ALLSUBDIRS 7861 . 9085) (MEDLEYSUBDIRS 
+9087 . 9526) (GITSUBDIRS 9528 . 9885)) (9888 15362 (TOGIT 9898 . 12046) (FROMGIT 12048 . 13026) (
+GIT-DELETE-FILE 13028 . 13922) (MYMEDLEY-DELETE-FILES 13924 . 15360)) (15363 17512 (MYMEDLEYSUBDIR 
+15373 . 15819) (GITSUBDIR 15821 . 16144) (STRIPDIR 16146 . 16517) (STRIPHOST 16519 . 16755) (STRIPNAME
+ 16757 . 17510)) (17513 19041 (GFILE4MFILE 17523 . 17769) (MFILE4GFILE 17771 . 18113) (
+GIT-REPO-FILENAME 18115 . 19039)) (19090 29494 (GIT-COMMIT 19100 . 19678) (GIT-PUSH 19680 . 20236) (
+GIT-PULL 20238 . 20644) (GIT-BRANCH-DIFF 20646 . 24498) (GIT-APPROVAL 24500 . 24701) (GIT-GET-FILE 
+24703 . 26906) (GIT-FILE-EXISTS? 26908 . 27632) (GIT-REMOTE-UPDATE 27634 . 28676) (GIT-REMOTE-ADD 
+28678 . 28985) (GIT-FILE-DATE 28987 . 29492)) (29539 35158 (GIT-CHECKOUT 29549 . 29790) (
+GIT-WHICH-BRANCH 29792 . 30376) (GIT-MAKE-BRANCH 30378 . 31869) (GIT-BRANCHES 31871 . 32849) (
+GIT-BRANCH-EXISTS? 32851 . 33912) (PICK-BRANCH 33914 . 34258) (GIT-PULL-REQUESTS 34260 . 35156)) (
+35188 37893 (GIT-MY-CURRENT-BRANCH 35198 . 35371) (GIT-MY-BRANCHP 35373 . 36292) (GIT-MY-NEXT-BRANCH 
+36294 . 36735) (GIT-MY-BRANCHES 36737 . 37891)) (37939 41709 (GIT-ADD-WORKTREE 37949 . 39709) (
+GIT-REMOVE-WORKTREE 39711 . 40289) (GIT-LIST-WORKTREES 40291 . 41095) (WORKTREEDIR 41097 . 41707)) (
+41757 68211 (GIT-GET-DIFFERENT-FILES 41767 . 46857) (GIT-COMPARE-BRANCHES 46859 . 52351) (
+GIT-COMPARE-WITH-MYMEDLEY 52353 . 56073) (GIT-COMPARE-WORKTREE 56075 . 59552) (GITCDOBJBUTTONFN 59554
+ . 64558) (GIT-CD-LABELFN 64560 . 65642) (GIT-CD-MENUFN 65644 . 68209)) (68281 71733 (CDGITDIR 68291
+ . 68871) (GIT-COMMAND 68873 . 70846) (GITORIGIN 70848 . 71425) (GIT-INITIALS 71427 . 71731)))))
 STOP
diff --git a/lispusers/GITFNS.LCOM b/lispusers/GITFNS.LCOM
index 993452f5..acc4bab0 100644
Binary files a/lispusers/GITFNS.LCOM and b/lispusers/GITFNS.LCOM differ
diff --git a/lispusers/GITFNS.TEDIT b/lispusers/GITFNS.TEDIT
index ee4bc136..7410f3ac 100644
Binary files a/lispusers/GITFNS.TEDIT and b/lispusers/GITFNS.TEDIT differ
diff --git a/lispusers/REGIONMANAGER b/lispusers/REGIONMANAGER
index 5d9ceba3..0e05334e 100644
--- a/lispusers/REGIONMANAGER
+++ b/lispusers/REGIONMANAGER
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "28-Jan-2022 23:52:21" 
-{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>REGIONMANAGER.;113 36064  
+(FILECREATED "27-Feb-2022 08:48:09" 
+{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>REGIONMANAGER.;116 37561  
 
-      :CHANGES-TO (FNS CLOSEWITH MOVEWITH MOVEWITH.DOIT CLOSEWITH.DOIT)
+      :CHANGES-TO (FNS \RELCREATEREGION.REF \RELCREATEREGION.SIZE)
 
-      :PREVIOUS-DATE "28-Jan-2022 16:55:38" 
-{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>REGIONMANAGER.;108)
+      :PREVIOUS-DATE "28-Jan-2022 23:52:21" 
+{DSK}<Users>kaplan>Local>medley3.5>my-medley>lispusers>REGIONMANAGER.;113)
 
 
 (PRETTYCOMPRINT REGIONMANAGERCOMS)
@@ -397,7 +397,8 @@
 (DEFINEQ
 
 (\RELCREATEREGION.REF
-  [LAMBDA (REF WHICH)                                        (* ; "Edited 23-Jan-2022 20:20 by rmk")
+  [LAMBDA (REF WHICH)                                        (* ; "Edited 27-Feb-2022 08:43 by rmk")
+                                                             (* ; "Edited 23-Jan-2022 20:20 by rmk")
                                                              (* ; "Edited  2-Jan-2022 11:01 by rmk")
 
     (* ;; "REF can be NIL, an absolute screen position, the atom SCREEN, or a list of (anchor fraction adjustment) where anchor can be a region, window, or the atom SCREEN, fraction can be a number or atoms LEFT/RIGHT/BOTTOM/TOP as apropriate.")
@@ -418,6 +419,12 @@
                   (* ;; "LEFT and BOTTOM are 0")
 
                   0
+           ELSEIF (EQ REF 'TTY)
+             THEN (CL:IF (EQ WHICH 'X)
+                      (FETCH (REGION LEFT) OF (WINDOWPROP (WFROMDS T)
+                                                     'REGION))
+                      (FETCH (REGION BOTTOM) OF (WINDOWPROP (WFROMDS T)
+                                                       'REGION)))
            ELSEIF [AND (LISTP REF)
                        (SETQ ANCHOR (OR (REGIONP (CAR REF))
                                         (AND (WINDOWP (CAR REF))
@@ -425,7 +432,11 @@
                                                     'REGION))
                                         (AND (EQ (CAR REF)
                                                  'SCREEN)
-                                             'SCREEN]
+                                             'SCREEN)
+                                        (AND (EQ (CAR REF)
+                                                 'TTY)
+                                             (WINDOWPROP (WFROMDS T)
+                                                    'REGION]
              THEN (SETQ SPEC (CDR REF))
                   [IF (EQ WHICH 'X)
                       THEN (IF (EQ ANCHOR 'SCREEN)
@@ -453,7 +464,8 @@
            ELSE (\ILLEGAL.ARG REF])
 
 (\RELCREATEREGION.SIZE
-  [LAMBDA (PARAM WHICH)                                      (* ; "Edited  2-Jan-2022 11:00 by rmk")
+  [LAMBDA (PARAM WHICH)                                      (* ; "Edited 27-Feb-2022 08:40 by rmk")
+                                                             (* ; "Edited  2-Jan-2022 11:00 by rmk")
                                                              (* ; "Edited 30-Dec-2021 17:51 by rmk")
 
     (* ;; 
@@ -470,10 +482,15 @@
            ELSEIF (LISTP PARAM)
              THEN (IF (SETQ ANCHOR (OR (REGIONP (CAR PARAM))
                                        (AND (WINDOWP (CAR PARAM))
-                                            (WINDOWREGION (CAR PARAM)))
+                                            (WINDOWPROP (CAR PARAM)
+                                                   'REGION))
                                        (AND (EQ (CAR PARAM)
                                                 'SCREEN)
                                             'SCREEN)
+                                       (AND (EQ (CAR PARAM)
+                                                'TTY)
+                                            (WINDOWPROP (WFROMDS T)
+                                                   'REGION))
                                        (\ILLEGAL.ARG PARAM)))
                       THEN [SETQ VAL (CL:IF (EQ WHICH 'X)
                                          (CL:IF (EQ ANCHOR 'SCREEN)
@@ -493,6 +510,12 @@
              THEN (CL:IF (EQ WHICH 'X)
                       SCREENWIDTH
                       SCREENHEIGHT)
+           ELSEIF (EQ PARAM 'TTY)
+             THEN (CL:IF (EQ WHICH 'X)
+                      (FETCH (REGION WIDTH) OF (WINDOWREGION (WFROMDS T)
+                                                      'REGION))
+                      (FETCH (REGION HEIGHT) OF (WINDOWREGION (WFROMDS T)
+                                                       'REGION)))
            ELSE (\ILLEGAL.ARG PARAM])
 )
 
@@ -660,10 +683,10 @@
 )
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (1677 3864 (SET-TYPED-REGIONS 1687 . 3862)) (3865 10866 (RM-CREATEW 3875 . 6382) (
-RM-CLOSEW 6384 . 7785) (RM-GETREGION 7787 . 10373) (CLOSE-TYPED-W 10375 . 10864)) (11782 19261 (
-RELCREATEREGION 11792 . 16415) (RELGETREGION 16417 . 19024) (RELCREATEPOSITION 19026 . 19259)) (19262 
-24564 (\RELCREATEREGION.REF 19272 . 22304) (\RELCREATEREGION.SIZE 22306 . 24562)) (24617 33959 (
-RM-ATTACHWINDOW 24627 . 33957)) (33960 35694 (CLOSEWITH 33970 . 34497) (CLOSEWITH.DOIT 34499 . 34779) 
-(MOVEWITH 34781 . 35304) (MOVEWITH.DOIT 35306 . 35692)))))
+  (FILEMAP (NIL (1672 3859 (SET-TYPED-REGIONS 1682 . 3857)) (3860 10861 (RM-CREATEW 3870 . 6377) (
+RM-CLOSEW 6379 . 7780) (RM-GETREGION 7782 . 10368) (CLOSE-TYPED-W 10370 . 10859)) (11777 19256 (
+RELCREATEREGION 11787 . 16410) (RELGETREGION 16412 . 19019) (RELCREATEPOSITION 19021 . 19254)) (19257 
+26061 (\RELCREATEREGION.REF 19267 . 23018) (\RELCREATEREGION.SIZE 23020 . 26059)) (26114 35456 (
+RM-ATTACHWINDOW 26124 . 35454)) (35457 37191 (CLOSEWITH 35467 . 35994) (CLOSEWITH.DOIT 35996 . 36276) 
+(MOVEWITH 36278 . 36801) (MOVEWITH.DOIT 36803 . 37189)))))
 STOP
diff --git a/lispusers/REGIONMANAGER.LCOM b/lispusers/REGIONMANAGER.LCOM
index c5ca9f11..f6dd79e8 100644
Binary files a/lispusers/REGIONMANAGER.LCOM and b/lispusers/REGIONMANAGER.LCOM differ
diff --git a/lispusers/REGIONMANAGER.TEDIT b/lispusers/REGIONMANAGER.TEDIT
index f28330eb..e0bd0452 100644
--- a/lispusers/REGIONMANAGER.TEDIT
+++ b/lispusers/REGIONMANAGER.TEDIT
@@ -29,13 +29,13 @@ Two functions are provided to make it easy to create regions relative and orient
 RELCREATEREGION creates a region of dimensions WIDTH and HEIGHT. One of its corners is identified by CORNERX and CORNERY and that corner will be aligned with a reference screen-point determined by REFX and REFY. If ONSCREEN, the WIDTH or HEIGHT will be adjusted with respect to that alignment so that the resulting region is entirely within the screen.
 WIDTH and HEIGHT can be given as absolute (natural) numbers) or specified relative to the WIDTH and HEIGHT of another region or of the screen. The possibilities are interpreted as follows:
 natural number:  the number of screen points
-list of the form (anchor fraction adjustment), where anchor is a region, window, or the atom SCREEN. The corres-ponding dimension of the anchor is mutiplied by fraction  and  adjustment is added to the result. For example,  specifying  (<window> .5 -1) results in a WIDTH that is one point smaller than half the width of window's region.   Fraction and  adjustment default to 1 and 0 respectively.
-region/window/SCREEN: equivalent to (region/window/SCREEN 1 0).
+list of the form (anchor fraction adjustment), where anchor is a region, window, or an atom SCREEN or TTY. The corres-ponding dimension of the anchor is mutiplied by fraction and adjustment is added to the result. For example,  specifying  (<window> .5 -1) results in a WIDTH that is one point smaller than half the width of window's region.   Fraction and  adjustment default to 1 and 0 respectively.
+region/window/SCREEN/TTY: equivalent to (region/window/SCREEN/TTY 1 0).
 CORNERX can be LEFT, RIGHT, or NIL=LEFT, CORNERY can be BOTTOM, TOP, or NIL=BOTTOM.  If LEFT/TOP are specified, for example, the region will be splayed down and to the right of the reference point.  If RIGHT/BOTTOM, then up and to the left.
 The reference-point arguments REFX and REFY are interpreted as follows:
 NIL: LASTMOUSEX/LASTMOUSEY
 natural number:  an absolute screen coordinate
-(anchor fraction adjustment) or just region/window/SCREEN: the quantity determined relative to the size of anchor (as above) is added to the anchors left/bottom produce the REFX/REFY coordinate. In this case, fractions specified as LEFT/BOTTOM/NIL are interpreted as 0 and RIGHT/TOP are interpreted as 1. For example, a specification  (<window> .4 -2) for REFY will produce a coordinate 2 points below the level that is 40% of the distance between the bottom and top of the window's region.
+(anchor fraction adjustment) or just region/window/SCREEN/TTY: the quantity determined relative to the size of anchor (as above) is added to the anchors left/bottom produce the REFX/REFY coordinate. In this case, fractions specified as LEFT/BOTTOM/NIL are interpreted as 0 and RIGHT/TOP are interpreted as 1. For example, a specification  (<window> .4 -2) for REFY will produce a coordinate 2 points below the level that is 40% of the distance between the bottom and top of the window's region.
 For convenience, if REFX is a position and REFY is NIL, then the XCOORD and YCOORD of REFX are taken as absolute values for REFX and REFY.
 Also for convenience, if WIDTH is a potentially a list of RELCREATEREGION arguments, then the elements of that list are spread out in a recursive call.
 
@@ -43,6 +43,7 @@ Also for convenience, if WIDTH is a potentially a list of RELCREATEREGION argume
 Calls GETREGION with an initial ghost region as created by RELCREATEREGION.  CORNERX and CORNERY determine the ghost region's fixed corner, and the cursor starts at the region's diagonally opposite corner. If MINSIZE is true, then WIDTH and HEIGHT are taken as the minimum sizes of the region, except for adjustments that may be needed to ensure that all corners of the ghost region are initially visible on the screen.
 (RELCREATEPOSITION REFX REFY)      [Function]
 Creates a position with X and Y coordinates specified by REFX and REFY references as above.
+
 Constellation regions
 Applications are often set up as a constellation of windows, a central or primary window surrounded by some number of satellites for menus, headers, prompts, and secondary outputs. The main panel of a file browser, for example, displays the list of files, but above it are carefully arranged windows for the column headers, summary information, and prompts, and off to the side is the menu of file browser commands.  FILEBROWSER interprets the screen region that the user sweeps out for a new browser as the region for the whole constellation,the smallest region that will enclose the central window and all of its satellites. Similarly, the screen region given to TEDIT and SEDIT is divided between the prompt window and the central editing window, again so that the whole constellation (a pair in these cases) fit within the provided region.
 Each of these applications is constructed by anticipating the subregions that the satellite windows will occupy after they are attached, decreasing the constellation region by their estimated (using WIDTHIFWINDOW HEIGHTIFWINDOW) or actual sizes, and then using remainder as the region for the central window. 
@@ -87,16 +88,21 @@ TIMESROMAN$TERMINALMODERNMODERN
 
 A
  &Mm
-JS-
-
+JS-f=
+3E
+"
+
+
 j
-/3t2C	ƒ
+/3
+t2C	ƒ
 "
 O
 	=
 	,	l¬
 .
 9
+
 
 ™¤
 Ç
S
@@ -105,4 +111,4 @@ TIMESROMAN$TERMINALMODERNMODERN
 ™
 '—
 
-2(µ*"+(
*M.s[zº
\ No newline at end of file
+2(µ*"+(
*M.„izº
\ No newline at end of file
