From e4afa4a8ba18b147b29b40632646c75a5e1cedd6 Mon Sep 17 00:00:00 2001 From: rmkaplan Date: Sat, 20 Sep 2025 11:08:19 -0700 Subject: [PATCH] TEDIT-STREAM to avoid conflict Minor changes for forward compatibility with new hardcopy interface, but still good here --- library/tedit/TEDIT-STREAM | 233 +++++++++++++++++--------------- library/tedit/TEDIT-STREAM.LCOM | Bin 38207 -> 38498 bytes library/tedit/tedit-exports.all | 32 ++--- 3 files changed, 134 insertions(+), 131 deletions(-) diff --git a/library/tedit/TEDIT-STREAM b/library/tedit/TEDIT-STREAM index 94102138..259b7c43 100644 --- a/library/tedit/TEDIT-STREAM +++ b/library/tedit/TEDIT-STREAM @@ -1,13 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 9-Sep-2025 22:08:09" {WMEDLEY}tedit>TEDIT-STREAM.;915 190872 +(FILECREATED "20-Sep-2025 08:49:36" {WMEDLEY}TEDIT>TEDIT-STREAM.;919 191988 :EDIT-BY rmk - :CHANGES-TO (FNS OPENTEXTSTREAM) - (RECORDS TEXTOBJ) + :CHANGES-TO (RECORDS TEXTSTREAM) + (FNS \TEDIT.TEXTINIT \TEDIT.TEXTDSPXPOSITION) - :PREVIOUS-DATE " 8-Sep-2025 22:10:32" {WMEDLEY}tedit>TEDIT-STREAM.;913) + :PREVIOUS-DATE "18-Sep-2025 23:09:35" {WMEDLEY}TEDIT>TEDIT-STREAM.;917) (PRETTYCOMPRINT TEDIT-STREAMCOMS) @@ -285,14 +285,14 @@ ACCESS _ 'BOTH USERCLOSEABLE _ T USERVISIBLE _ T - DEVICE _ \TEXTFDEV + DEVICE _ \TEDITFDEV F1 _ NIL F2 _ 0 F3 _ NIL F4 _ NIL F5 _ NIL MAXBUFFERS _ 10 - IMAGEOPS _ \TEXTIMAGEOPS + IMAGEOPS _ \TEDITIMAGEOPS IMAGEDATA _ NIL))) ) @@ -1658,7 +1658,8 @@ (SETTOBJ TEXTOBJ DEFAULTPARALOOKS PARALOOKS]) (\TEDIT.OPENTEXTFILE - [LAMBDA (TEXT PROPS) (* ; "Edited 8-Sep-2025 21:52 by rmk") + [LAMBDA (TEXT PROPS) (* ; "Edited 16-Sep-2025 00:28 by rmk") + (* ; "Edited 8-Sep-2025 21:52 by rmk") (* ; "Edited 21-Nov-2024 11:38 by rmk") (* ; "Edited 20-Dec-2023 10:49 by rmk") (* ; "Edited 28-Oct-2023 10:33 by rmk") @@ -1667,24 +1668,26 @@ (* ; "Edited 18-Sep-2023 22:40 by rmk") (* ; "Edited 17-Sep-2023 21:29 by rmk") (CL:WHEN TEXT - (if (OR (LITATOM TEXT) - (STRINGP TEXT) - (CL:PATHNAMEP TEXT)) + (if (\GETSTREAM TEXT 'INPUT T) + elseif (OR (LITATOM TEXT) + (STRINGP TEXT) + (CL:PATHNAMEP TEXT) + (STREAMP TEXT)) then (* ; "String detects empty extension") - [RESETSAVE [SETQ TEXT (OPENSTREAM (OR (if (OR (CL:PATHNAMEP TEXT) - (FILENAMEFIELD.STRING TEXT - 'EXTENSION)) - then (FINDFILE TEXT T) - elseif (FINDFILE-WITH-EXTENSIONS TEXT NIL - *TEDIT-EXTENSIONS*)) - TEXT) + [RESETSAVE [SETQ TEXT (OPENSTREAM (if (STREAMP TEXT) + elseif (OR (CL:PATHNAMEP TEXT) + (FILENAMEFIELD.STRING TEXT + 'EXTENSION)) + then (FINDFILE TEXT T) + elseif (FINDFILE-WITH-EXTENSIONS TEXT NIL + *TEDIT-EXTENSIONS*) + else TEXT) 'INPUT 'OLD `((TYPE TEXT) (FORMAT ,(LISTGET PROPS 'FORMAT] '(PROGN (AND RESETSTATE (CLOSEF? OLDVALUE] TEXT - elseif (\GETSTREAM TEXT 'INPUT T) else (* ;; "Don't know what it is") @@ -1749,7 +1752,9 @@ NEWSTREAM]) (\TEDIT.TEXTINIT - [LAMBDA NIL (* ; "Edited 10-Jul-2025 11:28 by rmk") + [LAMBDA NIL (* ; "Edited 20-Sep-2025 08:48 by rmk") + (* ; "Edited 18-Sep-2025 14:52 by rmk") + (* ; "Edited 10-Jul-2025 11:28 by rmk") (* ; "Edited 15-Apr-2025 23:10 by rmk") (* ; "Edited 4-Sep-2024 22:05 by rmk") (* ; "Edited 22-May-2024 14:53 by rmk") @@ -1763,11 +1768,11 @@ (* ; "Edited 5-May-2022 15:12 by rmk") (* ; "Edited 7-Oct-2021 08:40 by rmk:") (* ; - "Create the FDEV and STREAM prototypes for TEXT streams.") + "Create the FDEV and STREAM prototypes for TEDIT streams.") - (* ;; "TEXT streams make use of the following STREAM fields:") + (* ;; "TEDIT streams make use of the following STREAM fields:") - (* ;; "(DEVICE (* FDEV of this guy -- The TEXT device)") + (* ;; "(DEVICE (* FDEV of this guy -- The TEDIT device)") (* ;; "F1 Number of characters to the end of the current piece") @@ -1785,24 +1790,28 @@ (* ;; "(FW8 WORD)") - (SETQ \TEXTIMAGEOPS (create IMAGEOPS - IMAGETYPE _ 'TEXT - IMXPOSITION _ (FUNCTION \TEDIT.TEXTDSPXPOSITION) - IMYPOSITION _ (FUNCTION \TEDIT.TEXTDSPYPOSITION) - IMLEFTMARGIN _ (FUNCTION \TEDIT.TEXTLEFTMARGIN) - IMRIGHTMARGIN _ (FUNCTION \TEDIT.TEXTRIGHTMARGIN) - IMFONT _ (FUNCTION \TEDIT.TEXTDSPFONT) - IMCLOSEFN _ (FUNCTION NILL) - IMFONTCREATE _ 'DISPLAY - IMLINEFEED _ (FUNCTION \TEDIT.TEXTDSPLINEFEED) - IMCHARWIDTH _ (FUNCTION \TEDIT.TEXTDSPCHARWIDTH) - IMSTRINGWIDTH _ (FUNCTION \TEDIT.TEXTDSPSTRINGWIDTH) - IMSCALE _ [FUNCTION (LAMBDA NIL 1] - IMCOLOR _ (FUNCTION \TEDIT.TEXTCOLOR))) + (SETQ \TEDITIMAGEOPS (create IMAGEOPS + IMAGETYPE _ 'TEDIT + IMXPOSITION _ (FUNCTION \TEDIT.TEXTDSPXPOSITION) + IMYPOSITION _ (FUNCTION \TEDIT.TEXTDSPYPOSITION) + IMLEFTMARGIN _ (FUNCTION \TEDIT.TEXTLEFTMARGIN) + IMRIGHTMARGIN _ (FUNCTION \TEDIT.TEXTRIGHTMARGIN) + IMFONT _ (FUNCTION \TEDIT.TEXTDSPFONT) + IMCLOSEFN _ (FUNCTION NILL) + IMFONTCREATE _ 'DISPLAY + IMLINEFEED _ (FUNCTION \TEDIT.TEXTDSPLINEFEED) + IMCHARWIDTH _ (FUNCTION \TEDIT.TEXTDSPCHARWIDTH) + IMSTRINGWIDTH _ (FUNCTION \TEDIT.TEXTDSPSTRINGWIDTH) + IMSCALE _ [FUNCTION (LAMBDA NIL 1] + IMCOLOR _ (FUNCTION \TEDIT.TEXTCOLOR))) + + (* ;; "Do we need TEXT here?") + (FONTPROFILE.ADDDEVICE 'TEXT 'DISPLAY) (ADDTOVAR IMAGESTREAMTYPES (TEXT (FONTCREATE \CREATEDISPLAYFONT) - (FONTSAVAILABLE \SEARCHFONTFILES) (CREATECHARSET \CREATECHARSET.DISPLAY))) + (ADDTOVAR IMAGESTREAMTYPES (TEDIT (FONTCREATE \CREATEDISPLAYFONT) + (CREATECHARSET \CREATECHARSET.DISPLAY))) (* ;; "Maybe more functions later. The INCODE and BACK functions possibly need to count. If \TEXTBACKFILEPTR takes a count variable, the extra level wouldn't be needed. But INCCODE wants to go through the BIN opcode") @@ -1812,41 +1821,41 @@ (FUNCTION \TEDIT.TEXTOUTCHARFN) (FUNCTION \TEDIT.TEXTFORMATBYTESTREAM) 'CR NIL (FUNCTION \TEDIT.TEXTFORMATBYTESTRING)) - (SETQ \TEXTFDEV (create FDEV - DEVICENAME _ 'TEXT - RESETABLE _ T - RANDOMACCESSP _ T - PAGEMAPPED _ NIL - GETFILENAME _ (FUNCTION NILL) - BIN _ (FUNCTION \TEDIT.TEXTBIN) - BOUT _ (FUNCTION \TEDIT.TEXTBOUT) - CLOSEFILE _ (FUNCTION \TEDIT.TEXTCLOSEF) - OPENFILE _ (FUNCTION \TEDIT.TEXTOPENF) - DELETEFILE _ (FUNCTION NILL) - DIRECTORYNAMEP _ (FUNCTION NILL) - EVENTFN _ (FUNCTION NILL) - GENERATEFILES _ (FUNCTION \GENERATENOFILES) - GETFILEINFO _ (FUNCTION NILL) - HOSTNAMEP _ (FUNCTION NILL) - READPAGES _ (FUNCTION NILL) - REOPENFILE _ [FUNCTION (LAMBDA (FILE ACCESS RECOG OTHERINFO FDEV STREAM) - (replace (STREAM ACCESS) of STREAM - with 'BOTH) - STREAM] - SETFILEINFO _ (FUNCTION \TEDIT.TEXTSETFILEINFO) - BACKFILEPTR _ (FUNCTION \TEDIT.TEXTBACKFILEPTR) - SETFILEPTR _ (FUNCTION \TEDIT.TEXTSETFILEPTR) - PEEKBIN _ (FUNCTION \TEDIT.TEXTPEEKBIN) - GETEOFPTR _ (FUNCTION \TEDIT.TEXTGETEOFPTR) - SETEOFPTR _ (FUNCTION \TEDIT.TEXTSETEOFPTR) - GETFILEPTR _ (FUNCTION \TEDIT.TEXTGETFILEPTR) - EOFP _ (FUNCTION \TEDIT.TEXTEOFP) - FDBINABLE _ T - FDBOUTABLE _ NIL - FDEXTENDABLE _ NIL - TRUNCATEFILE _ (FUNCTION NILL) - WRITEPAGES _ (FUNCTION NILL) - DEFAULTEXTERNALFORMAT _ :TEXTSTREAM)) + (SETQ \TEDITFDEV (create FDEV + DEVICENAME _ 'TEDIT + RESETABLE _ T + RANDOMACCESSP _ T + PAGEMAPPED _ NIL + GETFILENAME _ (FUNCTION NILL) + BIN _ (FUNCTION \TEDIT.TEXTBIN) + BOUT _ (FUNCTION \TEDIT.TEXTBOUT) + CLOSEFILE _ (FUNCTION \TEDIT.TEXTCLOSEF) + OPENFILE _ (FUNCTION \TEDIT.TEXTOPENF) + DELETEFILE _ (FUNCTION NILL) + DIRECTORYNAMEP _ (FUNCTION NILL) + EVENTFN _ (FUNCTION NILL) + GENERATEFILES _ (FUNCTION \GENERATENOFILES) + GETFILEINFO _ (FUNCTION NILL) + HOSTNAMEP _ (FUNCTION NILL) + READPAGES _ (FUNCTION NILL) + REOPENFILE _ [FUNCTION (LAMBDA (FILE ACCESS RECOG OTHERINFO FDEV STREAM) + (replace (STREAM ACCESS) of STREAM + with 'BOTH) + STREAM] + SETFILEINFO _ (FUNCTION \TEDIT.TEXTSETFILEINFO) + BACKFILEPTR _ (FUNCTION \TEDIT.TEXTBACKFILEPTR) + SETFILEPTR _ (FUNCTION \TEDIT.TEXTSETFILEPTR) + PEEKBIN _ (FUNCTION \TEDIT.TEXTPEEKBIN) + GETEOFPTR _ (FUNCTION \TEDIT.TEXTGETEOFPTR) + SETEOFPTR _ (FUNCTION \TEDIT.TEXTSETEOFPTR) + GETFILEPTR _ (FUNCTION \TEDIT.TEXTGETFILEPTR) + EOFP _ (FUNCTION \TEDIT.TEXTEOFP) + FDBINABLE _ T + FDBOUTABLE _ NIL + FDEXTENDABLE _ NIL + TRUNCATEFILE _ (FUNCTION NILL) + WRITEPAGES _ (FUNCTION NILL) + DEFAULTEXTERNALFORMAT _ :TEXTSTREAM)) (CL:SETF (CONDITION-HANDLER 'XCL:STREAM-NOT-OPEN) (FUNCTION (LAMBDA (CONDITION) (LET ((STREAM (STREAM-ERROR-STREAM CONDITION))) @@ -2091,7 +2100,8 @@ (\TEDIT.INSTALL.PIECE TSTREAM PC (- CH# START-OF-PIECE)))]) (\TEDIT.TEXTDSPXPOSITION - [LAMBDA (TSTREAM XPOSITION) (* ; "Edited 25-Jun-2024 11:59 by rmk") + [LAMBDA (TSTREAM XPOSITION) (* ; "Edited 20-Sep-2025 08:30 by rmk") + (* ; "Edited 25-Jun-2024 11:59 by rmk") (* ; "Edited 17-Mar-2024 12:15 by rmk") (* ; "Edited 3-Jan-2001 17:27 by rmk:") (* ; @@ -2100,13 +2110,18 @@ (* ;;  "Simply returns the XPOSITION of the primary window's display stream, this is a read-only function") - (LET ((WINDOW (\TEDIT.PRIMARYPANE TSTREAM))) (* ; + (LET ((WINDOW (\TEDIT.PRIMARYPANE TSTREAM)) + SPACEWIDTH) (* ;  "If there is no window, estimate from character position") - (CL:IF WINDOW - (DSPXPOSITION NIL WINDOW) - (TIMES (CHARWIDTH (CHARCODE SPACE) - TSTREAM) - (POSITION TSTREAM)))]) + (if WINDOW + then (DSPXPOSITION XPOSITION WINDOW) + else (SETQ SPACEWIDTH (CHARWIDTH (CHARCODE SPACE) + TSTREAM)) + (PROG1 (TIMES SPACEWIDTH (POSITION TSTREAM)) + (CL:WHEN (AND XPOSITION (IGEQ XPOSITION 0)) + (SPACES (IDIFFERENCE (QUOTIENT XPOSITION SPACEWIDTH) + (POSITION TSTREAM)) + TSTREAM)))]) (\TEDIT.TEXTDSPYPOSITION [LAMBDA (TSTREAM YPOSITION) (* ; "Edited 25-Jun-2024 11:59 by rmk") @@ -3120,34 +3135,34 @@ (ADDTOVAR LAMA TEXTPROP) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (36924 67740 (\TEDIT.TEXTBIN 36934 . 47684) (\TEDIT.TEXTPEEKBIN 47686 . 53236) ( -\TEDIT.TEXTBACKFILEPTR 53238 . 58911) (\TEDIT.TEXTBOUT 58913 . 63530) (\TEDIT.INSTALL.FILEBUFFER 63532 - . 67738)) (68638 72929 (\TEDIT.TEXTOUTCHARFN 68648 . 70204) (\TEDIT.TEXTINCCODEFN 70206 . 70945) ( -\TEDIT.TEXTBACKCCODEFN 70947 . 71539) (\TEDIT.TEXTFORMATBYTESTREAM 71541 . 72378) ( -\TEDIT.TEXTFORMATBYTESTRING 72380 . 72927)) (72976 84540 (OPENTEXTSTREAM 72986 . 79861) ( -COPYTEXTSTREAM 79863 . 83763) (TEDIT.STREAMCHANGEDP 83765 . 84067) (TXTFILE 84069 . 84538)) (84541 -115055 (\TEDIT.REOPENTEXTSTREAM 84551 . 85903) (\TEDIT.OPENTEXTSTREAM.PIECES 85905 . 90833) ( -\TEDIT.OPENTEXTSTREAM.PROPS 90835 . 91937) (\TEDIT.OPENTEXTSTREAM.SETUP.SEL 91939 . 97180) ( -\TEDIT.OPENTEXTSTREAM.WINDOW 97182 . 99973) (\TEDIT.OPENTEXTSTREAM.DEFAULTLOOKS 99975 . 101914) ( -\TEDIT.OPENTEXTFILE 101916 . 104167) (\TEDIT.CREATE.TEXTSTREAM 104169 . 105316) (\TEDIT.REOPEN.STREAM -105318 . 107654) (\TEDIT.TEXTINIT 107656 . 115053)) (115093 116281 (\TEDIT.TTYBOUT 115103 . 116279)) ( -116399 136396 (\TEDIT.TEXTCLOSEF 116409 . 117733) (\TEDIT.TEXTDSPFONT 117735 . 118933) ( -\TEDIT.TEXTEOFP 118935 . 120690) (\TEDIT.TEXTGETEOFPTR 120692 . 121015) (\TEDIT.TEXTSETEOFPTR 121017 - . 122304) (\TEDIT.TEXTGETFILEPTR 122306 . 125141) (\TEDIT.TEXTSETFILEINFO 125143 . 125651) ( -\TEDIT.TEXTOPENF 125653 . 126584) (\TEDIT.TEXTSETEOF 126586 . 127202) (\TEDIT.TEXTSETFILEPTR 127204 . -129314) (\TEDIT.TEXTDSPXPOSITION 129316 . 130333) (\TEDIT.TEXTDSPYPOSITION 130335 . 131076) ( -\TEDIT.TEXTLEFTMARGIN 131078 . 131669) (\TEDIT.TEXTCOLOR 131671 . 132254) (\TEDIT.TEXTRIGHTMARGIN -132256 . 135545) (\TEDIT.TEXTDSPCHARWIDTH 135547 . 135851) (\TEDIT.TEXTDSPSTRINGWIDTH 135853 . 136159) - (\TEDIT.TEXTDSPLINEFEED 136161 . 136394)) (136434 149047 (\TEDIT.NTHCHARCODE 136444 . 137895) ( -\TEDIT.PIECE.NTHCHARCODE 137897 . 141807) (\TEDIT.RPLCHARCODE 141809 . 143267) ( -\TEDIT.PIECE.RPLCHARCODE 143269 . 148692) (\TEDIT.NTHCHARLOOKS 148694 . 149045)) (150094 171188 ( -\TEDIT.DELETE.SELPIECES 150104 . 153729) (\TEDIT.INSERTCH 153731 . 161770) (\TEDIT.INSERTCH.HISTORY -161772 . 165236) (\TEDIT.INSERTEOL 165238 . 167063) (\TEDIT.INSERTCH.INSERTION 167065 . 169902) ( -\TEDIT.INSERTCH.EXTEND 169904 . 171186)) (171189 172693 (\TEDIT.NEXTCHANGEABLE.CHNO 171199 . 171914) ( -\TEDIT.LASTCHANGEABLE.CHNO 171916 . 172691)) (172694 174398 (\SETUPGETCH 172704 . 174396)) (174456 -178914 (\TEDIT.INSTALL.PIECE 174466 . 178912)) (178952 188053 (TEXTPROP 178962 . 179309) (GETTEXTPROP -179311 . 179555) (PUTTEXTPROP 179557 . 179814) (GETTEXTPROPS 179816 . 180260) (PUTTEXTPROPS 180262 . -181166) (TEXTPROP.ADD 181168 . 181431) (\TEDIT.TEXTPROP 181433 . 188051)) (188054 190124 ( -\TEDIT.TEXTOBJ.PROPNAMES 188064 . 189016) (\TEDIT.TEXTOBJ.PROPFETCHFN 189018 . 189534) ( -\TEDIT.TEXTOBJ.PROPSTOREFN 189536 . 190122))))) + (FILEMAP (NIL (36954 67770 (\TEDIT.TEXTBIN 36964 . 47714) (\TEDIT.TEXTPEEKBIN 47716 . 53266) ( +\TEDIT.TEXTBACKFILEPTR 53268 . 58941) (\TEDIT.TEXTBOUT 58943 . 63560) (\TEDIT.INSTALL.FILEBUFFER 63562 + . 67768)) (68668 72959 (\TEDIT.TEXTOUTCHARFN 68678 . 70234) (\TEDIT.TEXTINCCODEFN 70236 . 70975) ( +\TEDIT.TEXTBACKCCODEFN 70977 . 71569) (\TEDIT.TEXTFORMATBYTESTREAM 71571 . 72408) ( +\TEDIT.TEXTFORMATBYTESTRING 72410 . 72957)) (73006 84570 (OPENTEXTSTREAM 73016 . 79891) ( +COPYTEXTSTREAM 79893 . 83793) (TEDIT.STREAMCHANGEDP 83795 . 84097) (TXTFILE 84099 . 84568)) (84571 +115705 (\TEDIT.REOPENTEXTSTREAM 84581 . 85933) (\TEDIT.OPENTEXTSTREAM.PIECES 85935 . 90863) ( +\TEDIT.OPENTEXTSTREAM.PROPS 90865 . 91967) (\TEDIT.OPENTEXTSTREAM.SETUP.SEL 91969 . 97210) ( +\TEDIT.OPENTEXTSTREAM.WINDOW 97212 . 100003) (\TEDIT.OPENTEXTSTREAM.DEFAULTLOOKS 100005 . 101944) ( +\TEDIT.OPENTEXTFILE 101946 . 104423) (\TEDIT.CREATE.TEXTSTREAM 104425 . 105572) (\TEDIT.REOPEN.STREAM +105574 . 107910) (\TEDIT.TEXTINIT 107912 . 115703)) (115743 116931 (\TEDIT.TTYBOUT 115753 . 116929)) ( +117049 137512 (\TEDIT.TEXTCLOSEF 117059 . 118383) (\TEDIT.TEXTDSPFONT 118385 . 119583) ( +\TEDIT.TEXTEOFP 119585 . 121340) (\TEDIT.TEXTGETEOFPTR 121342 . 121665) (\TEDIT.TEXTSETEOFPTR 121667 + . 122954) (\TEDIT.TEXTGETFILEPTR 122956 . 125791) (\TEDIT.TEXTSETFILEINFO 125793 . 126301) ( +\TEDIT.TEXTOPENF 126303 . 127234) (\TEDIT.TEXTSETEOF 127236 . 127852) (\TEDIT.TEXTSETFILEPTR 127854 . +129964) (\TEDIT.TEXTDSPXPOSITION 129966 . 131449) (\TEDIT.TEXTDSPYPOSITION 131451 . 132192) ( +\TEDIT.TEXTLEFTMARGIN 132194 . 132785) (\TEDIT.TEXTCOLOR 132787 . 133370) (\TEDIT.TEXTRIGHTMARGIN +133372 . 136661) (\TEDIT.TEXTDSPCHARWIDTH 136663 . 136967) (\TEDIT.TEXTDSPSTRINGWIDTH 136969 . 137275) + (\TEDIT.TEXTDSPLINEFEED 137277 . 137510)) (137550 150163 (\TEDIT.NTHCHARCODE 137560 . 139011) ( +\TEDIT.PIECE.NTHCHARCODE 139013 . 142923) (\TEDIT.RPLCHARCODE 142925 . 144383) ( +\TEDIT.PIECE.RPLCHARCODE 144385 . 149808) (\TEDIT.NTHCHARLOOKS 149810 . 150161)) (151210 172304 ( +\TEDIT.DELETE.SELPIECES 151220 . 154845) (\TEDIT.INSERTCH 154847 . 162886) (\TEDIT.INSERTCH.HISTORY +162888 . 166352) (\TEDIT.INSERTEOL 166354 . 168179) (\TEDIT.INSERTCH.INSERTION 168181 . 171018) ( +\TEDIT.INSERTCH.EXTEND 171020 . 172302)) (172305 173809 (\TEDIT.NEXTCHANGEABLE.CHNO 172315 . 173030) ( +\TEDIT.LASTCHANGEABLE.CHNO 173032 . 173807)) (173810 175514 (\SETUPGETCH 173820 . 175512)) (175572 +180030 (\TEDIT.INSTALL.PIECE 175582 . 180028)) (180068 189169 (TEXTPROP 180078 . 180425) (GETTEXTPROP +180427 . 180671) (PUTTEXTPROP 180673 . 180930) (GETTEXTPROPS 180932 . 181376) (PUTTEXTPROPS 181378 . +182282) (TEXTPROP.ADD 182284 . 182547) (\TEDIT.TEXTPROP 182549 . 189167)) (189170 191240 ( +\TEDIT.TEXTOBJ.PROPNAMES 189180 . 190132) (\TEDIT.TEXTOBJ.PROPFETCHFN 190134 . 190650) ( +\TEDIT.TEXTOBJ.PROPSTOREFN 190652 . 191238))))) STOP diff --git a/library/tedit/TEDIT-STREAM.LCOM b/library/tedit/TEDIT-STREAM.LCOM index c061e90d6edb4a919521a2aaa0018345e6c3b37f..eef99860d43af97233b513a23674eda9bf7c088d 100644 GIT binary patch delta 2048 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.5>working-medley>library>tedit>tedit-exports.all;241 52904 +(FILECREATED "20-Sep-2025 11:04:51"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>tedit-exports.all;242 52344 - :EDIT-BY rmk - - :PREVIOUS-DATE " 8-Sep-2025 23:06:31" {WMEDLEY}TEDIT>tedit-exports.all;240) + :EDIT-BY rmk) (PRETTYCOMPRINT ((E (MAPC (MKLIST FROMFILES) (FUNCTION (LAMBDA (F) (MAPC (IMPORTFILE F FLG) (FUNCTION @@ -367,7 +365,7 @@ NEWVALUE)) (* ; ) (STARTINGCOFFSET (fetch (STREAM F2) of DATUM) (replace (STREAM F2) of DATUM with NEWVALUE))) (TYPE? (AND (type? STREAM DATUM) (type? TEXTOBJ (fetch (TEXTSTREAM TEXTOBJ) of DATUM)))) (CREATE (create STREAM BINABLE _ NIL BOUTABLE _ NIL ACCESS _ (QUOTE BOTH) USERCLOSEABLE _ T USERVISIBLE _ T DEVICE _ -\TEXTFDEV F1 _ NIL F2 _ 0 F3 _ NIL F4 _ NIL F5 _ NIL MAXBUFFERS _ 10 IMAGEOPS _ \TEXTIMAGEOPS +\TEDITFDEV F1 _ NIL F2 _ 0 F3 _ NIL F4 _ NIL F5 _ NIL MAXBUFFERS _ 10 IMAGEOPS _ \TEDITIMAGEOPS IMAGEDATA _ NIL))) (PUTPROPS NEXTPIECE MACRO ((PC) (ffetch (PIECE NEXTPIECE) of PC))) (PUTPROPS PREVPIECE MACRO ((PC) (ffetch (PIECE PREVPIECE) of PC))) @@ -440,7 +438,7 @@ UTF8.PTYPE UTF16BE.PTYPE UTF16LE.PTYPE)) (STRING.PTYPES (LIST THINSTRING.PTYPE F BINABLE.PTYPES (LIST THINFILE.PTYPE THINSTRING.PTYPE)) (THIN.PTYPES (LIST THINFILE.PTYPE THINSTRING.PTYPE)) (FAT.PTYPES (LIST FATFILE2.PTYPE FATSTRING.PTYPE FATFILE1.PTYPE))) (GLOBALVARS \TEXTIMAGEOPS \TEXTFDEV) -(PUTPROP (QUOTE TEDIT-STREAM) (QUOTE IMPORTDATE) (IDATE " 9-Sep-2025 21:49:53")) +(PUTPROP (QUOTE TEDIT-STREAM) (QUOTE IMPORTDATE) (IDATE "20-Sep-2025 08:49:36")) (PUTPROPS \TEDIT.MOUSESTATE MACRO (BUTTON (* ;; "Test to see if only the specified mouse button is down. DOES NOT call GETMOUSESTATE, so the mouse-button info is the same as the last time it was called." ) (SELECTQ (CAR BUTTON) (LEFT (QUOTE (EQ LASTMOUSEBUTTONS 4))) (MIDDLE (QUOTE (EQ LASTMOUSEBUTTONS 1)) @@ -537,7 +535,7 @@ LINELEAD _ 0) (PUTPROPS FSETPLOOKS MACRO ((PLOOKS FIELD NEWVALUE) (freplace (PARALOOKS FIELD) of PLOOKS with NEWVALUE))) (PUTPROPS PARALOOKS! MACRO ((PL) (\DTEST PL (QUOTE PARALOOKS)))) -(PUTPROP (QUOTE TEDIT-LOOKS) (QUOTE IMPORTDATE) (IDATE " 9-Sep-2025 21:48:14")) +(PUTPROP (QUOTE TEDIT-LOOKS) (QUOTE IMPORTDATE) (IDATE " 9-Sep-2025 21:55:31")) (PUTPROP (QUOTE TEDIT-STYLES) (QUOTE IMPORTDATE) (IDATE "28-Jul-2025 23:25:43")) (DATATYPE TEDITCARET (TCNOWTIME (* Used to hold the current time, when checking to see if a transition is due) TCTHENTIME (* Time when the next transition is to take place) TCFORCEDDOWN (* TCFORCEDOWN = T @@ -600,19 +598,9 @@ OR (CL:IF (TYPENAMEP $$BODY (QUOTE TEXTOBJ)) (FGETTOBJ $$BODY PRIMARYPANE) $$BOD GETPANEPROP (PANEPROPS P) NEXTPANE))) (GO $$OUT))) by (OR (GETPANEPROP (PANEPROPS I.V.) PREVPANE) (GO $$OUT))))) (PUTPROPS ALLBUTTONSUP MACRO (NIL (ZEROP (LOGAND 7 LASTMOUSEBUTTONS)))) -(PUTPROP (QUOTE TEDIT-WINDOW) (QUOTE IMPORTDATE) (IDATE "11-Aug-2025 21:22:37")) +(PUTPROP (QUOTE TEDIT-WINDOW) (QUOTE IMPORTDATE) (IDATE "18-Sep-2025 23:09:24")) (PUTPROP (QUOTE TEDIT-BUTTONS) (QUOTE IMPORTDATE) (IDATE "30-Apr-2025 14:09:18")) -(RPAQQ PTSPERPICA 12) -(RPAQQ PTSPERINCH 72) -(RPAQQ PICASPERINCH 6) -(RPAQQ MICASPERINCH 2540) -(RPAQ PTSPERCM (FQUOTIENT PTSPERINCH 2.54)) -(RPAQ PTSPERMICA (FQUOTIENT PTSPERINCH MICASPERINCH)) -(RPAQ MICASPERPOINT (FQUOTIENT MICASPERINCH PTSPERINCH)) -(CONSTANTS (PTSPERPICA 12) (PTSPERINCH 72) (PICASPERINCH 6) (MICASPERINCH 2540) (PTSPERCM (FQUOTIENT -PTSPERINCH 2.54)) (PTSPERMICA (FQUOTIENT PTSPERINCH MICASPERINCH)) (MICASPERPOINT (FQUOTIENT -MICASPERINCH PTSPERINCH))) -(PUTPROP (QUOTE TEDIT-MENU) (QUOTE IMPORTDATE) (IDATE "28-Jul-2025 23:26:01")) +(PUTPROP (QUOTE TEDIT-MENU) (QUOTE IMPORTDATE) (IDATE "10-Sep-2025 17:08:43")) (PUTPROP (QUOTE TEDIT-FIND) (QUOTE IMPORTDATE) (IDATE "21-Apr-2025 22:42:57")) (RPAQQ \TEDIT.TTCCODES ((NONE 0) (CHARDELETE 1) (WORDDELETE 2) (DELETE 3) (FUNCTIONCALL 4) (REDO 5) ( UNDO 6) (CMD 7) (NEXT 8) (EXPAND 9) (CHARDELETE.FORWARD 10) (WORDDELETE.FORWARD 11) (PUNCT 20) (TEXT @@ -620,7 +608,7 @@ UNDO 6) (CMD 7) (NEXT 8) (EXPAND 9) (CHARDELETE.FORWARD 10) (WORDDELETE.FORWARD (CONSTANTS \TEDIT.TTCCODES) (PUTPROPS \TEDIT.TTC MACRO ((CLASS) (CONSTANT (CADR (ASSOC (QUOTE CLASS) \TEDIT.TTCCODES))))) (PUTPROP (QUOTE TEDIT-FNKEYS) (QUOTE IMPORTDATE) (IDATE " 7-Aug-2025 15:00:51")) -(PUTPROP (QUOTE TEDIT-HCPY) (QUOTE IMPORTDATE) (IDATE "21-Apr-2025 19:07:23")) +(PUTPROP (QUOTE TEDIT-HCPY) (QUOTE IMPORTDATE) (IDATE "19-Sep-2025 17:08:05")) (DATATYPE TEDITHISTORYEVENT ((* ;; "Describes one event on the TEdit edit history list.") THACTION (* ; "A keyword specifying what the event was") THPOINT (* ; "Was the selection to the left or right?") THLEN (* ; "The # of chars involved") THCH# (* ; "The starting ch#") THFIRSTPIECE (* ; @@ -669,7 +657,7 @@ REGIONPARENT FULLXPOINTER) (* ; "The parent node for this box, for sub-boxes") R $$VALUES)) (PROG1 (CAR $$VALUES) (\,@ (FOR V IN (CAR ARGS) collect (COND (V (BQUOTE (SETQ (\, V) (POP $$VALUES)))) (T (BQUOTE (SETQ $$VALUES (CDR $$VALUES)))))))))))) (PUTPROPS TEDIT.VALUES MACRO (ARGS (BQUOTE (LIST (\,@ ARGS))))) -(PUTPROP (QUOTE TEDIT-PAGE) (QUOTE IMPORTDATE) (IDATE " 5-Jun-2025 08:24:12")) +(PUTPROP (QUOTE TEDIT-PAGE) (QUOTE IMPORTDATE) (IDATE "19-Sep-2025 22:09:03")) (PUTPROP (QUOTE TEDIT-ABBREV) (QUOTE IMPORTDATE) (IDATE " 6-Sep-2025 00:10:45")) (PUTPROP (QUOTE TEDIT-TFBRAVO) (QUOTE IMPORTDATE) (IDATE " 7-Sep-2025 11:11:43")) (DECLARE%: DONTCOPY