Systematically renamed internal Tedit files with \TEDIT
This includes some files in lispusers that are not in the Tedit core but had references to Tedit internal functions (TMAX, DOC-OBJECTS and some others) that have been renamed. (I hope to clean out those internal references, at some point.) A few additional changes are here to track the changes that were recently made in the unrenamed master branch. Going forward, I want to make future changes in this branch. Eventual plan is to introduce a Tedit package and do another systematic renaming of all \TEDIT.xxx functions to TEDIT::xxx, this is a first step. This does not yet include a backward-compatibility mapping of oldnames to newnames, as was discussed in the technical meeting.
This commit is contained in:
@@ -1,17 +1,12 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "14-Mar-2024 12:53:18" {WMEDLEY}<library>tedit>TEDIT-SCREEN.;618 186031
|
||||
(FILECREATED "20-Mar-2024 11:07:35" {WMEDLEY}<library>tedit>TEDIT-SCREEN.;645 189050
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (FNS \FORMATLINE \TEDIT.CREATEPLINE)
|
||||
(I.S.OPRS inlines backlines incharslots backcharslots)
|
||||
(RECORDS THISLINE LINECACHE LINEDESCRIPTOR CHARSLOT)
|
||||
(MACROS GETLD FGETLD SETLD FSETLD SETYPOS LINKLD HCSCALE HCUNSCALE CHAR CHARW
|
||||
PREVCHARSLOT PREVCHARSLOT! NEXTCHARSLOT FIRSTCHARSLOT NTHCHARSLOT
|
||||
LASTCHARSLOT FILLCHARSLOT BACKCHARS PUSHCHAR POPCHAR CHARSLOTP DIACRITICP)
|
||||
:CHANGES-TO (FNS \TEDIT.DISPLAYLINE \TEDIT.RAISE.LINES)
|
||||
|
||||
:PREVIOUS-DATE "13-Mar-2024 14:40:10" {WMEDLEY}<library>tedit>TEDIT-SCREEN.;613)
|
||||
:PREVIOUS-DATE "20-Mar-2024 07:27:05" {WMEDLEY}<library>tedit>TEDIT-SCREEN.;644)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT TEDIT-SCREENCOMS)
|
||||
@@ -46,9 +41,10 @@
|
||||
(MACROS SPACEBREAK SAVEBREAK DOBREAK FORCEBREAK FORGETHYPHENBREAK FORGETPREVIOUSBREAK)
|
||||
(RECORDS PENDINGTAB))
|
||||
(INITRECORDS PENDINGTAB)
|
||||
(FNS \FORMATLINE \FORMATLINE.SETUP \TEDIT.FORMATLINE.HORIZONTAL \TEDIT.FORMATLINE.VERTICAL
|
||||
\FORMATLINE.JUSTIFY \FORMATLINE.TABS \FORMATLINE.SCALETABS \FORMATLINE.PURGE.SPACES
|
||||
\FORMATLINE.EMPTY \FORMATLINE.UPDATELOOKS \FORMATLINE.LASTLEGAL \FORMATBLOCK)
|
||||
(FNS \TEDIT.FORMATLINE \TEDIT.FORMATLINE.SETUP \TEDIT.FORMATLINE.HORIZONTAL
|
||||
\TEDIT.FORMATLINE.VERTICAL \TEDIT.FORMATLINE.JUSTIFY \TEDIT.FORMATLINE.TABS
|
||||
\TEDIT.FORMATLINE.SCALETABS \TEDIT.FORMATLINE.PURGE.SPACES \TEDIT.FORMATLINE.EMPTY
|
||||
\TEDIT.FORMATLINE.UPDATELOOKS \TEDIT.FORMATLINE.LASTLEGAL \TEDIT.LINES.ABOVE)
|
||||
(INITVARS (TEDIT.LINELEADING.BELOW NIL))
|
||||
(GLOBALVARS TEDIT.LINELEADING.BELOW)
|
||||
(FNS \CLEARTHISLINE \TLVALIDATE)
|
||||
@@ -56,18 +52,18 @@
|
||||
(INITVARS *TEDIT-CACHED-FMTSPEC*)
|
||||
(* ; "Heuristic for \FORMATLINE")
|
||||
(GLOBALVARS *TEDIT-CACHED-FMTSPEC*)
|
||||
(FNS \DISPLAYLINE \DISPLAYLINE.TABS \TEDIT.LINECACHE \TEDIT.CREATE.LINECACHE \TEDIT.BLTCHAR
|
||||
\TEDIT.DIACRITIC.SHIFT)
|
||||
(FNS \TEDIT.DISPLAYLINE \TEDIT.DISPLAYLINE.TABS \TEDIT.LINECACHE \TEDIT.CREATE.LINECACHE
|
||||
\TEDIT.BLTCHAR \TEDIT.DIACRITIC.SHIFT)
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
|
||||
(* ;; "Machine independent version of \TEDIT.BLTCHAR")
|
||||
|
||||
(MACROS MI-TEDIT.BLTCHAR))
|
||||
(FNS TEDIT.UPDATE.SCREEN \BACKFORMAT \TEDIT.PREVIOUS.LINEBREAK \FILLPANE \TEDIT.UPDATE.LINES
|
||||
\TEDIT.CREATEPLINE \TEDIT.FIND.DIRTYCHARS \TEDIT.FORMATLINES \FORMAT.GAP.LINES
|
||||
\TEDIT.LOWER.LINES \TEDIT.RAISE.LINES \TEDIT.VALID.LINES \TEDIT.CLEARPANE.BELOW.LINE
|
||||
\TEDIT.INSERTLINE \TEDIT.INSURE.TRAILING.LINE \TEDIT.MARK.LINES.DIRTY \TEDIT.LINE.BOTTOM
|
||||
\TEDIT.NCONC.LINES)))
|
||||
(FNS \TEDIT.UPDATE.SCREEN \TEDIT.BACKFORMAT \TEDIT.PREVIOUS.LINEBREAK \TEDIT.FILLPANE
|
||||
\TEDIT.UPDATE.LINES \TEDIT.CREATEPLINE \TEDIT.FIND.DIRTYCHARS \TEDIT.LINES.BELOW
|
||||
\FORMAT.GAP.LINES \TEDIT.LOWER.LINES \TEDIT.RAISE.LINES \TEDIT.VALID.LINES
|
||||
\TEDIT.CLEARPANE.BELOW.LINE \TEDIT.INSERTLINE \TEDIT.INSURE.TRAILING.LINE
|
||||
\TEDIT.MARK.LINES.DIRTY \TEDIT.LINE.BOTTOM \TEDIT.NCONC.LINES)))
|
||||
(DECLARE%: EVAL@COMPILE DONTCOPY
|
||||
(* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: EVAL@COMPILE
|
||||
|
||||
@@ -550,16 +546,14 @@
|
||||
(COND
|
||||
((AND SPACERUN FIRSTWHITESLOT) (* ; "Clear/register the overhangs")
|
||||
(CL:WHEN PREVSP
|
||||
(SETQ PREVSP (\FORMATLINE.PURGE.SPACES PREVSP (fetch (CHARSLOT
|
||||
CHAR)
|
||||
of FIRSTWHITESLOT))
|
||||
))
|
||||
(SETQ PREVSP (\TEDIT.FORMATLINE.PURGE.SPACES PREVSP
|
||||
(fetch (CHARSLOT CHAR) of FIRSTWHITESLOT))))
|
||||
(SETQ SPACELEFT (IDIFFERENCE WIDTH FIRSTWHITEX))
|
||||
(SETQ OVERHANG (IDIFFERENCE TX FIRSTWHITEX)))
|
||||
(T (SETQ SPACELEFT (IDIFFERENCE WIDTH TX))
|
||||
(SETQ OVERHANG 0])
|
||||
|
||||
(PUTPROPS FORCEBREAK MACRO [NIL (SETQ PREVSP (\FORMATLINE.PURGE.SPACES PREVSP))
|
||||
(PUTPROPS FORCEBREAK MACRO [NIL (SETQ PREVSP (\TEDIT.FORMATLINE.PURGE.SPACES PREVSP))
|
||||
(* ; "All spaces are natural")
|
||||
|
||||
(* ;; "If the EOL comes right after a word-character that was preceded by a space run, those earlier spaces don't count in our overhang. INSPACES tracks that. ")
|
||||
@@ -619,8 +613,10 @@
|
||||
'12)
|
||||
(DEFINEQ
|
||||
|
||||
(\FORMATLINE
|
||||
(\TEDIT.FORMATLINE
|
||||
[LAMBDA (TEXTOBJ CH#1 LINE REGION IMAGESTREAM FORMATTINGSTATE)
|
||||
(* ; "Edited 17-Mar-2024 00:27 by rmk")
|
||||
(* ; "Edited 15-Mar-2024 19:43 by rmk")
|
||||
(* ; "Edited 14-Mar-2024 12:53 by rmk")
|
||||
(* ; "Edited 2-Mar-2024 07:39 by rmk")
|
||||
(* ; "Edited 5-Feb-2024 09:35 by rmk")
|
||||
@@ -735,7 +731,7 @@
|
||||
|
||||
(* ;; "")
|
||||
|
||||
(SETQ PC (\CHTOPC CH#1 TEXTOBJ T))
|
||||
(SETQ PC (\TEDIT.CHTOPC CH#1 TEXTOBJ T))
|
||||
(CL:WHEN (OR (NULL PC)
|
||||
(EQ PC (FGETTOBJ TEXTOBJ LASTPIECE)))
|
||||
|
||||
@@ -751,12 +747,12 @@
|
||||
|
||||
(CL:UNLESS (VISIBLEPIECEP PC)
|
||||
(CL:UNLESS (SETQ PC (\NEXT.VISIBLE.PIECE PC))
|
||||
(RETURN (\FORMATLINE.EMPTY TEXTOBJ CH#1 LINE)))
|
||||
(SETQ CH#1 (\PCTOCH PC TEXTOBJ)) (* ;
|
||||
(RETURN (\TEDIT.FORMATLINE.EMPTY TEXTOBJ CH#1 LINE)))
|
||||
(SETQ CH#1 (\TEDIT.PCTOCH PC TEXTOBJ)) (* ;
|
||||
"Unusual, simpler than keeping track on the fly")
|
||||
(SETQ START-OF-PIECE CH#1))
|
||||
(SETQ CHNO CH#1)
|
||||
(SETQ IMAGESTREAM (\FORMATLINE.SETUP TEXTOBJ PC LINE IMAGESTREAM))
|
||||
(SETQ IMAGESTREAM (\TEDIT.FORMATLINE.SETUP TEXTOBJ PC LINE IMAGESTREAM))
|
||||
(SETQ FMTSPEC (FGETLD LINE LFMTSPEC))
|
||||
|
||||
(* ;; "Display stream could have switched for hardcopy font widths.")
|
||||
@@ -790,7 +786,7 @@
|
||||
(CL:WHEN (EQ LINETYPE 'HARDCOPYDISPLAY) (* ; "Scale points up to hardcopy")
|
||||
(SETQ LX1 (HCSCALE SCALE LX1))
|
||||
(SETQ WIDTH (HCSCALE SCALE WIDTH))
|
||||
(SETQ TABSPEC (\FORMATLINE.SCALETABS TABSPEC SCALE)))
|
||||
(SETQ TABSPEC (\TEDIT.FORMATLINE.SCALETABS TABSPEC SCALE)))
|
||||
|
||||
(* ;; "")
|
||||
|
||||
@@ -798,7 +794,8 @@
|
||||
|
||||
(* ;; "The LOOKSUPDATEFN will initialize the character looks of the starting piece PC. It is also called at piece boundaries to reset the character-looks variables when BIN (=\TEXTBIN) moves from piece to piece.")
|
||||
|
||||
(freplace (TEXTSTREAM LOOKSUPDATEFN) of TSTREAM with (FUNCTION \FORMATLINE.UPDATELOOKS))
|
||||
(freplace (TEXTSTREAM LOOKSUPDATEFN) of TSTREAM with (FUNCTION
|
||||
\TEDIT.FORMATLINE.UPDATELOOKS))
|
||||
(freplace (TEXTSTREAM CURRENTLOOKS) of TSTREAM with NIL)
|
||||
(SETQ CHARSLOT (FIRSTCHARSLOT THISLINE))
|
||||
(\TEDIT.INSTALL.PIECE TSTREAM PC (- CH#1 START-OF-PIECE))
|
||||
@@ -921,14 +918,14 @@
|
||||
(* ;; "Remove all prior candidate break points and expandable spaces")
|
||||
|
||||
(FORGETPREVIOUSBREAK)
|
||||
(SETQ PREVSP (\FORMATLINE.PURGE.SPACES PREVSP))
|
||||
(SETQ PREVSP (\TEDIT.FORMATLINE.PURGE.SPACES PREVSP))
|
||||
|
||||
(* ;; "Now for this tab:")
|
||||
(* ;
|
||||
"Start with 0 width, then set up the next tab")
|
||||
(FILLCHARSLOT CHARSLOT CH 0)
|
||||
(SETQ TABPENDING (\FORMATLINE.TABS TEXTOBJ TABSPEC SCALE CHARSLOT LX1 TX
|
||||
TABPENDING))
|
||||
(SETQ TABPENDING (\TEDIT.FORMATLINE.TABS TEXTOBJ TABSPEC SCALE CHARSLOT LX1
|
||||
TX TABPENDING))
|
||||
(* ;
|
||||
"Proper width is already in CHARSLOT")
|
||||
(SETQ DX (CL:IF (FIXP TABPENDING)
|
||||
@@ -995,7 +992,7 @@
|
||||
|
||||
(* ;; "We've seen at least one real character, line is not empty, but no good candidate break point. Back up to the last legal break (or add a real hyphenator). ")
|
||||
|
||||
(CL:UNLESS (\FORMATLINE.LASTLEGAL)
|
||||
(CL:UNLESS (\TEDIT.FORMATLINE.LASTLEGAL)
|
||||
|
||||
(* ;; "Didn't find one, the offender protrudes on this line")
|
||||
|
||||
@@ -1024,8 +1021,8 @@
|
||||
DX) (* ;
|
||||
"Adjust the tab stop's X value so that the LEFT edge of the decimal point goes there.")
|
||||
(SETQ TABPENDING
|
||||
(\FORMATLINE.TABS TEXTOBJ TABSPEC SCALE CHARSLOT LX1 TX
|
||||
TABPENDING T))
|
||||
(\TEDIT.FORMATLINE.TABS TEXTOBJ TABSPEC SCALE CHARSLOT LX1
|
||||
TX TABPENDING T))
|
||||
(* ;
|
||||
"Tab over to the LEFT side of the decimal point.")
|
||||
(add TX (CL:IF (FIXP TABPENDING)
|
||||
@@ -1033,7 +1030,7 @@
|
||||
(fetch (PENDINGTAB PTRESOLVEDWIDTH) of
|
||||
TABPENDING
|
||||
)))
|
||||
(SETQ PREVSP (\FORMATLINE.PURGE.SPACES PREVSP))
|
||||
(SETQ PREVSP (\TEDIT.FORMATLINE.PURGE.SPACES PREVSP))
|
||||
(* ;
|
||||
"Spaces before a tab don't take part in later justification.")
|
||||
(SAVEBREAK)))
|
||||
@@ -1099,9 +1096,10 @@
|
||||
(* ;; "Fix up last tab?")
|
||||
|
||||
(CL:WHEN TABPENDING
|
||||
(SETQ PREVSP (\FORMATLINE.PURGE.SPACES PREVSP))(* ; "Don't justify spaces before tabs")
|
||||
(add TX (\FORMATLINE.TABS TEXTOBJ TABSPEC SCALE (FETCH (PENDINGTAB PTCHARSLOT)
|
||||
OF TABPENDING)
|
||||
(SETQ PREVSP (\TEDIT.FORMATLINE.PURGE.SPACES PREVSP))
|
||||
(* ; "Don't justify spaces before tabs")
|
||||
(add TX (\TEDIT.FORMATLINE.TABS TEXTOBJ TABSPEC SCALE (FETCH (PENDINGTAB PTCHARSLOT)
|
||||
OF TABPENDING)
|
||||
LX1
|
||||
(IDIFFERENCE TX OVERHANG)
|
||||
TABPENDING T)))
|
||||
@@ -1117,7 +1115,7 @@
|
||||
"Still maybe scaled for hardcopy display")
|
||||
(FSETLD LINE LXLIM (IPLUS LX1 TX))
|
||||
(FSETLD LINE 1STLN 1STLN) (* ; "First line of a paragraph")
|
||||
[FSETLD LINE LSTLN (AND FORCED-END (PPARALAST (\CHTOPC CHNO TEXTOBJ]
|
||||
[FSETLD LINE LSTLN (AND FORCED-END (PPARALAST (\TEDIT.CHTOPC CHNO TEXTOBJ]
|
||||
(* ; "Last line of a paragraph")
|
||||
|
||||
(* ;; "For display, the value of LMARK (GREY) just causes the little grey box to show up in the left margin, but is not interpreted in any other way. The hardcopy code uses this field for other purposes.")
|
||||
@@ -1184,7 +1182,7 @@
|
||||
WMARGIN)
|
||||
(RETURN LINE])
|
||||
|
||||
(\FORMATLINE.SETUP
|
||||
(\TEDIT.FORMATLINE.SETUP
|
||||
[LAMBDA (TEXTOBJ PC LINE IMAGESTREAM) (* ; "Edited 16-Dec-2023 23:34 by rmk")
|
||||
(* ; "Edited 14-Jun-2023 16:43 by rmk")
|
||||
(* ; "Edited 8-Mar-2023 22:15 by rmk")
|
||||
@@ -1232,7 +1230,8 @@
|
||||
IMAGESTREAM])
|
||||
|
||||
(\TEDIT.FORMATLINE.HORIZONTAL
|
||||
[LAMBDA (LINE THISLINE PREVSP SPACELEFT OVERHANG LINETYPE) (* ; "Edited 3-Dec-2023 16:49 by rmk")
|
||||
[LAMBDA (LINE THISLINE PREVSP SPACELEFT OVERHANG LINETYPE) (* ; "Edited 15-Mar-2024 19:35 by rmk")
|
||||
(* ; "Edited 3-Dec-2023 16:49 by rmk")
|
||||
(* ; "Edited 29-Oct-2023 18:24 by rmk")
|
||||
(* ; "Edited 2-Jul-2023 15:15 by rmk")
|
||||
(* ; "Edited 6-Apr-2023 10:13 by rmk")
|
||||
@@ -1261,8 +1260,8 @@
|
||||
|
||||
(freplace (THISLINE TLSPACEFACTOR) of THISLINE with 1)
|
||||
(CL:WHEN (EQ 'JUSTIFIED (fetch (FMTSPEC QUAD) of FMTSPEC))
|
||||
(\FORMATLINE.JUSTIFY LINE THISLINE PREVSP SPACELEFT LINETYPE))
|
||||
(\FORMATLINE.PURGE.SPACES PREVSP)
|
||||
(\TEDIT.FORMATLINE.JUSTIFY LINE THISLINE PREVSP SPACELEFT LINETYPE))
|
||||
(\TEDIT.FORMATLINE.PURGE.SPACES PREVSP)
|
||||
|
||||
(* ;; "")
|
||||
|
||||
@@ -1301,7 +1300,8 @@
|
||||
NIL])
|
||||
|
||||
(\TEDIT.FORMATLINE.VERTICAL
|
||||
[LAMBDA (LINE TEXTOBJ) (* ; "Edited 17-Dec-2023 00:43 by rmk")
|
||||
[LAMBDA (LINE TEXTOBJ) (* ; "Edited 20-Mar-2024 07:26 by rmk")
|
||||
(* ; "Edited 17-Dec-2023 00:43 by rmk")
|
||||
(* ; "Edited 6-Dec-2023 20:13 by rmk")
|
||||
(* ; "Edited 4-Dec-2023 12:13 by rmk")
|
||||
|
||||
@@ -1317,7 +1317,7 @@
|
||||
(CL:WHEN (FGETLD LINE LSTLN) (* ; "Set post-paragraph leading")
|
||||
(add DESCENT (ffetch (FMTSPEC LEADAFTER) of FMTSPEC)))
|
||||
|
||||
(* ;; "Documentation says that lineleading goes above, which automatically makes for reasonable selection marking. It went below in the original implementation, selections are very odd if lineleading is big.")
|
||||
(* ;; "Documentation says that lineleading goes above, which automatically makes for reasonable selection marking. It went below in the original implementation, selections were very odd for large line leadings. This flag is set to T when recently created files are loaded, we try to preserve the old (bad) behavior for older files.")
|
||||
|
||||
(CL:IF (FGETTOBJ TEXTOBJ TXTLINELEADINGABOVE)
|
||||
(add ASCENT (fetch (FMTSPEC LINELEAD) of FMTSPEC))
|
||||
@@ -1326,7 +1326,7 @@
|
||||
(FSETLD LINE DESCENT DESCENT)
|
||||
(FSETLD LINE LHEIGHT (IPLUS ASCENT DESCENT])
|
||||
|
||||
(\FORMATLINE.JUSTIFY
|
||||
(\TEDIT.FORMATLINE.JUSTIFY
|
||||
[LAMBDA (LINE THISLINE PREVSP SPACELEFT LINETYPE) (* ; "Edited 7-Mar-2023 18:01 by rmk")
|
||||
(* ; "Edited 2-Mar-2023 22:45 by rmk")
|
||||
(* ; "Edited 22-Oct-2022 00:06 by rmk")
|
||||
@@ -1401,7 +1401,7 @@
|
||||
SPACELEFT)
|
||||
NATURALWIDTHS))))])
|
||||
|
||||
(\FORMATLINE.TABS
|
||||
(\TEDIT.FORMATLINE.TABS
|
||||
[LAMBDA (TEXTOBJ TABSPEC SCALE CHARSLOT LX1 TX PRIORTAB CLEANINGUP)
|
||||
(* ; "Edited 17-Dec-2023 12:46 by rmk")
|
||||
(* ; "Edited 9-Mar-2023 23:25 by rmk")
|
||||
@@ -1505,7 +1505,7 @@
|
||||
PTCHARSLOT _ CHARSLOT
|
||||
PTOLDTX _ TX])
|
||||
|
||||
(\FORMATLINE.SCALETABS
|
||||
(\TEDIT.FORMATLINE.SCALETABS
|
||||
[LAMBDA (TABSPEC SCALE) (* ; "Edited 7-Mar-2023 21:06 by rmk")
|
||||
(* ; "Edited 5-Mar-2023 20:39 by rmk")
|
||||
|
||||
@@ -1523,7 +1523,7 @@
|
||||
(fetch (TAB TABX)
|
||||
of TAB])
|
||||
|
||||
(\FORMATLINE.PURGE.SPACES
|
||||
(\TEDIT.FORMATLINE.PURGE.SPACES
|
||||
[LAMBDA (PREVSP UNTILSP) (* ; "Edited 29-Oct-2023 19:11 by rmk")
|
||||
(* ; "Edited 21-Mar-2023 11:28 by rmk")
|
||||
(* ; "Edited 10-Mar-2023 12:28 by rmk")
|
||||
@@ -1541,8 +1541,9 @@
|
||||
with (CHARCODE SPACE))))
|
||||
PREVSP])
|
||||
|
||||
(\FORMATLINE.EMPTY
|
||||
[LAMBDA (TEXTOBJ CH#1 LINE) (* ; "Edited 26-Jan-2024 11:08 by rmk")
|
||||
(\TEDIT.FORMATLINE.EMPTY
|
||||
[LAMBDA (TEXTOBJ CH#1 LINE) (* ; "Edited 15-Mar-2024 22:00 by rmk")
|
||||
(* ; "Edited 26-Jan-2024 11:08 by rmk")
|
||||
(* ; "Edited 6-Dec-2023 20:15 by rmk")
|
||||
(* ; "Edited 3-Dec-2023 19:41 by rmk")
|
||||
(* ; "Edited 26-Sep-2023 17:32 by rmk")
|
||||
@@ -1565,8 +1566,8 @@
|
||||
YBOT _ (SUB1 (FGETTOBJ TEXTOBJ WBOTTOM])
|
||||
(\DTEST LINE 'LINEDESCRIPTOR)
|
||||
(LET (CHARSLOT FONT TRUEASCENT TRUEDESCENT LM FMTSPEC (THISLINE (FGETTOBJ TEXTOBJ THISLINE)))
|
||||
(\FORMATLINE.SETUP TEXTOBJ NIL LINE (WINDOWPROP (CAR (FGETTOBJ TEXTOBJ \WINDOW))
|
||||
'DSP))
|
||||
(\TEDIT.FORMATLINE.SETUP TEXTOBJ NIL LINE (WINDOWPROP (CAR (FGETTOBJ TEXTOBJ \WINDOW))
|
||||
'DSP))
|
||||
(SETQ FMTSPEC (FGETLD LINE LFMTSPEC))
|
||||
(SETQ CHARSLOT (FIRSTCHARSLOT THISLINE))
|
||||
(replace (THISLINE NEXTAVAILABLECHARSLOT) of THISLINE with (NEXTCHARSLOT CHARSLOT))
|
||||
@@ -1618,8 +1619,10 @@
|
||||
(\TEDIT.FORMATLINE.HORIZONTAL LINE THISLINE NIL 0 0)
|
||||
LINE])
|
||||
|
||||
(\FORMATLINE.UPDATELOOKS
|
||||
[LAMBDA (TSTREAM PC) (* ; "Edited 24-Dec-2023 22:54 by rmk")
|
||||
(\TEDIT.FORMATLINE.UPDATELOOKS
|
||||
[LAMBDA (TSTREAM PC) (* ; "Edited 17-Mar-2024 11:08 by rmk")
|
||||
(* ; "Edited 15-Mar-2024 19:34 by rmk")
|
||||
(* ; "Edited 24-Dec-2023 22:54 by rmk")
|
||||
(* ; "Edited 23-Dec-2023 20:37 by rmk")
|
||||
(* ; "Edited 22-Aug-2023 16:46 by rmk")
|
||||
(* ; "Edited 24-Jul-2023 16:39 by rmk")
|
||||
@@ -1638,7 +1641,7 @@
|
||||
UNBREAKABLE))
|
||||
(CL:UNLESS PC (* ;
|
||||
"Ran off the end ? Skips the ENDOFSTREAMOP")
|
||||
(RETFROM (FUNCTION \TEXTBIN)
|
||||
(RETFROM (FUNCTION \TEDIT.TEXTBIN)
|
||||
NIL))
|
||||
(LET (PLOOKS INVISIBLERUN SCALE CLOFFSET)
|
||||
|
||||
@@ -1706,12 +1709,13 @@
|
||||
(SETQ FMTSPEC (PPARALOOKS PC))
|
||||
(SETQ TABSPEC (ffetch (FMTSPEC TABSPEC) of FMTSPEC))
|
||||
(CL:WHEN (EQ LINETYPE 'TRUEHARDCOPY)
|
||||
(SETQ TABSPEC (\FORMATLINE.SCALETABS TABSPEC (DSPSCALE NIL IMAGESTREAM)))))
|
||||
(SETQ TABSPEC (\TEDIT.FORMATLINE.SCALETABS TABSPEC (DSPSCALE NIL
|
||||
IMAGESTREAM)))))
|
||||
else (add CHNO INVISIBLERUN)
|
||||
(\TEDIT.INSTALL.PIECE TSTREAM PC 0))
|
||||
PC])
|
||||
|
||||
(\FORMATLINE.LASTLEGAL
|
||||
(\TEDIT.FORMATLINE.LASTLEGAL
|
||||
[LAMBDA NIL (* ; "Edited 1-Feb-2024 16:51 by rmk")
|
||||
(* ; "Edited 2-Jul-2023 14:39 by rmk")
|
||||
(* ; "Edited 17-Mar-2023 05:36 by rmk")
|
||||
@@ -1763,8 +1767,9 @@
|
||||
repeatuntil (EQ CHARSLOT BESTSLOT))
|
||||
T)])
|
||||
|
||||
(\FORMATBLOCK
|
||||
[LAMBDA (TEXTOBJ CHN YBOTN) (* ; "Edited 5-Apr-2023 09:13 by rmk")
|
||||
(\TEDIT.LINES.ABOVE
|
||||
[LAMBDA (TEXTOBJ CHN YBOTN) (* ; "Edited 15-Mar-2024 19:22 by rmk")
|
||||
(* ; "Edited 5-Apr-2023 09:13 by rmk")
|
||||
(* ; "Edited 1-Apr-2023 12:02 by rmk")
|
||||
(* ; "Edited 30-May-91 23:02 by jds")
|
||||
|
||||
@@ -1776,11 +1781,11 @@
|
||||
(SETQ CHN (TEXTLEN TEXTOBJ)))
|
||||
(CL:UNLESS YBOTN (SETQ YBOTN 0))
|
||||
(bind L1 LN LINE HEIGHT (CHNO _ (\TEDIT.PREVIOUS.LINEBREAK TEXTOBJ CHN))
|
||||
first (SETQ L1 (\FORMATLINE TEXTOBJ CHNO)) (* ;
|
||||
first (SETQ L1 (\TEDIT.FORMATLINE TEXTOBJ CHNO)) (* ;
|
||||
"CHNO is the first char of the top line")
|
||||
(SETQ LN L1)
|
||||
(SETQ CHNO (ADD1 (GETLD L1 LCHARLIM))) until (IGREATERP CHNO CHN)
|
||||
do (SETQ LINE (\FORMATLINE TEXTOBJ CHNO)) (* ;
|
||||
do (SETQ LINE (\TEDIT.FORMATLINE TEXTOBJ CHNO)) (* ;
|
||||
"The line immediately after a preceding known break")
|
||||
(LINKLD LN LINE)
|
||||
(SETQ LN LINE)
|
||||
@@ -1815,9 +1820,10 @@
|
||||
THISLINE])
|
||||
|
||||
(\TLVALIDATE
|
||||
[LAMBDA (THISLINE) (* ; "Edited 7-Nov-2022 10:16 by rmk")
|
||||
[LAMBDA (THISLINE) (* ; "Edited 15-Mar-2024 19:33 by rmk")
|
||||
(* ; "Edited 7-Nov-2022 10:16 by rmk")
|
||||
|
||||
(* ;; "Check validity of THISLINE, either just before or anytime after \FORMATLINE.JUSTIFY")
|
||||
(* ;; "Check validity of THISLINE, either just before or anytime after \TEDIT.FORMATLINE.JUSTIFY")
|
||||
|
||||
[with THISLINE THISLINE (CL:WHEN (EQ DESC 'NODESC)
|
||||
(HELP "INVALID THISLINE" DESC))
|
||||
@@ -1859,8 +1865,10 @@
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(\DISPLAYLINE
|
||||
[LAMBDA (TEXTOBJ LINE PANE) (* ; "Edited 24-Dec-2023 22:05 by rmk")
|
||||
(\TEDIT.DISPLAYLINE
|
||||
[LAMBDA (TEXTOBJ LINE PANE) (* ; "Edited 20-Mar-2024 10:57 by rmk")
|
||||
(* ; "Edited 15-Mar-2024 22:04 by rmk")
|
||||
(* ; "Edited 24-Dec-2023 22:05 by rmk")
|
||||
(* ; "Edited 2-Dec-2023 11:34 by rmk")
|
||||
(* ; "Edited 20-Nov-2023 13:57 by rmk")
|
||||
(* ; "Edited 28-Oct-2023 23:57 by rmk")
|
||||
@@ -1877,7 +1885,7 @@
|
||||
|
||||
(* ;; "Validate the incoming arguments so ffetch can be used consistently for all their field extractions.")
|
||||
|
||||
(\DTEST TEXTOBJ 'TEXTOBJ)
|
||||
(TEXTOBJ! TEXTOBJ)
|
||||
(\DTEST LINE 'LINEDESCRIPTOR)
|
||||
(LET ((WINDOWDS (WINDOWPROP (FGETPANE PANE PWINDOW)
|
||||
'DSP))
|
||||
@@ -1920,7 +1928,7 @@
|
||||
(CL:UNLESS (EQ LINE (fetch (THISLINE DESC) of THISLINE))
|
||||
(* ;
|
||||
"No image cache -- re-format and display")
|
||||
(\FORMATLINE TEXTOBJ (FGETLD LINE LCHAR1)
|
||||
(\TEDIT.FORMATLINE TEXTOBJ (FGETLD LINE LCHAR1)
|
||||
LINE))
|
||||
(MOVETO (FGETLD LINE LX1)
|
||||
(FGETLD LINE DESCENT)
|
||||
@@ -1959,7 +1967,7 @@
|
||||
|
||||
(* ;; "Not just white space, have to fill in with dots.")
|
||||
|
||||
(\DISPLAYLINE.TABS CHARW DS TX TERMSA LINE CLOOKS DISPLAYDATA
|
||||
(\TEDIT.DISPLAYLINE.TABS CHARW DS TX TERMSA LINE CLOOKS DISPLAYDATA
|
||||
DDPILOTBBT CLIPRIGHT TEXTOBJ))
|
||||
(add TX CHARW))
|
||||
(NIL (* ;
|
||||
@@ -2037,7 +2045,7 @@
|
||||
(FSETLD LINE LDIRTY NIL)
|
||||
LINE])
|
||||
|
||||
(\DISPLAYLINE.TABS
|
||||
(\TEDIT.DISPLAYLINE.TABS
|
||||
[LAMBDA (CW DS TX TERMSA LINE CLOOKS DISPLAYDATA DDPILOTBBT CLIPRIGHT TEXTOBJ)
|
||||
(* ; "Edited 10-Oct-2023 23:29 by rmk")
|
||||
(* ; "Edited 4-Oct-2023 21:16 by rmk")
|
||||
@@ -2100,22 +2108,19 @@
|
||||
(RETURN CACHES])
|
||||
|
||||
(\TEDIT.BLTCHAR
|
||||
[LAMBDA (CHARCODE DISPLAYSTREAM CURX DISPLAYDATA DDPILOTBBT CLIPRIGHT)
|
||||
[LAMBDA (CHARCODE DISPLAYSTREAM CURX DISPLAYDATA DDPILOTBBT CLIPRIGHT)
|
||||
(* ; "Edited 15-Mar-2024 14:39 by rmk")
|
||||
(* jds " 9-Jan-86 17:14")
|
||||
|
||||
(* Version of BLTCHAR peculiar to TEdit --
|
||||
relies on \DISPLAYLINE to make sure things keep working right.)
|
||||
(* ;; "Version of BLTCHAR peculiar to TEdit -- relies on \TEDIT.DISPLAYLINE to make sure things keep working right.")
|
||||
|
||||
(* puts a character on a guaranteed display stream.
|
||||
Much of the information needed by the BitBlt microcode is prestored by the
|
||||
routines that change it. This is kept in the BitBltTable.)
|
||||
(* knows about the representation of
|
||||
display stream image data)
|
||||
(* MUST NOT POINT AT A WINDOW'S
|
||||
DISPLAYSTREAM!!!)
|
||||
(* ;; "puts a character on a guaranteed display stream. Much of the information needed by the BitBlt microcode is prestored by the routines that change it. This is kept in the BitBltTable.")
|
||||
(* ;
|
||||
"knows about the representation of display stream image data")
|
||||
(* ;
|
||||
"MUST NOT POINT AT A WINDOW'S DISPLAYSTREAM!!!")
|
||||
|
||||
(* ASSUMES THAT WE NEVER WANT TO PRINT TO THE LEFT OF ORIGIN 0 ON THE LINE CACHE
|
||||
BITMAP, OR THAT IF WE DO, ALL BETS ARE OFF)
|
||||
(* ;; "ASSUMES THAT WE NEVER WANT TO PRINT TO THE LEFT OF ORIGIN 0 ON THE LINE CACHE BITMAP, OR THAT IF WE DO, ALL BETS ARE OFF")
|
||||
|
||||
(DECLARE (LOCALVARS . T))
|
||||
(PROG (NEWX LEFT RIGHT IMAGEWIDTH (CHAR8CODE (\CHAR8CODE CHARCODE)))
|
||||
@@ -2129,11 +2134,12 @@
|
||||
(SETQ LEFT (IMAX 0 CURX))
|
||||
(SETQ RIGHT (IMIN CLIPRIGHT NEWX))
|
||||
(COND
|
||||
((ILESSP LEFT RIGHT) (* Only print anything if there is a
|
||||
place to put it)
|
||||
((ILESSP LEFT RIGHT) (* ;
|
||||
"Only print anything if there is a place to put it")
|
||||
(UNINTERRUPTABLY
|
||||
(freplace PBTDESTBIT of DDPILOTBBT with LEFT)
|
||||
(* Set up the bitblt-table source left)
|
||||
(* ;
|
||||
"Set up the bitblt-table source left")
|
||||
(freplace PBTWIDTH of DDPILOTBBT with (IMIN IMAGEWIDTH (IDIFFERENCE RIGHT LEFT)))
|
||||
(freplace PBTSOURCEBIT of DDPILOTBBT with (\GETBASE (fetch DDOFFSETSCACHE
|
||||
of DISPLAYDATA)
|
||||
@@ -2165,8 +2171,9 @@
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(TEDIT.UPDATE.SCREEN
|
||||
[LAMBDA (TEXTOBJ) (* ; "Edited 16-Dec-2023 23:52 by rmk")
|
||||
(\TEDIT.UPDATE.SCREEN
|
||||
[LAMBDA (TEXTOBJ) (* ; "Edited 15-Mar-2024 22:00 by rmk")
|
||||
(* ; "Edited 16-Dec-2023 23:52 by rmk")
|
||||
(* ; "Edited 12-Oct-2023 15:27 by rmk")
|
||||
(* ; "Edited 17-Sep-2023 11:50 by rmk")
|
||||
(* ; "Edited 22-May-2023 22:19 by rmk")
|
||||
@@ -2181,12 +2188,15 @@
|
||||
|
||||
(\TEDIT.UPDATE.LINES TEXTOBJ 'APPEARANCE (CAR DIRTYCHARS)
|
||||
(CDR DIRTYCHARS))
|
||||
else (for PANE inpanes TEXTOBJ do (\FILLPANE (fetch (TEXTWINDOW PLINES) of PANE)
|
||||
else (for PANE inpanes TEXTOBJ do (\TEDIT.FILLPANE (fetch (TEXTWINDOW PLINES)
|
||||
of PANE)
|
||||
TEXTOBJ PANE]
|
||||
(FSETTOBJ TEXTOBJ TXTNEEDSUPDATE NIL))])
|
||||
|
||||
(\BACKFORMAT
|
||||
[LAMBDA (TEXTOBJ DY CH1 HEIGHT) (* ; "Edited 30-Nov-2023 21:16 by rmk")
|
||||
(\TEDIT.BACKFORMAT
|
||||
[LAMBDA (TEXTOBJ DY CH1 HEIGHT) (* ; "Edited 20-Mar-2024 06:46 by rmk")
|
||||
(* ; "Edited 15-Mar-2024 19:44 by rmk")
|
||||
(* ; "Edited 30-Nov-2023 21:16 by rmk")
|
||||
(* ; "Edited 3-Nov-2023 12:02 by rmk")
|
||||
(* ; "Edited 6-Apr-2023 16:46 by rmk")
|
||||
(* ; "Edited 5-Apr-2023 09:13 by rmk")
|
||||
@@ -2199,7 +2209,8 @@
|
||||
(* ;; "This computes block by block, where the first line of a block either starts a paragraph or comes immediately after a forced break.")
|
||||
|
||||
(bind L1 PAIR (CHNO _ CH1) until (IGREATERP HEIGHT DY) while (IGEQ CHNO 1)
|
||||
do (SETQ PAIR (\FORMATBLOCK TEXTOBJ CHNO HEIGHT)) (* ; "The block may go beyond DY")
|
||||
do (SETQ PAIR (\TEDIT.LINES.ABOVE TEXTOBJ CHNO HEIGHT))
|
||||
(* ; "The block may go beyond DY")
|
||||
(LINKLD (CADR PAIR)
|
||||
L1) (* ;
|
||||
"This block's LN links to previous L1")
|
||||
@@ -2211,7 +2222,8 @@
|
||||
DY])
|
||||
|
||||
(\TEDIT.PREVIOUS.LINEBREAK
|
||||
[LAMBDA (TEXTOBJ CHNO) (* ; "Edited 11-Dec-2023 21:59 by rmk")
|
||||
[LAMBDA (TEXTOBJ CHNO) (* ; "Edited 17-Mar-2024 12:05 by rmk")
|
||||
(* ; "Edited 11-Dec-2023 21:59 by rmk")
|
||||
(* ; "Edited 16-Oct-2023 23:19 by rmk")
|
||||
(* ; "Edited 31-Mar-2023 17:44 by rmk")
|
||||
(* ; "Edited 28-Mar-2023 09:03 by rmk")
|
||||
@@ -2233,10 +2245,10 @@
|
||||
(SETQ CHNO (FGETTOBJ TEXTOBJ TEXTLEN)))
|
||||
(LET ((TSTREAM (FGETTOBJ TEXTOBJ STREAMHINT))
|
||||
NCHARS)
|
||||
(\TEXTSETFILEPTR TSTREAM (SUB1 CHNO)) (* ;
|
||||
(\TEDIT.TEXTSETFILEPTR TSTREAM (SUB1 CHNO)) (* ;
|
||||
"Start at (SUB1 CHNO) because fileptrs are one back from characters")
|
||||
[SETQ NCHARS (find I from 1
|
||||
suchthat (MEMB (\TEXTBACKFILEPTR TSTREAM)
|
||||
suchthat (MEMB (\TEDIT.TEXTBACKFILEPTR TSTREAM)
|
||||
(CHARCODE (EOL FORM %#EOL Meta,EOL CR LF NIL]
|
||||
|
||||
(* ;;
|
||||
@@ -2246,8 +2258,10 @@
|
||||
(ADD1 (IDIFFERENCE CHNO NCHARS))
|
||||
1)])
|
||||
|
||||
(\FILLPANE
|
||||
[LAMBDA (PREVLINE TEXTOBJ PANE) (* ; "Edited 11-Jan-2024 19:32 by rmk")
|
||||
(\TEDIT.FILLPANE
|
||||
[LAMBDA (PREVLINE TEXTOBJ PANE) (* ; "Edited 20-Mar-2024 06:43 by rmk")
|
||||
(* ; "Edited 15-Mar-2024 14:39 by rmk")
|
||||
(* ; "Edited 11-Jan-2024 19:32 by rmk")
|
||||
(* ; "Edited 2-Jan-2024 12:45 by rmk")
|
||||
(* ; "Edited 24-Dec-2023 22:00 by rmk")
|
||||
(* ; "Edited 2-Dec-2023 23:05 by rmk")
|
||||
@@ -2278,12 +2292,12 @@
|
||||
|
||||
(* ;; "Format and display any lines that are still needed to fill out the pane. ")
|
||||
|
||||
(SETQ PREVLINE (\TEDIT.FORMATLINES PREVLINE NIL PANE TEXTOBJ))
|
||||
(SETQ PREVLINE (\TEDIT.LINES.BELOW PREVLINE NIL PANE TEXTOBJ))
|
||||
|
||||
(* ;; "")
|
||||
|
||||
(CL:WHEN (\TEDIT.INSURE.TRAILING.LINE TEXTOBJ PREVLINE)
|
||||
(\DISPLAYLINE TEXTOBJ (GETLD PREVLINE NEXTLINE)
|
||||
(\TEDIT.DISPLAYLINE TEXTOBJ (GETLD PREVLINE NEXTLINE)
|
||||
PANE))
|
||||
|
||||
(* ;; "")
|
||||
@@ -2294,6 +2308,7 @@
|
||||
|
||||
(\TEDIT.UPDATE.LINES
|
||||
[LAMBDA (TEXTOBJ REASON FIRSTCHANGEDCHNO NCHARSCHANGED DONTDISPLAY)
|
||||
(* ; "Edited 20-Mar-2024 06:43 by rmk")
|
||||
(* ; "Edited 24-Dec-2023 22:00 by rmk")
|
||||
(* ; "Edited 18-Dec-2023 00:12 by rmk")
|
||||
(* ; "Edited 16-Dec-2023 13:43 by rmk")
|
||||
@@ -2320,7 +2335,7 @@
|
||||
(* ;; "Create/format/display new lines between LASTVALID=(CAR VALIDS) and NEXTVALID ")
|
||||
|
||||
(SETQ NEXTVALID (CDR VALIDS))
|
||||
(SETQ LASTGAPLINE (\TEDIT.FORMATLINES (CAR VALIDS)
|
||||
(SETQ LASTGAPLINE (\TEDIT.LINES.BELOW (CAR VALIDS)
|
||||
(AND NEXTVALID (SUB1 (FGETLD NEXTVALID LCHAR1)))
|
||||
PANE TEXTOBJ DONTDISPLAY))
|
||||
(LINKLD LASTGAPLINE NEXTVALID)
|
||||
@@ -2426,8 +2441,9 @@
|
||||
(IDIFFERENCE (ADD1 LASTDIRTYCHAR)
|
||||
(FGETLD FIRSTDIRTYLINE LCHAR1))))])
|
||||
|
||||
(\TEDIT.FORMATLINES
|
||||
[LAMBDA (PREVLINE LASTCHAR PANE TEXTOBJ DONTDISPLAY) (* ; "Edited 23-Dec-2023 23:38 by rmk")
|
||||
(\TEDIT.LINES.BELOW
|
||||
[LAMBDA (PREVLINE LASTCHAR PANE TEXTOBJ DONTDISPLAY) (* ; "Edited 15-Mar-2024 19:22 by rmk")
|
||||
(* ; "Edited 23-Dec-2023 23:38 by rmk")
|
||||
(* ; "Edited 17-Dec-2023 15:56 by rmk")
|
||||
(* ; "Edited 14-Dec-2023 12:46 by rmk")
|
||||
|
||||
@@ -2456,7 +2472,7 @@
|
||||
first (CL:WHEN (OR (IGREATERP LCHARLIM LASTCHAR)
|
||||
(ILEQ YBOT PBOTTOM))
|
||||
(FSETLD PREVLINE NEXTLINE NIL) (* ; "Eliminate dangling garbage")
|
||||
(RETURN PREVLINE)) while (SETQ NEXT (\FORMATLINE TEXTOBJ (ADD1 LCHARLIM)))
|
||||
(RETURN PREVLINE)) while (SETQ NEXT (\TEDIT.FORMATLINE TEXTOBJ (ADD1 LCHARLIM)))
|
||||
do
|
||||
(* ;;
|
||||
"L is formatted, positioned, linked, displayed. Next is the following line unless at the end.")
|
||||
@@ -2470,14 +2486,15 @@
|
||||
(RETURN L))
|
||||
(CL:UNLESS DONTDISPLAY (* ;
|
||||
"Cached formatting is good for display")
|
||||
(\DISPLAYLINE TEXTOBJ NEXT PANE)) finally
|
||||
(\TEDIT.DISPLAYLINE TEXTOBJ NEXT PANE)) finally
|
||||
|
||||
(* ;; "Ran out of lines")
|
||||
(* ;; "Ran out of lines")
|
||||
|
||||
(RETURN (OR L PREVLINE))))])
|
||||
(RETURN (OR L PREVLINE))))])
|
||||
|
||||
(\FORMAT.GAP.LINES
|
||||
[LAMBDA (VALIDS PANE TEXTOBJ DONTDISPLAY) (* ; "Edited 4-Dec-2023 20:42 by rmk")
|
||||
[LAMBDA (VALIDS PANE TEXTOBJ DONTDISPLAY) (* ; "Edited 15-Mar-2024 19:23 by rmk")
|
||||
(* ; "Edited 4-Dec-2023 20:42 by rmk")
|
||||
(* ; "Edited 20-Nov-2023 10:47 by rmk")
|
||||
(* ; "Edited 3-Nov-2023 12:05 by rmk")
|
||||
(* ; "Edited 15-May-2023 17:31 by rmk")
|
||||
@@ -2517,7 +2534,7 @@
|
||||
(CL:WHEN (IGREATERP (FGETLD NEXTVALID YTOP)
|
||||
(FGETLD LASTVALID YBOT))
|
||||
(BITBLT)))
|
||||
(SETQ LASTVALID (\FORMATLINE TEXTOBJ (ADD1 LCHARLIM)))
|
||||
(SETQ LASTVALID (\TEDIT.FORMATLINE TEXTOBJ (ADD1 LCHARLIM)))
|
||||
(LINKLD L LASTVALID)
|
||||
(SETQ YBOT (\TEDIT.LINE.BOTTOM LASTVALID))
|
||||
(SETQ LCHARLIM (FGETLD LASTVALID LCHARLIM))
|
||||
@@ -2525,11 +2542,12 @@
|
||||
|
||||
(* ;; "The THISLINE cache for NEXT is good if we display immediately after formatting")
|
||||
|
||||
(\DISPLAYLINE TEXTOBJ LASTVALID PANE)) finally (LINKLD LASTVALID NEXTVALID)
|
||||
(RETURN LASTVALID])
|
||||
(\TEDIT.DISPLAYLINE TEXTOBJ LASTVALID PANE)) finally (LINKLD LASTVALID NEXTVALID)
|
||||
(RETURN LASTVALID])
|
||||
|
||||
(\TEDIT.LOWER.LINES
|
||||
[LAMBDA (NEXTVALID LASTVALID PANE TEXTOBJ) (* ; "Edited 20-Jan-2024 23:15 by rmk")
|
||||
[LAMBDA (NEXTVALID LASTVALID PANE TEXTOBJ) (* ; "Edited 15-Mar-2024 14:40 by rmk")
|
||||
(* ; "Edited 20-Jan-2024 23:15 by rmk")
|
||||
(* ; "Edited 2-Jan-2024 00:26 by rmk")
|
||||
(* ; "Edited 4-Dec-2023 11:25 by rmk")
|
||||
(* ; "Edited 24-Nov-2023 13:01 by rmk")
|
||||
@@ -2590,7 +2608,7 @@
|
||||
(if (IGEQ (FGETLD L YTOP)
|
||||
NEWTOP)
|
||||
then (SETYPOS L YBOT)
|
||||
(\DISPLAYLINE TEXTOBJ L PANE)
|
||||
(\TEDIT.DISPLAYLINE TEXTOBJ L PANE)
|
||||
else (SETYPOS L YBOT)))
|
||||
|
||||
(* ;; "Clear whatever might be left over below the last visible line")
|
||||
@@ -2600,7 +2618,8 @@
|
||||
'REPLACE))])])
|
||||
|
||||
(\TEDIT.RAISE.LINES
|
||||
[LAMBDA (LINE NEWTOP PANE TEXTOBJ) (* ; "Edited 20-Jan-2024 23:14 by rmk")
|
||||
[LAMBDA (LINE NEWTOP PANE TEXTOBJ) (* ; "Edited 20-Mar-2024 10:57 by rmk")
|
||||
(* ; "Edited 20-Jan-2024 23:14 by rmk")
|
||||
(* ; "Edited 2-Jan-2024 00:31 by rmk")
|
||||
(* ; "Edited 14-Dec-2023 17:20 by rmk")
|
||||
(* ; "Edited 4-Dec-2023 20:57 by rmk")
|
||||
@@ -2615,7 +2634,7 @@
|
||||
|
||||
(* ;; "If PANE has been moved so that it is not entirely within the screen, then don't try to find the relevant bits, just repaint the whole window.")
|
||||
|
||||
(\DTEST TEXTOBJ 'TEXTOBJ)
|
||||
(TEXTOBJ! TEXTOBJ)
|
||||
(PROG ((PREG (DSPCLIPPINGREGION NIL PANE))
|
||||
(LTOP (GETLD LINE YTOP))
|
||||
RAISE PWIDTH PBOTTOM LASTVISIBLE)
|
||||
@@ -2652,11 +2671,13 @@
|
||||
|
||||
(* ;; "If the last visible line in the pane (whose image is now elevated) is not the last line of the text, we build and display new lines to fill out the pane.")
|
||||
|
||||
(\TEDIT.FORMATLINES LASTVISIBLE NIL PANE TEXTOBJ)
|
||||
(\TEDIT.LINES.BELOW LASTVISIBLE NIL PANE TEXTOBJ)
|
||||
(RETURN))])
|
||||
|
||||
(\TEDIT.VALID.LINES
|
||||
[LAMBDA (TEXTOBJ FIRSTCHANGEDCHNO NCHARSCHANGED REASON) (* ; "Edited 22-Feb-2024 01:05 by rmk")
|
||||
[LAMBDA (TEXTOBJ FIRSTCHANGEDCHNO NCHARSCHANGED REASON) (* ; "Edited 20-Mar-2024 06:46 by rmk")
|
||||
(* ; "Edited 15-Mar-2024 19:44 by rmk")
|
||||
(* ; "Edited 22-Feb-2024 01:05 by rmk")
|
||||
(* ; "Edited 3-Nov-2023 12:07 by rmk")
|
||||
(* ; "Edited 14-Jun-2023 15:55 by rmk")
|
||||
(* ; "Edited 17-May-2023 09:32 by rmk")
|
||||
@@ -2735,9 +2756,8 @@
|
||||
|
||||
(* ;; "We ran back to the top of the pane without finding a forced-end. If it's not the beginning of the document, we need to insert a new line with the proper LCHARLIM and YBOT just above the pane. ")
|
||||
|
||||
[SETQ LASTVALIDLINE (CADR (\FORMATBLOCK TEXTOBJ (SUB1 (FGETLD
|
||||
FIRSTCHANGEDLINE
|
||||
LCHAR1))
|
||||
[SETQ LASTVALIDLINE (CADR (\TEDIT.LINES.ABOVE TEXTOBJ
|
||||
(SUB1 (FGETLD FIRSTCHANGEDLINE LCHAR1))
|
||||
(FGETLD FIRSTCHANGEDLINE YTOP]
|
||||
(\TEDIT.INSERTLINE LASTVALIDLINE PLINES T)))
|
||||
|
||||
@@ -2817,19 +2837,20 @@
|
||||
(SETLD OLDLINE PREVLINE NEWLINE])
|
||||
|
||||
(\TEDIT.INSURE.TRAILING.LINE
|
||||
[LAMBDA (TEXTOBJ LASTLINE) (* ; "Edited 16-Dec-2023 00:12 by rmk")
|
||||
[LAMBDA (TEXTOBJ LASTLINE) (* ; "Edited 15-Mar-2024 19:31 by rmk")
|
||||
(* ; "Edited 16-Dec-2023 00:12 by rmk")
|
||||
(* ; "Edited 15-Jul-2023 13:53 by rmk")
|
||||
(* ; "Edited 8-May-2023 22:00 by rmk")
|
||||
(* ; "Edited 5-May-2023 10:54 by rmk")
|
||||
|
||||
(* ;; "Fabricates a final line to insure that there is a place for the caret to blink after the last EOL of the text. Something for \FIXSEL to move to.")
|
||||
|
||||
(* ;; "\FORMATLINE may be overkill--maybe we really want to construct exactly what we want. But \FORMATLINE does get the LHEIGHT.")
|
||||
(* ;; "\TEDIT.FORMATLINE may be overkill--maybe we really want to construct exactly what we want. But \TEDIT.FORMATLINE does get the LHEIGHT.")
|
||||
|
||||
(CL:WHEN (AND (GETLD LASTLINE FORCED-END)
|
||||
(IEQP (FGETLD LASTLINE LCHARLIM)
|
||||
(FGETTOBJ TEXTOBJ TEXTLEN)))
|
||||
(LET [(LINE (\FORMATLINE.EMPTY TEXTOBJ (ADD1 (FGETTOBJ TEXTOBJ TEXTLEN]
|
||||
(LET [(LINE (\TEDIT.FORMATLINE.EMPTY TEXTOBJ (ADD1 (FGETTOBJ TEXTOBJ TEXTLEN]
|
||||
(SETYPOS LINE (IDIFFERENCE (FGETLD LASTLINE YBOT)
|
||||
(FGETLD LINE LHEIGHT)))
|
||||
(LINKLD LASTLINE LINE)
|
||||
@@ -2945,21 +2966,22 @@
|
||||
(SETQ TAILLINE NIL))))])
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (24822 26231 (\TEDIT.LINEDESCRIPTOR.DEFPRINT 24832 . 26229)) (33728 110992 (\FORMATLINE
|
||||
33738 . 68365) (\FORMATLINE.SETUP 68367 . 71752) (\TEDIT.FORMATLINE.HORIZONTAL 71754 . 76029) (
|
||||
\TEDIT.FORMATLINE.VERTICAL 76031 . 78000) (\FORMATLINE.JUSTIFY 78002 . 83936) (\FORMATLINE.TABS 83938
|
||||
. 91419) (\FORMATLINE.SCALETABS 91421 . 92418) (\FORMATLINE.PURGE.SPACES 92420 . 93724) (
|
||||
\FORMATLINE.EMPTY 93726 . 98429) (\FORMATLINE.UPDATELOOKS 98431 . 105376) (\FORMATLINE.LASTLEGAL
|
||||
105378 . 108854) (\FORMATBLOCK 108856 . 110990)) (111109 113415 (\CLEARTHISLINE 111119 . 111788) (
|
||||
\TLVALIDATE 111790 . 113413)) (113609 133326 (\DISPLAYLINE 113619 . 125731) (\DISPLAYLINE.TABS 125733
|
||||
. 128350) (\TEDIT.LINECACHE 128352 . 129080) (\TEDIT.CREATE.LINECACHE 129082 . 129918) (
|
||||
\TEDIT.BLTCHAR 129920 . 132441) (\TEDIT.DIACRITIC.SHIFT 132443 . 133324)) (133941 186008 (
|
||||
TEDIT.UPDATE.SCREEN 133951 . 135590) (\BACKFORMAT 135592 . 137346) (\TEDIT.PREVIOUS.LINEBREAK 137348
|
||||
. 139536) (\FILLPANE 139538 . 141857) (\TEDIT.UPDATE.LINES 141859 . 146738) (\TEDIT.CREATEPLINE
|
||||
146740 . 148583) (\TEDIT.FIND.DIRTYCHARS 148585 . 150597) (\TEDIT.FORMATLINES 150599 . 153948) (
|
||||
\FORMAT.GAP.LINES 153950 . 157814) (\TEDIT.LOWER.LINES 157816 . 162068) (\TEDIT.RAISE.LINES 162070 .
|
||||
165395) (\TEDIT.VALID.LINES 165397 . 174681) (\TEDIT.CLEARPANE.BELOW.LINE 174683 . 176001) (
|
||||
\TEDIT.INSERTLINE 176003 . 177261) (\TEDIT.INSURE.TRAILING.LINE 177263 . 178451) (
|
||||
\TEDIT.MARK.LINES.DIRTY 178453 . 181164) (\TEDIT.LINE.BOTTOM 181166 . 184006) (\TEDIT.NCONC.LINES
|
||||
184008 . 186006)))))
|
||||
(FILEMAP (NIL (24497 25906 (\TEDIT.LINEDESCRIPTOR.DEFPRINT 24507 . 25904)) (33264 111915 (
|
||||
\TEDIT.FORMATLINE 33274 . 68334) (\TEDIT.FORMATLINE.SETUP 68336 . 71727) (\TEDIT.FORMATLINE.HORIZONTAL
|
||||
71729 . 76125) (\TEDIT.FORMATLINE.VERTICAL 76127 . 78330) (\TEDIT.FORMATLINE.JUSTIFY 78332 . 84272) (
|
||||
\TEDIT.FORMATLINE.TABS 84274 . 91761) (\TEDIT.FORMATLINE.SCALETABS 91763 . 92766) (
|
||||
\TEDIT.FORMATLINE.PURGE.SPACES 92768 . 94078) (\TEDIT.FORMATLINE.EMPTY 94080 . 98910) (
|
||||
\TEDIT.FORMATLINE.UPDATELOOKS 98912 . 106178) (\TEDIT.FORMATLINE.LASTLEGAL 106180 . 109662) (
|
||||
\TEDIT.LINES.ABOVE 109664 . 111913)) (112032 114453 (\CLEARTHISLINE 112042 . 112711) (\TLVALIDATE
|
||||
112713 . 114451)) (114647 134704 (\TEDIT.DISPLAYLINE 114657 . 126997) (\TEDIT.DISPLAYLINE.TABS 126999
|
||||
. 129622) (\TEDIT.LINECACHE 129624 . 130352) (\TEDIT.CREATE.LINECACHE 130354 . 131190) (
|
||||
\TEDIT.BLTCHAR 131192 . 133819) (\TEDIT.DIACRITIC.SHIFT 133821 . 134702)) (135319 189027 (
|
||||
\TEDIT.UPDATE.SCREEN 135329 . 137153) (\TEDIT.BACKFORMAT 137155 . 139197) (\TEDIT.PREVIOUS.LINEBREAK
|
||||
139199 . 141502) (\TEDIT.FILLPANE 141504 . 144053) (\TEDIT.UPDATE.LINES 144055 . 149043) (
|
||||
\TEDIT.CREATEPLINE 149045 . 150888) (\TEDIT.FIND.DIRTYCHARS 150890 . 152902) (\TEDIT.LINES.BELOW
|
||||
152904 . 156386) (\FORMAT.GAP.LINES 156388 . 160379) (\TEDIT.LOWER.LINES 160381 . 164748) (
|
||||
\TEDIT.RAISE.LINES 164750 . 168177) (\TEDIT.VALID.LINES 168179 . 177573) (\TEDIT.CLEARPANE.BELOW.LINE
|
||||
177575 . 178893) (\TEDIT.INSERTLINE 178895 . 180153) (\TEDIT.INSURE.TRAILING.LINE 180155 . 181470) (
|
||||
\TEDIT.MARK.LINES.DIRTY 181472 . 184183) (\TEDIT.LINE.BOTTOM 184185 . 187025) (\TEDIT.NCONC.LINES
|
||||
187027 . 189025)))))
|
||||
STOP
|
||||
|
||||
Reference in New Issue
Block a user