From 047aa5ff236265b1fb3c3dc123599b13bc6eed88 Mon Sep 17 00:00:00 2001 From: rmkaplan <69548581+rmkaplan@users.noreply.github.com> Date: Mon, 29 Apr 2024 19:43:01 -0700 Subject: [PATCH] TEDIT.FORMAT.HARDCOPY fetches the AFTERHARDCOPYFN at the end (#1671) so that it can be set by a display fn or boxfn along the way. This permits the fix to IRM indexing in PR #1649 to take effect (for HCFILES). --- library/tedit/TEDIT-PAGE | 52 ++++++++++++++++------------------ library/tedit/TEDIT-PAGE.LCOM | Bin 24940 -> 24624 bytes 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/library/tedit/TEDIT-PAGE b/library/tedit/TEDIT-PAGE index ecd308db..63fbd237 100644 --- a/library/tedit/TEDIT-PAGE +++ b/library/tedit/TEDIT-PAGE @@ -1,15 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "17-Mar-2024 18:15:40"  -{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-PAGE.;173 113461 +(FILECREATED " 5-Apr-2024 08:01:17" {WMEDLEY}tedit>TEDIT-PAGE.;175 113329 :EDIT-BY rmk - :CHANGES-TO (FNS TEDIT.FORMAT.HARDCOPY TEDIT.SKIP.SPECIALCOND \TEDIT.FORMATBOX - \TEDIT.FORMATHEADING \TEDIT.FORMATFOLIO) + :CHANGES-TO (FNS TEDIT.FORMAT.HARDCOPY) - :PREVIOUS-DATE "17-Mar-2024 00:27:48" -{DSK}kaplan>Local>medley3.5>working-medley>library>tedit>TEDIT-PAGE.;172) + :PREVIOUS-DATE " 4-Apr-2024 23:17:31" {WMEDLEY}tedit>TEDIT-PAGE.;174) (PRETTYCOMPRINT TEDIT-PAGECOMS) @@ -557,7 +554,8 @@ (TEDIT.FORMAT.HARDCOPY [LAMBDA (TEXTSTREAM FILE DONTSEND BREAKPAGETITLE SERVER PRINTOPTIONS IMAGETYPE FIRSTPG# STARTPG - ENDPG) (* ; "Edited 16-Mar-2024 09:31 by rmk") + ENDPG) (* ; "Edited 5-Apr-2024 08:01 by rmk") + (* ; "Edited 16-Mar-2024 09:31 by rmk") (* ; "Edited 7-Mar-2024 12:34 by rmk") (* ; "Edited 19-Jan-2024 23:39 by rmk") (* ; "Edited 24-Dec-2023 14:10 by rmk") @@ -593,10 +591,10 @@ (CDR FIRSTPG#)) PAGE#TEXT _ (AND (LISTP FIRSTPG#) (CAR FIRSTPG#] - PRSTREAM PAGEFRAMES SCRATCHFILE BEFOREFN AFTERFN NPAGES WASOPEN TARGETFILENAME) - (CL:WHEN (AND (SETQ BEFOREFN (GETTEXTPROP TEXTOBJ 'BEFOREHARDCOPYFN)) - (EQ 'DON'T (APPLY* BEFOREFN TEXTSTREAM TEXTOBJ))) - (* ; + PRSTREAM PAGEFRAMES SCRATCHFILE NPAGES WASOPEN TARGETFILENAME) + (CL:WHEN (EQ 'DON'T (APPLY* (OR (GETTEXTPROP TEXTOBJ 'BEFOREHARDCOPYFN) + (FUNCTION NILL)) + TEXTSTREAM)) (* ;  "Do pre-hardcopy processing as indicated, or refuse") (RETURN)) (SETQ PAGEFRAMES (OR (FGETTOBJ TEXTOBJ TXTPAGEFRAMES) @@ -625,10 +623,7 @@  "It's a real file, so use the file name on the break page.") (fetch (STREAM FULLNAME) of (FGETTOBJ TEXTOBJ TXTFILE]) [SETQ SCRATCHFILE (OR FILE (PRINTER.SCRATCH.FILE (TEXTSTREAM TEXTSTREAM] - (RESETLST - (CL:WHEN (SETQ AFTERFN (GETTEXTPROP TEXTOBJ 'AFTERHARDCOPYFN)) - (RESETSAVE NIL (LIST AFTERFN TEXTSTREAM TEXTOBJ))) - (* ; + (RESETLST (* ;  "Set up to do the user's cleanup on the way out, as well.") (TEDIT.PROMPTPRINT TEXTOBJ "Formatting for print..." T) [COND @@ -689,7 +684,10 @@ (SEND.FILE.TO.PRINTER PRSTREAM SERVER (APPEND PRINTOPTIONS (LIST 'DOCUMENT.NAME BREAKPAGETITLE))))) - (CL:UNLESS FILE (DELFILE SCRATCHFILE))) + (CL:UNLESS FILE (DELFILE SCRATCHFILE)) + (APPLY* (OR (GETTEXTPROP TEXTOBJ 'AFTERHARDCOPYFN) + (FUNCTION NILL)) + TEXTSTREAM)) (SETQ NPAGES (GETPFS FORMATTINGSTATE PAGECOUNT)) (TEDIT.PROMPTPRINT TEXTOBJ (CONCAT NPAGES " page" (CL:IF (EQ 1 NPAGES) "" @@ -1807,15 +1805,15 @@ (RETURN (DREMOVE NIL $$VAL]) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (12106 15439 (\TEDIT.PARSE.PAGEFRAMES 12116 . 13616) (\TEDIT.PUT.PAGEFRAMES 13618 . -14442) (\TEDIT.UNPARSE.PAGEFRAMES 14444 . 15437)) (15502 31964 (TEDIT.SINGLE.PAGEFORMAT 15512 . 25730) - (TEDIT.COMPOUND.PAGEFORMAT 25732 . 26711) (TEDIT.PAGEFORMAT 26713 . 31962)) (31965 45142 ( -TEDIT.FORMAT.HARDCOPY 31975 . 43075) (TEDIT.SKIP.SPECIALCOND 43077 . 45140)) (45229 92152 ( -\TEDIT.FORMATBOX 45239 . 58019) (\TEDIT.FORMATHEADING 58021 . 62041) (\TEDIT.FORMATPAGE 62043 . 70463) - (\TEDIT.FORMATTEXTBOX 70465 . 85364) (\TEDIT.FORMATFOLIO 85366 . 90109) (\TEDIT.FORMAT.FOUNDBOX? -90111 . 92150)) (92232 94648 (TEDIT.HARDCOPY.PAGEHEADINGS 92242 . 94646)) (94757 101940 ( -TEDIT.HARDCOPY-COLUMN-END 94767 . 101938)) (101985 106926 (SCALEPAGEUNITS 101995 . 103136) ( -SCALEPAGEXUNITS 103138 . 103908) (SCALEPAGEYUNITS 103910 . 104681) (\TEDIT.PAPERHEIGHT 104683 . 105618 -) (\TEDIT.PAPERWIDTH 105620 . 106924)) (107342 110910 (ROMANNUMERALS 107352 . 110908)) (110946 113438 -(\TEDIT.FORMAT.FOOTNOTE 110956 . 113436))))) + (FILEMAP (NIL (11920 15253 (\TEDIT.PARSE.PAGEFRAMES 11930 . 13430) (\TEDIT.PUT.PAGEFRAMES 13432 . +14256) (\TEDIT.UNPARSE.PAGEFRAMES 14258 . 15251)) (15316 31778 (TEDIT.SINGLE.PAGEFORMAT 15326 . 25544) + (TEDIT.COMPOUND.PAGEFORMAT 25546 . 26525) (TEDIT.PAGEFORMAT 26527 . 31776)) (31779 45010 ( +TEDIT.FORMAT.HARDCOPY 31789 . 42943) (TEDIT.SKIP.SPECIALCOND 42945 . 45008)) (45097 92020 ( +\TEDIT.FORMATBOX 45107 . 57887) (\TEDIT.FORMATHEADING 57889 . 61909) (\TEDIT.FORMATPAGE 61911 . 70331) + (\TEDIT.FORMATTEXTBOX 70333 . 85232) (\TEDIT.FORMATFOLIO 85234 . 89977) (\TEDIT.FORMAT.FOUNDBOX? +89979 . 92018)) (92100 94516 (TEDIT.HARDCOPY.PAGEHEADINGS 92110 . 94514)) (94625 101808 ( +TEDIT.HARDCOPY-COLUMN-END 94635 . 101806)) (101853 106794 (SCALEPAGEUNITS 101863 . 103004) ( +SCALEPAGEXUNITS 103006 . 103776) (SCALEPAGEYUNITS 103778 . 104549) (\TEDIT.PAPERHEIGHT 104551 . 105486 +) (\TEDIT.PAPERWIDTH 105488 . 106792)) (107210 110778 (ROMANNUMERALS 107220 . 110776)) (110814 113306 +(\TEDIT.FORMAT.FOOTNOTE 110824 . 113304))))) STOP diff --git a/library/tedit/TEDIT-PAGE.LCOM b/library/tedit/TEDIT-PAGE.LCOM index 2250338fccaf7c45ec1aa333d2545a4fefa19734..72910bf2e50a01a6144aced5730e2d192f1b515d 100644 GIT binary patch delta 2179 zcmZuy&u<$=6wW#cZBvn7jf`|Q%bI;}=FK;6X1?#u zpT9^y{49ONWYAN_#=R7gi3W16AS(qWn}qpfbN$Xn`}WNitlxzse8_5MscJ4icsdB+TxvPC&wDf|Irb*?O}oTh9jLiPeTv{U z?q`4+9-hxTFsFj zo9oPZY?{Rf$O1rM_Zr``NfFtr4-mS?gl$YoLoBgYnHUd4o^0)98X_32OYLT?*FgNO zy*qSjN~&}pobp>dCrM1+#hB~C^BARLRH705N2G8&$9r4<{xket<>~6fiuAM+`Kj(5 zY{v50_^Yq*vq9YJL-U%Pg%zZtMbrH540_dB0yUEhreJoHkbKCD@L~i%h>{0>tu83} zEZ`OKi*r2({hSUZvnp7lWOZbXT}pE=O`Wv3f8>yom0`tj5uikn1u7J)j&E{`AdSTJ zhgdRV-STnPVujX_3YHByRV*y1+Gk2817*jip`1X=gfufffuSC_B5~wtxKA9cxtKB% z66L6BnczwhHc3W{yJ|4OHvi7i-K-KcyrHbWK49dQsCG5%^h|>ifY`$ebXw0o{ zzO2Kt<@wZIe1oep3*vIo!Wwae=JSKi?pFsQ|1Xy^5Pr*shk%Gj2p|nYQx%spP18J= zblJn>L)mE!Dg%e@;$5956{x^7j zdN%#!WaTAEUzih zI5`vim6%SwU#W@dwYA+4=b>;#!;;nA?U*o~@$Lzh4CFI&H)@kuEHX!E2sB-XqGJ~g z3K|!5-&AwJUqm4c6@|(PBgk8~nT1tfMX;4x1DQ%e)iV%$5>1S%plWjP?96Km>LDtU zJTi`=WEWi^IvLms!AkW}Qx6}ZL-_cp^veXvWe-eVn8Ig7hkF*Y}{+#y??XCT?LXK;1|mm2C8{6dgInjv}LX1 IosD1l54Bea?EnA( delta 2394 zcmaJ@&rcgi6vhsz2uU0Vh;cSRUp5heBslxizto^?>@{A+-rer58EA=8%ckH$070av zs#;5JZ#}eh)kCj6RH`bq0oSJ?AqkQKVmd3TSykj=jIXWUUu!JS*I{)9cuFmtr_rZvwX8)l?)3ScyyssD#7yzi9~{jdi4Ri_Mgxy zKi)f5FiLvP(KQ5zqvx{_72(w(4Zb3#9vMVYR+6H>5mNm>X9k<_QVd57MP17q=F|(J zvIxf^YdiY1VO89TJUV;SS3$^1sjQNIwXgNq|KI;HX}s5eM&hl$@LGRJ@;A9l{W(w#fK>^ZWl(i|{o3-gE16sk;oq~ydQ2;mRXkMWsItg$++v;Mrn%awoysbmYn-GliL{S>yw&vs zGm!xjZO2IL1fA)iglf?y8?k1&mqD{WiBn*XA=SFE&+r+R!&bTB;1jCshM#ROI33U$ z5Uw@uu%l|-JA`iyIV46#I=BpgLGO_3kuSHp9+LsKJj&W{w)QL%Iq2paHExGQ5b4n; z{*Qz4&_nPX`qR-L6RiM>m`O;2vESR2bzVn5Ku*T7)t7J z$Xrz@v1rl2$+GP+mnc_}N0e}M3zh&`_1Dhx&6EOJQzsLYrV}M?)~a|QW@O}8u2R-b zFTrRhsu{5Jg@BBPS+EdK?eP1Mp12XkQ8rAi1nD$$8B!|bG&Ar*4b)TAoP5r*XA9<8 z^aO7K??@Jflmu$ZzsB7N%W3~@Znmj{qq{mvglZpe3-8XzX0I|Mt%&YbYL%g6xb{rZ za6KGmUX+ZD3O-Ps4Jj~bs4lKd9!l8;3`R#p9d&I39>Zkqa~JN8qXdtrl-32u_3Wuj zRE!v7P$k5SZ^s61NwKWe9>-D;a8~I~D9VdKv|2u@{_wb*p|LEuJ_Nih=<#)IH2^5#Z zq3=KD>I2mhIiNYqYw7uf)_3aEcES%O2?A;p(eCug{$>JF*@`SZ z4PZWHW7d$%rKj8RV7{+?f?W2W3=j2K5n43Vw0~yg9BMjenK{h^MG+3WvI_JyW`dEE z_%QWQgf4+BD+hW`>^~^1pnxnPn>*~2GL$;_ zMoeK9Qj(p%ko4E$7yQ3Rs&6Uk%jXK2{h9+(8egd3!I6?3tBO@@-zp0)NCMQ