1
0
mirror of synced 2026-05-05 23:54:46 +00:00

rmk122--Next round on fonts and MCCS (#2280)

* A revision to the font, Unicode, Tedit, and other modules to implement the MCCS character coding as the standard for internal text strings.  MCCS is a variant of XCCS with arrows switched with circumflex/underscore and $ switched with currency, and allows for additional code assignments over time. :MCCS replaces :XCCS as the default external format, especially for source files.  The file XCCS is removed in favor of the file MCCS, which includes the XCCS external format for backward compatibility.

* This includes a single Medley-font formatted font file for each of the family/size/face display fonts.  The glyph assignments correspond to the MCCS character encoding (except for fonts with idiosyncratic encodings--Hippo, Symbol).  All charsets from legacy font files are included in each file, and the character sets and glyphs in each file have also been extended by offline coercion from related families (e.g. Glyphs not in legacy Terminal are taken from legacy Modern). There should be fewer black boxes, and character-display shouldn't change when you switch fonts.

* The Unicode mapping tables have been redefined to set up correspondences between Unicode and MCCS, not XCCS.  Separate XCCS to/from MCCS mapping functions are provided in the file MCCS; they are no longer included in INTERPRESS.

* TEDIT converts characters in legacy fonts to their new MCCS codes as it reads formatted files, marks the file as MCCS compatible and preserves the new codes on writing.

* Default keyboard assignments produce the MCCS uparrow and leftarrow for shift-6 and shift-hyphen, use Function-6 for circumflex and Function-10 for underscore.

See documentation in FONTCODECHANGES.TEDIT MCCS.TEDIT MEDLEYFONTFORMAT.TEDIT in docs/internal, and library/UNICODE.TEDIT.
This commit is contained in:
rmkaplan
2025-10-20 17:17:34 -07:00
committed by GitHub
parent 54353a4bef
commit 82fc95ce18
401 changed files with 8871 additions and 6601 deletions

View File

@@ -1,12 +1,12 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED " 8-Sep-2025 22:10:32" {WMEDLEY}<library>TEDIT>TEDIT-STREAM.;913 190947
(FILECREATED "23-Sep-2025 08:19:29" {MEDLEY}<library>tedit>TEDIT-STREAM.;15 192029
:EDIT-BY rmk
:CHANGES-TO (FNS \TEDIT.OPENTEXTSTREAM.PIECES \TEDIT.OPENTEXTFILE)
:CHANGES-TO (FNS \TEDIT.TEXTINIT)
:PREVIOUS-DATE "29-Jul-2025 11:58:01" {WMEDLEY}<library>TEDIT>TEDIT-STREAM.;912)
:PREVIOUS-DATE "20-Sep-2025 08:49:36" {MEDLEY}<library>tedit>TEDIT-STREAM.;14)
(PRETTYCOMPRINT TEDIT-STREAMCOMS)
@@ -234,7 +234,7 @@
TXTRAWINCLUDESTREAM (* ;
 "NODIRCORE stream used to cache RAW includes (and maybe later, all includes?)")
DOCPROPS (* ;
 "Document properties that are stored with the document (not used yet)")
 "Document properties that are stored with the document. Not used before 9/2025")
