From 74f518ca021ddd011eae52bd22fe8508226e93a4 Mon Sep 17 00:00:00 2001 From: rmkaplan <69548581+rmkaplan@users.noreply.github.com> Date: Sat, 16 Aug 2025 13:45:28 -0700 Subject: [PATCH] Tedit PLOOKS cleanup plus default paralooks (#2259) --- internal/TEDIT-DEBUG | 86 ++++---- internal/TEDIT-DEBUG.LCOM | Bin 62121 -> 61422 bytes library/tedit/TEDIT | 147 +++++++------- library/tedit/TEDIT-ABBREV | 14 +- library/tedit/TEDIT-ABBREV.LCOM | Bin 5024 -> 5019 bytes library/tedit/TEDIT-COMMAND | 95 +++++---- library/tedit/TEDIT-COMMAND.LCOM | Bin 5681 -> 5752 bytes library/tedit/TEDIT-FILE | 260 +++++++++++++++---------- library/tedit/TEDIT-FILE.LCOM | Bin 39488 -> 40382 bytes library/tedit/TEDIT-FNKEYS | 160 ++++----------- library/tedit/TEDIT-FNKEYS.LCOM | Bin 39959 -> 38915 bytes library/tedit/TEDIT-HCPY.LCOM | Bin 12117 -> 12142 bytes library/tedit/TEDIT-HISTORY | 39 ++-- library/tedit/TEDIT-HISTORY.LCOM | Bin 15326 -> 15334 bytes library/tedit/TEDIT-MENU | 114 +++++------ library/tedit/TEDIT-MENU.LCOM | Bin 54307 -> 54602 bytes library/tedit/TEDIT-OLDFILE | 253 ++++++++++++------------ library/tedit/TEDIT-OLDFILE.LCOM | Bin 17500 -> 18016 bytes library/tedit/TEDIT-PCTREE | 29 +-- library/tedit/TEDIT-PCTREE.LCOM | Bin 13603 -> 13718 bytes library/tedit/TEDIT-RELEASENOTES.PDF | Bin 47321 -> 0 bytes library/tedit/TEDIT-RELEASENOTES.TEDIT | Bin 39843 -> 40457 bytes library/tedit/TEDIT-SCREEN | 103 +++++----- library/tedit/TEDIT-SCREEN.LCOM | Bin 33759 -> 33825 bytes library/tedit/TEDIT-SELECTION | 69 ++++--- library/tedit/TEDIT-SELECTION.LCOM | Bin 31599 -> 31666 bytes library/tedit/TEDIT-STYLES | 19 +- library/tedit/TEDIT-STYLES.LCOM | Bin 4143 -> 4243 bytes library/tedit/TEDIT-WINDOW | 76 ++++---- library/tedit/TEDIT-WINDOW.LCOM | Bin 63115 -> 63144 bytes library/tedit/TEDIT.LCOM | Bin 33173 -> 33346 bytes library/tedit/tedit-exports.all | 65 +++---- 32 files changed, 752 insertions(+), 777 deletions(-) delete mode 100644 library/tedit/TEDIT-RELEASENOTES.PDF diff --git a/internal/TEDIT-DEBUG b/internal/TEDIT-DEBUG index ef2817ba..f64ba90e 100644 --- a/internal/TEDIT-DEBUG +++ b/internal/TEDIT-DEBUG @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "31-May-2025 10:30:31" {WMEDLEY}TEDIT-DEBUG.;170 138250 +(FILECREATED "29-Jul-2025 11:42:21" {WMEDLEY}TEDIT-DEBUG.;174 138232 :EDIT-BY rmk - :CHANGES-TO (FNS \TLVALIDATE) + :CHANGES-TO (FNS SPPRINT) - :PREVIOUS-DATE "30-May-2025 23:51:11" {WMEDLEY}TEDIT-DEBUG.;168) + :PREVIOUS-DATE " 3-Jun-2025 23:12:40" {WMEDLEY}TEDIT-DEBUG.;173) (PRETTYCOMPRINT TEDIT-DEBUGCOMS) @@ -1108,7 +1108,8 @@ (\LOLOC LASTSLOT])]) (\TLVALIDATE - [LAMBDA (THISLINE LINE) (* ; "Edited 31-May-2025 10:29 by rmk") + [LAMBDA (THISLINE LINE) (* ; "Edited 3-Jun-2025 23:12 by rmk") + (* ; "Edited 31-May-2025 10:29 by rmk") (* ; "Edited 29-May-2025 15:28 by rmk") (* ; "Edited 21-Oct-2024 00:26 by rmk") (* ; "Edited 15-Mar-2024 19:33 by rmk") @@ -1116,14 +1117,9 @@ (* ;; "Check validity of THISLINE, anytime after \TEDIT.FORMATLINE") - (CL:WHEN LINE - (CL:UNLESS (EQ (fetch (THISLINE DESC) of THISLINE) - LINE) - (HELP "THISLINE-DESC is not LINE" THISLINE))) - [LET ((CHARSLOTS (fetch (THISLINE CHARSLOTS) of THISLINE))) - (CL:UNLESS (type? ARRAYBLOCK CHARSLOTS) - (HELP "CHARSLOTS is not an ARRAYBLOCK" THISLINE)) - (\CHECKARRAYBLOCK (\ADDBASE CHARSLOTS (IMINUS \ArrayBlockHeaderWords] + (LET ((CHARSLOTS (fetch (THISLINE CHARSLOTS) of THISLINE))) + (CL:UNLESS (\BLOCKDATAP CHARSLOTS) + (HELP "CHARSLOTS is not an arrayblock" THISLINE))) (for CHARSLOT incharslots THISLINE do (CL:UNLESS (OR (CHARCODEP CHAR) (IMAGEOBJP CHAR) (CHARSLOTP CHAR THISLINE)) @@ -1372,7 +1368,8 @@ (DEFINEQ (SPPRINT - [LAMBDA (P OSTREAM TEXTOBJ NOCR) (* ; "Edited 24-Apr-2025 16:04 by rmk") + [LAMBDA (P OSTREAM TEXTOBJ NOCR) (* ; "Edited 29-Jul-2025 11:42 by rmk") + (* ; "Edited 24-Apr-2025 16:04 by rmk") (* ; "Edited 19-Feb-2025 12:21 by rmk") (* ; "Edited 8-Feb-2025 22:41 by rmk") (* ; "Edited 5-Aug-2024 00:30 by rmk") @@ -1457,8 +1454,9 @@ elseif (EQ OBJECT.PTYPE (PTYPE P)) then (PRINTOUT OSTREAM PCONTENTS -3) (SPPRINT.OBJ PCONTENTS OSTREAM (IPLUS POS 43)) - else (CL:WHEN (AND (type? CHARLOOKS (PLOOKS P)) - (fetch (CHARLOOKS CLINVISIBLE) of (PLOOKS P))) + else (CL:WHEN (AND (type? CHARLOOKS (PCHARLOOKS P)) + (GETCLOOKS (PCHARLOOKS P) + CLINVISIBLE)) (PRIN1 "i " OSTREAM)) (PRIN1 "%"" OSTREAM) (for I C from 1 to PLEN @@ -2581,33 +2579,33 @@ (ADDTOVAR LAMA ) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (5124 7683 (GTO 5134 . 5384) (GTS 5386 . 7157) (GTW 7159 . 7315) (GSEL 7317 . 7681)) ( -7716 8837 (TEST.TEMPLATE 7726 . 8835)) (8838 9773 (TESTACTION 8848 . 9771)) (9798 23613 (IPC 9808 . -11312) (ILINES 11314 . 13855) (ISEL 13857 . 14468) (ITS 14470 . 16194) (IPANES 16196 . 16431) (ITL -16433 . 16852) (IHIST 16854 . 19516) (IPCTB 19518 . 19944) (IMB 19946 . 20705) (ICL 20707 . 21408) ( -IPL 21410 . 21950) (ICARET 21952 . 22479) (INSPECTPIECES 22481 . 23611)) (23635 52303 (SP 23645 . -28689) (SL 28691 . 32526) (SSP 32528 . 34230) (SPF 34232 . 36762) (SLF 36764 . 45897) (SHOWLINE 45899 - . 49461) (SLL 49463 . 50210) (STBYTES 50212 . 51938) (SSEL 51940 . 52301)) (52304 64970 (STL 52314 . -61315) (CLEARTHISLINE 61317 . 61797) (CHARSLOTP 61799 . 63118) (\TLVALIDATE 63120 . 64968)) (64971 -70344 (NTHPIECE 64981 . 66113) (NPIECES 66115 . 66980) (NTHPIECECHAR 66982 . 68290) (SELPIECE 68292 . -68734) (PIECENUM 68736 . 69455) (PCBYTES 69457 . 70342)) (70345 72819 (FILEBYTES 70355 . 71779) ( -TFILEBYTES 71781 . 72817)) (72820 74142 (TRELMOVE 72830 . 73073) (TSCROLL 73075 . 73241) (TSCROLL* -73243 . 74140)) (74143 77192 (TRY 74153 . 75422) (TEDITCLOSEW 75424 . 75767) (PARALASTWITHOUTEOL 75769 - . 76654) (FIXPARALAST 76656 . 77190)) (77193 91941 (SPPRINT 77203 . 83889) (SPPRINT.CHAR 83891 . -84875) (SPPRINT.OBJ 84877 . 87935) (SHOWPIECEBYTES 87937 . 89493) (CHECKPLENGTHS 89495 . 89952) (SBT -89954 . 91091) (COPYPCHAIN 91093 . 91939)) (91942 94003 (POSLINE 91952 . 94001)) (94004 94887 ( -PRESPLIT 94014 . 94885)) (94888 96601 (ALLTL 94898 . 96151) (NTHCHARSLOT 96153 . 96599)) (96627 106840 - (PLCHAIN 96637 . 97165) (PRINTLINE 97167 . 100157) (SL.GETLINES 100159 . 103452) (CHECKLINES 103454 - . 104434) (COLLECTLINES 104436 . 104688) (NTHLINE 104690 . 105695) (HEIGHT 105697 . 105985) (LINEBOTS - 105987 . 106838)) (106841 109289 (IPC.DECODEARGS 106851 . 109287)) (109290 109883 (SPF1 109300 . -109881)) (109912 112290 (SLF.FATPLEN 109922 . 110781) (FILEPIECE 110783 . 112288)) (112323 113091 ( -SELTEDIT 112333 . 113089)) (113161 118773 (PPARA 113171 . 113593) (PRUN 113595 . 115071) ( -ADDLINEPOSITIONS 115073 . 116500) (SBR 116502 . 117156) (SBC 117158 . 118771)) (118830 120606 (OLDWI -118840 . 119215) (COMP 119217 . 119412) (DFR 119414 . 120604)) (120607 121640 (DFGV 120617 . 121143) ( -GDIRECTORIES 121145 . 121638)) (121641 128206 (TTEST 121651 . 126183) (LTEST 126185 . 127550) (THC -127552 . 128204)) (128520 129212 (SHOWSAFE 128530 . 129210)) (129265 129712 (MYH 129275 . 129710)) ( -129957 131052 (DFVENUE 129967 . 130846) (VSEE 130848 . 131050)) (131053 131507 (PTT 131063 . 131505)) -(131866 133447 (DEBUGOUTPUT.STREAM 131876 . 133445)) (133448 135764 (TEDIT-DEBUG 133458 . 135762)) ( -135765 136257 (HEXTOHILO 135775 . 136115) (CW 136117 . 136255)) (136258 137994 (TRENAME 136268 . -137992))))) + (FILEMAP (NIL (5120 7679 (GTO 5130 . 5380) (GTS 5382 . 7153) (GTW 7155 . 7311) (GSEL 7313 . 7677)) ( +7712 8833 (TEST.TEMPLATE 7722 . 8831)) (8834 9769 (TESTACTION 8844 . 9767)) (9794 23609 (IPC 9804 . +11308) (ILINES 11310 . 13851) (ISEL 13853 . 14464) (ITS 14466 . 16190) (IPANES 16192 . 16427) (ITL +16429 . 16848) (IHIST 16850 . 19512) (IPCTB 19514 . 19940) (IMB 19942 . 20701) (ICL 20703 . 21404) ( +IPL 21406 . 21946) (ICARET 21948 . 22475) (INSPECTPIECES 22477 . 23607)) (23631 52299 (SP 23641 . +28685) (SL 28687 . 32522) (SSP 32524 . 34226) (SPF 34228 . 36758) (SLF 36760 . 45893) (SHOWLINE 45895 + . 49457) (SLL 49459 . 50206) (STBYTES 50208 . 51934) (SSEL 51936 . 52297)) (52300 64813 (STL 52310 . +61311) (CLEARTHISLINE 61313 . 61793) (CHARSLOTP 61795 . 63114) (\TLVALIDATE 63116 . 64811)) (64814 +70187 (NTHPIECE 64824 . 65956) (NPIECES 65958 . 66823) (NTHPIECECHAR 66825 . 68133) (SELPIECE 68135 . +68577) (PIECENUM 68579 . 69298) (PCBYTES 69300 . 70185)) (70188 72662 (FILEBYTES 70198 . 71622) ( +TFILEBYTES 71624 . 72660)) (72663 73985 (TRELMOVE 72673 . 72916) (TSCROLL 72918 . 73084) (TSCROLL* +73086 . 73983)) (73986 77035 (TRY 73996 . 75265) (TEDITCLOSEW 75267 . 75610) (PARALASTWITHOUTEOL 75612 + . 76497) (FIXPARALAST 76499 . 77033)) (77036 91923 (SPPRINT 77046 . 83871) (SPPRINT.CHAR 83873 . +84857) (SPPRINT.OBJ 84859 . 87917) (SHOWPIECEBYTES 87919 . 89475) (CHECKPLENGTHS 89477 . 89934) (SBT +89936 . 91073) (COPYPCHAIN 91075 . 91921)) (91924 93985 (POSLINE 91934 . 93983)) (93986 94869 ( +PRESPLIT 93996 . 94867)) (94870 96583 (ALLTL 94880 . 96133) (NTHCHARSLOT 96135 . 96581)) (96609 106822 + (PLCHAIN 96619 . 97147) (PRINTLINE 97149 . 100139) (SL.GETLINES 100141 . 103434) (CHECKLINES 103436 + . 104416) (COLLECTLINES 104418 . 104670) (NTHLINE 104672 . 105677) (HEIGHT 105679 . 105967) (LINEBOTS + 105969 . 106820)) (106823 109271 (IPC.DECODEARGS 106833 . 109269)) (109272 109865 (SPF1 109282 . +109863)) (109894 112272 (SLF.FATPLEN 109904 . 110763) (FILEPIECE 110765 . 112270)) (112305 113073 ( +SELTEDIT 112315 . 113071)) (113143 118755 (PPARA 113153 . 113575) (PRUN 113577 . 115053) ( +ADDLINEPOSITIONS 115055 . 116482) (SBR 116484 . 117138) (SBC 117140 . 118753)) (118812 120588 (OLDWI +118822 . 119197) (COMP 119199 . 119394) (DFR 119396 . 120586)) (120589 121622 (DFGV 120599 . 121125) ( +GDIRECTORIES 121127 . 121620)) (121623 128188 (TTEST 121633 . 126165) (LTEST 126167 . 127532) (THC +127534 . 128186)) (128502 129194 (SHOWSAFE 128512 . 129192)) (129247 129694 (MYH 129257 . 129692)) ( +129939 131034 (DFVENUE 129949 . 130828) (VSEE 130830 . 131032)) (131035 131489 (PTT 131045 . 131487)) +(131848 133429 (DEBUGOUTPUT.STREAM 131858 . 133427)) (133430 135746 (TEDIT-DEBUG 133440 . 135744)) ( +135747 136239 (HEXTOHILO 135757 . 136097) (CW 136099 . 136237)) (136240 137976 (TRENAME 136250 . +137974))))) STOP diff --git a/internal/TEDIT-DEBUG.LCOM b/internal/TEDIT-DEBUG.LCOM index 72b1bab853781736e441a6c968543769c007a502..e8e688c0e16097a95f65a93530e2b497f167bb12 100644 GIT binary patch delta 3153 zcmZuzYiwId6}Fu;ZM~(7~8446lB~uN}RgR zuA5z0Ei0q`Vv$%Vqh*CeMOh&v1QIE(R|O$V;RjS�v4Ff*(jAkN^o~g@nWp5NGbo z2_lg^XU?4So#&i8-~Q9U-+w>wrSdqkr;;zNP8qsE5jGPBPZ;Lio1{%9QC!<~Xe5Z4 zz(hlv%Nw^|XgpU#^(N9XOOAtf%1uvCYp7P;T&bb|qi>knWc*wv=cH4Gbh4D5N19(fNEleV`8m-hRGgXzeXwDIdec)k zz(H_Rzx(Q$A#*Z*sU+lQUmNedAFUmV?w40besI7-8L?RMY|8_q#ZGJVZ&r+1oyx+W z2Vj-Wt|4C$^L(mr2H@D70X6KWdcZ|BPUrb0T9p_Im#rSM0@{nW+)OZFUmKH zXPTEMmM@pHLlO9U5(|jIfQYQuYOCsOzxsLjY}x7Ww%4{F4wjvAc75c@vtqdRGbQrX zo*4GPhAQK|0A^q1d~czfE@$Nknvh$i!!lpOQMDVBZ(F@C9+QwkP`b zgXsG`VBT*Z6=>^hEjkiCmJ{f&uEJ>LLQhP0_lpZ_6BYfAxNx>I-HQ!$e<$?O&xKOI zsT}W#34sQ_Pe=6Q0m_N+e6&J(f&mHv6zh&4XDiG@u|~I!24eD^^1JQmSNw1~W8&nO zA4ESWkee|ehatd&+nuHuZw$RR^3l`cVwlW}K{97{Bs0?!GfyIwS+&F}b7~o^%)=rw z+Z|2J_=X-H1>D)~H^of%U_Ji2m;v<4%+@bDKYIR1bWgrJ0`++Mu}?uA9$!BtU%Z|L z>WA0gZU1X4a?a4PflBEDTn}XEIt^%S+p5=cix^?svO|*dkYs%U%0e#TsFa)oC9^MS zkUlI9*=-wRSFN72u@qN-N(@N zK!O9bFWlxFha#LA0iV-Qgu`v}lY=?jWnYuyFm$f75QEvFBg_heVUV&Q7}n1jqwO#n zMy$RF+-u(qGeSIShgHI~k4-sD36*WyPYtDh1t`pvjI&hC7IK%eC6K{n*S<~q-Vkbg zK!kYay_yg+41*ZvE^VTRIWWOF-({19NiwO&^^i<=bh+(h*xpcV7adW`BMg;yr(v+= zAsS|;=N0ak1QV#d3K{$L@bIw_mKcL)JLA^vu%5cbT~o;vRJDz4C`~4Jt$=Ls&Lg0l zE@44#T!M$a&B3w?(>2J=z+TV{9$OFMXG}GhD?csfE+gir10x3GTJcW+3FF_(9K%7` z8P-*R@>F7?y{ljpYUByiut%uhBCc_YgFp$SICmv^DGiqMh*(~yxk7|mD4TYGOX!ZY z6KD><(}^Cm-GFIR`Nk*z-NqJJRG*^xbTL)P$ zzC49&s_&E|!~$G%1Jct!G$2Jgb`y}M9b3q8s42gG;~fVklnI}5#Vn(b0EKP1&K|?x z1A>O;lJjB6t`s1h%QzxgLIyG?AtcL|-&h_S#1_-#qvhjM*uoTP*HEK=tG?+$acCN? zRbO4(M7OG~Rd~g?7CC`WbZxB7VV-Kul}~S?>dV!7!#iZQGJpGp>hj8M@QyJf4*TV` zYOA`uxzciZ@H_yK#>S@FQSeO5HD9i)4S~t1W$LZln;wK>!C-=S&@}`PEll8|Yw(YW zZnTkhJ-s+z%zpy*rp1&UMM2fIgd!mAt|A3R6DsH)V<=PzhoKc*uC9`J1$q(mbd^A# z)Rm_ivS55`8Bw^RA#U4XC@mbVjX2faV-7DE7ZVc8;R~Q8fX$(~1M>{NFbane=B@Df zQF}G(0%xe@fl(L$TJF}yjdd-Ks7jSWqi|^gGzwh{+J_L~R;W&>yuWfPiaS4D**hqI zxq3?8yBC*-)=!^_+}|6C#Af}k?npF}bzckLaUUJC?%Sj%Ut9msu}*%$J?WhE*TW0m zu{?Z}wzs~yHXJ#JVSc-J3PUA402I*SS3hz>H3QOi^?Ay@VNgOt&NPl3!zxd^1;9NG z8M4_p60f#e)mLsbHkNO8zSnqePmI~}>5IQsOS8-5A6lb8cK+FVIveA-^Iqp`QCQ(9 ztG182ukMR+Q_>&*Q7!5z?DQ@w^7Fk9$GFk?dGA*s4~E>6Vfov~A5iSSJpPIPUr3W0 AOaK4? delta 3972 zcmZt}TWlmp(X)P>;{-qUd`|A=vi#6zNb78zCe}tDtlcSBR+iDqYj-xco{OWKPHrxd%T6Yo6e_PHH9eclq2}XbV`C~>UfhN= zA1T*Xhr2GPv$<5VkOCnClSust)4U7HbDbK(F-i>0%PL53Qap^}`9f+g%VvwC!jKd8 zlUUrqag0^eG15npL8Zc9!s;Du5O0C?bJRLJ9dUJxa*3i-%rOV$k*=Y1wh(S(6eTl>LNW)Wm?hwO4w?ew zkb#m#zQ&rR#K=i07-fNnSpIT?^(oTCTiw5QO6k=Jax&RsE<2M#X{5)z-@njr>N?_) zDdsuKK#a$kgQn06HUMm)9Jdw^qt4@zjuvJ9hBr|BL~`!j(%ih$(E>m3L?qBAftK6L z%eOe~3I1>I%=|)QS6{8~waqWgJKh_`^SyzH&eBM2YCi?Yox#)IPn}a9bq2)xUU5Y6 zu@{}q?$7VH-rG^W%FdN8)G8OfzYO*R(*<|l`3+aJdtDmP5dxLRm5x6?>We(h`VZLi z2S?QasPB!i{zLZs;qeg|G{~uA2ggVI{XSIRdyy6gjrtP7Xw5Q0 z8JcN^93VPib~R{aQjJEa#A`TY(KIWxT+^f>*rw8TY+FRiz_uw3!L}it!8U{}(1PtS zX4odK^ak5lZ?I@G*qGX(JZgluglR)IP>ssYFJ~zn<)fY*jF#^1Y26@hDq%cr%fx2feFU>F~w#q43Y_N5XbtGOf6(5!9}|m zVPXUh5bz|BLEsS)wh-{7A%SS}S};WYge{nchq2|qNr@yRHH-mp^XcpYhv3-}kj=xw zQLb$SC<-r$ubhJJP$dl$fkGaHXe+!H3!a@~UJ%CE#7oG6g!1L^cm@!bxo3qTFu?>T z;Z7ivHbvWn>hsT-#)(+_j~*{YlgKEV*mqe(*RbUU7?zE)(}}AoFei_UK%&p2QN z;BAMC;T7KtC9h+tGiKYKSvqzJh6LnqZewTTC>#@BiVzw%znvV+vIf@?(lM zF(>30n<^r#LnbwdI%H+j&gCsgzWP{?o!G&BG|@n6V;7^iSqHJrCL)2h&|noEPpZ&O zxQcLNm;+5a7$hXgd-#Q)xr9LTP=o2`QveYHUBgEpvFC}YqKU+$U=p(wa6uWN%jq0T zIEbLwFd(3zs#|v!msZd#i%Z)Zo55*fBK4K>=GHbJMi7GsT8(o6E>xT|;2ckBL55%j(p*6ES4E&P zG(mM5+5{W~EK+??gEZuH8=AG6W`$`LQOZ3^u^fOg?g*? zic$Sw=~UZUD5%Ep&AXDEy}jDEN4=rdk54IQVE~IHcF&Ic14v7v{$nxCjr${BfbQs1 zS~6|7>u*)YG6zTBY39hRefUTWao+0c3m0I%`TmsHR@Z`cW!xW0uX*45<^b)BbWRgz1U)B^Bv$yuB8K1UgSG;BEUOi{ ze1Zsf7`|=74OD0d)26Q0+=iOFPJ;zhB4R>*ov81mP!CnkD^XHhQTqHNWS(~kNG3@M z2`Yl8PvtBeRYc`2w7vnAxsDo6Lq73zlJ<`BmMj^01BMUH87Gs^rjjWXpQK%v^9b5` z66LEOyWQO$u?_Fy#sOcBHZrhOU%d0D@rZ3z&+L3xffdlE_xIf>M;-5er85Fgz?a|t wt73cgjhNR{>-FxxI^3RsdC2zO{l$wBn^vFt<-2f_im%6>+C`2UtNmL0FO;e>%K!iX diff --git a/library/tedit/TEDIT b/library/tedit/TEDIT index 689b82e0..1d19b3d6 100644 --- a/library/tedit/TEDIT +++ b/library/tedit/TEDIT @@ -1,13 +1,14 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "28-May-2025 16:07:21" {WMEDLEY}tedit>TEDIT.;830 146159 +(FILECREATED " 1-Aug-2025 14:50:15"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT.;835 145114 :EDIT-BY rmk - :CHANGES-TO (VARS TEDITCOMS) - (FNS TEDITSYSTEMDATE) + :CHANGES-TO (FNS \TEDIT.PARA.FIRST \TEDIT.PARA.LAST) - :PREVIOUS-DATE " 7-May-2025 00:13:12" {WMEDLEY}tedit>TEDIT.;829) + :PREVIOUS-DATE "28-Jul-2025 23:49:50" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT.;834) (PRETTYCOMPRINT TEDITCOMS) @@ -206,6 +207,10 @@ (TEDIT [LAMBDA (TEXT WINDOW DONTSPAWN PROPS) + (* ;; "Edited 25-Jul-2025 20:48 by rmk") + + (* ;; "Edited 17-Jul-2025 00:24 by rmk") + (* ;; "Edited 25-Jun-2024 11:59 by rmk") (* ;; "Edited 9-Mar-2024 22:47 by rmk") @@ -232,33 +237,32 @@ (LET (TSTREAM PROC) (* ;  "Make sure the file exists before trying to open the window.") - (push PROPS 'BEING-EDITED T) (* ; - "Mark the document as actively in edit, so caret flashes when the window first opens.") (SETQ TSTREAM (OPENTEXTSTREAM TEXT (OR WINDOW 'Tedit) NIL NIL PROPS)) (SETQ WINDOW (\TEDIT.PRIMARYPANE TSTREAM)) - (COND - (DONTSPAWN (* ; + (replace (TEXTOBJ UNDERTEDIT) of (FTEXTOBJ TSTREAM) with T) + (if DONTSPAWN + then (* ;  "Either no processes running, or specifically not to spawn one.") - (\TEDIT1 TSTREAM WINDOW T)) - (T (* ; "Spawn a process to do the edit.") - [SETQ PROC (ADD.PROCESS (LIST (FUNCTION \TEDIT1) - (KWOTE TSTREAM) - WINDOW NIL) - 'NAME - 'TEdit - 'RESTARTABLE - 'HARDRESET - 'RESTARTFORM - (LIST (FUNCTION \TEDIT.RESTARTFN) - (KWOTE TSTREAM) - WINDOW - (KWOTE PROPS] - (PROCESSPROP PROC 'WINDOW WINDOW) - (CL:UNLESS (LISTGET PROPS 'LEAVETTY) (* ; + (\TEDIT1 TSTREAM WINDOW T) + else (* ; "Spawn a process to do the edit.") + [SETQ PROC (ADD.PROCESS (LIST (FUNCTION \TEDIT1) + (KWOTE TSTREAM) + WINDOW NIL) + 'NAME + 'TEdit + 'RESTARTABLE + 'HARDRESET + 'RESTARTFORM + (LIST (FUNCTION \TEDIT.RESTARTFN) + (KWOTE TSTREAM) + WINDOW + (KWOTE PROPS] + (PROCESSPROP PROC 'WINDOW WINDOW) + (CL:UNLESS (LISTGET PROPS 'LEAVETTY) (* ;  "Unless he asked us to leave the tty where it is, TEdit should get it.") - (TTY.PROCESS PROC)) - PROC]) + (TTY.PROCESS PROC)) + PROC]) (TEXTSTREAM [LAMBDA (TSTREAM? NOERROR) (* ; "Edited 25-Apr-2025 18:07 by rmk") @@ -758,26 +762,12 @@ (DEFINEQ (TEDIT.INSERT.OBJECT - [LAMBDA (OBJECT TSTREAM CH# LOOKS) (* ; "Edited 7-May-2025 00:10 by rmk") + [LAMBDA (OBJECT TSTREAM CH# LOOKS) (* ; "Edited 28-Jul-2025 23:48 by rmk") + (* ; "Edited 7-May-2025 00:10 by rmk") (* ; "Edited 21-Apr-2025 22:17 by rmk") (* ; "Edited 6-Apr-2025 14:10 by rmk") (* ; "Edited 25-Feb-2025 11:18 by rmk") - (* ; "Edited 2-Feb-2025 11:37 by rmk") (* ; "Edited 26-Dec-2024 10:13 by rmk") - (* ; "Edited 21-Oct-2024 00:26 by rmk") - (* ; "Edited 2-Aug-2024 08:46 by rmk") - (* ; "Edited 30-Jul-2024 22:19 by rmk") - (* ; "Edited 23-Jul-2024 22:20 by rmk") - (* ; "Edited 7-Jul-2024 12:32 by rmk") - (* ; "Edited 22-May-2024 13:56 by rmk") - (* ; "Edited 18-May-2024 16:20 by rmk") - (* ; "Edited 12-May-2024 20:53 by rmk") - (* ; "Edited 3-Mar-2024 13:01 by rmk") - (* ; "Edited 16-Mar-2024 00:08 by rmk") - (* ; "Edited 9-Feb-2024 10:52 by rmk") - (* ; "Edited 28-Jan-2024 23:29 by rmk") - (* ; "Edited 11-Dec-2023 08:21 by rmk") - (* ; "Edited 12-Nov-2023 12:16 by rmk") (* ; "Edited 19-May-2023 00:18 by rmk") (* ; "Edited 21-Apr-93 00:52 by jds") @@ -799,7 +789,7 @@ PTYPE _ OBJECT.PTYPE PCONTENTS _ OBJECT PLEN _ 1 - PLOOKS _ (FGETTOBJ TEXTOBJ CARETLOOKS))) + PCHARLOOKS _ (FGETTOBJ TEXTOBJ CARETLOOKS))) (* ; "The new piece we're inserting") (CL:WHEN (SETQ SUBSTREAM (IMAGEOBJPROP OBJECT 'SUBSTREAM)) (* ; @@ -1725,6 +1715,7 @@ (\TEDIT.COPYPIECE [LAMBDA (PC FROMTSTREAM TOTSTREAM UNPROTECT OPERATION PROMPTTEXTOBJ) + (* ; "Edited 28-Jul-2025 23:49 by rmk") (* ; "Edited 22-Apr-2025 00:12 by rmk") (* ; "Edited 3-Aug-2024 12:40 by rmk") (* ; "Edited 15-Oct-2023 20:14 by rmk") @@ -1781,16 +1772,16 @@ (* ;; "If moving from one text to another, we have to register the looks.") - (if (AND UNPROTECT (FGETCLOOKS (PLOOKS NEWPC) + (if (AND UNPROTECT (FGETCLOOKS (PCHARLOOKS NEWPC) CLPROTECTED)) - then (FSETPC NEWPC PLOOKS (\TEDIT.UNIQUIFY.CHARLOOKS (create CHARLOOKS - using (PLOOKS PC) - CLPROTECTED _ NIL - CLSELAFTER _ NIL) - TOOBJ)) + then (FSETPC NEWPC PCHARLOOKS (\TEDIT.UNIQUIFY.CHARLOOKS (create CHARLOOKS + using (PCHARLOOKS PC) + CLPROTECTED _ NIL + CLSELAFTER _ NIL) + TOOBJ)) elseif CROSSCOPY - then (FSETPC NEWPC PLOOKS (\TEDIT.UNIQUIFY.CHARLOOKS (PLOOKS PC) - TOOBJ)) + then (FSETPC NEWPC PCHARLOOKS (\TEDIT.UNIQUIFY.CHARLOOKS (PCHARLOOKS PC) + TOOBJ)) (FSETPC NEWPC PPARALOOKS (\TEDIT.UNIQUIFY.PARALOOKS (PPARALOOKS PC) TOOBJ))) (RETURN NEWPC]) @@ -2115,7 +2106,8 @@ when (PPARALAST PC) collect CHNO repeatuntil (EQ PC LASTPARAPC]) (\TEDIT.PARA.FIRST - [LAMBDA (TEXTOBJ CHNO PROTECTEDNOTOK) (* ; "Edited 26-Apr-2025 11:33 by rmk") + [LAMBDA (TEXTOBJ CHNO PROTECTEDNOTOK) (* ; "Edited 1-Aug-2025 14:49 by rmk") + (* ; "Edited 26-Apr-2025 11:33 by rmk") (* ; "Edited 30-Jan-2025 12:02 by rmk") (* ; "Edited 11-Jan-2025 00:08 by rmk") (* ; "Edited 17-Mar-2024 00:27 by rmk") @@ -2147,7 +2139,7 @@ (for PC (PLENTOT _ 0) backpieces (AND CHPIECE (PREVPIECE CHPIECE)) when (VISIBLEPIECEP PC) until (PPARALAST PC) - until (AND PROTECTEDNOTOK (GETCLOOKS (PLOOKS PC) + until (AND PROTECTEDNOTOK (GETCLOOKS (PCHARLOOKS PC) CLPROTECTED)) do (add PLENTOT (PLEN PC)) finally @@ -2159,7 +2151,8 @@ (\TEDIT.FIRSTPIECE TEXTOBJ))]) (\TEDIT.PARA.LAST - [LAMBDA (TEXTOBJ CHNO PROTECTEDNOTOK) (* ; "Edited 7-Feb-2025 08:32 by rmk") + [LAMBDA (TEXTOBJ CHNO PROTECTEDNOTOK) (* ; "Edited 1-Aug-2025 14:49 by rmk") + (* ; "Edited 7-Feb-2025 08:32 by rmk") (* ; "Edited 31-Jan-2025 09:33 by rmk") (* ; "Edited 17-Mar-2024 00:27 by rmk") (* ; "Edited 19-Jan-2024 10:37 by rmk") @@ -2192,7 +2185,7 @@ (for PC (PLENTOT _ 0) inpieces CHPIECE when (VISIBLEPIECEP PC) do (add PLENTOT (PLEN PC)) repeatuntil (PPARALAST PC) - repeatuntil (AND PROTECTEDNOTOK (FGETCLOOKS (PLOOKS PC) + repeatuntil (AND PROTECTEDNOTOK (FGETCLOOKS (PCHARLOOKS PC) CLPROTECTED)) finally (RETURN (CONS (IMIN (IPLUS END PLENTOT -1) (FGETTOBJ TEXTOBJ TEXTLEN)) @@ -2332,26 +2325,26 @@ (ADDTOVAR PRINTFILETYPES (TEDIT (TEST \TEDIT.GET.TRAILER) (EXTENSION (TEDIT)))) (DECLARE%: DONTCOPY - (FILEMAP (NIL (4856 7250 (MAKE-TEDIT-EXPORTS.ALL 4866 . 5412) (UPDATE-TEDIT 5414 . 6343) (EDIT-TEDIT -6345 . 7248)) (8680 36702 (TEDIT 8690 . 11268) (TEXTSTREAM 11270 . 13159) (TEXTSTREAMP 13161 . 13545) -(COERCETEXTSTREAM 13547 . 17758) (TEDIT.CONCAT 17760 . 21062) (TEDITSTRING 21064 . 21978) (TEDIT-SEE -21980 . 22539) (TEDIT.COPY 22541 . 24686) (TEDIT.DELETE 24688 . 26049) (TEDIT.INSERT 26051 . 29425) ( -TEDIT.TERPRI 29427 . 30541) (TEDIT.KILL 30543 . 31525) (TEDIT.QUIT 31527 . 32893) (TEDIT.MOVE 32895 . -33783) (TEDIT.STRINGWIDTH 33785 . 34456) (TEDIT.CHARWIDTH 34458 . 36700)) (36703 38644 (TEXTOBJ 36713 - . 37178) (COERCETEXTOBJ 37180 . 38642)) (40044 41694 (TDRIBBLE 40054 . 41692)) (41735 55044 ( -TEDIT.INSERT.OBJECT 41745 . 46865) (TEDIT.EDIT.OBJECT 46867 . 49807) (TEDIT.OBJECT.CHANGED 49809 . -52999) (TEDIT.MAP.OBJECTS 53001 . 54572) (\TEDIT.FIRST.OBJPIECE 54574 . 54807) (\TEDIT.NEXT.OBJPIECE -54809 . 55042)) (55067 62510 (\TEDIT.CONCAT.PAGEFRAMES 55077 . 60144) (\TEDIT.GET.PAGE.HEADINGS 60146 - . 61175) (\TEDIT.CONCAT.INSTALL.HEADINGS 61177 . 62508)) (62511 66118 (\TEDIT.MOVE.MSG 62521 . 64602) - (\TEDIT.READONLY 64604 . 66116)) (66119 71894 (TEDIT.NCHARS 66129 . 66502) (TEDIT.RPLCHARCODE 66504 - . 69494) (TEDIT.NTHCHARCODE 69496 . 71423) (TEDIT.NTHCHAR 71425 . 71892)) (71940 128711 (\TEDIT1 -71950 . 74027) (\TEDIT.INSERT 74029 . 80394) (\TEDIT.MOVE 80396 . 88302) (\TEDIT.COPY 88304 . 92835) ( -\TEDIT.REPLACE.SELPIECES 92837 . 97264) (\TEDIT.INSERT.SELPIECES 97266 . 100263) (\TEDIT.RESTARTFN -100265 . 102770) (\TEDIT.CHARDELETE 102772 . 105701) (\TEDIT.COPYPIECE 105703 . 110716) ( -\TEDIT.APPLY.OBJFN 110718 . 113804) (\TEDIT.DELETE 113806 . 118174) (\TEDIT.DIFFUSE.PARALOOKS 118176 - . 120447) (\TEDIT.WORDDELETE 120449 . 122064) (\TEDIT.WORDDELETE.FORWARD 122066 . 123855) ( -\TEDIT.FINISHEDIT? 123857 . 128709)) (128712 129371 (\TEDIT.THELP 128722 . 129369)) (129405 138310 ( -\TEDIT.PARAPIECES 129415 . 131389) (\TEDIT.PARACHNOS 131391 . 132283) (\TEDIT.PARA.FIRST 132285 . -135273) (\TEDIT.PARA.LAST 135275 . 138308)) (138311 145406 (\TEDIT.WORD.FIRST 138321 . 142325) ( -\TEDIT.WORD.LAST 142327 . 145404)) (145607 145884 (TEDITSYSTEMDATE 145617 . 145882))))) + (FILEMAP (NIL (4922 7316 (MAKE-TEDIT-EXPORTS.ALL 4932 . 5478) (UPDATE-TEDIT 5480 . 6409) (EDIT-TEDIT +6411 . 7314)) (8746 36804 (TEDIT 8756 . 11370) (TEXTSTREAM 11372 . 13261) (TEXTSTREAMP 13263 . 13647) +(COERCETEXTSTREAM 13649 . 17860) (TEDIT.CONCAT 17862 . 21164) (TEDITSTRING 21166 . 22080) (TEDIT-SEE +22082 . 22641) (TEDIT.COPY 22643 . 24788) (TEDIT.DELETE 24790 . 26151) (TEDIT.INSERT 26153 . 29527) ( +TEDIT.TERPRI 29529 . 30643) (TEDIT.KILL 30645 . 31627) (TEDIT.QUIT 31629 . 32995) (TEDIT.MOVE 32997 . +33885) (TEDIT.STRINGWIDTH 33887 . 34558) (TEDIT.CHARWIDTH 34560 . 36802)) (36805 38746 (TEXTOBJ 36815 + . 37280) (COERCETEXTOBJ 37282 . 38744)) (40146 41796 (TDRIBBLE 40156 . 41794)) (41837 53624 ( +TEDIT.INSERT.OBJECT 41847 . 45445) (TEDIT.EDIT.OBJECT 45447 . 48387) (TEDIT.OBJECT.CHANGED 48389 . +51579) (TEDIT.MAP.OBJECTS 51581 . 53152) (\TEDIT.FIRST.OBJPIECE 53154 . 53387) (\TEDIT.NEXT.OBJPIECE +53389 . 53622)) (53647 61090 (\TEDIT.CONCAT.PAGEFRAMES 53657 . 58724) (\TEDIT.GET.PAGE.HEADINGS 58726 + . 59755) (\TEDIT.CONCAT.INSTALL.HEADINGS 59757 . 61088)) (61091 64698 (\TEDIT.MOVE.MSG 61101 . 63182) + (\TEDIT.READONLY 63184 . 64696)) (64699 70474 (TEDIT.NCHARS 64709 . 65082) (TEDIT.RPLCHARCODE 65084 + . 68074) (TEDIT.NTHCHARCODE 68076 . 70003) (TEDIT.NTHCHAR 70005 . 70472)) (70520 127440 (\TEDIT1 +70530 . 72607) (\TEDIT.INSERT 72609 . 78974) (\TEDIT.MOVE 78976 . 86882) (\TEDIT.COPY 86884 . 91415) ( +\TEDIT.REPLACE.SELPIECES 91417 . 95844) (\TEDIT.INSERT.SELPIECES 95846 . 98843) (\TEDIT.RESTARTFN +98845 . 101350) (\TEDIT.CHARDELETE 101352 . 104281) (\TEDIT.COPYPIECE 104283 . 109445) ( +\TEDIT.APPLY.OBJFN 109447 . 112533) (\TEDIT.DELETE 112535 . 116903) (\TEDIT.DIFFUSE.PARALOOKS 116905 + . 119176) (\TEDIT.WORDDELETE 119178 . 120793) (\TEDIT.WORDDELETE.FORWARD 120795 . 122584) ( +\TEDIT.FINISHEDIT? 122586 . 127438)) (127441 128100 (\TEDIT.THELP 127451 . 128098)) (128134 137265 ( +\TEDIT.PARAPIECES 128144 . 130118) (\TEDIT.PARACHNOS 130120 . 131012) (\TEDIT.PARA.FIRST 131014 . +134115) (\TEDIT.PARA.LAST 134117 . 137263)) (137266 144361 (\TEDIT.WORD.FIRST 137276 . 141280) ( +\TEDIT.WORD.LAST 141282 . 144359)) (144562 144839 (TEDITSYSTEMDATE 144572 . 144837))))) STOP diff --git a/library/tedit/TEDIT-ABBREV b/library/tedit/TEDIT-ABBREV index 9098e61d..c385e5a6 100644 --- a/library/tedit/TEDIT-ABBREV +++ b/library/tedit/TEDIT-ABBREV @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "24-Apr-2025 23:45:12" {WMEDLEY}tedit>TEDIT-ABBREV.;23 16200 +(FILECREATED "11-Aug-2025 14:40:45" {WMEDLEY}tedit>TEDIT-ABBREV.;25 16417 :EDIT-BY rmk :CHANGES-TO (FNS \TEDIT.ABBREV.PARSE) - :PREVIOUS-DATE "20-Apr-2025 23:30:29" {WMEDLEY}tedit>TEDIT-ABBREV.;22) + :PREVIOUS-DATE " 7-Aug-2025 12:50:55" {WMEDLEY}tedit>TEDIT-ABBREV.;24) (PRETTYCOMPRINT TEDIT-ABBREVCOMS) @@ -97,7 +97,9 @@ else (TEDIT.PROMPTPRINT TSTREAM "No abbreviation to expand" T]) (\TEDIT.ABBREV.PARSE - [LAMBDA (TSTREAM SEL) (* ; "Edited 24-Apr-2025 23:45 by rmk") + [LAMBDA (TSTREAM SEL) (* ; "Edited 11-Aug-2025 14:40 by rmk") + (* ; "Edited 7-Aug-2025 12:50 by rmk") + (* ; "Edited 24-Apr-2025 23:45 by rmk") (* ; "Edited 28-Mar-2025 10:11 by rmk") (* ; "Edited 23-Mar-2025 17:08 by rmk") (* ; "Edited 20-Mar-2025 22:21 by rmk") @@ -161,7 +163,7 @@ FIRST# LEN))) (* ; "Extend if a ,") [for C KEY END in CANDIDATES do - (* ;; "Comma for MCCS character names, - and / - for internal punctuation (3/4 EM-DASH). Adjacent character must be text") + (* ;; "Comma for MCCS character names, - and / - for internal punctuation (3/4 EMDASH). Adjacent character must be text") (if [AND (MEMB (\TEDIT.NTHCHARCODE TSTREAM (SUB1 (CADR C))) (CHARCODE (%, / -))) @@ -308,6 +310,6 @@ ("DATE" . \TEDIT.EXPAND.DATE) (">>DATE<<" . \TEDIT.EXPAND.DATE))) (DECLARE%: DONTCOPY - (FILEMAP (NIL (2933 14856 (\TEDIT.ABBREV.EXPAND 2943 . 5163) (\TEDIT.ABBREV.PARSE 5165 . 12558) ( -\TEDIT.EXPAND.DATE 12560 . 13193) (\TEDIT.TRY.ABBREV 13195 . 14854))))) + (FILEMAP (NIL (2933 15073 (\TEDIT.ABBREV.EXPAND 2943 . 5163) (\TEDIT.ABBREV.PARSE 5165 . 12775) ( +\TEDIT.EXPAND.DATE 12777 . 13410) (\TEDIT.TRY.ABBREV 13412 . 15071))))) STOP diff --git a/library/tedit/TEDIT-ABBREV.LCOM b/library/tedit/TEDIT-ABBREV.LCOM index 109a1d5f1f90379a3aac654a9a2c124573ea978f..233c332544d4b6190b4296e073ff03a3996ee514 100644 GIT binary patch delta 255 zcmZ3WK3jc4xQd~nu48Gsu91O}se+-2m5G6siK&u;hEj5VZb4>FYKlUBp2B2zM$LLt zO$9C`1xpmwMy6KAK-Eb_sc_|~6$M4bs#XdyA+9c-A$pEZPC>3=dI63>!LACKc?wEy zp*}te$j0dD=_x6sB$fcJ!e+jSiIOIlhMT9nkE?T#t0T}<1tn~52DyFYKlUBo`RABSG7y9 zcdbomacWVqU3OwYPGX*&PkwS@j$LkQN=|B}v7V`2dS;0(glCtNnN*ZmRB0FD>f#v! zA$1*{oPu1#^sEhyH5HWLw$_8JwXiZaw=yvUT2lhDHb*^0Arok;Td0qZ0$e3fp`M9Is&Z*Dl*Y^EGU9_&dAux#MH{rNJ*hO+}G8` x$2GFnCMR?9Ektedit>TEDIT-COMMAND.;163 19331 +(FILECREATED "17-Jul-2025 00:24:49"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-COMMAND.;165 19015 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.COMMAND.FUNCTION? \TEDIT.COMMAND.LOOP) - (VARS TEDIT-COMMANDCOMS) + :CHANGES-TO (FNS \TEDIT.COMMAND.RESET.SETUP) - :PREVIOUS-DATE "16-Mar-2025 14:20:07" {WMEDLEY}tedit>TEDIT-COMMAND.;160) + :PREVIOUS-DATE "23-Mar-2025 15:27:20" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-COMMAND.;163) (PRETTYCOMPRINT TEDIT-COMMANDCOMS) @@ -200,7 +201,8 @@ TEXTOBJ]) (\TEDIT.COMMAND.RESET.SETUP - [LAMBDA (ARGS STARTING) (* ; "Edited 29-Jun-2024 00:10 by rmk") + [LAMBDA (ARGS STARTING) (* ; "Edited 17-Jul-2025 00:01 by rmk") + (* ; "Edited 29-Jun-2024 00:10 by rmk") (* ; "Edited 17-Mar-2024 18:54 by rmk") (* ; "Edited 22-Feb-2024 23:14 by rmk") (* ; "Edited 5-Oct-2023 22:41 by rmk") @@ -211,52 +213,47 @@ (* ;; "If STARTING is T, set up the reset-driven connections and values for editing; otherwise, break links and reset values for non-editing") - (PROG ((TEXTOBJ (pop ARGS)) - (OTTYWINDOW (pop ARGS)) - (OTTYENTRYFN (pop ARGS)) - (OTTYEXITFN (pop ARGS)) - (OWINDOW (pop ARGS)) - TTYWINDOW PRIMPANE) - (SETQ PRIMPANE (FGETTOBJ TEXTOBJ PRIMARYPANE)) - [COND - (STARTING (* ; + (LET ((TEXTOBJ (pop ARGS)) + (OTTYWINDOW (pop ARGS)) + (OTTYENTRYFN (pop ARGS)) + (OTTYEXITFN (pop ARGS)) + (OWINDOW (pop ARGS)) + TTYWINDOW PRIMPANE) + (SETQ PRIMPANE (FGETTOBJ TEXTOBJ PRIMARYPANE)) + (if STARTING + then (* ;  "We're going INTO the command loop. Set up all the stuff") - (FSETTOBJ TEXTOBJ EDITOPACTIVE T) (* ; + (FSETTOBJ TEXTOBJ EDITOPACTIVE T) (* ;  "Mark us busy until we're set up, so that nobody tries any funny stuff.") - (SETQ OWINDOW (PROCESSPROP (THIS.PROCESS) - 'WINDOW PRIMPANE)) (* ; + (SETQ OWINDOW (PROCESSPROP (THIS.PROCESS) + 'WINDOW PRIMPANE)) (* ;  "Attach the process to this window.") - (\TEDIT.INTERRUPT.SETUP (THIS.PROCESS)) (* ; + (\TEDIT.INTERRUPT.SETUP (THIS.PROCESS)) (* ;  "Disarm all interrupt chars, re-arm them when we leave the edit") - (SETQ OTTYEXITFN (PROCESSPROP (THIS.PROCESS) - 'TTYEXITFN - '\TEDIT.PROCEXITFN)) + (SETQ OTTYEXITFN (PROCESSPROP (THIS.PROCESS) + 'TTYEXITFN + '\TEDIT.PROCEXITFN)) (* ;  "Set up functions for getting in and out of the edit process") - (SETQ OTTYENTRYFN (PROCESSPROP (THIS.PROCESS) - 'TTYENTRYFN - '\TEDIT.PROCENTRYFN)) - (CL:UNLESS (EQ (GETTEXTPROP TEXTOBJ 'TTYWINDOW) - 'DON'T) (* ; + (SETQ OTTYENTRYFN (PROCESSPROP (THIS.PROCESS) + 'TTYENTRYFN + '\TEDIT.PROCENTRYFN)) + (CL:UNLESS (EQ (GETTEXTPROP TEXTOBJ 'TTYWINDOW) + 'DON'T) (* ;  "He can suppress the ability to copy-select things into this window if he wants....") - (SETQ TTYWINDOW (OR (GETTEXTPROP TEXTOBJ 'TTYWINDOW) - (CREATEW DEFAULTTTYREGION "TTY Window for TEdit" NIL T))) - (SETQ OTTYWINDOW (TTYDISPLAYSTREAM TTYWINDOW)) - (PROCESSPROP (THIS.PROCESS) - 'TEDITTTYWINDOW TTYWINDOW) - (WINDOWPROP TTYWINDOW 'PROCESS NIL) - [WINDOWPROP TTYWINDOW 'CLOSEFN (FUNCTION (LAMBDA (WW) - (WINDOWPROP WW 'PROCESS NIL] + (SETQ TTYWINDOW (OR (GETTEXTPROP TEXTOBJ 'TTYWINDOW) + (CREATEW DEFAULTTTYREGION "TTY Window for TEdit" NIL T))) + (SETQ OTTYWINDOW (TTYDISPLAYSTREAM TTYWINDOW)) + (PROCESSPROP (THIS.PROCESS) + 'TEDITTTYWINDOW TTYWINDOW) + (WINDOWPROP TTYWINDOW 'PROCESS NIL) + [WINDOWPROP TTYWINDOW 'CLOSEFN (FUNCTION (LAMBDA (WW) + (WINDOWPROP WW 'PROCESS NIL] (* ;  "So that there isn't a circularity in the PROCESS -> TTYWINDOW -> PROCESS") - (WINDOWPROP TTYWINDOW 'COPYINSERTFN (FUNCTION \TEDIT.COPYINSERTFN)) - (WINDOWPROP TTYWINDOW 'MAINWINDOW PRIMPANE)) - (FSETTOBJ TEXTOBJ TXTEDITING T) (* ; - "Tell TEdit that this document is actively being edited.") - (* ; - "Mark us un-busy so life can go on.") - (FSETTOBJ TEXTOBJ EDITOPACTIVE NIL)) - (T (* ; + (WINDOWPROP TTYWINDOW 'COPYINSERTFN (FUNCTION \TEDIT.COPYINSERTFN)) + (WINDOWPROP TTYWINDOW 'MAINWINDOW PRIMPANE)) + else (* ;  "Coming OUT OF the command loop -- reset everything") (PROCESSPROP (THIS.PROCESS) 'WINDOW PRIMPANE) (* ; @@ -279,15 +276,15 @@ (FSETTOBJ TEXTOBJ TXTHISTORY NIL) (* ;  "To prevent circularities arising from the need to remember textobjs in the history list.") (FSETTOBJ TEXTOBJ SELPANE NIL) - (FSETTOBJ TEXTOBJ TXTEDITING NIL) (* ; - "Tell TEdit that this document is NO LONGER actively being edited.") (CL:UNLESS (EQ (GETTEXTPROP TEXTOBJ 'TTYWINDOW) 'DON'T) (* ;  "He can suppress the ability to copy-select things into this window if he wants....") (TTYDISPLAYSTREAM OTTYWINDOW) (PROCESSPROP (THIS.PROCESS) - 'TEDITTTYWINDOW NIL))] - (RETURN (LIST TEXTOBJ OTTYWINDOW OTTYENTRYFN OTTYEXITFN OWINDOW]) + 'TEDITTTYWINDOW NIL))) + (FSETTOBJ TEXTOBJ EDITOPACTIVE NIL) (* ; + "Mark us un-busy so life can go on.") + (LIST TEXTOBJ OTTYWINDOW OTTYENTRYFN OTTYEXITFN OWINDOW]) ) (RPAQ? TEDIT.INTERRUPTS '((2 BREAK) @@ -306,7 +303,7 @@ (GLOBALVARS || TEDIT.INTERRUPTS) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (2688 10242 (\TEDIT.COMMAND.LOOP 2698 . 9039) (\TEDIT.COMMAND.FUNCTION? 9041 . 10240)) ( -10243 19041 (\TEDIT.INTERRUPT.SETUP 10253 . 11900) (\TEDIT.MARKACTIVE 11902 . 12231) ( -\TEDIT.MARKINACTIVE 12233 . 12449) (\TEDIT.COMMAND.RESET.SETUP 12451 . 19039))))) + (FILEMAP (NIL (2709 10263 (\TEDIT.COMMAND.LOOP 2719 . 9060) (\TEDIT.COMMAND.FUNCTION? 9062 . 10261)) ( +10264 18725 (\TEDIT.INTERRUPT.SETUP 10274 . 11921) (\TEDIT.MARKACTIVE 11923 . 12252) ( +\TEDIT.MARKINACTIVE 12254 . 12470) (\TEDIT.COMMAND.RESET.SETUP 12472 . 18723))))) STOP diff --git a/library/tedit/TEDIT-COMMAND.LCOM b/library/tedit/TEDIT-COMMAND.LCOM index 82f61c4b5ba5881318f6ef0ef50a29b59f6fb695..583d13aacfe7eef7a08e0c33ab3d180cbdca7475 100644 GIT binary patch delta 1085 zcmb7DO>YuW6z$ZeCRIxn7FMIVp{ZK!;JlCdG{F#f)TuB-n1?{ZrWImQN*k=v>Y}=E zZ+*YOomD%P+Ln&x2Y z(8K3u?e$LQMYH`(-EP!djs0Y+x!Kw1>?ijc_2yoZvy98tw4cwXyiDQ&GV~RgizEG% z2}>s8P#lNNPUGp$_HMJ)s6*q;Zs+B)BmT}_r_gLeJX^};V7M=lNW`JOA!Q~J3Q%IP z35M;%cenKabPUMWkS^XT_eJFV#bs~`MfSw?OM#k6aRzZr)ci)Lp9|6*Y&uwzGLbPE z!4;TZnG?TemX6BP-!CZN#MSw`%1@D=ug!e!Dof(aeEVE?sw-|pK8mlAdk0&wu@t=c>Q63 zA`NQAlIOYJT4F#dqtqeed$&0dOLm-qiGjm6=J8@R>jBZt3B9z}!745fA#|AD>YE0F zt-cRc#vMpybr3U|RK^w-AFf0fP3?GUz*2cI0M^6Xm~BBm<$A|OY(T9yX(H_xs;(EX zVrU14UwEXT+2Ow?;L>aw%dHCiFbPEV$+7@42X0S;KqfgmIii}t(H{yu`V*zo{{ToY BD7XLs delta 1111 zcmZuvO-~b16s4%CsY%fkV}c8AW&<@$eP1)LGa5|OnZn?7rgmN_P1vAC0r?Pu3t~uD z?judvo<*c60sZ-pby=tZ*Gq^xt|ptX4~bQ+R?=9<&%o(WcyH zrUse)S36tpHmBOKz71NX;rlQQEEEbFv{&|5+t&~<+aOv#GhOj~w_JBiO1p=uuI%+o z#fD9|O^^m3npM~F-PYmLqpy=`3fQ6)%d^yDIdLl^chfmP57UdKdIY@&&P!JvM0v1l zb$8JV8@jm*iH(I0nG-{nU3QR}1jr zY*^4=izZ-3<>9@xj%u+tU}ayw9bl@_<$5CsykM>{a9KHwzzKsXp=?zd7huY9_vQwo z-l_yZP4j9lHIz3Bv*d{`gjqw7PJfC(DL-E{Ww=t-2S$_Y!oB3RmY$m zVqS+;3sfz6L6h{R4TLaQ?)gwChqaa$L~gxXEK!RU4tedit>TEDIT-FILE.;630 165294 +(FILECREATED " 1-Aug-2025 14:53:19"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-FILE.;645 169238 :EDIT-BY rmk - :CHANGES-TO (FNS TEDIT.PUT) + :CHANGES-TO (FNS \TEDIT.GET.CHARLOOKS \TEDIT.FORMATTEDSTREAMP \TEDIT.GET.OBJECT + \TEDIT.PUT.PCTB.MERGEABLE \TEDIT.PUT.CHARLOOKS \TEDIT.GET.SINGLE.CHARLOOKS + \TEDIT.PUT.SINGLE.CHARLOOKS) - :PREVIOUS-DATE "10-Jul-2025 09:52:55" {WMEDLEY}tedit>TEDIT-FILE.;629) + :PREVIOUS-DATE "29-Jul-2025 09:30:44" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-FILE.;642) (PRETTYCOMPRINT TEDIT-FILECOMS) @@ -120,7 +124,8 @@ (DEFINEQ (TEDIT.GET - [LAMBDA (TSTREAM FILE UNFORMATTED? PROPS) (* ; "Edited 19-Apr-2025 10:31 by rmk") + [LAMBDA (TSTREAM FILE UNFORMATTED? PROPS) (* ; "Edited 17-Jul-2025 00:19 by rmk") + (* ; "Edited 19-Apr-2025 10:31 by rmk") (* ; "Edited 6-Apr-2025 14:26 by rmk") (* ; "Edited 14-Mar-2025 11:52 by rmk") (* ; "Edited 26-Aug-2024 16:15 by rmk") @@ -143,7 +148,7 @@ (SETQ TSTREAM (TEXTSTREAM TSTREAM)) (RESETLST (PROG ((TEXTOBJ (TEXTOBJ TSTREAM)) - FSTREAM GETFN MAINWINDOW BEINGEDITED PROC NTSTREAM NTEXTOBJ TEDITCREATED BEING-EDITED) + FSTREAM GETFN MAINWINDOW ACTIVE PROC NTSTREAM NTEXTOBJ TEDITCREATED) [RESETSAVE (\TEDIT.MARKACTIVE TEXTOBJ "Get") '(PROGN (\TEDIT.MARKINACTIVE OLDVALUE] (CL:WHEN [AND (GETTOBJ TEXTOBJ \DIRTY) @@ -192,7 +197,7 @@ (* ;; "Open a textstream NTSTREAM on the new file, then reconnect its textobj to the old TSTREAM and window") - (SETQ BEING-EDITED (GETTEXTPROP TEXTOBJ 'BEING-EDITED)) + (SETQ ACTIVE (GETTEXTPROP TEXTOBJ 'ACTIVE)) (SETQ MAINWINDOW (\TEDIT.MAINW TEXTOBJ)) (CL:WHEN MAINWINDOW (TEDIT.KILL TEXTOBJ) @@ -205,11 +210,11 @@ (SETTOBJ NTEXTOBJ STREAMHINT TSTREAM) (\TEDIT.TEXTSETFILEPTR TSTREAM 0) (CL:WHEN MAINWINDOW - (\TEDIT.UPDATE.TITLE NTEXTOBJ) + (\TEDIT.UPDATE.TITLE NTEXTOBJ) (* ; "find and set the title") (WINDOWPROP MAINWINDOW 'TEDITCREATED TEDITCREATED) (* ; "To keep the default region") (WINDOWPROP MAINWINDOW 'TEXTSTREAM TSTREAM)) - (CL:WHEN BEING-EDITED (TEDIT TSTREAM))) (* ; "find and set the title") + (CL:WHEN ACTIVE (TEDIT TSTREAM))) (CL:WHEN GETFN (APPLY* GETFN TSTREAM (FULLNAME (GETTOBJ TEXTOBJ TXTFILE)) 'AFTER)) @@ -632,7 +637,8 @@ TSTREAM)]) (\TEDIT.GET.UNFORMATTED.FILE - [LAMBDA (STREAM TSTREAM START END PROPS) (* ; "Edited 24-Apr-2025 17:21 by rmk") + [LAMBDA (STREAM TSTREAM START END PROPS) (* ; "Edited 28-Jul-2025 23:46 by rmk") + (* ; "Edited 24-Apr-2025 17:21 by rmk") (* ; "Edited 8-Feb-2025 20:21 by rmk") (* ; "Edited 17-Mar-2024 00:21 by rmk") (* ; "Edited 5-Feb-2024 09:26 by rmk") @@ -678,7 +684,7 @@ PFPOS _ START PLEN _ (FOLDLO (IDIFFERENCE END START) 2) - PLOOKS _ DEFAULTCHARLOOKS + PCHARLOOKS _ DEFAULTCHARLOOKS PPARALAST _ NIL PPARALOOKS _ DEFAULTPARALOOKS PTYPE _ FATFILE2.PTYPE @@ -687,7 +693,7 @@ PCONTENTS _ STREAM PFPOS _ START PLEN _ (IDIFFERENCE END START) - PLOOKS _ DEFAULTCHARLOOKS + PCHARLOOKS _ DEFAULTCHARLOOKS PPARALAST _ NIL PPARALOOKS _ DEFAULTPARALOOKS PTYPE _ THINFILE.PTYPE @@ -738,7 +744,8 @@ TEXTOBJ)]) (\TEDIT.FORMATTEDSTREAMP - [LAMBDA (TSTREAM) (* ; "Edited 8-Feb-2025 20:21 by rmk") + [LAMBDA (TSTREAM) (* ; "Edited 1-Aug-2025 14:50 by rmk") + (* ; "Edited 8-Feb-2025 20:21 by rmk") (* ; "Edited 16-Mar-2024 10:03 by rmk") (* ; "Edited 22-Sep-2023 20:17 by rmk") (* ; "Edited 15-Sep-2023 00:09 by rmk") @@ -767,7 +774,7 @@ (* ;  "A paragraph break not at the end, or a new plook") (SETQ FORMATLEVEL (IMAX FORMATLEVEL 3))) - ((OR (NOT (\TEDIT.EQCLOOKS DEFAULTCLOOKS (PLOOKS PC))) + ((OR (NOT (\TEDIT.EQCLOOKS DEFAULTCLOOKS (PCHARLOOKS PC))) (AND TENTATIVE (PNEW PC))) (* ; "Change in font, size, etc.") (SETQ FORMATLEVEL (IMAX FORMATLEVEL 2))) ((MEMB (PTYPE PC) @@ -914,7 +921,8 @@ (DEFINEQ (\TEDIT.GET.PIECES3 - [LAMBDA (TEXT TSTREAM PCCOUNT CURFILEBYTE# END) (* ; "Edited 24-Apr-2025 17:20 by rmk") + [LAMBDA (TEXT TSTREAM PCCOUNT CURFILEBYTE# END) (* ; "Edited 29-Jul-2025 09:30 by rmk") + (* ; "Edited 24-Apr-2025 17:20 by rmk") (* ; "Edited 8-Feb-2025 20:21 by rmk") (* ; "Edited 30-Aug-2024 15:44 by rmk") (* ; "Edited 11-Jul-2024 13:20 by rmk") @@ -991,17 +999,18 @@ PREVPIECE _ PREVPC)) (\TEDIT.GET.OBJECT TSTREAM PC TEXT CURFILEBYTE#) (add CURFILEBYTE# BYTELEN) - (FSETPC PC PLOOKS (if (ZEROP (BIN TEXT)) - then + (FSETPC PC PCHARLOOKS (if (ZEROP (BIN TEXT)) + then + (* ;; "No new looks; steal them from the prior piece. RMK: Goofy part of this format--we now always put out 0.") - (OR (AND PREVPC (PLOOKS PREVPC)) - DEFAULTCHARLOOKS) - else - (* ;; + (OR (AND PREVPC (PCHARLOOKS PREVPC)) + DEFAULTCHARLOOKS) + else + (* ;;  "There are new character looks for this object. Read them in.") - (\TEDIT.GET.SINGLE.CHARLOOKS TEXT TEXTOBJ)))) + (\TEDIT.GET.SINGLE.CHARLOOKS TEXT TEXTOBJ)))) (\PieceDescriptorCHARLOOKSLIST (* ;  "Read the list of CHARLOOKSs used in this document.") (add PCNO -1) (* ; @@ -1039,8 +1048,8 @@ (* ;; "We defer filling in the actual looks to avoid requiring the mapping arrays to come before the content pieces. This makes it easier to prepend additional pieces without parsing the whole sequence, as Lafite wants to do.") [for P inpieces PC - do (CL:WHEN (SMALLP (PLOOKS P)) - (change (PLOOKS P) + do (CL:WHEN (SMALLP (PCHARLOOKS P)) + (change (PCHARLOOKS P) (ELT CHARLOOKSMAP DATUM))) (CL:WHEN (SMALLP (PPARALOOKS P)) (change (PPARALOOKS P) @@ -1115,7 +1124,8 @@ (DEFINEQ (\TEDIT.GET.UNFORMATTED.FILE.MCCS - [LAMBDA (STRM START END DEFAULTCHARLOOKS DEFAULTPARALOOKS) (* ; "Edited 21-Jan-2024 09:40 by rmk") + [LAMBDA (STRM START END DEFAULTCHARLOOKS DEFAULTPARALOOKS) (* ; "Edited 28-Jul-2025 23:45 by rmk") + (* ; "Edited 21-Jan-2024 09:40 by rmk") (* ; "Edited 12-Jan-2024 13:13 by rmk") (* ; "Edited 10-Jan-2024 11:19 by rmk") (* ; "Edited 8-Jan-2024 13:15 by rmk") @@ -1129,7 +1139,7 @@ (bind (NEXTFILEPOS _ START) (CHARSET _ 0) (FIRSTPC _ (create PIECE - PLOOKS _ DEFAULTCHARLOOKS + PCHARLOOKS _ DEFAULTCHARLOOKS PPARALOOKS _ DEFAULTPARALOOKS)) (CODESIZE _ 1) (SBINABLE _ (fetch (STREAM BINABLE) of STRM)) @@ -1179,7 +1189,7 @@ PCONTENTS _ STRM PFPOS _ FILEPOS PLEN _ (IQUOTIENT RUNLEN CODESIZE) - PLOOKS _ DEFAULTCHARLOOKS + PCHARLOOKS _ DEFAULTCHARLOOKS PPARALOOKS _ DEFAULTPARALOOKS PCHARSET _ CHARSET PBYTESPERCHAR _ CODESIZE @@ -1329,7 +1339,8 @@ (DEFINEQ (\TEDIT.GET.UNFORMATTED.FILE.UTF8 - [LAMBDA (STRM START END DEFAULTCHARLOOKS DEFAULTPARALOOKS) (* ; "Edited 11-Mar-2024 23:55 by rmk") + [LAMBDA (STRM START END DEFAULTCHARLOOKS DEFAULTPARALOOKS) (* ; "Edited 28-Jul-2025 23:45 by rmk") + (* ; "Edited 11-Mar-2024 23:55 by rmk") (* ; "Edited 4-Feb-2024 10:12 by rmk") (* ; "Edited 2-Feb-2024 11:24 by rmk") (* ; "Edited 21-Jan-2024 09:41 by rmk") @@ -1345,7 +1356,7 @@ (bind (NEXTFILEPOS _ START) (FIRSTPC _ (create PIECE - PLOOKS _ DEFAULTCHARLOOKS + PCHARLOOKS _ DEFAULTCHARLOOKS PPARALOOKS _ DEFAULTPARALOOKS)) (NEXTCODESIZE _ 1) (SBINABLE _ (fetch (STREAM BINABLE) of STRM)) @@ -1403,7 +1414,7 @@ PCONTENTS _ STRM PFPOS _ FILEPOS PLEN _ (IQUOTIENT RUNLEN CODESIZE) - PLOOKS _ DEFAULTCHARLOOKS + PCHARLOOKS _ DEFAULTCHARLOOKS PPARALOOKS _ DEFAULTPARALOOKS PBYTESPERCHAR _ CODESIZE PBYTELEN _ RUNLEN @@ -1445,7 +1456,11 @@ (for I from 1 to (\WIN FILE) collect (\TEDIT.GET.SINGLE.CHARLOOKS FILE TEXTOBJ]) (\TEDIT.GET.SINGLE.CHARLOOKS - [LAMBDA (FILE TEXTOBJ) (* ; "Edited 22-Apr-2025 15:20 by rmk") + [LAMBDA (FILE TEXTOBJ) (* ; "Edited 1-Aug-2025 13:43 by rmk") + (* ; "Edited 26-Jul-2025 11:14 by rmk") + (* ; "Edited 21-Jul-2025 23:41 by rmk") + (* ; "Edited 20-Jul-2025 13:14 by rmk") + (* ; "Edited 22-Apr-2025 15:20 by rmk") (* ; "Edited 2-Jan-2025 11:08 by rmk") (* ; "Edited 11-Dec-2024 22:59 by rmk") (* ; "Edited 9-Dec-2024 20:11 by rmk") @@ -1465,36 +1480,63 @@ (PROG* ((LOOKS (create CHARLOOKS)) (FILEPOS (GETFILEPTR FILE)) (LOOKSLEN (\WIN FILE)) - FONT NAME SIZE SUPER PROPS STYLESTR BOLD ITALIC EXTRAS) + FONT NAME SIZE SUPER PROPS STYLESTR BOLD ITALIC PROPS BITS) (SETQ NAME (\ARBIN FILE)) (* ; "The font name") (SETQ SIZE (\WIN FILE)) (* ; "Size of the type, in points") (SETQ SUPER (\SMALLPIN FILE)) (* ;  "Superscripting distance, could be negative") (FSETCLOOKS LOOKS CLSTYLE (OR (\ARBIN FILE) 0)) - (SETQ EXTRAS (\ARBIN FILE)) - (if [AND (EQ '\TEDIT.COLOR (CAR (LISTP (CAR (LISTP EXTRAS] - then (FSETCLOOKS LOOKS CLCOLOR (CADR (ASSOC '\TEDIT.COLOR EXTRAS))) - (* ; "Color tells us it's an alist") - (FSETCLOOKS LOOKS CLUSERINFO (CADR (ASSOC '\TEDIT.USERINFO EXTRAS))) - else (* ; "Pre color, create installed BLACK") - (FSETCLOOKS LOOKS CLCOLOR 'BLACK) - (FSETCLOOKS LOOKS CLUSERINFO EXTRAS)) - (SETQ PROPS (\WIN FILE)) (* ; "All the bits") - [SETQ BOLD (NOT (ZEROP (LOGAND 512 PROPS] - [SETQ ITALIC (NOT (ZEROP (LOGAND 256 PROPS] - (with CHARLOOKS LOOKS [SETQ CLSELBEFORE (NOT (ZEROP (LOGAND 8192 PROPS] - [SETQ CLUNBREAKABLE (NOT (ZEROP (LOGAND 4096 PROPS] - [SETQ CLLEADER (NOT (ZEROP (LOGAND 2048 PROPS] - [SETQ CLINVERTED (NOT (ZEROP (LOGAND 1024 PROPS] - [SETQ CLULINE (NOT (ZEROP (LOGAND 128 PROPS] - [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 PROPS] - [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 PROPS] - [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 PROPS] - [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 PROPS] - [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 PROPS] - [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 PROPS] - [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 PROPS] + (SETQ PROPS (\ARBIN FILE)) + + (* ;; "Complexity to deal with legacy files") + + [if (MEMB (CAR (LISTP PROPS)) + '(CHARPROPS \TEDIT.CHARPROPS)) + then + (* ;; + "A true property list. Remove \TEDIT.CHARPROPS when few files are cleaned up") + + (SETQ PROPS (CDR PROPS)) + else (SELECTQ [CAR (LISTP (CAR (LISTP PROPS] + (* ;; "\TEDIT.COLOR was used as an intermediate state to signal the alist, hopefully appears in few files. And if neither, then this is just the original CLUSERINFO") + (\TEDIT.COLOR (RPLACA (CAR PROPS) + 'COLOR) + (RPLACD (CAR PROPS) + (CADR (CAR PROPS))) + [LET ((X (ASSOC '\TEDIT.USERINFO PROPS))) + (CL:WHEN X + (RPLACA X 'USERINFO) + (RPLACD X (CADR X)))]) + (COLOR + (* ;; "This may not be needed, even for correction. ") + + (CL:WHEN (LISTP (CDR (CAR PROPS))) + (RPLACD (CAR PROPS) + (CADR (CAR PROPS))))) + (PROGN + (* ;; "Before props were generalized, just userinfo") + + (SETQ PROPS (LIST (CONS 'USERINFO PROPS) + `(COLOR . BLACK] + (FSETCLOOKS LOOKS CLCOLOR (GETMULTI PROPS 'COLOR)) + (FSETCLOOKS LOOKS CLUSERINFO (GETMULTI PROPS 'USERINFO)) + (FSETCLOOKS LOOKS CLCHARENCODING (GETMULTI PROPS 'CHARENCODING)) + (SETQ BITS (\WIN FILE)) (* ; "All the bits") + [SETQ BOLD (NOT (ZEROP (LOGAND 512 BITS] + [SETQ ITALIC (NOT (ZEROP (LOGAND 256 BITS] + (with CHARLOOKS LOOKS [SETQ CLSELBEFORE (NOT (ZEROP (LOGAND 8192 BITS] + [SETQ CLUNBREAKABLE (NOT (ZEROP (LOGAND 4096 BITS] + [SETQ CLLEADER (NOT (ZEROP (LOGAND 2048 BITS] + [SETQ CLINVERTED (NOT (ZEROP (LOGAND 1024 BITS] + [SETQ CLULINE (NOT (ZEROP (LOGAND 128 BITS] + [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 BITS] + [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 BITS] + [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 BITS] + [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 BITS] + [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 BITS] + [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 BITS] + [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 BITS] (SETQ CLOFFSET SUPER)) [if (LISTP NAME) then (* ; @@ -1517,19 +1559,21 @@ (RETURN LOOKS]) (\TEDIT.GET.CHARLOOKS - [LAMBDA (PC FILE LOOKSARRAY) (* ; "Edited 13-Jan-2024 00:01 by rmk") + [LAMBDA (PC FILE LOOKSARRAY) (* ; "Edited 1-Aug-2025 14:52 by rmk") + (* ; "Edited 28-Jul-2025 23:45 by rmk") + (* ; "Edited 13-Jan-2024 00:01 by rmk") (* ; "Edited 19-Dec-2023 10:13 by rmk") (* ; "Edited 3-Sep-2023 23:31 by rmk") (* ; "Edited 28-Aug-2023 22:19 by rmk") (* ; "Edited 26-Aug-2023 23:22 by rmk") (* ; "Edited 30-May-91 21:43 by jds") - (* ;; "Set the PLOOKS for the current piece, PC, according to what the file says") + (* ;; "Set the PCHARLOOKS for the current piece, PC, according to what the file says") (* ;; "We also ") (LET ((FLAGS (BIN FILE))) - (FSETPC PC PLOOKS (ELT LOOKSARRAY (\WIN FILE))) + (FSETPC PC PCHARLOOKS (ELT LOOKSARRAY (\WIN FILE))) (CL:UNLESS (ZEROP (LOGAND FLAGS 1)) (FSETPC PC PNEW T)) (CL:UNLESS (ZEROP (LOGAND FLAGS 2)) (* ; @@ -1551,7 +1595,8 @@ (\WIN STREAM]) (\TEDIT.GET.CHARLOOKS.INDEX - [LAMBDA (PC FORMATSTREAM) (* ; "Edited 14-Jan-2024 00:11 by rmk") + [LAMBDA (PC FORMATSTREAM) (* ; "Edited 28-Jul-2025 23:46 by rmk") + (* ; "Edited 14-Jan-2024 00:11 by rmk") (* ; "Edited 19-Dec-2023 10:13 by rmk") (* ; "Edited 3-Sep-2023 23:31 by rmk") (* ; "Edited 28-Aug-2023 22:19 by rmk") @@ -1561,7 +1606,7 @@ (* ;; "Set the type, length, and and charlooks-index for the current piece, PC") (LET ((FLAGS (BIN FORMATSTREAM))) - (FSETPC PC PLOOKS (\WIN FORMATSTREAM)) + (FSETPC PC PCHARLOOKS (\WIN FORMATSTREAM)) (CL:UNLESS (ZEROP (LOGAND FLAGS 1)) (FSETPC PC PNEW T)) (CL:UNLESS (ZEROP (LOGAND FLAGS 2)) (* ; @@ -1677,7 +1722,9 @@ (DEFINEQ (\TEDIT.GET.OBJECT - [LAMBDA (TSTREAM PIECE FILE CURFILEBYTE# BYTELEN) (* ; "Edited 31-Jul-2024 12:09 by rmk") + [LAMBDA (TSTREAM PIECE FILE CURFILEBYTE# BYTELEN) (* ; "Edited 1-Aug-2025 14:50 by rmk") + (* ; "Edited 28-Jul-2025 23:46 by rmk") + (* ; "Edited 31-Jul-2024 12:09 by rmk") (* ; "Edited 5-Dec-2023 12:28 by rmk") (* ; "Edited 26-Nov-2023 10:22 by rmk") (* ; "Edited 21-Nov-2023 17:53 by rmk") @@ -1713,13 +1760,13 @@ T)) (SETFILEPTR FILE FILEPTRSAVE) (SETPC PIECE PCONTENTS OBJ) - [FSETPC PIECE PLOOKS (COND - ((PREVPIECE PIECE) - (PLOOKS (PREVPIECE PIECE))) - (T (OR (GETTOBJ TEXTOBJ DEFAULTCHARLOOKS) - (\TEDIT.UNIQUIFY.CHARLOOKS (\TEDIT.CHARLOOKS.FROM.FONT - DEFAULTFONT) - TEXTOBJ] + [FSETPC PIECE PCHARLOOKS (COND + ((PREVPIECE PIECE) + (PCHARLOOKS (PREVPIECE PIECE))) + (T (OR (GETTOBJ TEXTOBJ DEFAULTCHARLOOKS) + (\TEDIT.UNIQUIFY.CHARLOOKS (\TEDIT.CHARLOOKS.FROM.FONT + DEFAULTFONT) + TEXTOBJ] (FSETPC PIECE PTYPE (CL:IF (IMAGEOBJPROP OBJ 'SUBSTREAM) SUBSTREAM.PTYPE OBJECT.PTYPE)) @@ -1933,7 +1980,8 @@ (\WOUT FORMATSTREAM (IPLUS 31415 VERSION]) (\TEDIT.PUT.PCTB.MERGEABLE - [LAMBDA (PREVPC PC EDITSTENTATIVE EXTFORMAT TEXTOBJ) (* ; "Edited 25-Apr-2025 23:50 by rmk") + [LAMBDA (PREVPC PC EDITSTENTATIVE EXTFORMAT TEXTOBJ) (* ; "Edited 1-Aug-2025 14:51 by rmk") + (* ; "Edited 25-Apr-2025 23:50 by rmk") (* ; "Edited 24-Apr-2025 16:02 by rmk") (* ; "Edited 14-May-2024 11:55 by rmk") (* ; "Edited 12-May-2024 21:57 by rmk") @@ -1949,8 +1997,8 @@ (PCTYPE (PTYPE PC))) (CL:UNLESS [OR (EQ OBJECT.PTYPE PREVTYPE) (EQ OBJECT.PTYPE PCTYPE) - (NEQ (PLOOKS PREVPC) - (PLOOKS PC)) + (NEQ (PCHARLOOKS PREVPC) + (PCHARLOOKS PC)) (NEQ (PPARALOOKS PREVPC) (PPARALOOKS PC)) (PPARALAST PREVPC) @@ -2224,7 +2272,10 @@ (PUTHASH LOOKS I LOOKSHASH]) (\TEDIT.PUT.SINGLE.CHARLOOKS - [LAMBDA (FORMATSTREAM LOOKS) (* ; "Edited 22-Apr-2025 14:50 by rmk") + [LAMBDA (FORMATSTREAM LOOKS) (* ; "Edited 1-Aug-2025 13:42 by rmk") + (* ; "Edited 21-Jul-2025 23:32 by rmk") + (* ; "Edited 20-Jul-2025 13:17 by rmk") + (* ; "Edited 22-Apr-2025 14:50 by rmk") (* ; "Edited 2-Jan-2025 10:43 by rmk") (* ; "Edited 13-Aug-2024 08:47 by rmk") (* ; "Edited 31-Jul-2024 00:05 by rmk") @@ -2238,7 +2289,7 @@ (LET ((FILEPOS (GETFILEPTR FORMATSTREAM)) (FONT (FGETCLOOKS LOOKS CLFONT)) - LEN) + LEN PROPS) (\WOUT FORMATSTREAM 0) (* ;  "Reserve space for the length of this looks") [if (type? FONTCLASS FONT) @@ -2257,13 +2308,15 @@ then (\ARBOUT FORMATSTREAM (FGETCLOOKS LOOKS CLSTYLE)) else (\WOUT FORMATSTREAM 0)) - (* ;; "Make an ALIST, headed by \TEDIT.COLOR, for future expansion") + (* ;; "We create our own props structure here rather than using the CHARLOOKS CLPROPS directly. That layout may change in the future.") - [\ARBOUT FORMATSTREAM (CONS (LIST '\TEDIT.COLOR (OR (FGETCLOOKS LOOKS CLCOLOR) - 'BLACK)) - (CL:IF (FGETCLOOKS LOOKS CLUSERINFO) - (CONS (LIST '\TEDIT.USERINFO (FGETCLOOKS LOOKS CLUSERINFO)))) - ] + (PUTMULTI PROPS 'COLOR (OR (FGETCLOOKS LOOKS CLCOLOR) + 'BLACK)) + (CL:WHEN (FGETCLOOKS LOOKS CLUSERINFO) + (PUTMULTI PROPS 'USERINFO (FGETCLOOKS LOOKS CLUSERINFO))) + (CL:WHEN (FGETCLOOKS LOOKS CLCHARENCODING) + (PUTMULTI PROPS 'CHARENCODING (FGETCLOOKS LOOKS CLCHARENCODING))) + (\ARBOUT FORMATSTREAM (CONS 'CHARPROPS PROPS)) (\WOUT FORMATSTREAM (LOGOR (CL:IF (FGETCLOOKS LOOKS CLSELBEFORE) 8192 0) @@ -2317,6 +2370,7 @@ (\TEDIT.PUT.CHARLOOKS [LAMBDA (FORMATSTREAM BYTELEN PC EDITSTENTATIVE LOOKSHARRAY) + (* ; "Edited 1-Aug-2025 14:51 by rmk") (* ; "Edited 14-May-2024 10:24 by rmk") (* ; "Edited 13-Jan-2024 16:35 by rmk") (* ; "Edited 30-Dec-2023 16:25 by rmk") @@ -2328,7 +2382,7 @@ (* ;; "Put a description of PC's charlooks into FORMATSTREAM. The looks apply to bytes OLDBYTE# thru CURBYTE#-1") (\DTEST PC 'PIECE) - (\TEDIT.PUT.CHARLOOKS1 FORMATSTREAM BYTELEN (GETHASH (PLOOKS PC) + (\TEDIT.PUT.CHARLOOKS1 FORMATSTREAM BYTELEN (GETHASH (PCHARALOOKS PC) LOOKSHARRAY) (AND EDITSTENTATIVE PC (PNEW PC)) (EQ FATFILE2.PTYPE (PTYPE PC]) @@ -2580,28 +2634,28 @@ (RPAQ? *TEDIT-FILE-READTABLE* (COPYREADTABLE \ORIGREADTABLE)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (5137 35180 (TEDIT.GET 5147 . 11479) (TEDIT.FORMATTEDFILEP 11481 . 12797) ( -TEDIT.FILEDATE 12799 . 13970) (TEDIT.INCLUDE 13972 . 22001) (TEDIT.RAW.INCLUDE 22003 . 22811) ( -TEDIT.PUT 22813 . 31169) (TEDIT.PUT.STREAM 31171 . 35178)) (35181 55257 (\TEDIT.GET.FOREIGN.FILE 35191 - . 38616) (\TEDIT.GET.UNFORMATTED.FILE 38618 . 42807) (\TEDIT.GET.FORMATTED.FILE 42809 . 45836) ( -\TEDIT.FORMATTEDSTREAMP 45838 . 48856) (\ARBIN 48858 . 49578) (\ATMIN 49580 . 50117) (\DWIN 50119 . -50498) (\STRINGIN 50500 . 51208) (\TEDIT.GET.TRAILER 51210 . 53726) (\TEDIT.CACHEFILE 53728 . 55255)) -(55423 69484 (\TEDIT.GET.PIECES3 55433 . 66246) (\TEDIT.GET.IDATE3 66248 . 67643) ( -\TEDIT.MAKE.STRINGPIECE 67645 . 69482)) (69485 82794 (\TEDIT.GET.UNFORMATTED.FILE.MCCS 69495 . 75611) -(\TEDIT.INTERPRET.MCCS.SHIFTS 75613 . 81858) (\TEDIT.CONVERT.XCCSTOMCCS 81860 . 82792)) (82816 88838 ( -\TEDIT.GET.UNFORMATTED.FILE.UTF8 82826 . 88836)) (88861 97990 (\TEDIT.GET.CHARLOOKS.LIST 88871 . 89602 -) (\TEDIT.GET.SINGLE.CHARLOOKS 89604 . 94802) (\TEDIT.GET.CHARLOOKS 94804 . 96134) ( -\TEDIT.GET.PARALOOKS.INDEX 96136 . 96680) (\TEDIT.GET.CHARLOOKS.INDEX 96682 . 97988)) (97991 105648 ( -\TEDIT.GET.PARALOOKS.LIST 98001 . 98623) (\TEDIT.GET.SINGLE.PARALOOKS 98625 . 105646)) (105649 109239 -(\TEDIT.GET.OBJECT 105659 . 109237)) (109304 141752 (\TEDIT.PUT.PCTB 109314 . 119084) ( -\TEDIT.PUT.PCTB.PIECEDATA 119086 . 122284) (\TEDIT.PUT.TRAILER 122286 . 123053) ( -\TEDIT.PUT.PCTB.MERGEABLE 123055 . 126711) (\TEDIT.PUT.UTF8.SPLITPIECES 126713 . 131415) ( -\TEDIT.PUT.PCTB.NEXTNEW 131417 . 135913) (\TEDIT.INSERT.NEWPIECES 135915 . 139350) (\TEDIT.PUTRESET -139352 . 139594) (\ARBOUT 139596 . 140320) (\ATMOUT 140322 . 140927) (\DWOUT 140929 . 141208) ( -\STRINGOUT 141210 . 141750)) (141753 153823 (\TEDIT.PUT.CHARLOOKS.LIST 141763 . 143435) ( -\TEDIT.PUT.SINGLE.CHARLOOKS 143437 . 149167) (\TEDIT.PUT.CHARLOOKS 149169 . 150394) ( -\TEDIT.PUT.CHARLOOKS1 150396 . 151447) (\TEDIT.PUT.OBJECT 151449 . 153821)) (153824 161463 ( -\TEDIT.PUT.PARALOOKS.LIST 153834 . 154736) (\TEDIT.PUT.SINGLE.PARALOOKS 154738 . 160322) ( -\TEDIT.PUT.PARALOOKS 160324 . 161461)) (161558 164987 (TEDITFROMLISPSOURCE 161568 . 164236) ( -SHELLSCRIPTP 164238 . 164467) (TEDITFROMSHELLSCRIPT 164469 . 164985))))) + (FILEMAP (NIL (5423 35544 (TEDIT.GET 5433 . 11843) (TEDIT.FORMATTEDFILEP 11845 . 13161) ( +TEDIT.FILEDATE 13163 . 14334) (TEDIT.INCLUDE 14336 . 22365) (TEDIT.RAW.INCLUDE 22367 . 23175) ( +TEDIT.PUT 23177 . 31533) (TEDIT.PUT.STREAM 31535 . 35542)) (35545 55851 (\TEDIT.GET.FOREIGN.FILE 35555 + . 38980) (\TEDIT.GET.UNFORMATTED.FILE 38982 . 43288) (\TEDIT.GET.FORMATTED.FILE 43290 . 46317) ( +\TEDIT.FORMATTEDSTREAMP 46319 . 49450) (\ARBIN 49452 . 50172) (\ATMIN 50174 . 50711) (\DWIN 50713 . +51092) (\STRINGIN 51094 . 51802) (\TEDIT.GET.TRAILER 51804 . 54320) (\TEDIT.CACHEFILE 54322 . 55849)) +(56017 70228 (\TEDIT.GET.PIECES3 56027 . 66990) (\TEDIT.GET.IDATE3 66992 . 68387) ( +\TEDIT.MAKE.STRINGPIECE 68389 . 70226)) (70229 83655 (\TEDIT.GET.UNFORMATTED.FILE.MCCS 70239 . 76472) +(\TEDIT.INTERPRET.MCCS.SHIFTS 76474 . 82719) (\TEDIT.CONVERT.XCCSTOMCCS 82721 . 83653)) (83677 89816 ( +\TEDIT.GET.UNFORMATTED.FILE.UTF8 83687 . 89814)) (89839 101019 (\TEDIT.GET.CHARLOOKS.LIST 89849 . +90580) (\TEDIT.GET.SINGLE.CHARLOOKS 90582 . 97492) (\TEDIT.GET.CHARLOOKS 97494 . 99050) ( +\TEDIT.GET.PARALOOKS.INDEX 99052 . 99596) (\TEDIT.GET.CHARLOOKS.INDEX 99598 . 101017)) (101020 108677 +(\TEDIT.GET.PARALOOKS.LIST 101030 . 101652) (\TEDIT.GET.SINGLE.PARALOOKS 101654 . 108675)) (108678 +112511 (\TEDIT.GET.OBJECT 108688 . 112509)) (112576 145141 (\TEDIT.PUT.PCTB 112586 . 122356) ( +\TEDIT.PUT.PCTB.PIECEDATA 122358 . 125556) (\TEDIT.PUT.TRAILER 125558 . 126325) ( +\TEDIT.PUT.PCTB.MERGEABLE 126327 . 130100) (\TEDIT.PUT.UTF8.SPLITPIECES 130102 . 134804) ( +\TEDIT.PUT.PCTB.NEXTNEW 134806 . 139302) (\TEDIT.INSERT.NEWPIECES 139304 . 142739) (\TEDIT.PUTRESET +142741 . 142983) (\ARBOUT 142985 . 143709) (\ATMOUT 143711 . 144316) (\DWOUT 144318 . 144597) ( +\STRINGOUT 144599 . 145139)) (145142 157767 (\TEDIT.PUT.CHARLOOKS.LIST 145152 . 146824) ( +\TEDIT.PUT.SINGLE.CHARLOOKS 146826 . 152997) (\TEDIT.PUT.CHARLOOKS 152999 . 154338) ( +\TEDIT.PUT.CHARLOOKS1 154340 . 155391) (\TEDIT.PUT.OBJECT 155393 . 157765)) (157768 165407 ( +\TEDIT.PUT.PARALOOKS.LIST 157778 . 158680) (\TEDIT.PUT.SINGLE.PARALOOKS 158682 . 164266) ( +\TEDIT.PUT.PARALOOKS 164268 . 165405)) (165502 168931 (TEDITFROMLISPSOURCE 165512 . 168180) ( +SHELLSCRIPTP 168182 . 168411) (TEDITFROMSHELLSCRIPT 168413 . 168929))))) STOP diff --git a/library/tedit/TEDIT-FILE.LCOM b/library/tedit/TEDIT-FILE.LCOM index b37d486abb88b5b2a7f23200c5d0d48a40acaf45..99e23b3d77b272d4ac069cba1d393676e55910f1 100644 GIT binary patch delta 5466 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 delta 4708 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 M5Ztt_&tZMwKglni3IG5A diff --git a/library/tedit/TEDIT-FNKEYS b/library/tedit/TEDIT-FNKEYS index 07309f06..d9da38e1 100644 --- a/library/tedit/TEDIT-FNKEYS +++ b/library/tedit/TEDIT-FNKEYS @@ -1,19 +1,18 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "29-May-2025 16:20:30" {WMEDLEY}tedit>TEDIT-FNKEYS.;290 110242 +(FILECREATED " 7-Aug-2025 15:00:51" {WMEDLEY}TEDIT>TEDIT-FNKEYS.;294 106161 :EDIT-BY rmk - :CHANGES-TO (FNS TEDIT.GETSYNTAX) + :CHANGES-TO (VARS TEDIT-FNKEYSCOMS) - :PREVIOUS-DATE "25-May-2025 23:26:11" {WMEDLEY}tedit>TEDIT-FNKEYS.;289) + :PREVIOUS-DATE " 6-Aug-2025 08:59:59" {WMEDLEY}TEDIT>TEDIT-FNKEYS.;293) (PRETTYCOMPRINT TEDIT-FNKEYSCOMS) (RPAQQ TEDIT-FNKEYSCOMS - ((FNS CHARCODE.ENCODE) - (COMS (* ; + ((COMS (* ;  "Public functions (binding data below)") (FNS TEDIT.INSTALL.CHARBINDINGS TEDIT.CLEAR.CHARBINDINGS TEDIT.GET.CHARACTION TEDIT.GET.CHARBINDING TEDIT.GET.ALL.CHARBINDINGS TEDIT.CHARBINDINGS.INVERT @@ -45,8 +44,6 @@ (VARS (TEDIT.FNKEY.VERBOSE T)) (COMS (* ; "Read-table Utilities") (GLOBALVARS TEDIT.READTABLE TEDIT.WORDBOUND.READTABLE) - (ALISTS (CHARACTERNAMES EMQUAD ENQUAD THINSPACE FIGURESPACE LEFT-DOUBLEQUOTE - RIGHT-DOUBLEQUOTE)) (FNS \TEDIT.READTABLE \TEDIT.WORDBOUND.READTABLE TEDIT.GETSYNTAX TEDIT.SETSYNTAX TEDIT.GETFUNCTION TEDIT.SETFUNCTION TEDIT.WORDGET TEDIT.WORDSET TEDIT.ATOMBOUND.READTABLE)) @@ -65,81 +62,6 @@ (FNS TEDIT.BUTTONS.BUILD TEDIT.BUTTONBITMAP.FILL) (INITVARS (TEDIT.BUTTONS.WINDOW NIL)) (VARS TEDIT.BUTTONBITMAP))) -(DEFINEQ - -(CHARCODE.ENCODE - [LAMBDA (CODE OCTALCHARS NONCHARIDENTITY) (* ; "Edited 23-Apr-2025 19:08 by rmk") - (* ; "Edited 26-Mar-2025 10:37 by rmk") - (* ; "Edited 23-Mar-2025 14:57 by rmk") - (* ; "Edited 18-Mar-2025 20:55 by rmk") - (* ; "Edited 6-Dec-2023 20:30 by rmk") - (* ; "Edited 20-Sep-2021 15:03 by rmk:") - - (* ;; "If CODE correspond to a named character, that character is returned.") - - (* ;; "Otherwise, if OCTALCHARS the result is of the form %"cset,octal-char%" where cset is a known name (Meta) or the octal string for an unknown character set. Ascii codes show up with %"0,xx%"") - - (* ;; "If not OCTALCHARS, the character-name part is constructed from the name of its Ascii equivalent, modified by ^ or #. %"0,%" is suppressed in front of the names for character-set 0.") - - (* ;; "If NONCHARIDENTITY, returns CODE if it isn't something that can be interpreted as a character code.") - - (DECLARE (USEDFREE CHARACTERSETNAMES CHARACTERNAMES)) - - (* ;; "") - - (if (LISTP CODE) - then (CONS (CHARCODE.ENCODE (CAR CODE) - OCTALCHARS NONCHARIDENTITY) - (AND (CDR CODE) - (CHARCODE.ENCODE (CDR CODE) - OCTALCHARS NONCHARIDENTITY))) - elseif (CL:CHARACTERP CODE) - then (CHARCODE.ENCODE (CL:CHAR-CODE CODE) - OCTALCHARS NONCHARIDENTITY) - elseif (NULL CODE) - then NIL - elseif (NOT (CHARCODEP CODE)) - then (CL:IF NONCHARIDENTITY - CODE - (\ILLEGAL.ARG CODE)) - elseif [CAR (find CN in CHARACTERNAMES suchthat (if (CHARCODEP (CADR CN)) - then (IEQP CODE (CADR CN)) - else (IEQP CODE (CHARCODE.DECODE (CADR CN] - else (LET ((CHARSET (LRSH CODE 8)) - (CHAR (LOGAND CODE 255)) - (ASCIICODE (LOGAND CODE 127)) - CSETNAME CHARNAME ASCIINAME) - (SETQ CSETNAME (if [CAR (find CN in CHARACTERSETNAMES - suchthat (STRING.EQUAL CHARSET (CADR CN] - else (OCTALSTRING CHARSET))) - [SETQ CHARNAME (if OCTALCHARS - then (OCTALSTRING CHAR) - else (CAR (for CC in CHARACTERNAMES when (EQ CHAR (CADR CC)) - smallest (NCHARS (CAR CC] - (CL:WHEN (STREQUAL CHARNAME "Tenexeol") (* ; - "Put (%"^_%" Tenexeol) in CHARACTERNAMES ?") - (SETQ CHARNAME "^_")) - - (* ;; "Didn't find the special character name, let's find a corresponding Asciiname to prefix with ^ and/or #") - - (CL:UNLESS CHARNAME - [SETQ ASCIINAME (if [CAR (for CC in CHARACTERNAMES - when (EQ ASCIICODE (CADR CC)) - smallest (NCHARS (CAR CC] - elseif (ILESSP ASCIICODE (CHARCODE SPACE)) - then [CONCAT "^" (CHARACTER (IPLUS ASCIICODE (CHARCODE @] - else - (* ;; "Not named and not a control") - - (CONCAT (CHARACTER ASCIICODE] - (SETQ CHARNAME (CL:IF (IGEQ CHAR 128) - (CONCAT "#" ASCIINAME) - ASCIINAME))) - (CL:IF (AND (ZEROP CHARSET) - (NOT OCTALCHARS)) - CHARNAME - (CONCAT CSETNAME "," CHARNAME))]) -) @@ -1328,13 +1250,6 @@ (GLOBALVARS TEDIT.READTABLE TEDIT.WORDBOUND.READTABLE) ) - -(ADDTOVAR CHARACTERNAMES (EMQUAD "357,55") - (ENQUAD "357,54") - (THINSPACE "357,57") - (FIGURESPACE "357,56") - (LEFT-DOUBLEQUOTE "0,252") - (RIGHT-DOUBLEQUOTE "0,272")) (DEFINEQ (\TEDIT.READTABLE @@ -1353,7 +1268,8 @@ RTBL]) (\TEDIT.WORDBOUND.READTABLE - [LAMBDA NIL (* ; "Edited 15-Mar-2025 12:00 by rmk") + [LAMBDA NIL (* ; "Edited 2-Aug-2025 22:06 by rmk") + (* ; "Edited 15-Mar-2025 12:00 by rmk") (* ; "Edited 13-Mar-2025 22:24 by rmk") (* ; "Edited 22-May-92 15:10 by jds") @@ -1387,6 +1303,8 @@ (for CH in '(EMQUAD ENQUAD THINSPACE FIGURESPACE) do (\SETSYNCODE READSA (CHARCODE.DECODE CH) TEXTTTC)) + (for CH from (CHARCODE "360,41") to (CHARCODE "360,46") do (\SETSYNCODE READSA CH TEXTTTC)) + (* ; "Ligatures") RTBL]) (TEDIT.GETSYNTAX @@ -1918,7 +1836,8 @@ (DEFINEQ (TEDIT.BUTTONS.BUILD - [LAMBDA (BUTTONSPEC TITLE NROWS KEYBINDINGS) (* ; "Edited 23-Mar-2025 10:31 by rmk") + [LAMBDA (BUTTONSPEC TITLE NROWS KEYBINDINGS) (* ; "Edited 6-Aug-2025 08:59 by rmk") + (* ; "Edited 23-Mar-2025 10:31 by rmk") (* ; "Edited 18-Mar-2025 15:47 by rmk") (* ; "Edited 15-Mar-2025 15:24 by rmk") (* ; "Edited 5-Nov-85 15:35 by lmm") @@ -1934,7 +1853,7 @@ (* ;; "The constructed menu will bksysbuf a character bound to action1 if the shift is not down, otherwise a character bound to action2. action2 is action1 if it is not specified. Buttons with no actions are skipped.") - [LET (ITEMS) + (LET (ITEMS) (SETQ ITEMS (for BUTTON CHARS in BUTTONSPEC eachtime (CL:WHEN (AND (CDR BUTTON) (NULL (CDDR BUTTON))) @@ -1977,7 +1896,11 @@ (LENGTH ITEMS)) 2)) (TIMES 2 WBorder)) - YCOORD _ 0])]) + YCOORD _ 0))) + [WINDOWPROP TEDIT.BUTTONS.WINDOW 'ICON (TEDIT.BUTTONBITMAP.FILL '(Tedit Buttons] + (WINDOWPROP TEDIT.BUTTONS.WINDOW 'ICONPOSITION (create POSITION + XCOORD _ 0 + YCOORD _ 0))))]) (TEDIT.BUTTONBITMAP.FILL [LAMBDA (X) (* ; "Edited 16-Mar-2025 21:12 by rmk") @@ -2016,30 +1939,29 @@ (RPAQQ TEDIT.BUTTONBITMAP #*(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 ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (4055 8434 (CHARCODE.ENCODE 4065 . 8432)) (8490 27412 (TEDIT.INSTALL.CHARBINDINGS 8500 - . 12391) (TEDIT.CLEAR.CHARBINDINGS 12393 . 15071) (TEDIT.GET.CHARACTION 15073 . 17819) ( -TEDIT.GET.CHARBINDING 17821 . 19960) (TEDIT.GET.ALL.CHARBINDINGS 19962 . 22278) ( -TEDIT.CHARBINDINGS.INVERT 22280 . 24010) (TEDIT.GET.ALL.CHARACTIONS 24012 . 26098) ( -TEDIT.CONFLICTING.CHARBINDINGS 26100 . 27410)) (27472 37527 (\TEDIT.KEY.CHARLOOKS 27482 . 28674) ( -\TEDIT.KEY.QUAD 28676 . 30769) (\TEDIT.DEFAULTSSEL 30771 . 31382) (\TEDIT.SETDEFAULT.FROM.SEL 31384 . -32061) (\TEDIT.KEY.SIZE 32063 . 33259) (\TEDIT.SUBSCRIPTSEL 33261 . 33464) (\TEDIT.SUPERSCRIPTSEL -33466 . 33670) (\TEDIT.KEY.TRANSFORM 33672 . 35669) (\TEDIT.KEY.OPENLINE 35671 . 36125) ( -\TEDIT.KEY.FAMILYN 36127 . 37525)) (37528 37817 (CAP-CASECODE 37538 . 37815)) (37851 41283 ( -\TEDIT.SHOWCARETLOOKS 37861 . 40376) (\TEDIT.DESCRIBEFONT 40378 . 41281)) (41314 56287 ( -\TEDIT.ONECHAR.BACKWARD 41324 . 42471) (\TEDIT.ONECHAR.FORWARD 42473 . 43709) (\TEDIT.ONELINE.UP 43711 - . 46672) (\TEDIT.ONELINE.DOWN 46674 . 48331) (\TEDIT.ONELINE.MOVE 48333 . 50620) ( -\TEDIT.ONEWORD.BACKWARD 50622 . 51810) (\TEDIT.ONEWORD.FORWARD 51812 . 52999) (\TEDIT.LINE.BEGIN 53001 - . 54080) (\TEDIT.LINE.END 54082 . 55319) (\TEDIT.DOCUMENT.BEGIN 55321 . 55680) (\TEDIT.DOCUMENT.END -55682 . 56285)) (56288 58330 (\TEDIT.LINEDELETE.FORWARD 56298 . 57297) (\TEDIT.LINEDELETE.BACKWARD -57299 . 58328)) (58331 60859 (\TEDIT.KEY.NEST 58341 . 60857)) (60860 62142 (\TEDIT.KEY.WRAP 60870 . -62140)) (62233 70281 (\TEDIT.KEY.FIND 62243 . 67421) (\TEDIT.KEY.FIND.SEARCHSTRING 67423 . 68563) ( -\TEDIT.GET.TARGET.STRING 68565 . 70279)) (70312 72944 (\TEDIT.KEY.SUBSTITUTE 70322 . 70543) ( -\TEDIT.MANPAGE 70545 . 71792) (\TEDIT.CALL.ED 71794 . 72624) (\TEDIT.SELECT.ALL 72626 . 72942)) (72971 - 78661 (\TEDIT.CLIPBOARD 72981 . 74736) (\TEDIT.COPYTOCLIPBOARD 74738 . 75518) ( -\TEDIT.EXTRACTTOCLIPBOARD 75520 . 75715) (\TEDIT.WRITE.SEL 75717 . 78659)) (79118 90810 ( -\TEDIT.READTABLE 79128 . 80064) (\TEDIT.WORDBOUND.READTABLE 80066 . 82695) (TEDIT.GETSYNTAX 82697 . -84126) (TEDIT.SETSYNTAX 84128 . 85333) (TEDIT.GETFUNCTION 85335 . 86600) (TEDIT.SETFUNCTION 86602 . -88588) (TEDIT.WORDGET 88590 . 88851) (TEDIT.WORDSET 88853 . 89484) (TEDIT.ATOMBOUND.READTABLE 89486 . -90808)) (102639 109178 (TEDIT.BUTTONS.BUILD 102649 . 107446) (TEDIT.BUTTONBITMAP.FILL 107448 . 109176) -)))) + (FILEMAP (NIL (3941 22863 (TEDIT.INSTALL.CHARBINDINGS 3951 . 7842) (TEDIT.CLEAR.CHARBINDINGS 7844 . +10522) (TEDIT.GET.CHARACTION 10524 . 13270) (TEDIT.GET.CHARBINDING 13272 . 15411) ( +TEDIT.GET.ALL.CHARBINDINGS 15413 . 17729) (TEDIT.CHARBINDINGS.INVERT 17731 . 19461) ( +TEDIT.GET.ALL.CHARACTIONS 19463 . 21549) (TEDIT.CONFLICTING.CHARBINDINGS 21551 . 22861)) (22923 32978 +(\TEDIT.KEY.CHARLOOKS 22933 . 24125) (\TEDIT.KEY.QUAD 24127 . 26220) (\TEDIT.DEFAULTSSEL 26222 . 26833 +) (\TEDIT.SETDEFAULT.FROM.SEL 26835 . 27512) (\TEDIT.KEY.SIZE 27514 . 28710) (\TEDIT.SUBSCRIPTSEL +28712 . 28915) (\TEDIT.SUPERSCRIPTSEL 28917 . 29121) (\TEDIT.KEY.TRANSFORM 29123 . 31120) ( +\TEDIT.KEY.OPENLINE 31122 . 31576) (\TEDIT.KEY.FAMILYN 31578 . 32976)) (32979 33268 (CAP-CASECODE +32989 . 33266)) (33302 36734 (\TEDIT.SHOWCARETLOOKS 33312 . 35827) (\TEDIT.DESCRIBEFONT 35829 . 36732) +) (36765 51738 (\TEDIT.ONECHAR.BACKWARD 36775 . 37922) (\TEDIT.ONECHAR.FORWARD 37924 . 39160) ( +\TEDIT.ONELINE.UP 39162 . 42123) (\TEDIT.ONELINE.DOWN 42125 . 43782) (\TEDIT.ONELINE.MOVE 43784 . +46071) (\TEDIT.ONEWORD.BACKWARD 46073 . 47261) (\TEDIT.ONEWORD.FORWARD 47263 . 48450) ( +\TEDIT.LINE.BEGIN 48452 . 49531) (\TEDIT.LINE.END 49533 . 50770) (\TEDIT.DOCUMENT.BEGIN 50772 . 51131) + (\TEDIT.DOCUMENT.END 51133 . 51736)) (51739 53781 (\TEDIT.LINEDELETE.FORWARD 51749 . 52748) ( +\TEDIT.LINEDELETE.BACKWARD 52750 . 53779)) (53782 56310 (\TEDIT.KEY.NEST 53792 . 56308)) (56311 57593 +(\TEDIT.KEY.WRAP 56321 . 57591)) (57684 65732 (\TEDIT.KEY.FIND 57694 . 62872) ( +\TEDIT.KEY.FIND.SEARCHSTRING 62874 . 64014) (\TEDIT.GET.TARGET.STRING 64016 . 65730)) (65763 68395 ( +\TEDIT.KEY.SUBSTITUTE 65773 . 65994) (\TEDIT.MANPAGE 65996 . 67243) (\TEDIT.CALL.ED 67245 . 68075) ( +\TEDIT.SELECT.ALL 68077 . 68393)) (68422 74112 (\TEDIT.CLIPBOARD 68432 . 70187) ( +\TEDIT.COPYTOCLIPBOARD 70189 . 70969) (\TEDIT.EXTRACTTOCLIPBOARD 70971 . 71166) (\TEDIT.WRITE.SEL +71168 . 74110)) (74278 86280 (\TEDIT.READTABLE 74288 . 75224) (\TEDIT.WORDBOUND.READTABLE 75226 . +78165) (TEDIT.GETSYNTAX 78167 . 79596) (TEDIT.SETSYNTAX 79598 . 80803) (TEDIT.GETFUNCTION 80805 . +82070) (TEDIT.SETFUNCTION 82072 . 84058) (TEDIT.WORDGET 84060 . 84321) (TEDIT.WORDSET 84323 . 84954) ( +TEDIT.ATOMBOUND.READTABLE 84956 . 86278)) (98109 105097 (TEDIT.BUTTONS.BUILD 98119 . 103365) ( +TEDIT.BUTTONBITMAP.FILL 103367 . 105095))))) STOP diff --git a/library/tedit/TEDIT-FNKEYS.LCOM b/library/tedit/TEDIT-FNKEYS.LCOM index 307e1118c38b6718a12f3bebe91abf07a71627a7..3682e535d8728aef6011cf8739901dcf672b7566 100644 GIT binary patch delta 739 zcmZut&ubGw6wZ(4V3g3>ODQ=#R}&H>ac4H0G)phr?1rw{?kw3&)<{L0Ce07yM%qLW zkt)6EMY{*Vli)!F!N^|pB6!h@H~U9;u~Y={rn9N2!4AW`dEcAw``(*JuLC=yzyphg zTuL0aQkca&AYNcufkzA^nDzd(>z!V+0eu@7xMi)#k}B73FFt$`-NyM$62i;`l@$;t zU`nlTHve$f+iP~KxfK(@?ho1>y9FJpR;;Kh{7X)!(+o7$2Gs2+RSq%9aH6QFa-l4X zrhHnW9Ua;BM4MsSCLlJ8vdFpVk1kimvH_+nDQ2pumE@XHAS*@^1idU*6;d%$64j>4 z*}oscE(m;{ZU({=(m|Z(+%KUgdW^?VAd(C^@CXXaV%fW~V2Vqs2WIjV1owV*+aDP6 z?uiSF0o^``+Xts+0*KVfm2d9Z5~-^*!3^2x{rvijG{^>Nf4FxTkNfDFCH1R&m+Paw z^V7Zrod#A7*({2tQPalOu6i*Ynd?o5d{Y)2^B9kR$K6-{nzP%E`=2{++IP=1T3)g5 z9ph(XbqmI5w=q9X9ig)m`9vb|x1;ZE>c?@&c{!Z30O#qXbUx2AEy-hNyl^gNIATy-Z?>z1CQ$@`HXFn8mfAo4G_x7%g5YDbCP!|O!3L#3PXtbrpmTI%V{%f#yYp>%?Hv3%fx@k~}No&)(b(1O$ z5>-{1wnE~-0ct7)C)8v4ksH?tE_Ed?NE}ds1DsJM1X4+b1V@0(y0m&WgOc^N4CYu~H1Eus3vO(moDxBjL|K(vC$a6k;{qeZ zrcKXXa6IEs1k%NldC($dH=4tWSWw$4C@X0>o|YuKOaHH6G8GAC3q~nRa%RkQ=nK-h zWH4L=si{FW3uuV`I{}89wJgV&GZBpg&FeeJbWN}Cs6LNr6+vM${v8AO)A<`abiVJ5hrXfM$NH1>_2ZF&_D_2C>UHkj?bN@v|9w5AZ*NjNH2=cT z5LXCvlgEd-Zs6i|uCD*8H~zh&H=1{bl&9wR_+g!fpPpg)uNv!xS!T5zZh_~R`GIcn z+&lEa++R*?T(P=e)Z3pH_(Sch+}AT03DSxPe_3yL3VicW`x;g^o*|(?cY+KLbBom# z%3!qheav2Lt6XKIH%mr%ZetzDh%a9m>ygnbWR#5k^${7XjP}S#Ww=K|d?nPr;at8x zaFHqxk?}xx7n#7;7aCySTQ4w8yP^M#P2&1lrFMp^O!jOt=~tNSR}gvxt`HysRuC%C zBa@Yh9vSB=-X1ZTjW@+^X;+kxaa5q(ul~>`@;O9{ zLv8$yLvI&p<2Q#BPd{={XIAFdKIz$|fl}pXai);nI9EaFwcOI@3oez<^veZm$xgd5 zfLO;EzuArx9s|LyGIV2}1|r~54j4x+r2vN#MX&#(9S5JZaV%4@4Lb(vk51Hq)1Z?6! zGh9ho5=1SYy`LHvkS5=jqDhB>`n8!qD46_J+Q_!gTl$#=+mJ73zy95Om36hV&y^?B Fe*gi>n}GlT delta 598 zcmZut&ubGw6z(dBiLq+!MS{&^5sOHc-PzrlY=p`tJ2BhrW|rCMk4P!BCP*-i5+d4D z(Uagsng2j~5PGrf$&&|9UIoFUUOXsh{sed1Vilajdyn^h?|tu^pX;C2U#!d`v%L6l zSVlUsL3gS;sp|I2dwAz=e_Y<`bqBreg+YIFv@zOV5Y+R%m~Y3;iLejin%fzloZrsnFdR_qzXEU?VlTsRWBD~tv|7m2@42b;?JIbYo9r>@4wc;G)&A6zcMP&JxyY`3DD0&npR~`E6y>!X z7Ood74y+yc&_b8DG)|ZO*k^4Z*p{W~%X7p;u*Q}|z3Flw$OKMG6vYV zlEJHgVB0c}ud$Jpp~Yj^a!kk$UGY891glb!yJx@LBo;(2cLT;+F%Sbmi}F+nrP6*J z1#YL&PPquY)O($Rm5DNueo8=HkMiW>^yGwcO1{6)mN0YsJb}!gN8>v8Bf)s`Xa*Nf W8jdaB%zZw{&r7RWPQI0%o%;>eX{OEq diff --git a/library/tedit/TEDIT-HISTORY b/library/tedit/TEDIT-HISTORY index 203f5572..cb7da339 100644 --- a/library/tedit/TEDIT-HISTORY +++ b/library/tedit/TEDIT-HISTORY @@ -1,13 +1,14 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "21-Apr-2025 22:42:33" {WMEDLEY}tedit>TEDIT-HISTORY.;250 58952 +(FILECREATED " 1-Aug-2025 14:58:56"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-HISTORY.;252 59126 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.UNDO.DELETE \TEDIT.REDO.INSERT \TEDIT.REDO.REPLACE \TEDIT.UNDO.REPLACE - \TEDIT.UNDO.CHARLOOKS \TEDIT.UNDO.PARALOOKS TEDIT.UNDO) + :CHANGES-TO (FNS \TEDIT.UNDO.CHARLOOKS) - :PREVIOUS-DATE "20-Apr-2025 23:30:57" {WMEDLEY}tedit>TEDIT-HISTORY.;247) + :PREVIOUS-DATE "28-Jul-2025 23:47:41" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-HISTORY.;251) (PRETTYCOMPRINT TEDIT-HISTORYCOMS) @@ -679,7 +680,9 @@ THACTION ACTION]) (\TEDIT.UNDO.CHARLOOKS - [LAMBDA (TSTREAM EVENT) (* ; "Edited 21-Apr-2025 20:31 by rmk") + [LAMBDA (TSTREAM EVENT) (* ; "Edited 1-Aug-2025 14:58 by rmk") + (* ; "Edited 28-Jul-2025 23:47 by rmk") + (* ; "Edited 21-Apr-2025 20:31 by rmk") (* ; "Edited 20-Apr-2025 13:39 by rmk") (* ; "Edited 6-Apr-2025 14:44 by rmk") (* ; "Edited 25-Nov-2024 21:59 by rmk") @@ -711,11 +714,11 @@ (SETQ OLDLOOKS (CDR U)) (CL:WHEN (AND OLDLOOKS (EQ PC CARETPC)) (FSETTOBJ TEXTOBJ CARETLOOKS (\TEDIT.CARETLOOKS.VERIFY TEXTOBJ OLDLOOKS))) - [push NEWUNDOLIST (CONS NEXTCHNO (CL:IF OLDLOOKS (PLOOKS PC] + [push NEWUNDOLIST (CONS NEXTCHNO (CL:IF OLDLOOKS (PCHARLOOKS PC] (* ;; "U starts at the first piece. We want CHNO to be the start of the next piece, i.e. initialize to (CAR(CDR ...)) But then, what about the last piece. Maybe we have to do our own popping, or look at UTAIL. Or end in (NEXTPC-CHNO . NIL ). Or text for IGEQ THCHLIM") - (for P inpieces PC do (FSETPC P PLOOKS OLDLOOKS) + (for P inpieces PC do (FSETPC P PCHARLOOKS OLDLOOKS) (add CHNO (PLEN P)) (CL:WHEN (IEQP CHNO NEXTCHNO) (* ; "First piece of the next run") @@ -917,15 +920,15 @@ (\TEDIT.THELP 'Redo-composite]) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (5074 6095 (\TEDIT.HISTORYEVENT.DEFPRINT 5084 . 6093)) (7185 18439 (\TEDIT.HISTORYADD -7195 . 12457) (\TEDIT.HISTORYADD.COMPOSITE 12459 . 13491) (\TEDIT.CUMULATE.EVENTS 13493 . 15087) ( -\TEDIT.COMPOSITE.EVENT 15089 . 15825) (\TEDIT.HISTORY.PROP 15827 . 17190) (\TEDIT.HISTORY.EVENT 17192 - . 18263) (\TEDIT.POPEVENT 18265 . 18437)) (18492 37479 (TEDIT.UNDO 18502 . 23378) (\TEDIT.UNDO1 23380 - . 27718) (TEDIT.REDO 27720 . 34633) (\TEDIT.UNDO.UNDO 34635 . 37477)) (37480 55955 ( -\TEDIT.UNDO.INSERT 37490 . 38615) (\TEDIT.UNDO.DELETE 38617 . 39629) (\TEDIT.UNDO.MOVE 39631 . 41284) -(\TEDIT.UNDO.REPLACE 41286 . 42796) (\TEDIT.UNDO.CHARLOOKS 42798 . 48035) (\TEDIT.UNDO.PARALOOKS 48037 - . 51866) (\TEDIT.UNDO.PAGELOOKS 51868 . 52426) (\TEDIT.UNDO.COMPOSITE 52428 . 54028) ( -\TEDIT.UNDO.REPLACECODE 54030 . 54364) (\TEDIT.UNDO.WRAP 54366 . 55295) (\TEDIT.UNDO.SEL 55297 . 55953 -)) (55956 58929 (\TEDIT.REDO.INSERT 55966 . 56928) (\TEDIT.REDO.REPLACE 56930 . 58536) ( -\TEDIT.REDO.COMPOSITE 58538 . 58927))))) + (FILEMAP (NIL (5022 6043 (\TEDIT.HISTORYEVENT.DEFPRINT 5032 . 6041)) (7133 18387 (\TEDIT.HISTORYADD +7143 . 12405) (\TEDIT.HISTORYADD.COMPOSITE 12407 . 13439) (\TEDIT.CUMULATE.EVENTS 13441 . 15035) ( +\TEDIT.COMPOSITE.EVENT 15037 . 15773) (\TEDIT.HISTORY.PROP 15775 . 17138) (\TEDIT.HISTORY.EVENT 17140 + . 18211) (\TEDIT.POPEVENT 18213 . 18385)) (18440 37427 (TEDIT.UNDO 18450 . 23326) (\TEDIT.UNDO1 23328 + . 27666) (TEDIT.REDO 27668 . 34581) (\TEDIT.UNDO.UNDO 34583 . 37425)) (37428 56129 ( +\TEDIT.UNDO.INSERT 37438 . 38563) (\TEDIT.UNDO.DELETE 38565 . 39577) (\TEDIT.UNDO.MOVE 39579 . 41232) +(\TEDIT.UNDO.REPLACE 41234 . 42744) (\TEDIT.UNDO.CHARLOOKS 42746 . 48209) (\TEDIT.UNDO.PARALOOKS 48211 + . 52040) (\TEDIT.UNDO.PAGELOOKS 52042 . 52600) (\TEDIT.UNDO.COMPOSITE 52602 . 54202) ( +\TEDIT.UNDO.REPLACECODE 54204 . 54538) (\TEDIT.UNDO.WRAP 54540 . 55469) (\TEDIT.UNDO.SEL 55471 . 56127 +)) (56130 59103 (\TEDIT.REDO.INSERT 56140 . 57102) (\TEDIT.REDO.REPLACE 57104 . 58710) ( +\TEDIT.REDO.COMPOSITE 58712 . 59101))))) STOP diff --git a/library/tedit/TEDIT-HISTORY.LCOM b/library/tedit/TEDIT-HISTORY.LCOM index 56785c73316f017f8162f58e13d7fb40a6fa848f..f01170091d1b6ae93fcc34fa59a28281dd4842e8 100644 GIT binary patch delta 409 zcmcat{;YgLxQK$Gu48Gsu91O}se+-2m8pf5soBJAv-OVBTWS^B_m5+uhJZdQAUPVrlwW~mP!gq zMXAa8xdoXysVNGn6$M4bs#XdyU<33*{apO@oIMKp zsbCclNwdsQlWX!jQ<=>ZnEWgO3@CTJ delta 337 zcmaD>ey@B&xQLOlu2*TEu91O}se*x}m4UgHfyKmZv-){z3;vW>LXKiS#si1^nh=rB0xs{2Tk^)yra(-?>j(UnhW}bqQTd0qZ z0w_}dHT3I2e~=|?FOnc)O9Q?$3TvY%7 diff --git a/library/tedit/TEDIT-MENU b/library/tedit/TEDIT-MENU index 3fb519fe..b2288656 100644 --- a/library/tedit/TEDIT-MENU +++ b/library/tedit/TEDIT-MENU @@ -1,12 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 5-Jun-2025 19:38:52" {WMEDLEY}tedit>TEDIT-MENU.;487 179201 +(FILECREATED "28-Jul-2025 23:26:01"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-MENU.;491 179623 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.PAGEMENU.CREATE \TEDIT.PAGEREGION.UNPARSE) + :CHANGES-TO (FNS \TEDIT.SHOW.PARALOOKS \TEDIT.SHOW.CHARLOOKS) - :PREVIOUS-DATE "29-May-2025 09:31:55" {WMEDLEY}tedit>TEDIT-MENU.;486) + :PREVIOUS-DATE "13-Jul-2025 22:35:15" {WMEDLEY}TEDIT>TEDIT-MENU.;488) (PRETTYCOMPRINT TEDIT-MENUCOMS) @@ -1707,7 +1708,8 @@ (DEFINEQ (\TEDIT.PARAMENU.CREATE - [LAMBDA NIL (* ; "Edited 7-Jan-2025 15:48 by rmk") + [LAMBDA NIL (* ; "Edited 13-Jul-2025 22:35 by rmk") + (* ; "Edited 7-Jan-2025 15:48 by rmk") (* ; "Edited 8-Nov-2024 08:35 by rmk") (* ; "Edited 20-Oct-2024 23:46 by rmk") (* ; "Edited 6-Oct-2024 15:35 by rmk") @@ -1731,7 +1733,8 @@ (FUNCTION \TEDIT.APPLY.PARALOOKS) (FUNCTION \TEDIT.SHOW.PARALOOKS) (FUNCTION \TEDIT.MENU.NEUTRALIZE) - (FUNCTION \TEDIT.TABTYPE.SET)) + (FUNCTION \TEDIT.TABTYPE.SET) + (FUNCTION PRINTERTYPE)) (\TEDIT.MENU.CREATE `((ACTION (LABEL APPLY) (IGNORE T) (SELECTFN \TEDIT.APPLY.PARALOOKS)) @@ -1788,7 +1791,9 @@ (LABEL "Keep heading")) (TEXT (STRING " Display mode: ") (FONT (HELVETICA 8))) - (3STATE (LABEL "Hardcopy")) + (3STATE (LABEL "Hardcopy")) (* (FIELD (IDENTIFIER PRINTFILETYPE) + (FIELDTYPE SYMBOL) (INITSTATE + (\, (PRINTERTYPE))))) 4 EOL (TEXT (STRING "Tab Type: ") (FONT (HELVETICA 8))) (NWAY (IDENTIFIER TABTYPE) @@ -1840,7 +1845,8 @@ (TEDIT.BACKTOMAIN MENUSTREAM]) (\TEDIT.SHOW.PARALOOKS - [LAMBDA (OBJ MENUSEL MENUWINDOW MENUSTREAM) (* ; "Edited 20-Apr-2025 23:40 by rmk") + [LAMBDA (OBJ MENUSEL MENUWINDOW MENUSTREAM) (* ; "Edited 28-Jul-2025 20:52 by rmk") + (* ; "Edited 20-Apr-2025 23:40 by rmk") (* ; "Edited 20-Oct-2024 11:11 by rmk") (* ; "Edited 29-Sep-2024 14:59 by rmk") (* ; "Edited 25-Aug-2024 09:15 by rmk") @@ -1866,17 +1872,9 @@ TEXTOBJ)) (MAINCH# (GETSEL (TEXTSEL MAINTEXTOBJ) CH#))) - (CL:WHEN (ILEQ MAINCH# (TEXTLEN MAINTEXTOBJ)) - (RESETLST - (TEDIT.DEFER.UPDATES MENUSTREAM) - (\TEDIT.PARAMENU.FILLIN MENUSTREAM (PPARALOOKS (\TEDIT.CHTOPC MAINCH# MAINTEXTOBJ)) - )) - (FSETSEL MENUSEL ONFLG T) - (\TEDIT.UPDATE.SEL (TEXTSEL MENUTEXTOBJ) - 1 0 'LEFT) - (\TEDIT.FIXSEL (TEXTSEL MENUTEXTOBJ) - MENUSTREAM) - (TEDIT.BACKTOMAIN MENUSTREAM))]) + (RESETLST (* ; "For the defer") + (TEDIT.DEFER.UPDATES MENUSTREAM) + (\TEDIT.PARAMENU.FILLIN MENUSTREAM (PPARALOOKS (\TEDIT.CHTOPC MAINCH# MAINTEXTOBJ))))]) (\TEDIT.PARAMENU.FILLIN [LAMBDA (MENUSTREAM PARALOOKS) (* ; "Edited 19-Feb-2025 13:27 by rmk") @@ -2210,7 +2208,8 @@ (TEDIT.OBJECT.CHANGED MENUSTREAM OBJ PC)))) finally (RETURN PC)))]) (\TEDIT.SHOW.CHARLOOKS - [LAMBDA (OBJ MENUSEL MENUWINDOW MENUSTREAM) (* ; "Edited 20-Apr-2025 23:40 by rmk") + [LAMBDA (OBJ MENUSEL MENUWINDOW MENUSTREAM) (* ; "Edited 28-Jul-2025 22:59 by rmk") + (* ; "Edited 20-Apr-2025 23:40 by rmk") (* ; "Edited 31-Dec-2024 21:25 by rmk") (* ; "Edited 2-Nov-2024 20:16 by rmk") (* ; "Edited 20-Oct-2024 09:55 by rmk") @@ -2239,17 +2238,18 @@ TEXTOBJ)) (MAINCH# (GETSEL (TEXTSEL MAINTEXTOBJ) CH#))) - (TEDIT.PROMPTCLEAR MENUSTREAM) - (CL:WHEN (ILEQ MAINCH# (TEXTLEN MAINTEXTOBJ)) (* ; + (TEDIT.PROMPTCLEAR MENUSTREAM) (* ;  "Fill in the menu objects and fields with that info") - (RESETLST - (TEDIT.DEFER.UPDATES MENUSTREAM) - (\TEDIT.CHARMENU.FILLIN (\TEDIT.FIRSTPIECE MENUTEXTOBJ) - (PLOOKS (\TEDIT.CHTOPC MAINCH# MAINTEXTOBJ)) - MENUSTREAM)) - (FSETSEL MENUSEL ONFLG T) - (\TEDIT.UPDATE.SEL MENUSEL 1 0 'LEFT) - (\TEDIT.FIXSEL MENUSEL MENUSTREAM)) + (RESETLST + (TEDIT.DEFER.UPDATES MENUSTREAM) + (\TEDIT.CHARMENU.FILLIN (\TEDIT.FIRSTPIECE MENUTEXTOBJ) + (if (ILEQ MAINCH# (TEXTLEN MAINTEXTOBJ)) + then (PCHARLOOKS (\TEDIT.CHTOPC MAINCH# MAINTEXTOBJ)) + else (FGETTOBJ TEXTOBJ DEFAULTCHARLOOKS)) + MENUSTREAM)) + (FSETSEL MENUSEL ONFLG T) + (\TEDIT.UPDATE.SEL MENUSEL 1 0 'LEFT) + (\TEDIT.FIXSEL MENUSEL MENUSTREAM) (TEDIT.BACKTOMAIN MENUSTREAM]) (\TEDIT.APPLY.CHARLOOKS @@ -2912,32 +2912,32 @@ (ADDTOVAR LAMA ) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (6051 17689 (TEDIT.ADD.MENUITEM 6061 . 8178) (TEDIT.DEFAULT.MENUFN 8180 . 14901) ( -TEDIT.REMOVE.MENUITEM 14903 . 15900) (\TEDIT.CREATEMENU 15902 . 16467) (\TEDIT.MENU.WHENHELDFN 16469 - . 17374) (\TEDIT.MENU.WHENSELECTEDFN 17376 . 17687)) (18503 65146 (DRAWMARGINSCALE 18513 . 21972) ( -MARGINBAR 21974 . 29099) (MARGINBAR.CREATE 29101 . 32520) (MB.MARGINBAR.BUTTONEVENTINFN 32522 . 40324) - (MB.MARGINBAR.SELFN.TABS 40326 . 45566) (MB.MARGINBAR.SELFN.TABS.KIND 45568 . 46503) ( -MARGINBAR.GETSTATEFN 46505 . 50492) (MARGINBAR.SETSTATEFN 50494 . 50704) (MARGINBAR.NEUTRALIZE 50706 - . 51119) (MARGINBAR.LOOKS 51121 . 54227) (MB.MARGINBAR.SIZEFN 54229 . 54832) (MB.MARGINBAR.DISPLAYFN -54834 . 57895) (MDESCALE 57897 . 58437) (MSCALE 58439 . 58769) (MB.MARGINBAR.SHOWTAB 58771 . 61094) ( -MB.MARGINBAR.TABTRACK 61096 . 62481) (MARGINBAR.INIT 62483 . 63876) (\TEDIT.PARALOOKS.TO.MARBAR 63878 - . 65144)) (65971 73253 (TEDIT.MENUSTREAM 65981 . 66981) (TEDITMENUP 66983 . 67952) (\TEDIT.MENU.START - 67954 . 72301) (\TEDIT.MENU.OPEN? 72303 . 72677) (\TEDIT.MENU.BUTTONEVENTFN 72679 . 73251)) (73572 -81494 (\TEDIT.MENU.CREATE 73582 . 75393) (\TEDIT.MENU.PARSE 75395 . 79084) (\TEDIT.MENU.NEUTRALIZE -79086 . 81157) (\TEDITMENU.RECORD.UNFORMATTED 81159 . 81492)) (81560 101341 ( -\TEDIT.EXPANDEDMENU.CREATE 81570 . 87037) (\TEDIT.EXPANDEDMENU.START 87039 . 88663) ( -\TEDIT.EXPANDEDMENU.FN 88665 . 91920) (\TEDIT.EXPANDEDMENU.ACTIONFN 91922 . 101339)) (101403 117261 ( -\TEDIT.PARAMENU.CREATE 101413 . 107434) (\TEDIT.PARAMENU.START 107436 . 108561) ( -\TEDIT.APPLY.PARALOOKS 108563 . 109615) (\TEDIT.SHOW.PARALOOKS 109617 . 112508) ( -\TEDIT.PARAMENU.FILLIN 112510 . 117259)) (117466 144121 (\TEDIT.CHARMENU.CREATE 117476 . 120080) ( -\TEDIT.CHARMENU.START 120082 . 121372) (\TEDIT.CHARMENU.SPEC 121374 . 126057) (\TEDIT.CHARMENU.PARSE -126059 . 129227) (\TEDIT.CHARMENU.FILLIN 129229 . 133859) (\TEDIT.SHOW.CHARLOOKS 133861 . 137219) ( -\TEDIT.APPLY.CHARLOOKS 137221 . 138382) (\TEDIT.OFFSETTYPE.STATEFN 138384 . 140347) ( -\TEDIT.OTHER.STATECHANGEFN 140349 . 141994) (\TEDIT.OTHER.SELECTFN 141996 . 144119)) (144183 173241 ( -\TEDIT.PAGEMENU.CREATE 144193 . 152705) (\TEDIT.PAGEMENU.START 152707 . 153058) (\TEDIT.SHOW.PAGELOOKS - 153060 . 154946) (\TEDIT.PAGEMENU.FILLIN 154948 . 156498) (\TEDIT.PAGEREGION.UNPARSE 156500 . 165899) - (\TEDIT.APPLY.PAGELOOKS 165901 . 167828) (\TEDIT.CHANGE.PAGELOOKS 167830 . 172397) ( -\TEDIT.PAGEMENU.CHARLOOKS.STATEFN 172399 . 173239)) (173242 179045 (\TEDIT.PAGEMENU.CREATE.HEADINGS -173252 . 176064) (\TEDIT.PAGEMENU.HEADINGS.SETSTATEFN 176066 . 177491) ( -\TEDIT.PAGEMENU.HEADINGS.STATEFN 177493 . 179043))))) + (FILEMAP (NIL (6087 17725 (TEDIT.ADD.MENUITEM 6097 . 8214) (TEDIT.DEFAULT.MENUFN 8216 . 14937) ( +TEDIT.REMOVE.MENUITEM 14939 . 15936) (\TEDIT.CREATEMENU 15938 . 16503) (\TEDIT.MENU.WHENHELDFN 16505 + . 17410) (\TEDIT.MENU.WHENSELECTEDFN 17412 . 17723)) (18539 65182 (DRAWMARGINSCALE 18549 . 22008) ( +MARGINBAR 22010 . 29135) (MARGINBAR.CREATE 29137 . 32556) (MB.MARGINBAR.BUTTONEVENTINFN 32558 . 40360) + (MB.MARGINBAR.SELFN.TABS 40362 . 45602) (MB.MARGINBAR.SELFN.TABS.KIND 45604 . 46539) ( +MARGINBAR.GETSTATEFN 46541 . 50528) (MARGINBAR.SETSTATEFN 50530 . 50740) (MARGINBAR.NEUTRALIZE 50742 + . 51155) (MARGINBAR.LOOKS 51157 . 54263) (MB.MARGINBAR.SIZEFN 54265 . 54868) (MB.MARGINBAR.DISPLAYFN +54870 . 57931) (MDESCALE 57933 . 58473) (MSCALE 58475 . 58805) (MB.MARGINBAR.SHOWTAB 58807 . 61130) ( +MB.MARGINBAR.TABTRACK 61132 . 62517) (MARGINBAR.INIT 62519 . 63912) (\TEDIT.PARALOOKS.TO.MARBAR 63914 + . 65180)) (66007 73289 (TEDIT.MENUSTREAM 66017 . 67017) (TEDITMENUP 67019 . 67988) (\TEDIT.MENU.START + 67990 . 72337) (\TEDIT.MENU.OPEN? 72339 . 72713) (\TEDIT.MENU.BUTTONEVENTFN 72715 . 73287)) (73608 +81530 (\TEDIT.MENU.CREATE 73618 . 75429) (\TEDIT.MENU.PARSE 75431 . 79120) (\TEDIT.MENU.NEUTRALIZE +79122 . 81193) (\TEDITMENU.RECORD.UNFORMATTED 81195 . 81528)) (81596 101377 ( +\TEDIT.EXPANDEDMENU.CREATE 81606 . 87073) (\TEDIT.EXPANDEDMENU.START 87075 . 88699) ( +\TEDIT.EXPANDEDMENU.FN 88701 . 91956) (\TEDIT.EXPANDEDMENU.ACTIONFN 91958 . 101375)) (101439 117496 ( +\TEDIT.PARAMENU.CREATE 101449 . 107843) (\TEDIT.PARAMENU.START 107845 . 108970) ( +\TEDIT.APPLY.PARALOOKS 108972 . 110024) (\TEDIT.SHOW.PARALOOKS 110026 . 112743) ( +\TEDIT.PARAMENU.FILLIN 112745 . 117494)) (117701 144543 (\TEDIT.CHARMENU.CREATE 117711 . 120315) ( +\TEDIT.CHARMENU.START 120317 . 121607) (\TEDIT.CHARMENU.SPEC 121609 . 126292) (\TEDIT.CHARMENU.PARSE +126294 . 129462) (\TEDIT.CHARMENU.FILLIN 129464 . 134094) (\TEDIT.SHOW.CHARLOOKS 134096 . 137641) ( +\TEDIT.APPLY.CHARLOOKS 137643 . 138804) (\TEDIT.OFFSETTYPE.STATEFN 138806 . 140769) ( +\TEDIT.OTHER.STATECHANGEFN 140771 . 142416) (\TEDIT.OTHER.SELECTFN 142418 . 144541)) (144605 173663 ( +\TEDIT.PAGEMENU.CREATE 144615 . 153127) (\TEDIT.PAGEMENU.START 153129 . 153480) (\TEDIT.SHOW.PAGELOOKS + 153482 . 155368) (\TEDIT.PAGEMENU.FILLIN 155370 . 156920) (\TEDIT.PAGEREGION.UNPARSE 156922 . 166321) + (\TEDIT.APPLY.PAGELOOKS 166323 . 168250) (\TEDIT.CHANGE.PAGELOOKS 168252 . 172819) ( +\TEDIT.PAGEMENU.CHARLOOKS.STATEFN 172821 . 173661)) (173664 179467 (\TEDIT.PAGEMENU.CREATE.HEADINGS +173674 . 176486) (\TEDIT.PAGEMENU.HEADINGS.SETSTATEFN 176488 . 177913) ( +\TEDIT.PAGEMENU.HEADINGS.STATEFN 177915 . 179465))))) STOP diff --git a/library/tedit/TEDIT-MENU.LCOM b/library/tedit/TEDIT-MENU.LCOM index 0a93107fe52ebcb23ac40eadd3f80cb598f573cb..d7a85ffb1281e030cec83ad3b156b49c87d0771a 100644 GIT binary patch delta 1134 zcmah{&2Jl35ck?i+iZ$NM4L!%QwF1|Hj=md_U(6!MN>bMZ8x^#UAKwUi_^HR8^>QM zBo#6ha3Gf!qmhtWaX=JMr{pRO-O+FPR={q%TzXN-OcQJ zwcV&Tvu^8RwUOPZtu<=bsibAMTHW<}^KyEGWHBuqIcbp;hzZ4bs)k}Ks!h!VtafYv z7O8EwyPL;tygNLG-wns{@h$O2y~#uK71xEQ<0VN-z*_Yh?`)5}s*y;E$-LvT(`9zb zXE}apPlC@UG_@zA35x(REM1|vB%I*APKW(IxH(Zufn6%Ib5611rE|PCBnbTrfu z3*PelBFnjKrI%^cSG(2j^(=4H@kcVf$O;u{PBqQJuJGs8@n0hR!(MN8rWI(H0}*PC z=m@}<@66&iwhM5DQ)dQwCOaLDRy6n&6+B2gMAnXEOoO zWk?Qw?>rLbL?BcJJ|&(iC=^?+u>DJ{JAq5BeI1b zbTVT+kBm-dE@~P0NBby}&J4#anHzf4)bM_r#zZiXd@+r`w)Uad_PO7XareO?eB4^+ zhOS|z)eDpn`djl7H?)z_Z=Q^*6c?Hb$0)_!4IhPf7X%TdFEjY*hKSer`Pp#)SSpng z@s<74gNK_tF`ncs}R^U*D!t zO&@%_T|bNm-<~c)9w-EB;In1FIDdxQDm>9s5IGSUj|io3cwQ)%%ERdHS4(9vnCI}| z`~L8a(&UrbQXOz=XC|tsc;nVz!VdO6THuW(@soS;eZlNGuc`h^3yJ|3!Y!2Y&a%f` tJ`4FDq*4mjSqf0T{m*hS|Knm3z#ncN!4Lb=ga$6l`(WsUhyB{=zX81YJW>Dv delta 952 zcmZva%TE(g6vjI((G-Z16eLP&j%7g`(=vCa?L06hrJbe&(+BO8hvK3U)bc143ZXHi zTTP6B$CVqSMnaHd^8c< z&PvRtBsG*?yYZ-S5g(VFHmZMC>_Ad-T7kpdhj#qF*lT7P@$BL~JXlyo$5=b&7pBem zXYqCu7-ilSc|-cBc#YwVV5oSN0sKARhac(ta^6{eQP^h~55C&(#9y0^>f5Cy8}l5y z%KZ6T>YnwmdIx{3yQSDU3w`#knA7ysePh*X3}+6)&Bj*PZj5aY+AMD3$HQeujPL@C z(+{EQzNk8yQ8XY#tnXw~2387313`d{D$8kwlFBAV)IhH8j*j~P)y6itmxe<(btCyiEs@NAtse#Xdp%htedit>TEDIT-OLDFILE.;33 72260 +(FILECREATED " 1-Aug-2025 14:58:21"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-OLDFILE.;38 73837 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.PUT.SINGLE.PARALOOKS2 \TEDIT.GET.SINGLE.PARALOOKS2 - \TEDIT.GET.PARALOOKS1 \TEDIT.GET.PARALOOKS0) + :CHANGES-TO (FNS \TEDIT.GET.CHARLOOKS2 \TEDIT.GET.PCTB1 \TEDIT.GET.PCTB2 + \TEDIT.GET.SINGLE.CHARLOOKS2 \TEDIT.GET.CHARLOOKS0 \TEDIT.GET.CHARLOOKS1) - :PREVIOUS-DATE " 8-Feb-2025 22:08:39" {WMEDLEY}tedit>TEDIT-OLDFILE.;31) + :PREVIOUS-DATE "28-Jul-2025 23:43:57" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-OLDFILE.;34) (PRETTYCOMPRINT TEDIT-OLDFILECOMS) @@ -47,7 +49,9 @@ (DEFINEQ (\TEDIT.GET.PCTB2 - [LAMBDA (TEXT TSTREAM PCCOUNT START END) (* ; "Edited 8-Feb-2025 20:21 by rmk") + [LAMBDA (TEXT TSTREAM PCCOUNT START END) (* ; "Edited 1-Aug-2025 14:55 by rmk") + (* ; "Edited 28-Jul-2025 23:39 by rmk") + (* ; "Edited 8-Feb-2025 20:21 by rmk") (* ; "Edited 21-Oct-2024 00:33 by rmk") (* ; "Edited 29-Apr-2024 10:28 by rmk") (* ; "Edited 20-Mar-2024 11:00 by rmk") @@ -69,7 +73,7 @@ (* ;; "END = use this as eofptr of file. For use in reading files within files.") - (LET ((TEXTOBJ (TEXTOBJ! (fetch (TEXTSTREAM TEXTOBJ) of TSTREAM))) + (LET ((TEXTOBJ (FTEXTOBJ (TSTREAM))) PIECEINFOCH# (CURFILECH# (OR START 0)) LOOKSHASH PARAHASH) @@ -174,18 +178,18 @@ PBYTESPERCHAR _ PCLEN)) (\TEDIT.GET.OBJECT TSTREAM PC TEXT CURFILECH# PCLEN) (add CURFILECH# PCLEN) - (FSETPC PC PLOOKS (if (ZEROP (BIN TEXT)) - then - (* ;; - "No new looks; steal them from the prior piece.") + (FSETPC PC PCHARLOOKS (if (ZEROP (BIN TEXT)) + then + (* ;; + "No new looks; steal them from the prior piece.") - (OR (AND OLDPC (PLOOKS OLDPC)) - DEFAULTCHARLOOKS) - else - (* ;; + (OR (AND OLDPC (PCHARLOOKS OLDPC)) + (FGETTOBJ TEXTOBJ DEFAULTCHARLOOKS)) + else + (* ;;  "There are new character looks for this object. Read them in.") - (\TEDIT.GET.SINGLE.CHARLOOKS2 TEXT)))) + (\TEDIT.GET.SINGLE.CHARLOOKS2 TEXT)))) (\TEDIT.THELP "Impossible piece-type code in BUILD.PCTB")) (CL:WHEN PC (* ;  "If we created a piece, save it in the table.") @@ -207,19 +211,21 @@ (T (ELT PARAHASH LOOKS#]) (\TEDIT.GET.CHARLOOKS2 - [LAMBDA (PC FILE LOOKSARRAY) (* ; "Edited 13-Jan-2024 00:01 by rmk") + [LAMBDA (PC FILE LOOKSARRAY) (* ; "Edited 1-Aug-2025 14:57 by rmk") + (* ; "Edited 28-Jul-2025 23:41 by rmk") + (* ; "Edited 13-Jan-2024 00:01 by rmk") (* ; "Edited 19-Dec-2023 10:13 by rmk") (* ; "Edited 3-Sep-2023 23:31 by rmk") (* ; "Edited 28-Aug-2023 22:19 by rmk") (* ; "Edited 26-Aug-2023 23:22 by rmk") (* ; "Edited 30-May-91 21:43 by jds") - (* ;; "Set the PLOOKS for the current piece, PC, according to what the file says") + (* ;; "Set the PCHARLOOKS for the current piece, PC, according to what the file says") (* ;; "We also ") (LET ((FLAGS (BIN FILE))) - (FSETPC PC PLOOKS (ELT LOOKSARRAY (\WIN FILE))) + (FSETPC PC PCHARLOOKS (ELT LOOKSARRAY (\WIN FILE))) (CL:UNLESS (ZEROP (LOGAND FLAGS 1)) (FSETPC PC PNEW T)) (CL:UNLESS (ZEROP (LOGAND FLAGS 2)) (* ; @@ -277,7 +283,8 @@ (for I from 1 to (\WIN FILE) collect (\TEDIT.GET.SINGLE.CHARLOOKS2 FILE]) (\TEDIT.GET.SINGLE.CHARLOOKS2 - [LAMBDA (FILE) (* ; "Edited 7-Jan-2025 12:29 by rmk") + [LAMBDA (FILE) (* ; "Edited 1-Aug-2025 12:13 by rmk") + (* ; "Edited 7-Jan-2025 12:29 by rmk") (* ; "Edited 2-Jan-2025 11:09 by rmk") (* ; "Edited 31-Jul-2024 00:05 by rmk") (* ; "Edited 16-Jan-2024 22:53 by rmk") @@ -287,26 +294,26 @@ (* ; "Edited 30-May-91 20:26 by jds") (* ; "Read a set of CHARLOOKS from FILE") (PROG* ((LOOKS (create CHARLOOKS)) - FONT STR NAME NAMELEN SIZE SUPER SUB PROPS STYLESTR USERSTR BOLD ITALIC) + FONT STR NAME NAMELEN SIZE SUPER SUB BITS STYLESTR USERSTR BOLD ITALIC) (SETQ NAME (\ARBIN FILE)) (* ; "The font name") (SETQ SIZE (\WIN FILE)) (* ; "Size of the type, in points") (SETQ SUPER (\SMALLPIN FILE)) (* ; "Superscripting distance") (FSETCLOOKS LOOKS CLSTYLE (OR (\ARBIN FILE) 0)) (FSETCLOOKS LOOKS CLUSERINFO (\ARBIN FILE)) - (SETQ PROPS (\WIN FILE)) - [SETQ BOLD (NOT (ZEROP (LOGAND 512 PROPS] - [SETQ ITALIC (NOT (ZEROP (LOGAND 256 PROPS] - (with CHARLOOKS LOOKS [SETQ CLLEADER (NOT (ZEROP (LOGAND 2048 PROPS] - [SETQ CLINVERTED (NOT (ZEROP (LOGAND 1024 PROPS] - [SETQ CLULINE (NOT (ZEROP (LOGAND 128 PROPS] - [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 PROPS] - [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 PROPS] - [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 PROPS] - [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 PROPS] - [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 PROPS] - [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 PROPS] - [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 PROPS] + (SETQ BITS (\WIN FILE)) + [SETQ BOLD (NOT (ZEROP (LOGAND 512 BITS] + [SETQ ITALIC (NOT (ZEROP (LOGAND 256 BITS] + (with CHARLOOKS LOOKS [SETQ CLLEADER (NOT (ZEROP (LOGAND 2048 BITS] + [SETQ CLINVERTED (NOT (ZEROP (LOGAND 1024 BITS] + [SETQ CLULINE (NOT (ZEROP (LOGAND 128 BITS] + [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 BITS] + [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 BITS] + [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 BITS] + [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 BITS] + [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 BITS] + [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 BITS] + [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 BITS] (SETQ CLOFFSET SUPER)) [SETQ FONT (COND ((LISTP NAME) (* ; @@ -575,7 +582,9 @@ (DEFINEQ (\TEDIT.GET.PCTB1 - [LAMBDA (TEXT TSTREAM PCCOUNT START END) (* ; "Edited 8-Feb-2025 20:22 by rmk") + [LAMBDA (TEXT TSTREAM PCCOUNT START END) (* ; "Edited 1-Aug-2025 14:56 by rmk") + (* ; "Edited 28-Jul-2025 23:39 by rmk") + (* ; "Edited 8-Feb-2025 20:22 by rmk") (* ; "Edited 21-Oct-2024 00:33 by rmk") (* ; "Edited 29-Apr-2024 10:28 by rmk") (* ; "Edited 20-Mar-2024 11:00 by rmk") @@ -597,9 +606,9 @@ (* ;; "END = use this as eofptr of file. For use in reading files within files.") - (LET ((TEXTOBJ (TEXTOBJ! (fetch (TEXTSTREAM TEXTOBJ) of TSTREAM))) - PIECEINFOCH# - (CURFILECH# (OR START 0))) + (LET ((TEXTOBJ (FTEXTOBJ TSTREAM)) + (CURFILECH# (OR START 0)) + PIECEINFOCH#) (SETFILEPTR TEXT (IDIFFERENCE (OR END (GETEOFPTR TEXT)) 8)) (SETQ PIECEINFOCH# (\DWIN TEXT)) @@ -665,8 +674,8 @@ (\TEDIT.GET.CHARLOOKS1 PC TEXT)) (T (* ;  "No new looks; steal them from the prior piece.") - (FSETPC PC PLOOKS (OR (AND OLDPC (PLOOKS OLDPC)) - DEFAULTCHARLOOKS]) + (FSETPC PC PCHARLOOKS (OR (AND OLDPC (PCHARLOOKS OLDPC)) + (FGETTOBJ TEXTOBJ DEFAULTCHARLOOKS]) (\TEDIT.THELP "Impossible piece-type code")) (CL:WHEN PC (\TEDIT.INSERTPIECE PC NIL TEXTOBJ) @@ -721,7 +730,9 @@ (\TEDIT.PARSE.PAGEFRAMES1 (pop PAGELIST]) (\TEDIT.GET.CHARLOOKS1 - [LAMBDA (PC FILE) (* ; "Edited 2-Jan-2025 11:09 by rmk") + [LAMBDA (PC FILE) (* ; "Edited 1-Aug-2025 12:18 by rmk") + (* ; "Edited 28-Jul-2025 23:40 by rmk") + (* ; "Edited 2-Jan-2025 11:09 by rmk") (* ; "Edited 31-Jul-2024 00:05 by rmk") (* ; "Edited 16-Jan-2024 22:55 by rmk") (* ; "Edited 19-Dec-2023 10:13 by rmk") @@ -733,10 +744,9 @@ (* ;; "Read a description of PC's CHARLOOKS from FILE. The looks are here stored in PC, not in the TEXTOBJ (uniquify later?)") - (LET (FONT STR NAME NAMELEN SIZE SUPER SUB PROPS STYLESTR USERSTR BOLD ITALIC (LOOKS (create - CHARLOOKS)) - ) - (FSETPC PC PLOOKS LOOKS) + (LET (FONT STR NAME NAMELEN SIZE SUPER SUB BITS STYLESTR USERSTR BOLD ITALIC (LOOKS (create + CHARLOOKS))) + (FSETPC PC PCHARLOOKS LOOKS) (SETQ NAME (\ARBIN FILE)) (* ; "The font name") (SETQ SIZE (\WIN FILE)) (* ; "Size of the type, in points") (SETQ SUPER (\SMALLPIN FILE)) (* ; "Superscripting distance") @@ -753,31 +763,31 @@ (FSETCLOOKS LOOKS CLSTYLE (OR (\ARBIN FILE) 0)) (FSETCLOOKS LOOKS CLUSERINFO (\ARBIN FILE))) - (SETQ PROPS (\WIN FILE)) - [SETQ BOLD (NOT (ZEROP (LOGAND 512 PROPS] - [SETQ ITALIC (NOT (ZEROP (LOGAND 256 PROPS] - (with CHARLOOKS LOOKS [SETQ CLULINE (NOT (ZEROP (LOGAND 128 PROPS] - [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 PROPS] - [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 PROPS] - [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 PROPS] - [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 PROPS] - [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 PROPS] - [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 PROPS] - [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 PROPS] + (SETQ BITS (\WIN FILE)) + [SETQ BOLD (NOT (ZEROP (LOGAND 512 BITS] + [SETQ ITALIC (NOT (ZEROP (LOGAND 256 BITS] + (with CHARLOOKS LOOKS [SETQ CLULINE (NOT (ZEROP (LOGAND 128 BITS] + [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 BITS] + [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 BITS] + [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 BITS] + [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 BITS] + [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 BITS] + [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 BITS] + [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 BITS] (SETQ CLOFFSET SUPER)) - [SETQ FONT (COND - ((LISTP NAME) (* ; + (SETQ FONT (if (LISTP NAME) + then (* ;  "This was a font class. Restore it.") - (FONTCLASS (CONS 0 (CDDR NAME)) - 'TEDIT-FONTCLASS)) - [(AND NAME (NOT (ZEROP SIZE))) - (FONTCREATE NAME SIZE (COND - ((AND BOLD ITALIC) - 'BOLDITALIC) - (BOLD 'BOLD) - (ITALIC 'ITALIC] - (T (* ; "Should never happen") - (FONTCREATE DEFAULTFONT] + (FONTCLASS (CONS 0 (CDDR NAME)) + 'TEDIT-FONTCLASS) + elseif (AND NAME (NOT (ZEROP SIZE))) + then [FONTCREATE NAME SIZE (COND + ((AND BOLD ITALIC) + 'BOLDITALIC) + (BOLD 'BOLD) + (ITALIC 'ITALIC] + else (* ; "Should never happen") + (FONTCREATE DEFAULTFONT))) (FSETCLOOKS LOOKS CLNAME (FONTUNPARSE FONT)) (FSETCLOOKS LOOKS CLFONT FONT]) @@ -846,7 +856,8 @@ PARALOOKS]) (TEDIT.GET.OBJECT1 - [LAMBDA (STREAM PIECE FILE CURCH#) (* ; "Edited 31-Jul-2024 12:09 by rmk") + [LAMBDA (STREAM PIECE FILE CURCH#) (* ; "Edited 28-Jul-2025 23:41 by rmk") + (* ; "Edited 31-Jul-2024 12:09 by rmk") (* ; "Edited 27-Oct-2023 12:58 by rmk") (* ; "Edited 6-Aug-2022 09:11 by rmk") (* ; "Edited 12-Jun-90 18:17 by mitani") @@ -866,12 +877,12 @@ (SETFILEPTR FILE FILEPTRSAVE) (FSETPC PIECE PCONTENTS OBJ) (FSETPC PIECE PTYPE OBJECT.PTYPE) - (FSETPC PIECE PLOOKS (if (PREVPIECE PIECE) - then (PLOOKS (PREVPIECE PIECE)) - elseif (FGETTOBJ TEXTOBJ DEFAULTCHARLOOKS) - else (\TEDIT.UNIQUIFY.CHARLOOKS (\TEDIT.CHARLOOKS.FROM.FONT - DEFAULTFONT) - TEXTOBJ))) + (FSETPC PIECE PCHARLOOKS (if (PREVPIECE PIECE) + then (PCHARLOOKS (PREVPIECE PIECE)) + elseif (FGETTOBJ TEXTOBJ DEFAULTCHARLOOKS) + else (\TEDIT.UNIQUIFY.CHARLOOKS (\TEDIT.CHARLOOKS.FROM.FONT + DEFAULTFONT) + TEXTOBJ))) (PCONTENTS PIECE]) ) @@ -945,7 +956,9 @@ (\TEDIT.INSERTPIECE PC NIL TEXTOBJ) finally (\TEDIT.UNIQUIFY.ALL TEXTOBJ]) (\TEDIT.GET.CHARLOOKS0 - [LAMBDA (PC FILE) (* ; "Edited 2-Jan-2025 11:09 by rmk") + [LAMBDA (PC FILE) (* ; "Edited 1-Aug-2025 12:17 by rmk") + (* ; "Edited 28-Jul-2025 23:39 by rmk") + (* ; "Edited 2-Jan-2025 11:09 by rmk") (* ; "Edited 31-Jul-2024 00:05 by rmk") (* ; "Edited 16-Jan-2024 23:03 by rmk") (* ; "Edited 19-Dec-2023 10:13 by rmk") @@ -953,9 +966,10 @@ (* ; "Edited 30-May-91 20:26 by jds") (* ;  "Put a description of LOOKS into FILE. LOOKS apply to characters CH1 thru CHLIM-1") - (PROG (FONT STR NAME NAMELEN SIZE SUPER SUB PROPS STYLESTR USERSTR BOLD ITALIC - (LOOKS (create CHARLOOKS))) - (SETPC PC PLOOKS LOOKS) + (PROG (FONT STR NAME NAMELEN SIZE SUPER SUB BITS STYLESTR USERSTR BOLD ITALIC (LOOKS (create + CHARLOOKS)) + ) + (SETPC PC PCHARLOOKS LOOKS) (SETQ NAMELEN (\WIN FILE)) (* ;  "The length of the description which follows") [SETQ NAME (PACK (for I from 1 to NAMELEN collect (CHARACTER (BIN FILE] @@ -968,32 +982,29 @@ (* ;; "If this is an old file, it'll have a subscript value not zero. Let those past and do the right thing.") - (COND - ((NOT (ZEROP (BIN FILE))) (* ; "This text is NEW. Mark it so.") - (FSETPC PC PNEW T))) - [COND - ((NOT (ZEROP (BIN FILE))) (* ; + (CL:UNLESS (ZEROP (BIN FILE)) (* ; "This text is NEW. Mark it so.") + (FSETPC PC PNEW T)) + (CL:UNLESS (ZEROP (BIN FILE)) (* ;  "There is style or user information to be read") (SETQ STYLESTR (\STRINGIN FILE)) (SETQ USERSTR (\STRINGIN FILE)) - (COND - ((NOT (ZEROP (NCHARS STYLESTR))) (* ; "There IS style info") - (FSETCLOOKS LOOKS CLSTYLE (READ STYLESTR))) - (T (FSETCLOOKS LOOKS CLSTYLE 0))) - (COND - ((NOT (ZEROP (NCHARS USERSTR))) (* ; "There IS user info") - (FSETCLOOKS LOOKS CLUSERINFO (READ USERSTR] - (SETQ PROPS (\WIN FILE)) - [SETQ BOLD (NOT (ZEROP (LOGAND 512 PROPS] - [SETQ ITALIC (NOT (ZEROP (LOGAND 256 PROPS] - (with CHARLOOKS LOOKS [SETQ CLULINE (NOT (ZEROP (LOGAND 128 PROPS] - [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 PROPS] - [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 PROPS] - [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 PROPS] - [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 PROPS] - [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 PROPS] - [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 PROPS] - [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 PROPS] + (if (ZEROP (NCHARS STYLESTR)) + then (FSETCLOOKS LOOKS CLSTYLE 0) + else (* ; "There IS style info") + (FSETCLOOKS LOOKS CLSTYLE (READ STYLESTR))) + (CL:UNLESS (ZEROP (NCHARS USERSTR)) (* ; "There IS user info") + (FSETCLOOKS LOOKS CLUSERINFO (READ USERSTR)))) + (SETQ BITS (\WIN FILE)) + [SETQ BOLD (NOT (ZEROP (LOGAND 512 BITS] + [SETQ ITALIC (NOT (ZEROP (LOGAND 256 BITS] + (with CHARLOOKS LOOKS [SETQ CLULINE (NOT (ZEROP (LOGAND 128 BITS] + [SETQ CLOLINE (NOT (ZEROP (LOGAND 64 BITS] + [SETQ CLSTRIKE (NOT (ZEROP (LOGAND 32 BITS] + [SETQ CLSMALLCAP (NOT (ZEROP (LOGAND 16 BITS] + [SETQ CLPROTECTED (NOT (ZEROP (LOGAND 8 BITS] + [SETQ CLINVISIBLE (NOT (ZEROP (LOGAND 4 BITS] + [SETQ CLSELAFTER (NOT (ZEROP (LOGAND 2 BITS] + [SETQ CLCANCOPY (NOT (ZEROP (LOGAND 1 BITS] (SETQ CLOFFSET SUPER)) (SETQ FONT (if (AND NAME (NOT (ZEROP SIZE))) then [FONTCREATE NAME SIZE (COND @@ -1008,7 +1019,8 @@ (RETURN LOOKS]) (\TEDIT.GET.OBJECT0 - [LAMBDA (STREAM PIECE FILE CURCH#) (* ; "Edited 31-Jul-2024 12:09 by rmk") + [LAMBDA (STREAM PIECE FILE CURCH#) (* ; "Edited 28-Jul-2025 23:42 by rmk") + (* ; "Edited 31-Jul-2024 12:09 by rmk") (* ; "Edited 6-Aug-2022 15:57 by rmk") (* ; "Edited 12-Jun-90 18:17 by mitani") @@ -1026,16 +1038,15 @@ (SETQ OBJ (READIMAGEOBJ FILE GETFN)) (SETFILEPTR FILE FILEPTRSAVE) (replace (PIECE PCONTENTS) of PIECE with OBJ) - [replace (PIECE PLOOKS) of PIECE with (COND - ((fetch (PIECE PREVPIECE) of PIECE) - (fetch (PIECE PLOOKS) of (fetch (PIECE PREVPIECE) - of PIECE))) - (T (OR (fetch (TEXTOBJ DEFAULTCHARLOOKS) - of TEXTOBJ) - (\TEDIT.UNIQUIFY.CHARLOOKS ( + [replace (PIECE PCHARLOOKS) of PIECE with (COND + ((fetch (PIECE PREVPIECE) of PIECE) + (PCHARLOOKS (PREVPIECE PIECE))) + (T (OR (fetch (TEXTOBJ DEFAULTCHARLOOKS) + of TEXTOBJ) + (\TEDIT.UNIQUIFY.CHARLOOKS ( \TEDIT.CHARLOOKS.FROM.FONT - DEFAULTFONT) - TEXTOBJ] + DEFAULTFONT) + TEXTOBJ] OBJ]) (\TEDIT.GET.PARALOOKS0 @@ -1091,14 +1102,14 @@ PARALOOKS]) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (1758 37224 (\TEDIT.GET.PCTB2 1768 . 12181) (\TEDIT.GET.PARALOOKS2 12183 . 12772) ( -\TEDIT.GET.CHARLOOKS2 12774 . 14105) (\TEDIT.PARSE.PAGEFRAMES2 14107 . 16846) ( -\TEDIT.GET.CHARLOOKS.LIST2 16848 . 17355) (\TEDIT.GET.SINGLE.CHARLOOKS2 17357 . 20568) ( -\TEDIT.PUT.SINGLE.PARALOOKS2 20570 . 24820) (\TEDIT.PUT.SINGLE.CHARLOOKS2 24822 . 28532) ( -\TEDIT.GET.PARALOOKS.LIST2 28534 . 29041) (\TEDIT.GET.SINGLE.PARALOOKS2 29043 . 33942) ( -\TEDIT.PUT.CHARLOOKS.LIST2 33944 . 36023) (\TEDIT.PUT.PARALOOKS.LIST2 36025 . 37222)) (37301 57923 ( -\TEDIT.GET.PCTB1 37311 . 44120) (\TEDIT.GET.PAGEFRAMES1 44122 . 44574) (\TEDIT.PARSE.PAGEFRAMES1 44576 - . 47229) (\TEDIT.GET.CHARLOOKS1 47231 . 51276) (\TEDIT.GET.PARALOOKS1 51278 . 56189) ( -TEDIT.GET.OBJECT1 56191 . 57921)) (57983 72237 (\TEDIT.GET.PCTB0 57993 . 62074) (\TEDIT.GET.CHARLOOKS0 - 62076 . 66171) (\TEDIT.GET.OBJECT0 66173 . 68232) (\TEDIT.GET.PARALOOKS0 68234 . 72235))))) + (FILEMAP (NIL (1867 37890 (\TEDIT.GET.PCTB2 1877 . 12526) (\TEDIT.GET.PARALOOKS2 12528 . 13117) ( +\TEDIT.GET.CHARLOOKS2 13119 . 14676) (\TEDIT.PARSE.PAGEFRAMES2 14678 . 17417) ( +\TEDIT.GET.CHARLOOKS.LIST2 17419 . 17926) (\TEDIT.GET.SINGLE.CHARLOOKS2 17928 . 21234) ( +\TEDIT.PUT.SINGLE.PARALOOKS2 21236 . 25486) (\TEDIT.PUT.SINGLE.CHARLOOKS2 25488 . 29198) ( +\TEDIT.GET.PARALOOKS.LIST2 29200 . 29707) (\TEDIT.GET.SINGLE.PARALOOKS2 29709 . 34608) ( +\TEDIT.PUT.CHARLOOKS.LIST2 34610 . 36689) (\TEDIT.PUT.PARALOOKS.LIST2 36691 . 37888)) (37967 59193 ( +\TEDIT.GET.PCTB1 37977 . 44994) (\TEDIT.GET.PAGEFRAMES1 44996 . 45448) (\TEDIT.PARSE.PAGEFRAMES1 45450 + . 48103) (\TEDIT.GET.CHARLOOKS1 48105 . 52416) (\TEDIT.GET.PARALOOKS1 52418 . 57329) ( +TEDIT.GET.OBJECT1 57331 . 59191)) (59253 73814 (\TEDIT.GET.PCTB0 59263 . 63344) (\TEDIT.GET.CHARLOOKS0 + 63346 . 67732) (\TEDIT.GET.OBJECT0 67734 . 69809) (\TEDIT.GET.PARALOOKS0 69811 . 73812))))) STOP diff --git a/library/tedit/TEDIT-OLDFILE.LCOM b/library/tedit/TEDIT-OLDFILE.LCOM index 42fa6a65e5227c1b8912760de69dde420bc0ec42..18bcf0b7deac7a631cddfdd2cc1b9b019302213d 100644 GIT binary patch delta 5832 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 delta 5425 zcmd5=TWlOx8Qz;OaqW2HtnJNa2X|KszeZD@y}JATkm%LxM6S%C9Xb z*6Fhs2F{(TE}nXJc=7DXXP$iK+2M*lp07Cn2aLjaHeb*OAITg*sZBA`L!vq)DJj%; z;mhaGJ+-*Miq0;fRCc;hKs<18a4?0cPhL1xy()-mr*e`{|b66iG{{tXDKdBn4@uk~Rw#M%jWsb+nR$ z9T5Q5ZP!~`V0|+V6f4+;Vp(ZGu_W8S-rH^et)(?Y(ze;2urLu3?9MpKq|u4-nfw$= ztKL+nr}B?Y=d-he8f?6bX=J*a#YzcDqKg()zL{juQN5xYS-`;F%Sr}49|^NHsLU4i zhn`2WBqL`{WHF73qilI(!E2OY8cw$a^L8yM<65GW-Wm@U@3#72SV;>tyzPUCMNqz? z74l=Kh%iQ@aLB18plR5QGEBUPV1+8P1>JGrX|M%lXomNg9)({8ev3K<%BY+_rh_4& zDQ!}R zn(I66cJ6pJKEh7c&qmOl5p?V4&QEp8x_9^T(!G1P7jD0ka}cZH`B-b+bz*IG2Wdu^ zLV; zOsw64H-2QGrtlTRxer$tF3sO;jy6Dxm)6bHyak{X1*KRR28tjbG_r2)p@H^L z%pMLS_!zWq?xUD}6tmCAgaSS$x^DJUOh3i+`DoRI%w3+tvpAp(U69K?$|1^YQs4Zj(j2pw;utGYaV{mA6}MopQ7A(L!G z?cl_u(X-NR#9u#cF-*+pxy+8lOGf;93$qxPTsrfUTt4Q#MV^h0g>unAzXHdYp0(+z zqE;&FNX|IE!>(|%G7U>8U?mdfEXQ1#I6Ozp$HNh%V{OJQE;JTU{Ci}%c|^L zY8eL7+wHYuksBaEe1EtEv*0|zQaD#s1>O_+=Mo?ze;`r#Fd$J}A5Ld@Pv$2>X{ex$ zO#qDm7eYMy{NcF$6pGX`J3oyCKd{sB8(kW^j%#h-8S$*z?p+-gd(ep=h6+~oy1Bl2kD*;{bpMc@T8(!@%yX!4Y zS2{q+?O!}}F&VhG7}{9rGvcc|9nLhj*K-RuhXU6E>$bV)SkpHaHddYkJ@2*O-%~od z+vqalmyI~cd3Y+;{`K?pPO`gJH@a50O)k7QckR=)hP-!~@%r*_1N|V)o;dRIF4FVt zsJ2u9B-zoB7u?KRfE&*pg}ALjnPN-u?j|n2rwodk}#EX3nNTm^L<=V zJE~_(AVg)1=rkO$ZloLkwOA9GaN?R^YK`G|Z4q!LxG1EGHr|%3eYEdT`2Rz5L5D$e znfMmRP!`S=8rQShbfH2y6SVkiyMlqx6Lg>Nuf@4oyT(qyaSh$k(5*S=hu7oB|FOy3 zUaih={J7c_e!a>@e|O&4e)}B_QC+TeQ(eAdBv{Y)Miy>H19j*EO|I=XK$G7v97(S2 z$~n(=mELhc>756f(W;&3Ojtdxrh^uP5iRI7I;}>TL+r3$5c^iTZ8l9)23<)qV z$_kN~?~1a5A^V2&=V>&^m&XFK3_`^Em`KYQIK(9gDGlkhXG=bDNT4NNyU2wSMPJ}W z!5>R$*25D@MQ%(&tCZ|9i)K=)yo!VsBwNW5)_D^-hC}F|kmGVZ)7S3pHHP<@N9xOWbF}<2V(cYp zAyiB7mCz4!ZWqtjp{0=hcxP|K1kSeKdN?t#iJtFU-*9!3z1Ep*_4wTW9q;UjCJ%W% zi>;qgzHl{)W&q7%B-wQ)7?2X4DB%ZB^s0bAV@T>|9?Q^0E<%-Lv zD!{pVNCh=vA3u~$rH}&OZT#Vipq}Pj8HB*^ltC|ikCu>}2NU8vNNs&j1fJ(S?0mYh z=ME3rFASfj^tvT63tVUl+Mf*P$jVNy_Hl}#_GS0ZP}ZH^#JUAIR~QSFbi-JXDC;IO aG^zel1=48*WvcV(2tedit>TEDIT-PCTREE.;248 68998 +(FILECREATED "28-Jul-2025 23:25:19"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-PCTREE.;249 69193 :EDIT-BY rmk :CHANGES-TO (FNS \TEDIT.MAKEPCTB) - :PREVIOUS-DATE " 7-Feb-2025 08:31:28" {WMEDLEY}tedit>TEDIT-PCTREE.;246) + :PREVIOUS-DATE " 8-Feb-2025 20:56:54" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-PCTREE.;248) (PRETTYCOMPRINT TEDIT-PCTREECOMS) @@ -215,7 +217,8 @@ (DEFINEQ (\TEDIT.MAKEPCTB - [LAMBDA (TEXTOBJ) (* ; "Edited 8-Feb-2025 20:14 by rmk") + [LAMBDA (TEXTOBJ) (* ; "Edited 28-Jul-2025 23:25 by rmk") + (* ; "Edited 8-Feb-2025 20:14 by rmk") (* ; "Edited 7-Feb-2025 08:02 by rmk") (* ; "Edited 7-Dec-2023 12:41 by rmk") (* ; "Edited 31-Oct-2023 10:09 by rmk") @@ -237,7 +240,7 @@ PBYTESPERCHAR _ 1 PLEN _ 0 PTREENODE _ NODE - PLOOKS _ (GETTOBJ TEXTOBJ DEFAULTCHARLOOKS) + PCHARLOOKS _ (GETTOBJ TEXTOBJ DEFAULTCHARLOOKS) PPARALOOKS _ (GETTOBJ TEXTOBJ DEFAULTPARALOOKS))) (FSETTOBJ TEXTOBJ SUFFIXPIECE (ffetch (BTREENODE DOWN1) of NODE)) (FSETTOBJ TEXTOBJ HINTPC NIL) @@ -1110,13 +1113,13 @@ (GLOBALVARS BTVALIDATETAGS) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (8685 56524 (\TEDIT.MAKEPCTB 8695 . 10475) (\TEDIT.UPDATEPCNODES 10477 . 12771) ( -\TEDIT.FIRSTPIECE 12773 . 14180) (\TEDIT.DELETETREE 14182 . 17456) (\TEDIT.INSERTTREE 17458 . 20203) ( -\TEDIT.LASTPIECE 20205 . 21012) (\TEDIT.PCTOCH 21014 . 23111) (\TEDIT.CHTOPC 23113 . 29290) ( -\TEDIT.SET-TOTLEN 29292 . 30080) (\TEDIT.MAKE.VACANT.BTREESLOT 30082 . 36812) (\TEDIT.LINKNEWPIECE -36814 . 38403) (\TEDIT.UNLINKPIECE 38405 . 39225) (\TEDIT.SPLITPIECE 39227 . 43883) ( -\TEDIT.INSERTPIECE 43885 . 47157) (\TEDIT.INSERTPIECES 47159 . 50251) (\TEDIT.DELETEPIECES 50253 . -54407) (\TEDIT.ALIGNEDPIECE 54409 . 56522)) (56552 68875 (\TEDIT.BTVALIDATE 56562 . 58103) ( -\TEDIT.BTVALIDATE.PRINT 58105 . 59470) (\TEDIT.CHECK-BTREE 59472 . 61799) (\TEDIT.CHECK-BTREE1 61801 - . 67432) (\TEDIT.BTFAIL 67434 . 67856) (\TEDIT.MATCHPCS 67858 . 68873))))) + (FILEMAP (NIL (8767 56719 (\TEDIT.MAKEPCTB 8777 . 10670) (\TEDIT.UPDATEPCNODES 10672 . 12966) ( +\TEDIT.FIRSTPIECE 12968 . 14375) (\TEDIT.DELETETREE 14377 . 17651) (\TEDIT.INSERTTREE 17653 . 20398) ( +\TEDIT.LASTPIECE 20400 . 21207) (\TEDIT.PCTOCH 21209 . 23306) (\TEDIT.CHTOPC 23308 . 29485) ( +\TEDIT.SET-TOTLEN 29487 . 30275) (\TEDIT.MAKE.VACANT.BTREESLOT 30277 . 37007) (\TEDIT.LINKNEWPIECE +37009 . 38598) (\TEDIT.UNLINKPIECE 38600 . 39420) (\TEDIT.SPLITPIECE 39422 . 44078) ( +\TEDIT.INSERTPIECE 44080 . 47352) (\TEDIT.INSERTPIECES 47354 . 50446) (\TEDIT.DELETEPIECES 50448 . +54602) (\TEDIT.ALIGNEDPIECE 54604 . 56717)) (56747 69070 (\TEDIT.BTVALIDATE 56757 . 58298) ( +\TEDIT.BTVALIDATE.PRINT 58300 . 59665) (\TEDIT.CHECK-BTREE 59667 . 61994) (\TEDIT.CHECK-BTREE1 61996 + . 67627) (\TEDIT.BTFAIL 67629 . 68051) (\TEDIT.MATCHPCS 68053 . 69068))))) STOP diff --git a/library/tedit/TEDIT-PCTREE.LCOM b/library/tedit/TEDIT-PCTREE.LCOM index cfb9f286e46bc34ee7cdf564b1e08c001ae5a469..7f7c0e118705f3e3715f68aedd5e9ec44a4e1f1b 100644 GIT binary patch delta 315 zcmZ3SH7$EWgs_FKS80x}k%5t^f|0S6k*SrT<-}|={_^~y?99A$-Q3iaoYYFY$u}A0 z>Mb=DxRi{{ku(@t8JSoaTPP_c6{RNU=N4qCTll2`)Nhs|sgb0tkK4L468SLYyUS4W_U3Q9)UoLsGj z&B^SR3TBpumd2CI8J#8@Gm1{ERl%l=(PHus#;vluQ@llZ_B*gK0KrMCJt;mS0{c_4 WL|8xs)8tc3noLGUo4+#Y836!xYg-Zk delta 288 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 delta 3310 zcma)8O-x)>6n<}D9xarXp8~#NEW?9VhEgn+S_!FT1S;SF7KlxQCU(w1SPqT^S<+)pL@=|XWrar zp<8!DD`Q(Fp|8i>a{6YXb*p6JL5N~+e?Qsic>RN2-9rOTp@YB5hKA=yy1RNunmY%R zgF~^Wl8Me|;_;B<9Cr#jlZoNs-p;+L?BstsW#*+c^#H=}5x>dVH_|=S-#d^<{$~Q? z&PDqD+F^>m(^tLAjyTrq^y{_fVu-q1Sk{0v`tt5hnw`Rt-u~|4p~3#dfK$JhH!dRn zLQXk9J&5~xRY1tY0~-4Ldc9k!&j#->6#4Ym_4@t!5SavZRNqQy=0?!!?&ym6zsQ+@ zl-61!R4LdlC8uiX{z56eHC1*H`5XcaeG&DgBB%Q8YY7Ap#0LobEE0nNBn-i$pQe0q zSutG}g~b41=nEhKL55Bq-MJAxos(A?beWlJapZKuyqWIIM`9=g9El!q6|c-Z?o9_( zz#p=>X52%GROBEWV7uUO+K~Ytn z`?KxkNJ~2_LYV620yj+O=K|4c;?jmNjnB1T$cX8FY$J#@0&{^)xfE%%h_>>kMQ{zc z2?g^(H6qD9v86_-QbbA#KZ- zI4Yt)*L?bDG1j3OgDe|Ecx_a`FA`o_4UVYNDN^xLqzd?eWv0V(kRwCT9f3|GLC8KN zKw`YIIkh>6$)7ft8sln$RAiX!_&4eL*0znlNJR?u^=Te5b<}gS=5gfJ1{NGdAOO*m z0TD-0PAXi>Xvm}5sfQ=^^y*gOLma_}IO@wmbmGZG0#RxTQ}GR?*jj11uUN$P@Q_1o z%LgXG))<L9{@0H`2gNPNO-YfMoArN+|0Yp=9ED z^vkl}1HJ4i(}^Q9G7EWxd2*R$ie)-G2aQLAE56(vxgc4l(qkZ+kY+7@kb(>}a7@MN zla+tWQB!yNVdZR%4USWAo>#iR&>W*Dmwc}SxJQ>)eIDH7tA0GZl{8yz@xmxR!^&DVooIemh$CyO6MBBu$(YO$*&gf&R~K!@xIfSXDL!< z^(dnm1@tEQaZuj?9SNb8vdzm7vXEjlXi^86j93u#u9!kIA_7#B1s-y6vJfqbG!+~* z2Twx(i)W2$$BCJQbalXhSE?rt5;ct-5^`BjL>w|aihRVU&<|QO!MOWV6luyc6 m-^-`?MuH7q*{EfMrHzU_e!2DGXwk{$S;u*8J@m)er+))C_X>Fc diff --git a/library/tedit/TEDIT-SCREEN b/library/tedit/TEDIT-SCREEN index 05f9ac8c..dbb6599d 100644 --- a/library/tedit/TEDIT-SCREEN +++ b/library/tedit/TEDIT-SCREEN @@ -1,12 +1,13 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "12-Jun-2025 15:45:54" {WMEDLEY}tedit>TEDIT-SCREEN.;907 187425 +(FILECREATED " 7-Aug-2025 12:51:00" {WMEDLEY}tedit>TEDIT-SCREEN.;909 186327 :EDIT-BY rmk - :CHANGES-TO (RECORDS PENDINGTAB) + :CHANGES-TO (VARS TEDIT-SCREENCOMS) + (FNS \TEDIT.FORMATLINE) - :PREVIOUS-DATE "30-May-2025 21:59:23" {WMEDLEY}tedit>TEDIT-SCREEN.;906) + :PREVIOUS-DATE "28-Jul-2025 23:23:33" {WMEDLEY}tedit>TEDIT-SCREEN.;908) (PRETTYCOMPRINT TEDIT-SCREENCOMS) @@ -22,8 +23,7 @@ LINEDESCRIPTOR!)) (MACROS HCSCALE HCUNSCALE SCALEUP SCALEDOWN) (GLOBALVARS TEDIT.DONT.BREAK.CHARS TEDIT.DONT.LAST.CHARS) - (ALISTS (CHARACTERNAMES EM-DASH SOFT-HYPHEN NONBREAKING-HYPHEN - NONBREAKING-SPACE)) + (ALISTS (CHARACTERNAMES SOFT-HYPHEN NONBREAKING-HYPHEN NONBREAKING-SPACE)) (MACROS DIACRITICP) (MACROS \TEDIT.LINE.TALLP) (COMS (* ; "Formatting slots held by THISLINE") @@ -300,8 +300,7 @@ (GLOBALVARS TEDIT.DONT.BREAK.CHARS TEDIT.DONT.LAST.CHARS) ) -(ADDTOVAR CHARACTERNAMES (EM-DASH "357,045") - (SOFT-HYPHEN "357,043") +(ADDTOVAR CHARACTERNAMES (SOFT-HYPHEN "357,043") (NONBREAKING-HYPHEN "357,042") (NONBREAKING-SPACE "357,041")) (DECLARE%: EVAL@COMPILE @@ -656,6 +655,7 @@ (\TEDIT.FORMATLINE [LAMBDA (TSTREAM CH#1 LINE REGION IMAGESTREAM FORMATTINGSTATE) + (* ; "Edited 7-Aug-2025 12:49 by rmk") (* ; "Edited 27-Apr-2025 11:24 by rmk") (* ; "Edited 21-Apr-2025 19:03 by rmk") (* ; "Edited 11-Apr-2025 20:18 by rmk") @@ -1071,7 +1071,7 @@ (* ;  "Spaces before a tab don't take part in later justification.") (SAVEBREAK))) - ((- EM-DASH SOFT-HYPHEN) (* ; + ((- EMDASH SOFT-HYPHEN) (* ;  "Hyphen, M-dash, discretionary hyphen") (CL:UNLESS UNBREAKABLE (FORGETPREVIOUSBREAK) @@ -2367,22 +2367,9 @@ (\TEDIT.SHIFTLINES LASTVALID PANE TSTREAM BITMAPLINES)))]) (\TEDIT.PANE.CREATELINES - [LAMBDA (TSTREAM PANE LCHARLAST YBOT) (* ; "Edited 21-Apr-2025 12:02 by rmk") - (* ; "Edited 19-Apr-2025 22:07 by rmk") + [LAMBDA (TSTREAM PANE LCHARLAST YBOT) (* ; "Edited 28-Jul-2025 23:23 by rmk") + (* ; "Edited 21-Apr-2025 12:02 by rmk") (* ; "Edited 28-Mar-2025 20:55 by rmk") - (* ; "Edited 8-Feb-2025 23:52 by rmk") - (* ; "Edited 29-Nov-2024 09:14 by rmk") - (* ; "Edited 20-Nov-2024 14:26 by rmk") - (* ; "Edited 17-Nov-2024 19:53 by rmk") - (* ; "Edited 10-Nov-2024 18:45 by rmk") - (* ; "Edited 4-Nov-2024 17:02 by rmk") - (* ; "Edited 26-Oct-2024 10:25 by rmk") - (* ; "Edited 29-Jun-2024 23:29 by rmk") - (* ; "Edited 28-Jun-2024 13:34 by rmk") - (* ; "Edited 21-Jun-2024 22:25 by rmk") - (* ; "Edited 19-Jun-2024 08:26 by rmk") - (* ; "Edited 17-Jun-2024 08:52 by rmk") - (* ; "Edited 13-Mar-2024 17:02 by rmk") (* ; "Edited 21-Feb-2024 23:36 by rmk") (* ; "Edited 2-Jan-2024 13:04 by rmk") (* ; "Edited 29-Dec-2023 15:48 by rmk") @@ -2397,24 +2384,24 @@ (* ;;  "1STLN and LSTLN are NIL, since we don't want to make end paragraph-boundary inferences") - (SETQ PREFIX - (create LINEDESCRIPTOR - LDUMMY _ T - LCHAR1 _ 0 - LCHARLAST _ (OR LCHARLAST 0) - RIGHTMARGIN _ (SUB1 (PANERIGHT PANE)) - LHEIGHT _ 0 - LX1 _ 0 - LXLIM _ (PANERIGHT PANE) - FORCED-END _ (CHARCODE EOL) - LASCENT _ 0 - LDESCENT _ 0 - LTRUEASCENT _ 0 - LTRUEDESCENT _ 0 - LPARALOOKS _ TEDIT.DEFAULT.FMTSPEC - 1STLN _ NIL - LSTLN _ NIL - LFIRSTSEPR _ MAX.FIXP)) + (SETQ PREFIX (create LINEDESCRIPTOR + LDUMMY _ T + LCHAR1 _ 0 + LCHARLAST _ (OR LCHARLAST 0) + RIGHTMARGIN _ (SUB1 (PANERIGHT PANE)) + LHEIGHT _ 0 + LX1 _ 0 + LXLIM _ (PANERIGHT PANE) + FORCED-END _ (CHARCODE EOL) + LASCENT _ 0 + LDESCENT _ 0 + LTRUEASCENT _ 0 + LTRUEDESCENT _ 0 + LPARALOOKS _ (FGETTOBJ (FTEXTOBJ TSTREAM) + DEFAULTPARALOOKS) + 1STLN _ NIL + LSTLN _ NIL + LFIRSTSEPR _ MAX.FIXP)) (SETYBOT PREFIX (OR YBOT (PANEHEIGHT PANE))) (FSETPANEPROP (PANEPROPS PANE) PREFIXLINE PREFIX) @@ -2874,21 +2861,21 @@ (\TEDIT.LINE.TALLP LINE PHEIGHT))))]) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (26302 28518 (\TEDIT.LINEDESCRIPTOR.DEFPRINT 26312 . 28516)) (35972 119699 ( -\TEDIT.FORMATLINE 35982 . 71360) (\TEDIT.FORMATLINE.SETUP.PARA 71362 . 76528) ( -\TEDIT.FORMATLINE.HORIZONTAL 76530 . 81198) (\TEDIT.FORMATLINE.VERTICAL 81200 . 83651) ( -\TEDIT.FORMATLINE.JUSTIFY 83653 . 89674) (\TEDIT.FORMATLINE.TABS 89676 . 97704) (\TEDIT.SCALE.TABS -97706 . 98497) (\TEDIT.FORMATLINE.PURGE.SPACES 98499 . 99926) (\TEDIT.FORMATLINE.FLUSH.SOFTHYPHEN -99928 . 101005) (\TEDIT.FORMATLINE.EMPTY 101007 . 105827) (\TEDIT.FORMATLINE.UPDATELOOKS 105829 . -112010) (\TEDIT.FORMATLINE.LASTLEGAL 112012 . 115462) (\TEDIT.LINES.ABOVE 115464 . 119075) ( -\TEDIT.CHNO.TO.YTOP 119077 . 119697)) (119976 140556 (\TEDIT.DISPLAYLINE 119986 . 132496) ( -\TEDIT.DISPLAYLINE.TABS 132498 . 135302) (\TEDIT.LINECACHE 135304 . 136032) (\TEDIT.CREATE.LINECACHE -136034 . 136870) (\TEDIT.BLTCHAR 136872 . 139499) (\TEDIT.DIACRITIC.SHIFT 139501 . 140554)) (141171 -187402 (\TEDIT.BACKFORMAT 141181 . 143735) (\TEDIT.PREVIOUS.LINEBREAK 143737 . 146540) ( -\TEDIT.UPDATE.LINES 146542 . 152257) (\TEDIT.PANE.CREATELINES 152259 . 155710) ( -\TEDIT.SUFFIXLINE.CREATE 155712 . 157327) (\TEDIT.LINES.BELOW 157329 . 161939) (\TEDIT.MEASURED.LINES -161941 . 163950) (\TEDIT.VALID.LASTCHNOS 163952 . 167728) (\TEDIT.VALID.NEXTCHNOS 167730 . 171204) ( -\TEDIT.LASTVALIDLINE 171206 . 175877) (\TEDIT.NEXTVALIDLINE 175879 . 178849) ( -\TEDIT.CLEARPANE.BELOW.LINE 178851 . 180957) (\TEDIT.INSERTLINE 180959 . 182345) (\TEDIT.LINE.BOTTOM -182347 . 185577) (\TEDIT.SHOW.AT.BOTTOMP 185579 . 186689) (\TEDIT.SHOW.AT.TOPP 186691 . 187400))))) + (FILEMAP (NIL (26256 28472 (\TEDIT.LINEDESCRIPTOR.DEFPRINT 26266 . 28470)) (35926 119762 ( +\TEDIT.FORMATLINE 35936 . 71423) (\TEDIT.FORMATLINE.SETUP.PARA 71425 . 76591) ( +\TEDIT.FORMATLINE.HORIZONTAL 76593 . 81261) (\TEDIT.FORMATLINE.VERTICAL 81263 . 83714) ( +\TEDIT.FORMATLINE.JUSTIFY 83716 . 89737) (\TEDIT.FORMATLINE.TABS 89739 . 97767) (\TEDIT.SCALE.TABS +97769 . 98560) (\TEDIT.FORMATLINE.PURGE.SPACES 98562 . 99989) (\TEDIT.FORMATLINE.FLUSH.SOFTHYPHEN +99991 . 101068) (\TEDIT.FORMATLINE.EMPTY 101070 . 105890) (\TEDIT.FORMATLINE.UPDATELOOKS 105892 . +112073) (\TEDIT.FORMATLINE.LASTLEGAL 112075 . 115525) (\TEDIT.LINES.ABOVE 115527 . 119138) ( +\TEDIT.CHNO.TO.YTOP 119140 . 119760)) (120039 140619 (\TEDIT.DISPLAYLINE 120049 . 132559) ( +\TEDIT.DISPLAYLINE.TABS 132561 . 135365) (\TEDIT.LINECACHE 135367 . 136095) (\TEDIT.CREATE.LINECACHE +136097 . 136933) (\TEDIT.BLTCHAR 136935 . 139562) (\TEDIT.DIACRITIC.SHIFT 139564 . 140617)) (141234 +186304 (\TEDIT.BACKFORMAT 141244 . 143798) (\TEDIT.PREVIOUS.LINEBREAK 143800 . 146603) ( +\TEDIT.UPDATE.LINES 146605 . 152320) (\TEDIT.PANE.CREATELINES 152322 . 154612) ( +\TEDIT.SUFFIXLINE.CREATE 154614 . 156229) (\TEDIT.LINES.BELOW 156231 . 160841) (\TEDIT.MEASURED.LINES +160843 . 162852) (\TEDIT.VALID.LASTCHNOS 162854 . 166630) (\TEDIT.VALID.NEXTCHNOS 166632 . 170106) ( +\TEDIT.LASTVALIDLINE 170108 . 174779) (\TEDIT.NEXTVALIDLINE 174781 . 177751) ( +\TEDIT.CLEARPANE.BELOW.LINE 177753 . 179859) (\TEDIT.INSERTLINE 179861 . 181247) (\TEDIT.LINE.BOTTOM +181249 . 184479) (\TEDIT.SHOW.AT.BOTTOMP 184481 . 185591) (\TEDIT.SHOW.AT.TOPP 185593 . 186302))))) STOP diff --git a/library/tedit/TEDIT-SCREEN.LCOM b/library/tedit/TEDIT-SCREEN.LCOM index 792fed880b4fafaf48e516d761eabb142ce4144b..904473e7e4aaed7f712d94ca64577ae9dab4bbba 100644 GIT binary patch delta 1187 zcmZuwO>7%Q6s}!^90&Ddtdd!im< zaHyJI{oKygz3NS@&hjm*3fepUE(^yWJagEqY3jSTPv*auww}}G58-!r?&WAcf4wm& zogfahc_Q};0neRz`NT!f(+{fd@-S)-V$L@Nc-8|kqLID~Tuir1gATGH2Pwn14jGHPe3K!q zu45edd0^1=R2n>a*fn+hAK%5|XYC!Q2^T_c{Q8kAxb6Bz|{2_fI%L5SvGFYd5Mj{&G$e^+{i8%$ko1B z9qpYeJ4SBy#wXRcZ}DUM8&w2pNE*i}Zknc^A7vGo_PjXy(`yieram7fD``)33Na!B mo(M@3DGH-MN6GOnJzuCq%u#0AP7OiN!kIH#ere~u#eV@5H$R{N delta 1160 zcmZuw&yU+g6y5~1EM|#VvZXBo`VWvOMUX(HTZ*y= zP+=(tio^kyIqVrYA`U3xh$?Q4gt+!p_1J6s41U|G9Yf*rRGTFo^7bs9!Mn&_{=_}yz)KlTr zu!z%jy#}MpSax7rwcQ)_w_PBfYhhmjjhSq; zhVb##E1(5YH%vQJG$eLnqvT8;mTtYSEid77XXOH0p4`-@rE=3#kJhW|-iyynzA}C*z3MyA=BbRS zh;o)mo`dK9$1(}bFIP+V)$ecowfbW?eW5!oKl=XH@}Al|^KI#YI(hb+=RK}(m7ab$ zIl|59>MwX`lRwYWQu*&ERJFBdW6D+{MK_Eo_)Q-!B0Eg#{V?z8#Xy4b6nuiHUW-YD zg6H{a?P&Fq=bDFT9<%l^;k+lnGY`#(M%Hq0T_5^k)MY7^!;Ip$2{}#r{5(ZAUAuXZ z=PbOC=qs25+xLL=!w%)Gb6L(a zus!<#XFFbj8)jTESqy303t+G<@1QI7{-(c?yo-+&4J}_BRLP z98J6*n?<&g~Q18I9D1!HKeEOl}NzUs<7j{8dC3)U#uLMB5i$QAL+w zl4Nz*P}j%#x&|{5702f68YQ6aj?<%BHW1yyjL3+mLWZdn7<76&J+Ae`w+fd?IND6x RsUzq$ICX0B)Ar|;e*ok&Hv0eo diff --git a/library/tedit/TEDIT-SELECTION b/library/tedit/TEDIT-SELECTION index 5063ef50..c6a90222 100644 --- a/library/tedit/TEDIT-SELECTION +++ b/library/tedit/TEDIT-SELECTION @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "29-May-2025 15:53:51" {WMEDLEY}TEDIT>TEDIT-SELECTION.;729 160720 +(FILECREATED "29-Jul-2025 11:22:10" {WMEDLEY}tedit>TEDIT-SELECTION.;731 161124 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.CHTOLINEX) + :CHANGES-TO (FNS \TEDIT.FIND.PROTECTED.START \TEDIT.FIND.PROTECTED.END) - :PREVIOUS-DATE " 6-May-2025 23:24:14" {WMEDLEY}TEDIT>TEDIT-SELECTION.;728) + :PREVIOUS-DATE "28-Jul-2025 23:50:43" {WMEDLEY}tedit>TEDIT-SELECTION.;730) (PRETTYCOMPRINT TEDIT-SELECTIONCOMS) @@ -394,7 +394,8 @@ PC)]) (\TEDIT.FIND.PROTECTED.END - [LAMBDA (TEXTOBJ CH# LIMITCH#) (* ; "Edited 9-Jul-2024 18:19 by rmk") + [LAMBDA (TEXTOBJ CH# LIMITCH#) (* ; "Edited 29-Jul-2025 11:21 by rmk") + (* ; "Edited 9-Jul-2024 18:19 by rmk") (* ; "Edited 17-Mar-2024 00:27 by rmk") (* ; "Edited 7-Apr-2023 22:13 by rmk") (* ; "Edited 23-Oct-2022 17:44 by rmk") @@ -410,7 +411,8 @@ (DECLARE (SPECVARS START-OF-PIECE)) (for PC backpieces (PREVPIECE (\TEDIT.CHTOPC CH# TEXTOBJ T)) until (ILEQ START-OF-PIECE LIMITCH#) - do (CL:WHEN (fetch (CHARLOOKS CLPROTECTED) of (PLOOKS PC)) + do (CL:WHEN (GETCLOOKS (PCHARLOOKS PC) + CLPROTECTED) (* ;; "Return the CH# just AFTER this first protected piece.") @@ -418,7 +420,8 @@ (add START-OF-PIECE (IMINUS (PLEN PC]) (\TEDIT.FIND.PROTECTED.START - [LAMBDA (TEXTOBJ CH# LIMITCH#) (* ; "Edited 9-Jul-2024 18:17 by rmk") + [LAMBDA (TEXTOBJ CH# LIMITCH#) (* ; "Edited 29-Jul-2025 11:21 by rmk") + (* ; "Edited 9-Jul-2024 18:17 by rmk") (* ; "Edited 17-Mar-2024 00:27 by rmk") (* ; "Edited 24-Nov-2023 21:25 by rmk") (* ; "Edited 7-Apr-2023 21:59 by rmk") @@ -438,7 +441,8 @@  "Move forward thru the pieces of the document, looking for one that contains protected text. ") (for PC inpieces (\TEDIT.CHTOPC CH# TEXTOBJ T) while (ILESSP START-OF-PIECE LIMITCH#) - do (CL:WHEN (fetch (CHARLOOKS CLPROTECTED) of (PLOOKS PC)) + do (CL:WHEN (GETCLOOKS (PCHARLOOKS PC) + CLPROTECTED) (* ;; "We found the beginning of a protected region. ") @@ -2072,7 +2076,8 @@ SELPIECES]) (\TEDIT.SELPIECES.FROM.STRING - [LAMBDA (STRING TEXTOBJ CHECKFOREOL CHARLOOKS PARALOOKS) (* ; "Edited 8-Feb-2025 20:14 by rmk") + [LAMBDA (STRING TEXTOBJ CHECKFOREOL CHARLOOKS PARALOOKS) (* ; "Edited 28-Jul-2025 23:50 by rmk") + (* ; "Edited 8-Feb-2025 20:14 by rmk") (* ; "Edited 20-Mar-2024 10:57 by rmk") (* ; "Edited 3-Mar-2024 13:00 by rmk") (* ; "Edited 28-Jan-2024 08:28 by rmk") @@ -2116,7 +2121,7 @@ PLEN _ (NCHARS STR) PBYTELEN _ (ITIMES (NCHARS STR) BYTESPERCHAR) - PLOOKS _ CHARLOOKS + PCHARLOOKS _ CHARLOOKS PPARALOOKS _ PARALOOKS PPARALAST _ T PREVPIECE _ PC @@ -2145,7 +2150,7 @@ BYTESPERCHAR) PBYTESPERCHAR _ BYTESPERCHAR PBINABLE _ PBINABLE - PLOOKS _ CHARLOOKS + PCHARLOOKS _ CHARLOOKS PPARALOOKS _ PARALOOKS)) (create SELPIECES SPFIRST _ FIRSTPIECE @@ -2551,26 +2556,26 @@ (ADDTOVAR LAMA TEDIT.SELPROP) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (15860 17681 (\TEDIT.SELECTION.DEFPRINT 15870 . 17679)) (17718 19223 ( -\TEDIT.SET.GLOBAL.SELECTIONS 17728 . 19221)) (19224 25195 (\TEDIT.SELECTED.PIECES 19234 . 20873) ( -\TEDIT.FIND.PROTECTED.END 20875 . 22544) (\TEDIT.FIND.PROTECTED.START 22546 . 24404) ( -\TEDIT.WORD.BOUND 24406 . 25193)) (25329 59436 (\TEDIT.EXTEND.SEL 25339 . 32579) (\TEDIT.SCAN.LINE -32581 . 44254) (\TEDIT.SCAN.LINE.WORD 44256 . 49249) (\TEDIT.XYTOSEL 49251 . 56589) (\TEDIT.REGIONTYPE - 56591 . 57610) (\TEDIT.XYTOSEL.INLINEP 57612 . 58067) (\TEDIT.XYTOSEL.LINE 58069 . 59434)) (59437 -72982 (\TEDIT.FIXSEL 59447 . 68824) (\TEDIT.CHTOLINEX 68826 . 72980)) (72983 77037 ( -\TEDIT.RESET.EXTEND.PENDING.DELETE 72993 . 74271) (\TEDIT.SET.SEL.LOOKS 74273 . 77035)) (77974 98740 ( -\TEDIT.SHOWSEL 77984 . 82960) (\TEDIT.NOSEL 82962 . 83263) (\TEDIT.SEL.OFF 83265 . 83676) ( -\TEDIT.SEL.ON 83678 . 84094) (\TEDIT.SHOWSEL.HILIGHT 84096 . 88717) (\TEDIT.UPDATE.SEL 88719 . 92934) -(\TEDIT.CARETLINE 92936 . 93650) (\TEDIT.SEL.L1 93652 . 94335) (\TEDIT.SEL.LN 94337 . 95020) ( -\TEDIT.SEL.DELETEDCHARS 95022 . 98738)) (98741 103447 (\TEDIT.COPYSEL 98751 . 101217) ( -\TEDIT.SEL.CHANGED? 101219 . 103445)) (103478 117137 (\TEDIT.SELECT.OBJECT 103488 . 108441) ( -\TEDIT.SHOWSEL.OBJECT 108443 . 110674) (\TEDIT.CLIP.OBJECT 110676 . 112680) (\TEDIT.OPERATE.OBJECT -112682 . 117135)) (117165 136797 (\TEDIT.SELPIECES 117175 . 121456) (\TEDIT.SELPIECES.COPY 121458 . -123947) (\TEDIT.SELPIECES.CONCAT 123949 . 125828) (\TEDIT.SELPIECES.CHARTRANSFORM 125830 . 129289) ( -\TEDIT.SELPIECES.FROM.STRING 129291 . 134432) (\TEDIT.SELPIECES.TO.STRING 134434 . 136795)) (136850 -160551 (TEDIT.XYTOCH 136860 . 139436) (TEDIT.SELPROP 139438 . 143468) (TEDIT.GETPOINT 143470 . 145390) - (TEDIT.GETSEL 145392 . 146268) (TEDIT.GETSEL.PARA 146270 . 147219) (TEDIT.SCANSEL 147221 . 148169) ( -TEDIT.SET.SEL.LOOKS 148171 . 149656) (TEDIT.SETSEL 149658 . 154576) (TEDIT.SHOWSEL 154578 . 156442) ( -TEDIT.SEL.AS.STRING 156444 . 158929) (TEDIT.SEL.AS.SEXPR 158931 . 160217) (TEDIT.SELECTALL 160219 . -160549))))) + (FILEMAP (NIL (15897 17718 (\TEDIT.SELECTION.DEFPRINT 15907 . 17716)) (17755 19260 ( +\TEDIT.SET.GLOBAL.SELECTIONS 17765 . 19258)) (19261 25482 (\TEDIT.SELECTED.PIECES 19271 . 20910) ( +\TEDIT.FIND.PROTECTED.END 20912 . 22706) (\TEDIT.FIND.PROTECTED.START 22708 . 24691) ( +\TEDIT.WORD.BOUND 24693 . 25480)) (25616 59723 (\TEDIT.EXTEND.SEL 25626 . 32866) (\TEDIT.SCAN.LINE +32868 . 44541) (\TEDIT.SCAN.LINE.WORD 44543 . 49536) (\TEDIT.XYTOSEL 49538 . 56876) (\TEDIT.REGIONTYPE + 56878 . 57897) (\TEDIT.XYTOSEL.INLINEP 57899 . 58354) (\TEDIT.XYTOSEL.LINE 58356 . 59721)) (59724 +73269 (\TEDIT.FIXSEL 59734 . 69111) (\TEDIT.CHTOLINEX 69113 . 73267)) (73270 77324 ( +\TEDIT.RESET.EXTEND.PENDING.DELETE 73280 . 74558) (\TEDIT.SET.SEL.LOOKS 74560 . 77322)) (78261 99027 ( +\TEDIT.SHOWSEL 78271 . 83247) (\TEDIT.NOSEL 83249 . 83550) (\TEDIT.SEL.OFF 83552 . 83963) ( +\TEDIT.SEL.ON 83965 . 84381) (\TEDIT.SHOWSEL.HILIGHT 84383 . 89004) (\TEDIT.UPDATE.SEL 89006 . 93221) +(\TEDIT.CARETLINE 93223 . 93937) (\TEDIT.SEL.L1 93939 . 94622) (\TEDIT.SEL.LN 94624 . 95307) ( +\TEDIT.SEL.DELETEDCHARS 95309 . 99025)) (99028 103734 (\TEDIT.COPYSEL 99038 . 101504) ( +\TEDIT.SEL.CHANGED? 101506 . 103732)) (103765 117424 (\TEDIT.SELECT.OBJECT 103775 . 108728) ( +\TEDIT.SHOWSEL.OBJECT 108730 . 110961) (\TEDIT.CLIP.OBJECT 110963 . 112967) (\TEDIT.OPERATE.OBJECT +112969 . 117422)) (117452 137201 (\TEDIT.SELPIECES 117462 . 121743) (\TEDIT.SELPIECES.COPY 121745 . +124234) (\TEDIT.SELPIECES.CONCAT 124236 . 126115) (\TEDIT.SELPIECES.CHARTRANSFORM 126117 . 129576) ( +\TEDIT.SELPIECES.FROM.STRING 129578 . 134836) (\TEDIT.SELPIECES.TO.STRING 134838 . 137199)) (137254 +160955 (TEDIT.XYTOCH 137264 . 139840) (TEDIT.SELPROP 139842 . 143872) (TEDIT.GETPOINT 143874 . 145794) + (TEDIT.GETSEL 145796 . 146672) (TEDIT.GETSEL.PARA 146674 . 147623) (TEDIT.SCANSEL 147625 . 148573) ( +TEDIT.SET.SEL.LOOKS 148575 . 150060) (TEDIT.SETSEL 150062 . 154980) (TEDIT.SHOWSEL 154982 . 156846) ( +TEDIT.SEL.AS.STRING 156848 . 159333) (TEDIT.SEL.AS.SEXPR 159335 . 160621) (TEDIT.SELECTALL 160623 . +160953))))) STOP diff --git a/library/tedit/TEDIT-SELECTION.LCOM b/library/tedit/TEDIT-SELECTION.LCOM index dbf8801a608fbdc7681edb11dbd1ad634de9dc0c..466a0b7f935c7258bd0f1d8eb6b0ff55fec2280a 100644 GIT binary patch delta 433 zcmaF=jd9a=#t9MimbzZ0Il4v$My3jehE_&KR)z*j3K~ku`MCv|IjJcM`FRRT3f1Ah zt}Z^Vk+n8CnMp;7MU{3XsVSKyb|J1Vo*}xyu0F2LA)fwzde-K~hMEdoN=C@08dw<^ z1Cf$KQc)`0*wl)GqGDAmg~^-v#3tV=8ua&-hc22By%KZM;ci12`dp_!qfk;&wGM)k=%`9vmffiwunGur z4fFI54c2u5S_bl_1tRc_jIB%!tW1F3By1VnE(1-j$$C|io8_78f|;E~cqT`ODo$<; Yy}}D*?@w_N5!j!SCBm{fDU4SY0NHAK)&Kwi delta 420 zcmdn=o$>uQ#t9Mi#=2gmdAddhMy3h|mR1I4R)*$E3K~ku`MCv|IjJcM`FRRT3S8AL z!QQntp~b01#dg_=1v!a%c0T#Zi8*$;sVO#7s${1Y~oLdWu3O&|o+x0(&W-`^90%y|jnGuE3J7uy^Yjl5 z)^!0I4h$AEgxN;MRz@aPh9;n}f*X!uHj9ykCfDS`D#^`BOm@MOmxju-q&SQ4Ogtedit>TEDIT-STYLES.;4 12550 +(FILECREATED "28-Jul-2025 23:25:43"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-STYLES.;5 12713 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.APPLY.STYLES \TEDIT.APPLY.PARASTYLES) + :CHANGES-TO (FNS \TEDIT.APPLY.PARASTYLES) - :PREVIOUS-DATE "12-Feb-2025 12:18:37" {WMEDLEY}tedit>TEDIT-STYLES.;3) + :PREVIOUS-DATE "19-Feb-2025 13:31:28" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-STYLES.;4) (PRETTYCOMPRINT TEDIT-STYLESCOMS) @@ -97,7 +99,8 @@ STYLE]) (\TEDIT.APPLY.PARASTYLES - [LAMBDA (PARALOOKS PC TEXTOBJ) (* ; "Edited 19-Feb-2025 13:31 by rmk") + [LAMBDA (PARALOOKS PC TEXTOBJ) (* ; "Edited 28-Jul-2025 21:12 by rmk") + (* ; "Edited 19-Feb-2025 13:31 by rmk") (* ; "Edited 8-Feb-2025 22:07 by rmk") (* ; "Edited 4-Aug-2024 14:48 by rmk") (* ; "Edited 29-Apr-2024 11:06 by rmk") @@ -128,7 +131,7 @@ PARALOOKS] (CL:WHEN (LISTP STYLE) (SETQ STYLE (\TEDIT.PARSE.PARALOOKS.LIST (APPEND STYLE '(STYLE NIL)) - PARALOOKS TEXTOBJ))) + PARALOOKS))) (CL:UNLESS NOSTYLE (push *TEDIT-PARASTYLE-CACHE* (CONS PARALOOKS STYLE))) STYLE]) @@ -228,7 +231,7 @@ (GLOBALVARS *TEDIT-PARASTYLE-CACHE* *TEDIT-CURRENTPARA-CACHE* *TEDIT-STYLESHEET-SAVE-LIST*) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (1980 11244 (\TEDIT.APPLY.STYLES 1990 . 5638) (\TEDIT.APPLY.PARASTYLES 5640 . 8118) ( -TEDIT.STYLESHEET 8120 . 9187) (TEDIT.POP.STYLESHEET 9189 . 9857) (TEDIT.PUSH.STYLESHEET 9859 . 10599) -(TEDIT.ADD.STYLESHEET 10601 . 11242))))) + (FILEMAP (NIL (2042 11407 (\TEDIT.APPLY.STYLES 2052 . 5700) (\TEDIT.APPLY.PARASTYLES 5702 . 8281) ( +TEDIT.STYLESHEET 8283 . 9350) (TEDIT.POP.STYLESHEET 9352 . 10020) (TEDIT.PUSH.STYLESHEET 10022 . 10762 +) (TEDIT.ADD.STYLESHEET 10764 . 11405))))) STOP diff --git a/library/tedit/TEDIT-STYLES.LCOM b/library/tedit/TEDIT-STYLES.LCOM index cc252b15649efde9bcde289d3ffde26cb5041ea1..9a1a677f3b3673711c813555312fdbfc40b5a05a 100644 GIT binary patch delta 360 zcmZ3lFj;Xzgn)&vS80x}k%5t^f|0S6k?F(?%gFNlqU_APblu$4l$_K`yPV9VqQs&~ zyOPwD%o4j0R~OF^-QbW&AJj7+SIEtC|Jic*vFa|<$aQd1OC zD+-E=Rjno;;F65a%u`Tu3-$3)K-Q+Gr>CTlk_fZ{t9d5oN}606Zk|4_&Oxq@Kqn|D z8KJw}%EWkLwVDwrj#n@=GB-4yT*|0B`5YJ5AIyRLA+vUWMv3)4bUkl`k0M1xh4y8i)`*@l4NF_F?lKL YBt9o@1|ZnI;SPg_p^5os7dC$`0EU)Jy#N3J diff --git a/library/tedit/TEDIT-WINDOW b/library/tedit/TEDIT-WINDOW index 758e60e9..bed792bc 100644 --- a/library/tedit/TEDIT-WINDOW +++ b/library/tedit/TEDIT-WINDOW @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "26-Jul-2025 15:45:59" {WMEDLEY}TEDIT>TEDIT-WINDOW.;862 229373 +(FILECREATED "11-Aug-2025 21:22:37" {WMEDLEY}tedit>TEDIT-WINDOW.;863 229545 :EDIT-BY rmk - :CHANGES-TO (FNS \TEDIT.SET.WINDOW.EXTENT) + :CHANGES-TO (FNS \TEDIT.LIKELY.FILENAME) - :PREVIOUS-DATE "21-Jul-2025 11:55:26" {WMEDLEY}TEDIT>TEDIT-WINDOW.;861) + :PREVIOUS-DATE "26-Jul-2025 15:45:59" {WMEDLEY}tedit>TEDIT-WINDOW.;862) (PRETTYCOMPRINT TEDIT-WINDOWCOMS) @@ -2230,7 +2230,8 @@ TITLE)))]) (\TEDIT.LIKELY.FILENAME - [LAMBDA (TSTREAM UNFORMATTED?) (* ; "Edited 29-May-2025 15:01 by rmk") + [LAMBDA (TSTREAM UNFORMATTED?) (* ; "Edited 11-Aug-2025 21:19 by rmk") + (* ; "Edited 29-May-2025 15:01 by rmk") (* ; "Edited 7-Apr-2025 23:13 by rmk") (* ; "Edited 14-Mar-2025 11:46 by rmk") (* ; "Edited 18-Jan-2024 09:03 by rmk") @@ -2265,7 +2266,8 @@ elseif UNFORMATTED? then 'TXT else 'TEDIT)) - (CL:UNLESS (U-CASEP TXTFILE) (* ; + (CL:UNLESS (U-CASEP (FILENAMEFIELD TXTFILE 'NAME)) + (* ;  "Lower case the extension if the original name had any LC characters") (SETQ EXT (L-CASE EXT))) (PACKFILENAME 'EXTENSION EXT 'VERSION NIL 'BODY TXTFILE))]) @@ -3619,36 +3621,36 @@ (RPAQ? TEDIT.TITLED.ICON.TEMPLATE (create TITLEDICON ICON _ TEDITICON MASK _ TEDITMASK TITLEREG _ TEDIT.ICON.TITLE.REGION)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (17104 18000 (TEDIT.DEFER.UPDATES 17114 . 17998)) (18001 43946 (\TEDIT.WINDOW.CREATE -18011 . 25341) (\TEDIT.WINDOW.GETREGION 25343 . 28833) (\TEDIT.WINDOW.SETUP 28835 . 33165) ( -\TEDIT.MINIMAL.WINDOW.SETUP 33167 . 40578) (\TEDIT.CLEARPANE 40580 . 41297) (\TEDIT.FILL.PANES 41299 - . 43944)) (43947 67648 (\TEDIT.CURSORMOVEDFN 43957 . 49567) (\TEDIT.CURSOROUTFN 49569 . 50257) ( -\TEDIT.ACTIVE.WINDOWP 50259 . 51329) (\TEDIT.EXPANDFN 51331 . 51894) (\TEDIT.MAINW 51896 . 53176) ( -\TEDIT.MAINSTREAM 53178 . 53512) (\TEDIT.PRIMARYPANE 53514 . 54284) (\TEDIT.PANELIST 54286 . 54782) ( -\TEDIT.NEWREGIONFN 54784 . 57300) (\TEDIT.SET.WINDOW.EXTENT 57302 . 62284) (\TEDIT.SHRINK.ICONCREATE -62286 . 65019) (\TEDIT.SHRINKFN 65021 . 65430) (\TEDIT.PANEREGION 65432 . 67646)) (67680 100726 ( -\TEDIT.BUTTONEVENTFN 67690 . 80663) (\TEDIT.BUTTONEVENTFN.DOOPERATION 80665 . 87928) ( -\TEDIT.BUTTONEVENTFN.GETOPERATION 87930 . 89772) (\TEDIT.BUTTONEVENTFN.CURSEL.INIT 89774 . 93444) ( -\TEDIT.BUTTONEVENTFN.INACTIVE 93446 . 95876) (\TEDIT.BUTTONEVENTFN.INTITLE 95878 . 97713) ( -\TEDIT.COPYINSERTFN 97715 . 98847) (\TEDIT.FOREIGN.COPY 98849 . 100724)) (100727 117969 ( -\TEDIT.PANE.SPLIT 100737 . 104685) (\TEDIT.SPLITW 104687 . 112425) (\TEDIT.UNSPLITW 112427 . 116626) ( -\TEDIT.LINKPANES 116628 . 117391) (\TEDIT.UNLINKPANE 117393 . 117967)) (119403 120294 (TEDITWINDOWP -119413 . 120292)) (120331 123434 (TEDIT.GETINPUT 120341 . 122784) (\TEDIT.MAKEFILENAME 122786 . 123432 -)) (123483 131110 (TEDIT.PROMPTWINDOW 123493 . 123807) (TEDIT.PROMPTPRINT 123809 . 126436) ( -TEDIT.PROMPTCLEAR 126438 . 128157) (TEDIT.PROMPTFLASH 128159 . 129417) (\TEDIT.PROMPT.PAGEFULLFN -129419 . 131108)) (131348 141752 (\TEDIT.FILENAME 131358 . 132130) (\TEDIT.DEFAULT.TITLE 132132 . -134511) (\TEDIT.WINDOW.TITLE 134513 . 136682) (\TEDIT.LIKELY.FILENAME 136684 . 139234) ( -\TEDIT.UPDATE.TITLE 139236 . 141750)) (141795 154279 (TEDIT.DEACTIVATE.WINDOW 141805 . 147378) ( -\TEDIT.RESHAPEFN 147380 . 149465) (\TEDIT.REPAINTFN 149467 . 149691) (\TEDIT.CLOSESPLITS 149693 . -152138) (\TEDIT.CLOSEPANE 152140 . 154277)) (154280 197079 (\TEDIT.SCROLLFN 154290 . 156521) ( -\TEDIT.SCROLLCH.TOP 156523 . 158634) (\TEDIT.SCROLLCH.BOTTOM 158636 . 162966) (\TEDIT.SCROLLUP 162968 - . 168694) (\TEDIT.TOPLINE.YTOP 168696 . 170365) (\TEDIT.SCROLLDOWN 170367 . 177406) ( -\TEDIT.SCROLL.CARET 177408 . 180246) (\TEDIT.VISIBLECARETP 180248 . 182542) (\TEDIT.VISIBLECHARP -182544 . 183635) (\TEDIT.BITMAPLINES 183637 . 187557) (\TEDIT.SETPANE.TOPLINE 187559 . 188171) ( -\TEDIT.SHIFTLINES 188173 . 197077)) (197080 207949 (\TEDIT.ONSCREEN? 197090 . 201641) ( -\TEDIT.ONSCREEN.REGION 201643 . 205294) (\TEDIT.AFTERMOVEFN 205296 . 206193) (OFFSCREENP 206195 . -207947)) (207991 210805 (\TEDIT.PROCIDLEFN 208001 . 209661) (\TEDIT.PROCENTRYFN 209663 . 210108) ( -\TEDIT.PROCEXITFN 210110 . 210803)) (210884 224109 (\TEDIT.DOWNCARET 210894 . 211687) ( -\TEDIT.FLASHCARET 211689 . 213800) (\TEDIT.UPCARET 213802 . 214906) (TEDIT.NORMALIZECARET 214908 . -218126) (\TEDIT.SETCARET 218128 . 223479) (\TEDIT.CARET 223481 . 224107))))) + (FILEMAP (NIL (17102 17998 (TEDIT.DEFER.UPDATES 17112 . 17996)) (17999 43944 (\TEDIT.WINDOW.CREATE +18009 . 25339) (\TEDIT.WINDOW.GETREGION 25341 . 28831) (\TEDIT.WINDOW.SETUP 28833 . 33163) ( +\TEDIT.MINIMAL.WINDOW.SETUP 33165 . 40576) (\TEDIT.CLEARPANE 40578 . 41295) (\TEDIT.FILL.PANES 41297 + . 43942)) (43945 67646 (\TEDIT.CURSORMOVEDFN 43955 . 49565) (\TEDIT.CURSOROUTFN 49567 . 50255) ( +\TEDIT.ACTIVE.WINDOWP 50257 . 51327) (\TEDIT.EXPANDFN 51329 . 51892) (\TEDIT.MAINW 51894 . 53174) ( +\TEDIT.MAINSTREAM 53176 . 53510) (\TEDIT.PRIMARYPANE 53512 . 54282) (\TEDIT.PANELIST 54284 . 54780) ( +\TEDIT.NEWREGIONFN 54782 . 57298) (\TEDIT.SET.WINDOW.EXTENT 57300 . 62282) (\TEDIT.SHRINK.ICONCREATE +62284 . 65017) (\TEDIT.SHRINKFN 65019 . 65428) (\TEDIT.PANEREGION 65430 . 67644)) (67678 100724 ( +\TEDIT.BUTTONEVENTFN 67688 . 80661) (\TEDIT.BUTTONEVENTFN.DOOPERATION 80663 . 87926) ( +\TEDIT.BUTTONEVENTFN.GETOPERATION 87928 . 89770) (\TEDIT.BUTTONEVENTFN.CURSEL.INIT 89772 . 93442) ( +\TEDIT.BUTTONEVENTFN.INACTIVE 93444 . 95874) (\TEDIT.BUTTONEVENTFN.INTITLE 95876 . 97711) ( +\TEDIT.COPYINSERTFN 97713 . 98845) (\TEDIT.FOREIGN.COPY 98847 . 100722)) (100725 117967 ( +\TEDIT.PANE.SPLIT 100735 . 104683) (\TEDIT.SPLITW 104685 . 112423) (\TEDIT.UNSPLITW 112425 . 116624) ( +\TEDIT.LINKPANES 116626 . 117389) (\TEDIT.UNLINKPANE 117391 . 117965)) (119401 120292 (TEDITWINDOWP +119411 . 120290)) (120329 123432 (TEDIT.GETINPUT 120339 . 122782) (\TEDIT.MAKEFILENAME 122784 . 123430 +)) (123481 131108 (TEDIT.PROMPTWINDOW 123491 . 123805) (TEDIT.PROMPTPRINT 123807 . 126434) ( +TEDIT.PROMPTCLEAR 126436 . 128155) (TEDIT.PROMPTFLASH 128157 . 129415) (\TEDIT.PROMPT.PAGEFULLFN +129417 . 131106)) (131346 141924 (\TEDIT.FILENAME 131356 . 132128) (\TEDIT.DEFAULT.TITLE 132130 . +134509) (\TEDIT.WINDOW.TITLE 134511 . 136680) (\TEDIT.LIKELY.FILENAME 136682 . 139406) ( +\TEDIT.UPDATE.TITLE 139408 . 141922)) (141967 154451 (TEDIT.DEACTIVATE.WINDOW 141977 . 147550) ( +\TEDIT.RESHAPEFN 147552 . 149637) (\TEDIT.REPAINTFN 149639 . 149863) (\TEDIT.CLOSESPLITS 149865 . +152310) (\TEDIT.CLOSEPANE 152312 . 154449)) (154452 197251 (\TEDIT.SCROLLFN 154462 . 156693) ( +\TEDIT.SCROLLCH.TOP 156695 . 158806) (\TEDIT.SCROLLCH.BOTTOM 158808 . 163138) (\TEDIT.SCROLLUP 163140 + . 168866) (\TEDIT.TOPLINE.YTOP 168868 . 170537) (\TEDIT.SCROLLDOWN 170539 . 177578) ( +\TEDIT.SCROLL.CARET 177580 . 180418) (\TEDIT.VISIBLECARETP 180420 . 182714) (\TEDIT.VISIBLECHARP +182716 . 183807) (\TEDIT.BITMAPLINES 183809 . 187729) (\TEDIT.SETPANE.TOPLINE 187731 . 188343) ( +\TEDIT.SHIFTLINES 188345 . 197249)) (197252 208121 (\TEDIT.ONSCREEN? 197262 . 201813) ( +\TEDIT.ONSCREEN.REGION 201815 . 205466) (\TEDIT.AFTERMOVEFN 205468 . 206365) (OFFSCREENP 206367 . +208119)) (208163 210977 (\TEDIT.PROCIDLEFN 208173 . 209833) (\TEDIT.PROCENTRYFN 209835 . 210280) ( +\TEDIT.PROCEXITFN 210282 . 210975)) (211056 224281 (\TEDIT.DOWNCARET 211066 . 211859) ( +\TEDIT.FLASHCARET 211861 . 213972) (\TEDIT.UPCARET 213974 . 215078) (TEDIT.NORMALIZECARET 215080 . +218298) (\TEDIT.SETCARET 218300 . 223651) (\TEDIT.CARET 223653 . 224279))))) STOP diff --git a/library/tedit/TEDIT-WINDOW.LCOM b/library/tedit/TEDIT-WINDOW.LCOM index 9dd57e66f13b505cdf5bfc3cb27f83f32650b1d6..f3846c1f48f41bc79e232da052ce56fa512feb99 100644 GIT binary patch delta 444 zcmeBv%e>+(^Mr5%LqlE1(sW%T10z!fBSR}ABP(NbB?S$oCz8nwThQa%s4E`nWm=xjKfpx+o}NcP@(aIE)pHj4Vw} zOefbds!!f}g&*i#tAHTaFi-!`U|koWISNWfX1ZRbIS^kPnp&BdTA5lZDR3d1qp+Ei zDW;ln?c}st8{QHxHU=O#$q|*ZDP!{bT63;+5T6S~Onz3YX<=@l5a8(S4RWiWqpz!i zp^2%2kFK+0Fpz0%p%4mY1_0T{3NSTpo~}MFlTGU!waknaocvuP6%0+y6~bJDf<68H ZfNVnr*N6~TKM2prLIGs%=IM1`$^kWuciaE~ delta 463 zcmZ4Smbv>a^Mvq7BXeD^(i~kQ10z!fLnA9w11lqAB?S$oS{a*KnHVW4lz`07QBP6G1RC!a>f@t;tWHl)Pe~yqu>@#67X79MN}606Zk|4_ z&Oxq@A+9cy_c2NsREPVzy7;(8*4pG`CKV+XRoVe%JVPL)Zn&qPi+{MDwS}3Hf{~G> zvAOZ&3P$zG61svxnhI6{L9St*{-MFTEl_tLjTM~yT_P0>P0SU-T!Vr={r!M!Lj~7}5LZ7CZ}XPAFXaG87lldy diff --git a/library/tedit/TEDIT.LCOM b/library/tedit/TEDIT.LCOM index 431c7c6efcc806067e21e4929ddda2a6de5d0e2c..500cfb3c5bcbb99224644709f8542b5e389ecb8e 100644 GIT binary patch delta 1110 zcmZuvOHUI~6mAO^B^Vz;!S_kASWKqOy)#qjm}rL1EgjO%)R|kL2`<2CXekea5G9h3 z_=s^QxpD7bFl^i?Mpvxd>PG*7F}iW#%G1)RESSaI^Sb9d=lkxfCy|d&BQK|Vfk?*s zyhLTH0a0~L)`_-VPn~$MvRbb#&r3@cf3dQ0Q+x}b9agj<-Ib+#wZ)1Lm529M@5goVbz@)#YReGImhyQxcrlqw#=xIl!{Y8kI+9dus5_Ch z@+{*rgEJFihtBzE@US_rDUDS$LR8S1X>n<+4693Z=+-ki!yadz#2rXvZSiGe@Ty*P z*`(!^Jjp~LTyONidWx>5k&^AhaUzPk^C!I58U86gM0>^e=!JOhQwYE9-1A(tVeIuc zkLIubS%=;F!msKt@i+R~RaD@-oGiLdhIt-PDnrZ0qX<+U0mC%g`O!4YAP*KNpvo;1 zlUBiS%SFRxpeW);*Oe`rf;=-O8TJN>1WZ}B=}ZAhQ@CAna6vL62bQJ;ja=q&!{u2U zc^iembKC;@3gise#2Dj1ly=q_%VRS|0nYr|8W1`Pwo#bC7zv=#T6^YH8tbOHGd2M! zT)bs!Bj9lqxB!S61S#e#*mCFXQS;)tAqdZOg+iUiu?C-W5x;q!nvII#xD>u5?!@~} z=l0ZhexbK#*I(%EZ2ThPMZDhM@%T;XSxblWO$o|X->CM8BZI?T?|u9C_O2~%3`+58 z&8Ygvk2C+^q`J%<}MIWS;+e_x{{{rDjnEo*-I?9)wksjoZl`p~wp(_$EsY)omtf_GhLi&V z!a;9_MBI4t;ve9_gtH;>#!ZcP6VG0_YvS8ND<h)reD( zo84UJs6aCy;dTKd@7V${Fif6af}|87dig6lT znc;#KVB<32pKM+^d^y06N1zC@|8sD3*opRqBHBR5udvsdhvqK&UvF`J@z)b0SG{_C z@W^`-j|4;b$SWO7@ymXCVr6Kj6b-75$2wC}8}Q#x-0lD9l}`?i%KncDPC12rJQzxe zDC*Qh-eD$hRY0U&#k`~2mTB_3X5+0zO8wu7(TIq*_rF_-swi~r=ZnTXRs+rTz-rat zodlRb(e*Qm0y7!9PerM_(;+PuffB+0GMTs{((Z{{VkWkn%vYR{jGQ?gs$;jZi b_)lTqk*)(0MHE6L|8r`lPdQAaZ#Vw{w*L#2 diff --git a/library/tedit/tedit-exports.all b/library/tedit/tedit-exports.all index 26029105..51f7ba46 100644 --- a/library/tedit/tedit-exports.all +++ b/library/tedit/tedit-exports.all @@ -1,9 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 3-Jul-2025 13:10:56"  -{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>tedit-exports.all;230 53573 +(FILECREATED " 1-Aug-2025 14:59:31"  +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>tedit-exports.all;239 53083 - :EDIT-BY rmk) + :EDIT-BY rmk + + :PREVIOUS-DATE "28-Jul-2025 23:52:50" +{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>tedit-exports.all;238) (PRETTYCOMPRINT ((E (MAPC (MKLIST FROMFILES) (FUNCTION (LAMBDA (F) (MAPC (IMPORTFILE F FLG) (FUNCTION @@ -15,7 +18,7 @@ PRINT)))))))) (PUTPROPS FTEXTOBJ MACRO ((X) (TEXTOBJ! (CL:IF (type? TEXTOBJ X) X (GETTSTR X TEXTOBJ))))) (GLOBALVARS CHECK-TEDIT-ASSERTIONS) (RPAQ? CHECK-TEDIT-ASSERTIONS T) -(PUTPROP (QUOTE TEDIT) (QUOTE IMPORTDATE) (IDATE "28-May-2025 16:07:21")) +(PUTPROP (QUOTE TEDIT) (QUOTE IMPORTDATE) (IDATE " 1-Aug-2025 14:50:15")) (RPAQQ \BTREEWORDSPERSLOT 4) (RPAQQ \BTREEMAXCOUNT 8) (CONSTANTS (\BTREEWORDSPERSLOT 4) (\BTREEMAXCOUNT 8)) @@ -49,7 +52,7 @@ DLEN1 DOWN2 DLEN2 DOWN3 DLEN3 DOWN4 DLEN4 DOWN5 DLEN5 DOWN6 DLEN6 DOWN7 DLEN7 DO (\DTEST (OR (NEXTPIECE I.V.) (GO $$OUT)) (QUOTE PIECE))))) (I.S.OPR (QUOTE backpieces) NIL (QUOTE (first (SETQ I.V. (\DTEST (OR BODY (GO $$OUT)) (QUOTE PIECE))) by (\DTEST (OR (PREVPIECE I.V.) (GO $$OUT)) (QUOTE PIECE))))) -(PUTPROP (QUOTE TEDIT-PCTREE) (QUOTE IMPORTDATE) (IDATE " 8-Feb-2025 20:56:54")) +(PUTPROP (QUOTE TEDIT-PCTREE) (QUOTE IMPORTDATE) (IDATE "28-Jul-2025 23:25:19")) (DATATYPE SELECTION ((* ;; "Description of a piece of selected text for TEdit. Text has to be selected before it can be operated on by the user. The caret is to the left of CH# if POINT is LEFT, to the keft of CHLIM if POINT is RIGHT." ) (* ;; "If DCH > 0, highlighting goes from CH# to (SUB1 CHLIM = (SUB1 (IPLUS CH# DCH)).") (* ;; @@ -125,7 +128,7 @@ TSTREAM ONLYPANE DONTFIX))) (PUTPROPS \TEDIT.SEL.OFF MACRO ((TSTREAM SEL ONLYPANE) (* ; "Takes down SEL in TSTREAM, where SEL defaults to the current selection") (\TEDIT.SHOWSEL SEL NIL TSTREAM ONLYPANE))) -(PUTPROP (QUOTE TEDIT-SELECTION) (QUOTE IMPORTDATE) (IDATE "29-May-2025 15:53:51")) +(PUTPROP (QUOTE TEDIT-SELECTION) (QUOTE IMPORTDATE) (IDATE "29-Jul-2025 11:22:10")) (RECORD TAB (TABX . TABKIND)) (RECORD TABSPEC (DEFAULTTAB . TABS)) (DATATYPE LINECACHE ((* ;; "Image cache for display lines.") LCBITMAP (* ; @@ -258,7 +261,7 @@ NEXTAVAILABLECHARSLOT) of THISLINE))) (T $$STARTSLOT))) (SETQ $$CHARSLOTLIMIT (F ) by (PREVCHARSLOT I.V.) eachtime (SETQ CHAR (fetch (CHARSLOT CHAR) of I.V.)) (SETQ CHARW (fetch ( CHARSLOT CHARW) of I.V.)) (SETQ CHARCL (fetch (CHARSLOT CHARCL) of I.V.)) repeatuntil (EQ I.V. $$CHARSLOTLIMIT))))) T) -(PUTPROP (QUOTE TEDIT-SCREEN) (QUOTE IMPORTDATE) (IDATE "12-Jun-2025 15:45:54")) +(PUTPROP (QUOTE TEDIT-SCREEN) (QUOTE IMPORTDATE) (IDATE "28-Jul-2025 23:23:33")) (DATATYPE PIECE ((* ; "The piece describes either a string or part of a file. , or a generalized OBJECT.") PCONTENTS (* ; "The background source of data for this piece (stream, string, block, object, depending on the PTYPE)." @@ -275,10 +278,8 @@ PNEW FLAG) (* ; XPOINTER) (* ; "Points to the PCTB tree-node that contains this piece.") (PCHARSET BYTE) (* ; "High-order charset for FATFILE1 pieces") (PUTF8BYTESPERCHAR BYTE)) (* ; "The number of bytes in the UTF-8 encoding of all the Unicode characters in this piece") (ACCESSFNS (( -POBJ (AND (EQ OBJECT.PTYPE (PTYPE DATUM)) (type? IMAGEOBJ (PCONTENTS DATUM)) (PCONTENTS DATUM))) ( -PLOOKS (STANDARD (fetch (PIECE PCHARLOOKS) of DATUM) FAST (fetch (PIECE PCHARLOOKS) of DATUM)) ( -STANDARD (replace (PIECE PCHARLOOKS) of DATUM with NEWVALUE) FAST (freplace (PIECE PCHARLOOKS) of -DATUM with NEWVALUE))))) PFPOS _ 0 PLEN _ 0 PBYTELEN _ 0 PPARALOOKS _ TEDIT.DEFAULT.FMTSPEC) +POBJ (AND (EQ OBJECT.PTYPE (PTYPE DATUM)) (type? IMAGEOBJ (PCONTENTS DATUM)) (PCONTENTS DATUM))))) +PFPOS _ 0 PLEN _ 0 PBYTELEN _ 0) (DATATYPE TEXTOBJ ((* ;; "This is where TEdit stores its state information, and internal data about the text being edited.") PCTB (* ; "The piece table") TEXTLEN (* ; "# of chars in the text") PRIMARYPANE (* ; @@ -315,8 +316,8 @@ NIL (* ; "Was DELETESEL: Text to be deleted imminently") NIL (* ; "T if this TEXTOBJ is a tedit-style menu") DEFAULTPARALOOKS (* ; "Default Formatting Spec to be used when formatting paragraphs") (FORMATTEDP FLAG) (* ; "Flag for paragraph formatting. T if this document is to contain paragraph formatting information.") -(TXTREADONLY FLAG) (* ; "This is only available for shift selection.") (TXTEDITING FLAG) (* ; -"T => This document is in a window and there is an edit process behind it. For example, it only makes sense to have a caret show up if you are editing." +(TXTREADONLY FLAG) (* ; "This is only available for shift selection.") (UNDERTEDIT FLAG) (* ; +"Was TXTEDITING, but it was never fetched. T => This document is in a window and there is an edit process behind it. For example, it only makes sense to have a caret show up if you are editing." ) (TXTNOTSPLITTABLE FLAG) (* ; "Can't split into panes, split-region not show. Was TXTNONSCHARS: T => If TEdit rns into a 255, it won't attempt to convert to NS characters. Used for REALLY plain-text manipulation." ) TXTTERMSA (* ; "Special instructions for displaying characters on the screen") EDITOPACTIVE (* ; @@ -349,8 +350,7 @@ TXTAPPENDONLY FLAG) (* ; (\DIRTY (ffetch (TEXTOBJ \XDIRTY) of DATUM) (PROGN (FSETTOBJ DATUM LASTARROWX NIL) (CL:UNLESS (EQ NEWVALUE (ffetch (TEXTOBJ \XDIRTY) of DATUM)) (\TEDIT.WINDOW.TITLE DATUM NEWVALUE) (freplace \XDIRTY OF DATUM WITH NEWVALUE)))))) SEL _ (create SELECTION) TEXTLEN _ 0 WTOP _ 0 MOUSEREGION _ (QUOTE TEXT) -THISLINE _ (create THISLINE) DEFAULTPARALOOKS _ TEDIT.DEFAULT.FMTSPEC PARABREAKCHARS _ (CHARCODE (EOL -FORM LF CR))) +THISLINE _ (create THISLINE) PARABREAKCHARS _ (CHARCODE (EOL FORM LF CR))) (ACCESSFNS TEXTSTREAM ((* ;; "Overlay for the STREAM record to allow mnemonic access to stream fields for Text streams.") (* ;; "The # of characters that have already been read from the current piece") (TEXTOBJ (fetch (STREAM F3) @@ -375,7 +375,6 @@ IMAGEDATA _ NIL))) (PUTPROPS PLEN MACRO ((PC) (ffetch (PIECE PLEN) of PC))) (PUTPROPS PTYPE MACRO ((PC) (ffetch (PIECE PTYPE) of PC))) (PUTPROPS PCONTENTS MACRO ((PC) (ffetch (PIECE PCONTENTS) of PC))) -(PUTPROPS PLOOKS MACRO ((PC) (ffetch (PIECE PCHARLOOKS) of PC))) (PUTPROPS PCHARLOOKS MACRO ((PC) (ffetch (PIECE PCHARLOOKS) of PC))) (PUTPROPS PCHARSET MACRO ((PC) (ffetch (PIECE PCHARSET) of PC))) (PUTPROPS PPARALOOKS MACRO ((PC) (ffetch (PIECE PPARALOOKS) of PC))) @@ -442,7 +441,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 "29-May-2025 19:06:45")) +(PUTPROP (QUOTE TEDIT-STREAM) (QUOTE IMPORTDATE) (IDATE "29-Jul-2025 11:58:01")) (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)) @@ -451,13 +450,13 @@ THINSTRING.PTYPE)) (FAT.PTYPES (LIST FATFILE2.PTYPE FATSTRING.PTYPE FATFILE1.PTY I in ARGS as J on ARGS when (NOT (STRINGP I)) collect (LIST (QUOTE OR) I (LIST (QUOTE HELP) "TEdit consistency-check failure [RETURN to continue]: " (COND ((STRINGP (CADR J))) (T (KWOTE I)))))) )) (T (CONS COMMENTFLG ARGS))))) -(PUTPROP (QUOTE TEDIT-COMMAND) (QUOTE IMPORTDATE) (IDATE "23-Mar-2025 15:27:20")) +(PUTPROP (QUOTE TEDIT-COMMAND) (QUOTE IMPORTDATE) (IDATE "17-Jul-2025 00:24:49")) (PUTPROPS \SMALLPIN MACRO (OPENLAMBDA (STREAM) (SIGNED (create WORD HIBYTE _ (\BIN STREAM) LOBYTE _ ( \BIN STREAM)) BITSPERWORD))) (PUTPROPS \SMALLPOUT MACRO (OPENLAMBDA (STREAM W) (* ; "Signed smallp, unlike \WOUT") (\BOUT STREAM ( LOGAND 255 (LRSH W 8))) (\BOUT STREAM (LOGAND W 255)))) -(PUTPROP (QUOTE TEDIT-FILE) (QUOTE IMPORTDATE) (IDATE "31-May-2025 10:42:55")) -(PUTPROP (QUOTE TEDIT-OLDFILE) (QUOTE IMPORTDATE) (IDATE "19-Feb-2025 12:09:40")) +(PUTPROP (QUOTE TEDIT-FILE) (QUOTE IMPORTDATE) (IDATE " 1-Aug-2025 14:53:19")) +(PUTPROP (QUOTE TEDIT-OLDFILE) (QUOTE IMPORTDATE) (IDATE " 1-Aug-2025 14:58:21")) (DATATYPE CHARLOOKS ((* ;; "Describes the appearance (%"Looks%") of characters in a TEdit document.") (* ;; "NOTE: If fields change EQCLOOKS should change too.") CLFONT (* ; "The font descriptor for these characters") CLFONTUNPARSE (* ;; @@ -477,16 +476,17 @@ LOGAND 255 (LRSH W 8))) (\BOUT STREAM (LOGAND W 255)))) FLAG) (* ;; "T if this text can be selected for copying, even tho protected (it will become unprotected after the copy; for Dribble/TTY interface)" ) (CLUNBREAKABLE FLAG) (* ; "Spaces are treated as nonbreaking spaces") CLSTYLE (* ; -"The style to be used in marking these characters; overridden by the other fields") CLUSERINFO (* ; -"Any information that an outsider wants to include") CLLEADER (* ; +"The style to be used in marking these characters; overridden by the other fields") CLPROPS (* ; +"Was CLUSERINFO:Any information that an outsider wants to include") CLLEADER (* ; "For creating dotted and other kinds of leader") CLRULES (* ;; "For arbitrarily-places horizontal rules. List of pairs, of (widthinpts . offsetfrombaselineinpts). Should be taken account of in ascent/descent calcs." ) (CLMARK FLAG) (* ;; "Used for a mark-&-sweep of looks at PUT time -- T means this set of looks really IS in use in the document" ) (CLSELBEFORE FLAG) (* ; "T if TEDIT can put selection before this char (for menu fields).") CLCOLOR) CLOFFSET _ 0 CLCOLOR _ (QUOTE BLACK) (INIT (DEFPRINT (QUOTE CHARLOOKS) (FUNCTION -\TEDIT.CHARLOOKS.DEFPRINT))) (ACCESSFNS (CLNAME (fetch (CHARLOOKS CLFONTUNPARSE) of DATUM) (replace ( -CHARLOOKS CLFONTUNPARSE) of DATUM with NEWVALUE)))) +\TEDIT.CHARLOOKS.DEFPRINT))) (ASSOCRECORD CLPROPS (CLUSERINFO CLCHARENCODING)) (ACCESSFNS ((CLNAME ( +fetch (CHARLOOKS CLFONTUNPARSE) of DATUM) (replace (CHARLOOKS CLFONTUNPARSE) of DATUM with NEWVALUE))) +)) (DATATYPE PARALOOKS ((* ;; "Describe the paragraph formatting for a paragraph in a TEdit document.") 1STLEFTMAR (* ; "Left margin of the first line of the paragraph") LEFTMAR (* ; "Left margin of the rest of the lines in the paragraph") RIGHTMAR (* ; @@ -540,13 +540,8 @@ LINELEAD _ 0) (PUTPROPS FSETPLOOKS MACRO ((PLOOKS FIELD NEWVALUE) (freplace (PARALOOKS FIELD) of PLOOKS with NEWVALUE))) (PUTPROPS PARALOOKS! MACRO ((PL) (\DTEST PL (QUOTE PARALOOKS)))) -(PUTPROPS FSETPARA MACRO ((PLOOKS FIELD NEWVALUE) (freplace (PARALOOKS FIELD) of PLOOKS with NEWVALUE) -)) -(PUTPROPS FGETPARA MACRO ((PLOOKS FIELD) (ffetch (PARALOOKS FIELD) of PLOOKS))) -(PUTPROPS GETPARA MACRO ((PLOOKS FIELD) (fetch (PARALOOKS FIELD) of PLOOKS))) -(PUTPROPS SETPARA MACRO ((PLOOKS FIELD NEWVALUE) (replace (PARALOOKS FIELD) of PLOOKS with NEWVALUE))) -(PUTPROP (QUOTE TEDIT-LOOKS) (QUOTE IMPORTDATE) (IDATE "24-Apr-2025 23:47:54")) -(PUTPROP (QUOTE TEDIT-STYLES) (QUOTE IMPORTDATE) (IDATE "19-Feb-2025 13:31:28")) +(PUTPROP (QUOTE TEDIT-LOOKS) (QUOTE IMPORTDATE) (IDATE " 1-Aug-2025 13:43:51")) +(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 means (Make the caret visible at the next call to \EDIT.FLIPCARET.)) TCUP (* TCUP = T => The caret is @@ -608,7 +603,7 @@ 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 "30-May-2025 12:54:56")) +(PUTPROP (QUOTE TEDIT-WINDOW) (QUOTE IMPORTDATE) (IDATE "26-Jul-2025 15:45:59")) (PUTPROP (QUOTE TEDIT-BUTTONS) (QUOTE IMPORTDATE) (IDATE "30-Apr-2025 14:09:18")) (RPAQQ PTSPERPICA 12) (RPAQQ PTSPERINCH 72) @@ -620,7 +615,7 @@ $$OUT))))) (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 " 5-Jun-2025 19:38:52")) +(PUTPROP (QUOTE TEDIT-MENU) (QUOTE IMPORTDATE) (IDATE "28-Jul-2025 23:26:01")) (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 @@ -642,7 +637,7 @@ TEDITHISTORYEVENT THLEN) of DATUM) 0))))) (INIT (DEFPRINT (QUOTE TEDITHISTORYEVE (PUTPROPS GETTH MACRO ((EVENT FIELD) (fetch (TEDITHISTORYEVENT FIELD) of EVENT))) (PUTPROPS SETTH MACRO ((EVENT FIELD NEWVALUE) (replace (TEDITHISTORYEVENT FIELD) of EVENT with NEWVALUE))) -(PUTPROP (QUOTE TEDIT-HISTORY) (QUOTE IMPORTDATE) (IDATE "21-Apr-2025 22:42:33")) +(PUTPROP (QUOTE TEDIT-HISTORY) (QUOTE IMPORTDATE) (IDATE " 1-Aug-2025 14:58:56")) (RECORD PAGEFORMATTINGSTATE ((* ;; "Contains the state for a TEdit page-formatting job.") PAGE# (* ; "The current page number. Counted from 1") FIRSTPAGE (* ;; "T if the current page is the 'first page' . Is set initially, and can be set again by the user at will. Gets reset after each page image is printed." @@ -679,7 +674,7 @@ $$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-ABBREV) (QUOTE IMPORTDATE) (IDATE "24-Apr-2025 23:45:12")) -(PUTPROP (QUOTE TEDIT-TFBRAVO) (QUOTE IMPORTDATE) (IDATE "10-May-2025 12:53:24")) +(PUTPROP (QUOTE TEDIT-TFBRAVO) (QUOTE IMPORTDATE) (IDATE "28-Jul-2025 23:34:14")) (DECLARE%: DONTCOPY (FILEMAP (NIL))) STOP