TXTSTYLESHEET (* ;
 "Style sheet local to this document. Not currently saved as part of the file.")
)
@@ -284,14 +284,14 @@
ACCESS _ 'BOTH
USERCLOSEABLE _ T
USERVISIBLE _ T
DEVICE _ \TEXTFDEV
DEVICE _ \TEDITFDEV
F1 _ NIL
F2 _ 0
F3 _ NIL
F4 _ NIL
F5 _ NIL
MAXBUFFERS _ 10
IMAGEOPS _ \TEXTIMAGEOPS
IMAGEOPS _ \TEDITIMAGEOPS
IMAGEDATA _ NIL)))
)
@@ -1232,6 +1232,8 @@
(OPENTEXTSTREAM
[LAMBDA (TEXT WINDOW START/PROPS END PROPS)
(* ;; "Edited 9-Sep-2025 22:07 by rmk")
(* ;; "Edited 17-Feb-2025 08:57 by rmk")
(* ;; "Edited 30-Jan-2025 11:15 by rmk")
@@ -1244,32 +1246,14 @@
(* ;; "Edited 30-Jun-2024 16:17 by rmk")
(* ;; "Edited 25-Jun-2024 11:59 by rmk")
(* ;; "Edited 10-May-2024 22:42 by rmk")
(* ;; "Edited 6-May-2024 12:38 by rmk")
(* ;; "Edited 31-Mar-2024 11:43 by rmk")
(* ;; "Edited 17-Mar-2024 12:05 by rmk")
(* ;; "Edited 15-Mar-2024 14:23 by rmk")
(* ;; "Edited 10-Mar-2024 22:10 by rmk")
(* ;; "Edited 21-Jan-2024 10:31 by rmk")
(* ;; "Edited 20-Dec-2023 10:47 by rmk")
(* ;; "Edited 11-Dec-2023 09:50 by rmk")
(* ;; "Edited 26-Oct-2023 10:59 by rmk")
(* ;; "Edited 23-Oct-2023 22:14 by rmk")
(* ;; "Edited 21-Oct-2023 12:21 by rmk")
(* ;; "Edited 12-Oct-2023 23:44 by rmk")
(* ;; "Edited 31-Jan-2022 17:25 by rmk: A string TEXT is converted here to a stream")
@@ -1330,10 +1314,17 @@
else (\TEDIT.WINDOW.CREATE WINDOW TSTREAM PROPS)))
else (SETQ TSTREAM (\TEDIT.CREATE.TEXTSTREAM PROPS))
(SETQ TEXTOBJ (FGETTSTR TSTREAM TEXTOBJ))
(CL:WHEN TEXT (* ;
(if TEXT
then (* ;
 "Verify/open the file before the window")
(SETQ TEXT (\TEDIT.OPENTEXTFILE TEXT PROPS))
(FSETTOBJ TEXTOBJ TXTFILE TEXT))
(SETQ TEXT (\TEDIT.OPENTEXTFILE TEXT PROPS))
(FSETTOBJ TEXTOBJ TXTFILE TEXT)
else
(* ;; "An empty document starts in an MCCS environment")
(FPUTMULTI (FGETTOBJ TEXTOBJ DOCPROPS)
'CHARENCODING
'MCCS))
(* ;; "If we swap the window before the pieces, the local promptwindow is availabe for messages and queries. Otherwise, those show up in the system prompt. But if we do it in the opposite order, we don't know how to estimate the width for the window region.")
@@ -1666,7 +1657,8 @@
(SETTOBJ TEXTOBJ DEFAULTPARALOOKS PARALOOKS])
(\TEDIT.OPENTEXTFILE
[LAMBDA (TEXT PROPS) (* ; "Edited 8-Sep-2025 21:52 by rmk")
[LAMBDA (TEXT PROPS) (* ; "Edited 16-Sep-2025 00:28 by rmk")
(* ; "Edited 8-Sep-2025 21:52 by rmk")
(* ; "Edited 21-Nov-2024 11:38 by rmk")
(* ; "Edited 20-Dec-2023 10:49 by rmk")
(* ; "Edited 28-Oct-2023 10:33 by rmk")
@@ -1675,24 +1667,26 @@
(* ; "Edited 18-Sep-2023 22:40 by rmk")
(* ; "Edited 17-Sep-2023 21:29 by rmk")
(CL:WHEN TEXT
(if (OR (LITATOM TEXT)
(STRINGP TEXT)
(CL:PATHNAMEP TEXT))
(if (\GETSTREAM TEXT 'INPUT T)
elseif (OR (LITATOM TEXT)
(STRINGP TEXT)
(CL:PATHNAMEP TEXT)
(STREAMP TEXT))
then (* ; "String detects empty extension")
[RESETSAVE [SETQ TEXT (OPENSTREAM (OR (if (OR (CL:PATHNAMEP TEXT)
(FILENAMEFIELD.STRING TEXT
'EXTENSION))
then (FINDFILE TEXT T)
elseif (FINDFILE-WITH-EXTENSIONS TEXT NIL
*TEDIT-EXTENSIONS*))
TEXT)
[RESETSAVE [SETQ TEXT (OPENSTREAM (if (STREAMP TEXT)
elseif (OR (CL:PATHNAMEP TEXT)
(FILENAMEFIELD.STRING TEXT
'EXTENSION))
then (FINDFILE TEXT T)
elseif (FINDFILE-WITH-EXTENSIONS TEXT NIL
*TEDIT-EXTENSIONS*)
else TEXT)
'INPUT
'OLD
`((TYPE TEXT)
(FORMAT ,(LISTGET PROPS 'FORMAT]
'(PROGN (AND RESETSTATE (CLOSEF? OLDVALUE]
TEXT
elseif (\GETSTREAM TEXT 'INPUT T)
else
(* ;; "Don't know what it is")
@@ -1757,7 +1751,10 @@
NEWSTREAM])
(\TEDIT.TEXTINIT
[LAMBDA NIL (* ; "Edited 10-Jul-2025 11:28 by rmk")
[LAMBDA NIL (* ; "Edited 23-Sep-2025 08:19 by rmk")
(* ; "Edited 20-Sep-2025 08:48 by rmk")
(* ; "Edited 18-Sep-2025 14:52 by rmk")
(* ; "Edited 10-Jul-2025 11:28 by rmk")
(* ; "Edited 15-Apr-2025 23:10 by rmk")
(* ; "Edited 4-Sep-2024 22:05 by rmk")
(* ; "Edited 22-May-2024 14:53 by rmk")
@@ -1771,11 +1768,11 @@
(* ; "Edited 5-May-2022 15:12 by rmk")
(* ; "Edited 7-Oct-2021 08:40 by rmk:")
(* ;
 "Create the FDEV and STREAM prototypes for TEXT streams.")
 "Create the FDEV and STREAM prototypes for TEDIT streams.")
(* ;; "TEXT streams make use of the following STREAM fields:")
(* ;; "TEDIT streams make use of the following STREAM fields:")
(* ;; "(DEVICE (* FDEV of this guy -- The TEXT device)")
(* ;; "(DEVICE (* FDEV of this guy -- The TEDIT device)")
(* ;; "F1 Number of characters to the end of the current piece")
@@ -1793,24 +1790,28 @@
(* ;; "(FW8 WORD)")
(SETQ \TEXTIMAGEOPS (create IMAGEOPS
IMAGETYPE _ 'TEXT
IMXPOSITION _ (FUNCTION \TEDIT.TEXTDSPXPOSITION)
IMYPOSITION _ (FUNCTION \TEDIT.TEXTDSPYPOSITION)
IMLEFTMARGIN _ (FUNCTION \TEDIT.TEXTLEFTMARGIN)
IMRIGHTMARGIN _ (FUNCTION \TEDIT.TEXTRIGHTMARGIN)
IMFONT _ (FUNCTION \TEDIT.TEXTDSPFONT)
IMCLOSEFN _ (FUNCTION NILL)
IMFONTCREATE _ 'DISPLAY
IMLINEFEED _ (FUNCTION \TEDIT.TEXTDSPLINEFEED)
IMCHARWIDTH _ (FUNCTION \TEDIT.TEXTDSPCHARWIDTH)
IMSTRINGWIDTH _ (FUNCTION \TEDIT.TEXTDSPSTRINGWIDTH)
IMSCALE _ [FUNCTION (LAMBDA NIL 1]
IMCOLOR _ (FUNCTION \TEDIT.TEXTCOLOR)))
(SETQ \TEDITIMAGEOPS (create IMAGEOPS
IMAGETYPE _ 'TEXT
IMXPOSITION _ (FUNCTION \TEDIT.TEXTDSPXPOSITION)
IMYPOSITION _ (FUNCTION \TEDIT.TEXTDSPYPOSITION)
IMLEFTMARGIN _ (FUNCTION \TEDIT.TEXTLEFTMARGIN)
IMRIGHTMARGIN _ (FUNCTION \TEDIT.TEXTRIGHTMARGIN)
IMFONT _ (FUNCTION \TEDIT.TEXTDSPFONT)
IMCLOSEFN _ (FUNCTION NILL)
IMFONTCREATE _ 'DISPLAY
IMLINEFEED _ (FUNCTION \TEDIT.TEXTDSPLINEFEED)
IMCHARWIDTH _ (FUNCTION \TEDIT.TEXTDSPCHARWIDTH)
IMSTRINGWIDTH _ (FUNCTION \TEDIT.TEXTDSPSTRINGWIDTH)
IMSCALE _ [FUNCTION (LAMBDA NIL 1]
IMCOLOR _ (FUNCTION \TEDIT.TEXTCOLOR)))
(* ;; "Do we need TEXT here?")
(FONTPROFILE.ADDDEVICE 'TEXT 'DISPLAY)
(ADDTOVAR IMAGESTREAMTYPES (TEXT (FONTCREATE \CREATEDISPLAYFONT)
(FONTSAVAILABLE \SEARCHFONTFILES)
(CREATECHARSET \CREATECHARSET.DISPLAY)))
(ADDTOVAR IMAGESTREAMTYPES (TEDIT (FONTCREATE \CREATEDISPLAYFONT)
(CREATECHARSET \CREATECHARSET.DISPLAY)))
(* ;; "Maybe more functions later. The INCODE and BACK functions possibly need to count. If \TEXTBACKFILEPTR takes a count variable, the extra level wouldn't be needed. But INCCODE wants to go through the BIN opcode")
@@ -1820,41 +1821,41 @@
(FUNCTION \TEDIT.TEXTOUTCHARFN)
(FUNCTION \TEDIT.TEXTFORMATBYTESTREAM)
'CR NIL (FUNCTION \TEDIT.TEXTFORMATBYTESTRING))
(SETQ \TEXTFDEV (create FDEV
DEVICENAME _ 'TEXT
RESETABLE _ T
RANDOMACCESSP _ T
PAGEMAPPED _ NIL
GETFILENAME _ (FUNCTION NILL)
BIN _ (FUNCTION \TEDIT.TEXTBIN)
BOUT _ (FUNCTION \TEDIT.TEXTBOUT)
CLOSEFILE _ (FUNCTION \TEDIT.TEXTCLOSEF)
OPENFILE _ (FUNCTION \TEDIT.TEXTOPENF)
DELETEFILE _ (FUNCTION NILL)
DIRECTORYNAMEP _ (FUNCTION NILL)
EVENTFN _ (FUNCTION NILL)
GENERATEFILES _ (FUNCTION \GENERATENOFILES)
GETFILEINFO _ (FUNCTION NILL)
HOSTNAMEP _ (FUNCTION NILL)
READPAGES _ (FUNCTION NILL)
REOPENFILE _ [FUNCTION (LAMBDA (FILE ACCESS RECOG OTHERINFO FDEV STREAM)
(replace (STREAM ACCESS) of STREAM
with 'BOTH)
STREAM]
SETFILEINFO _ (FUNCTION \TEDIT.TEXTSETFILEINFO)
BACKFILEPTR _ (FUNCTION \TEDIT.TEXTBACKFILEPTR)
SETFILEPTR _ (FUNCTION \TEDIT.TEXTSETFILEPTR)
PEEKBIN _ (FUNCTION \TEDIT.TEXTPEEKBIN)
GETEOFPTR _ (FUNCTION \TEDIT.TEXTGETEOFPTR)
SETEOFPTR _ (FUNCTION \TEDIT.TEXTSETEOFPTR)
GETFILEPTR _ (FUNCTION \TEDIT.TEXTGETFILEPTR)
EOFP _ (FUNCTION \TEDIT.TEXTEOFP)
FDBINABLE _ T
FDBOUTABLE _ NIL
FDEXTENDABLE _ NIL
TRUNCATEFILE _ (FUNCTION NILL)
WRITEPAGES _ (FUNCTION NILL)
DEFAULTEXTERNALFORMAT _ :TEXTSTREAM))
(SETQ \TEDITFDEV (create FDEV
DEVICENAME _ 'TEDIT
RESETABLE _ T
RANDOMACCESSP _ T
PAGEMAPPED _ NIL
GETFILENAME _ (FUNCTION NILL)
BIN _ (FUNCTION \TEDIT.TEXTBIN)
BOUT _ (FUNCTION \TEDIT.TEXTBOUT)
CLOSEFILE _ (FUNCTION \TEDIT.TEXTCLOSEF)
OPENFILE _ (FUNCTION \TEDIT.TEXTOPENF)
DELETEFILE _ (FUNCTION NILL)
DIRECTORYNAMEP _ (FUNCTION NILL)
EVENTFN _ (FUNCTION NILL)
GENERATEFILES _ (FUNCTION \GENERATENOFILES)
GETFILEINFO _ (FUNCTION NILL)
HOSTNAMEP _ (FUNCTION NILL)
READPAGES _ (FUNCTION NILL)
REOPENFILE _ [FUNCTION (LAMBDA (FILE ACCESS RECOG OTHERINFO FDEV STREAM)
(replace (STREAM ACCESS) of STREAM
with 'BOTH)
STREAM]
SETFILEINFO _ (FUNCTION \TEDIT.TEXTSETFILEINFO)
BACKFILEPTR _ (FUNCTION \TEDIT.TEXTBACKFILEPTR)
SETFILEPTR _ (FUNCTION \TEDIT.TEXTSETFILEPTR)
PEEKBIN _ (FUNCTION \TEDIT.TEXTPEEKBIN)
GETEOFPTR _ (FUNCTION \TEDIT.TEXTGETEOFPTR)
SETEOFPTR _ (FUNCTION \TEDIT.TEXTSETEOFPTR)
GETFILEPTR _ (FUNCTION \TEDIT.TEXTGETFILEPTR)
EOFP _ (FUNCTION \TEDIT.TEXTEOFP)
FDBINABLE _ T
FDBOUTABLE _ NIL
FDEXTENDABLE _ NIL
TRUNCATEFILE _ (FUNCTION NILL)
WRITEPAGES _ (FUNCTION NILL)
DEFAULTEXTERNALFORMAT _ :TEXTSTREAM))
(CL:SETF (CONDITION-HANDLER 'XCL:STREAM-NOT-OPEN)
(FUNCTION (LAMBDA (CONDITION)
(LET ((STREAM (STREAM-ERROR-STREAM CONDITION)))
@@ -2099,7 +2100,8 @@
(\TEDIT.INSTALL.PIECE TSTREAM PC (- CH# START-OF-PIECE)))])
(\TEDIT.TEXTDSPXPOSITION
[LAMBDA (TSTREAM XPOSITION) (* ; "Edited 25-Jun-2024 11:59 by rmk")
[LAMBDA (TSTREAM XPOSITION) (* ; "Edited 20-Sep-2025 08:30 by rmk")
(* ; "Edited 25-Jun-2024 11:59 by rmk")
(* ; "Edited 17-Mar-2024 12:15 by rmk")
(* ; "Edited 3-Jan-2001 17:27 by rmk:")
(* ;
@@ -2108,13 +2110,18 @@
(* ;;
 "Simply returns the XPOSITION of the primary window's display stream, this is a read-only function")
(LET ((WINDOW (\TEDIT.PRIMARYPANE TSTREAM))) (* ;
(LET ((WINDOW (\TEDIT.PRIMARYPANE TSTREAM))
SPACEWIDTH) (* ;
 "If there is no window, estimate from character position")
(CL:IF WINDOW
(DSPXPOSITION NIL WINDOW)
(TIMES (CHARWIDTH (CHARCODE SPACE)
TSTREAM)
(POSITION TSTREAM)))])
(if WINDOW
then (DSPXPOSITION XPOSITION WINDOW)
else (SETQ SPACEWIDTH (CHARWIDTH (CHARCODE SPACE)
TSTREAM))
(PROG1 (TIMES SPACEWIDTH (POSITION TSTREAM))
(CL:WHEN (AND XPOSITION (IGEQ XPOSITION 0))
(SPACES (IDIFFERENCE (QUOTIENT XPOSITION SPACEWIDTH)
(POSITION TSTREAM))
TSTREAM)))])
(\TEDIT.TEXTDSPYPOSITION
[LAMBDA (TSTREAM YPOSITION) (* ; "Edited 25-Jun-2024 11:59 by rmk")
@@ -3128,34 +3135,34 @@
(ADDTOVAR LAMA TEXTPROP)
)
(DECLARE%: DONTCOPY
(FILEMAP (NIL (36922 67738 (\TEDIT.TEXTBIN 36932 . 47682) (\TEDIT.TEXTPEEKBIN 47684 . 53234) (
\TEDIT.TEXTBACKFILEPTR 53236 . 58909) (\TEDIT.TEXTBOUT 58911 . 63528) (\TEDIT.INSTALL.FILEBUFFER 63530
. 67736)) (68636 72927 (\TEDIT.TEXTOUTCHARFN 68646 . 70202) (\TEDIT.TEXTINCCODEFN 70204 . 70943) (
\TEDIT.TEXTBACKCCODEFN 70945 . 71537) (\TEDIT.TEXTFORMATBYTESTREAM 71539 . 72376) (
\TEDIT.TEXTFORMATBYTESTRING 72378 . 72925)) (72974 84615 (OPENTEXTSTREAM 72984 . 79936) (
COPYTEXTSTREAM 79938 . 83838) (TEDIT.STREAMCHANGEDP 83840 . 84142) (TXTFILE 84144 . 84613)) (84616
115130 (\TEDIT.REOPENTEXTSTREAM 84626 . 85978) (\TEDIT.OPENTEXTSTREAM.PIECES 85980 . 90908) (
\TEDIT.OPENTEXTSTREAM.PROPS 90910 . 92012) (\TEDIT.OPENTEXTSTREAM.SETUP.SEL 92014 . 97255) (
\TEDIT.OPENTEXTSTREAM.WINDOW 97257 . 100048) (\TEDIT.OPENTEXTSTREAM.DEFAULTLOOKS 100050 . 101989) (
\TEDIT.OPENTEXTFILE 101991 . 104242) (\TEDIT.CREATE.TEXTSTREAM 104244 . 105391) (\TEDIT.REOPEN.STREAM
105393 . 107729) (\TEDIT.TEXTINIT 107731 . 115128)) (115168 116356 (\TEDIT.TTYBOUT 115178 . 116354)) (
116474 136471 (\TEDIT.TEXTCLOSEF 116484 . 117808) (\TEDIT.TEXTDSPFONT 117810 . 119008) (
\TEDIT.TEXTEOFP 119010 . 120765) (\TEDIT.TEXTGETEOFPTR 120767 . 121090) (\TEDIT.TEXTSETEOFPTR 121092
. 122379) (\TEDIT.TEXTGETFILEPTR 122381 . 125216) (\TEDIT.TEXTSETFILEINFO 125218 . 125726) (
\TEDIT.TEXTOPENF 125728 . 126659) (\TEDIT.TEXTSETEOF 126661 . 127277) (\TEDIT.TEXTSETFILEPTR 127279 .
129389) (\TEDIT.TEXTDSPXPOSITION 129391 . 130408) (\TEDIT.TEXTDSPYPOSITION 130410 . 131151) (
\TEDIT.TEXTLEFTMARGIN 131153 . 131744) (\TEDIT.TEXTCOLOR 131746 . 132329) (\TEDIT.TEXTRIGHTMARGIN
132331 . 135620) (\TEDIT.TEXTDSPCHARWIDTH 135622 . 135926) (\TEDIT.TEXTDSPSTRINGWIDTH 135928 . 136234)
(\TEDIT.TEXTDSPLINEFEED 136236 . 136469)) (136509 149122 (\TEDIT.NTHCHARCODE 136519 . 137970) (
\TEDIT.PIECE.NTHCHARCODE 137972 . 141882) (\TEDIT.RPLCHARCODE 141884 . 143342) (
\TEDIT.PIECE.RPLCHARCODE 143344 . 148767) (\TEDIT.NTHCHARLOOKS 148769 . 149120)) (150169 171263 (
\TEDIT.DELETE.SELPIECES 150179 . 153804) (\TEDIT.INSERTCH 153806 . 161845) (\TEDIT.INSERTCH.HISTORY
161847 . 165311) (\TEDIT.INSERTEOL 165313 . 167138) (\TEDIT.INSERTCH.INSERTION 167140 . 169977) (
\TEDIT.INSERTCH.EXTEND 169979 . 171261)) (171264 172768 (\TEDIT.NEXTCHANGEABLE.CHNO 171274 . 171989) (
\TEDIT.LASTCHANGEABLE.CHNO 171991 . 172766)) (172769 174473 (\SETUPGETCH 172779 . 174471)) (174531
178989 (\TEDIT.INSTALL.PIECE 174541 . 178987)) (179027 188128 (TEXTPROP 179037 . 179384) (GETTEXTPROP
179386 . 179630) (PUTTEXTPROP 179632 . 179889) (GETTEXTPROPS 179891 . 180335) (PUTTEXTPROPS 180337 .
181241) (TEXTPROP.ADD 181243 . 181506) (\TEDIT.TEXTPROP 181508 . 188126)) (188129 190199 (
\TEDIT.TEXTOBJ.PROPNAMES 188139 . 189091) (\TEDIT.TEXTOBJ.PROPFETCHFN 189093 . 189609) (
\TEDIT.TEXTOBJ.PROPSTOREFN 189611 . 190197)))))
(FILEMAP (NIL (36887 67703 (\TEDIT.TEXTBIN 36897 . 47647) (\TEDIT.TEXTPEEKBIN 47649 . 53199) (
\TEDIT.TEXTBACKFILEPTR 53201 . 58874) (\TEDIT.TEXTBOUT 58876 . 63493) (\TEDIT.INSTALL.FILEBUFFER 63495
. 67701)) (68601 72892 (\TEDIT.TEXTOUTCHARFN 68611 . 70167) (\TEDIT.TEXTINCCODEFN 70169 . 70908) (
\TEDIT.TEXTBACKCCODEFN 70910 . 71502) (\TEDIT.TEXTFORMATBYTESTREAM 71504 . 72341) (
\TEDIT.TEXTFORMATBYTESTRING 72343 . 72890)) (72939 84503 (OPENTEXTSTREAM 72949 . 79824) (
COPYTEXTSTREAM 79826 . 83726) (TEDIT.STREAMCHANGEDP 83728 . 84030) (TXTFILE 84032 . 84501)) (84504
115746 (\TEDIT.REOPENTEXTSTREAM 84514 . 85866) (\TEDIT.OPENTEXTSTREAM.PIECES 85868 . 90796) (
\TEDIT.OPENTEXTSTREAM.PROPS 90798 . 91900) (\TEDIT.OPENTEXTSTREAM.SETUP.SEL 91902 . 97143) (
\TEDIT.OPENTEXTSTREAM.WINDOW 97145 . 99936) (\TEDIT.OPENTEXTSTREAM.DEFAULTLOOKS 99938 . 101877) (
\TEDIT.OPENTEXTFILE 101879 . 104356) (\TEDIT.CREATE.TEXTSTREAM 104358 . 105505) (\TEDIT.REOPEN.STREAM
105507 . 107843) (\TEDIT.TEXTINIT 107845 . 115744)) (115784 116972 (\TEDIT.TTYBOUT 115794 . 116970)) (
117090 137553 (\TEDIT.TEXTCLOSEF 117100 . 118424) (\TEDIT.TEXTDSPFONT 118426 . 119624) (
\TEDIT.TEXTEOFP 119626 . 121381) (\TEDIT.TEXTGETEOFPTR 121383 . 121706) (\TEDIT.TEXTSETEOFPTR 121708
. 122995) (\TEDIT.TEXTGETFILEPTR 122997 . 125832) (\TEDIT.TEXTSETFILEINFO 125834 . 126342) (
\TEDIT.TEXTOPENF 126344 . 127275) (\TEDIT.TEXTSETEOF 127277 . 127893) (\TEDIT.TEXTSETFILEPTR 127895 .
130005) (\TEDIT.TEXTDSPXPOSITION 130007 . 131490) (\TEDIT.TEXTDSPYPOSITION 131492 . 132233) (
\TEDIT.TEXTLEFTMARGIN 132235 . 132826) (\TEDIT.TEXTCOLOR 132828 . 133411) (\TEDIT.TEXTRIGHTMARGIN
133413 . 136702) (\TEDIT.TEXTDSPCHARWIDTH 136704 . 137008) (\TEDIT.TEXTDSPSTRINGWIDTH 137010 . 137316)
(\TEDIT.TEXTDSPLINEFEED 137318 . 137551)) (137591 150204 (\TEDIT.NTHCHARCODE 137601 . 139052) (
\TEDIT.PIECE.NTHCHARCODE 139054 . 142964) (\TEDIT.RPLCHARCODE 142966 . 144424) (
\TEDIT.PIECE.RPLCHARCODE 144426 . 149849) (\TEDIT.NTHCHARLOOKS 149851 . 150202)) (151251 172345 (
\TEDIT.DELETE.SELPIECES 151261 . 154886) (\TEDIT.INSERTCH 154888 . 162927) (\TEDIT.INSERTCH.HISTORY
162929 . 166393) (\TEDIT.INSERTEOL 166395 . 168220) (\TEDIT.INSERTCH.INSERTION 168222 . 171059) (
\TEDIT.INSERTCH.EXTEND 171061 . 172343)) (172346 173850 (\TEDIT.NEXTCHANGEABLE.CHNO 172356 . 173071) (
\TEDIT.LASTCHANGEABLE.CHNO 173073 . 173848)) (173851 175555 (\SETUPGETCH 173861 . 175553)) (175613
180071 (\TEDIT.INSTALL.PIECE 175623 . 180069)) (180109 189210 (TEXTPROP 180119 . 180466) (GETTEXTPROP
180468 . 180712) (PUTTEXTPROP 180714 . 180971) (GETTEXTPROPS 180973 . 181417) (PUTTEXTPROPS 181419 .
182323) (TEXTPROP.ADD 182325 . 182588) (\TEDIT.TEXTPROP 182590 . 189208)) (189211 191281 (
\TEDIT.TEXTOBJ.PROPNAMES 189221 . 190173) (\TEDIT.TEXTOBJ.PROPFETCHFN 190175 . 190691) (
\TEDIT.TEXTOBJ.PROPSTOREFN 190693 . 191279)))))
STOP