2 files in the MAKEINIT that have been converted to UTF-8
This commit is contained in:
@@ -1,13 +1,10 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10 FORMAT UTF-8)
|
||||
|
||||
(FILECREATED " 9-Feb-2026 15:54:22" {WMEDLEY}<sources>EXTERNALFORMAT.;120 47422
|
||||
(FILECREATED "20-Feb-2026 09:18:35" {WMEDLEY}<sources>EXTERNALFORMAT.;123 51558
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS EXTERNALFORMATCOMS)
|
||||
(FNS \CREATE.THROUGH16.EXTERNALFORMAT \CREATE.THROUGH.EXTERNALFORMAT)
|
||||
|
||||
:PREVIOUS-DATE " 6-Feb-2026 23:21:32" {WMEDLEY}<sources>EXTERNALFORMAT.;116)
|
||||
:PREVIOUS-DATE "19-Feb-2026 13:32:00" {WMEDLEY}<sources>EXTERNALFORMAT.;122)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT EXTERNALFORMATCOMS)
|
||||
@@ -23,9 +20,6 @@
|
||||
(EXPORT (GLOBALVARS *EXTERNALFORMATS* *DEFAULT-EXTERNALFORMAT*))
|
||||
(INITVARS (*EXTERNALFORMATS* NIL)
|
||||
(*DEFAULT-EXTERNALFORMAT* :MCCS))
|
||||
(COMS (FNS SYSTEM-EXTERNALFORMAT MTOSYSSTRING SYSTOMSTRING)
|
||||
(EXPORT (GLOBALVARS *SYSTEM-EXTERNALFORMAT*))
|
||||
(INITVARS (*SYSTEM-EXTERNALFORMAT* :UTF-8)))
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (DEFPRINT 'EXTERNALFORMAT (FUNCTION
|
||||
\EXTERNALFORMAT.DEFPRINT
|
||||
]
|
||||
@@ -41,6 +35,13 @@
|
||||
[COMS (* ; "NULL device, from FILEIO")
|
||||
(FNS \NULLDEVICE \NULL.OPENFILE)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (\NULLDEVICE]
|
||||
[COMS (* ; "ISO8859/1")
|
||||
(FNS ISO1TOMCODE MTOISO1CODE \CREATE.ISO1.FORMAT \DUMMY-UTF8-FORMAT)
|
||||
(FNS ISO1TOMSTRING MTOISO1STRING)
|
||||
(VARS ISO1TOMCCS)
|
||||
(GLOBALVARS ISO1TOMCCS)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (\CREATE.ISO1.FORMAT)
|
||||
(\DUMMY-UTF8-FORMAT]
|
||||
(COMS
|
||||
(* ;; "Also from FILEIO.")
|
||||
|
||||
@@ -243,18 +244,18 @@
|
||||
(NIL)
|
||||
(SHOULDNT)))
|
||||
(\INSTALL.EXTERNALFORMAT (CREATE EXTERNALFORMAT
|
||||
NAME _ NAME
|
||||
INCCODEFN _ INCCODEFN
|
||||
PEEKCCODEFN _ PEEKCCODEFN
|
||||
BACKCCODEFN _ BACKCCODEFN
|
||||
OUTCHARFN _ OUTCHARFN
|
||||
FORMATBYTESTREAMFN _ FORMATBYTESTREAMFN
|
||||
EOLVALID _ EOL
|
||||
EOL _ (OR EOL LF.EOLC)
|
||||
UNSTABLE _ UNSTABLE
|
||||
MCCSTOFORMATBYTESFN _ MCCSTOFORMATBYTESFN
|
||||
FORMATBYTESTOMCCSFN _ FORMATBYTESTOMCCSFN
|
||||
FORMATCHARSETFN _ (OR FORMATCHARSETFN (FUNCTION NILL])
|
||||
NAME ← NAME
|
||||
INCCODEFN ← INCCODEFN
|
||||
PEEKCCODEFN ← PEEKCCODEFN
|
||||
BACKCCODEFN ← BACKCCODEFN
|
||||
OUTCHARFN ← OUTCHARFN
|
||||
FORMATBYTESTREAMFN ← FORMATBYTESTREAMFN
|
||||
EOLVALID ← EOL
|
||||
EOL ← (OR EOL LF.EOLC)
|
||||
UNSTABLE ← UNSTABLE
|
||||
MCCSTOFORMATBYTESFN ← MCCSTOFORMATBYTESFN
|
||||
FORMATBYTESTOMCCSFN ← FORMATBYTESTOMCCSFN
|
||||
FORMATCHARSETFN ← (OR FORMATCHARSETFN (FUNCTION NILL])
|
||||
|
||||
(\EXTERNALFORMAT.DEFPRINT
|
||||
[LAMBDA (EXTERNALFORMAT STREAM) (* ; "Edited 2-Jul-2022 11:40 by rmk")
|
||||
@@ -268,7 +269,7 @@
|
||||
(DEFINEQ
|
||||
|
||||
(\INSTALL.EXTERNALFORMAT
|
||||
[LAMBDA (EXTFORMAT/NAME EXTERNALFORMAT) (* ; "Edited 5-Aug-2021 14:22 by rmk:")
|
||||
[LAMBDA (EXTFORMAT/NAME EXTERNALFORMAT) (* ; "Edited 5-Aug-2021 14:22 by rmk:")
|
||||
|
||||
(* ;;; "Register an instance of the datatype EXTERNALFORMAT.")
|
||||
|
||||
@@ -277,25 +278,23 @@
|
||||
(LET (NAME)
|
||||
(IF EXTERNALFORMAT
|
||||
THEN
|
||||
(* ;; "Backwards compatibility")
|
||||
|
||||
(* ;; "Backwards compatibility")
|
||||
|
||||
(SETQ NAME (MKATOM EXTFORMAT/NAME))
|
||||
(IF (EQ NAME (FETCH (EXTERNALFORMAT NAME) OF EXTERNALFORMAT))
|
||||
ELSEIF (FETCH (EXTERNALFORMAT NAME) OF EXTERNALFORMAT)
|
||||
THEN (ERROR "Mismatch of specified name and name of the external format")
|
||||
ELSE (REPLACE (EXTERNALFORMAT NAME) OF EXTERNALFORMAT WITH
|
||||
NAME))
|
||||
(SETQ NAME (MKATOM EXTFORMAT/NAME))
|
||||
(IF (EQ NAME (FETCH (EXTERNALFORMAT NAME) OF EXTERNALFORMAT))
|
||||
ELSEIF (FETCH (EXTERNALFORMAT NAME) OF EXTERNALFORMAT)
|
||||
THEN (ERROR "Mismatch of specified name and name of the external format")
|
||||
ELSE (REPLACE (EXTERNALFORMAT NAME) OF EXTERNALFORMAT WITH NAME))
|
||||
ELSE (SETQ EXTERNALFORMAT EXTFORMAT/NAME)
|
||||
(SETQ NAME (FETCH (EXTERNALFORMAT NAME) OF EXTERNALFORMAT)))
|
||||
(SETQ NAME (FETCH (EXTERNALFORMAT NAME) OF EXTERNALFORMAT)))
|
||||
(IF (type? EXTERNALFORMAT EXTERNALFORMAT)
|
||||
THEN (\REMOVE.EXTERNALFORMAT NAME)
|
||||
(push *EXTERNALFORMATS* EXTERNALFORMAT)
|
||||
(push *EXTERNALFORMATS* EXTERNALFORMAT)
|
||||
ELSE (ERROR "INVALID EXTERNALFORMAT " EXTERNALFORMAT))
|
||||
EXTERNALFORMAT])
|
||||
|
||||
(\REMOVE.EXTERNALFORMAT
|
||||
[LAMBDA (NAME/EXTFORMAT) (* ; "Edited 5-May-2021 15:42 by rmk:")
|
||||
[LAMBDA (NAME/EXTFORMAT) (* ; "Edited 5-May-2021 15:42 by rmk:")
|
||||
|
||||
(* ;;; "Deregisters external format EXTERNALFORMAT .")
|
||||
|
||||
@@ -303,9 +302,8 @@
|
||||
THEN (FETCH (EXTERNALFORMAT NAME) OF NAME/EXTFORMAT)
|
||||
ELSE (MKATOM NAME/EXTFORMAT)))
|
||||
(SETQ *EXTERNALFORMATS* (DREMOVE (FIND EF IN *EXTERNALFORMATS*
|
||||
SUCHTHAT (EQ NAME/EXTFORMAT (FETCH (EXTERNALFORMAT
|
||||
NAME)
|
||||
OF EF)))
|
||||
SUCHTHAT (EQ NAME/EXTFORMAT (FETCH (EXTERNALFORMAT NAME)
|
||||
OF EF)))
|
||||
*EXTERNALFORMATS*])
|
||||
|
||||
(FIND-FORMAT
|
||||
@@ -330,41 +328,6 @@
|
||||
(RPAQ? *EXTERNALFORMATS* NIL)
|
||||
|
||||
(RPAQ? *DEFAULT-EXTERNALFORMAT* :MCCS)
|
||||
(DEFINEQ
|
||||
|
||||
(SYSTEM-EXTERNALFORMAT
|
||||
[LAMBDA NIL (* ; "Edited 6-Feb-2026 11:29 by rmk")
|
||||
(* ; "Edited 31-Jan-2026 18:51 by rmk")
|
||||
(* ; "Edited 10-Oct-2022 11:55 by lmm")
|
||||
(* ; "Edited 7-Jul-2022 10:41 by rmk")
|
||||
|
||||
(* ;; "Returns the name, sets the global. For now, UTF-8 or through, could be something else.")
|
||||
|
||||
(fetch (EXTERNALFORMAT NAME) of (SETQ *SYSTEM-EXTERNALFORMAT*
|
||||
(FIND-FORMAT (FOR X IN '("LC¬CTYPE" "LC¬ALL" "LANG")
|
||||
WHEN (STRPOS ".UTF-8" (UNIX-GETENV X))
|
||||
DO (RETURN :UTF-8) FINALLY (RETURN :THROUGH])
|
||||
|
||||
(MTOSYSSTRING
|
||||
[LAMBDA (MSTRING) (* ; "Edited 6-Feb-2026 00:20 by rmk")
|
||||
(MCCSTOFORMATBYTES *SYSTEM-EXTERNALFORMAT* (MKSTRING MSTRING])
|
||||
|
||||
(SYSTOMSTRING
|
||||
[LAMBDA (SYSTRING) (* ; "Edited 5-Feb-2026 23:36 by rmk")
|
||||
|
||||
(* ;; "SYSSTRING is presumably shared with Unix, guarantee a copy on the way out")
|
||||
|
||||
(CONCAT (FORMATBYTESTOMCCS *SYSTEM-EXTERNALFORMAT* SYSTRING])
|
||||
)
|
||||
(* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS *SYSTEM-EXTERNALFORMAT*)
|
||||
)
|
||||
|
||||
(* "END EXPORTED DEFINITIONS")
|
||||
|
||||
|
||||
(RPAQ? *SYSTEM-EXTERNALFORMAT* :UTF-8)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
(DEFPRINT 'EXTERNALFORMAT (FUNCTION \EXTERNALFORMAT.DEFPRINT))
|
||||
@@ -730,41 +693,41 @@
|
||||
(* ;; "Defines the NULL device, an infinite source or sink")
|
||||
|
||||
(\DEFINEDEVICE 'NULL (create FDEV
|
||||
DEVICENAME _ 'NULL
|
||||
RANDOMACCESSP _ T
|
||||
NODIRECTORIES _ T
|
||||
CLOSEFILE _ (FUNCTION NILL)
|
||||
DELETEFILE _ (FUNCTION NILL)
|
||||
OPENFILE _ (FUNCTION \NULL.OPENFILE)
|
||||
REOPENFILE _ (FUNCTION \NULL.OPENFILE)
|
||||
BIN _ (FUNCTION \EOF.ACTION)
|
||||
BOUT _ (FUNCTION NILL)
|
||||
PEEKBIN _ [FUNCTION (LAMBDA (STREAM NOERRORFLG)
|
||||
DEVICENAME ← 'NULL
|
||||
RANDOMACCESSP ← T
|
||||
NODIRECTORIES ← T
|
||||
CLOSEFILE ← (FUNCTION NILL)
|
||||
DELETEFILE ← (FUNCTION NILL)
|
||||
OPENFILE ← (FUNCTION \NULL.OPENFILE)
|
||||
REOPENFILE ← (FUNCTION \NULL.OPENFILE)
|
||||
BIN ← (FUNCTION \EOF.ACTION)
|
||||
BOUT ← (FUNCTION NILL)
|
||||
PEEKBIN ← [FUNCTION (LAMBDA (STREAM NOERRORFLG)
|
||||
(AND (NULL NOERRORFLG)
|
||||
(BIN STREAM]
|
||||
READP _ (FUNCTION NILL)
|
||||
BACKFILEPTR _ (FUNCTION NILL)
|
||||
EOFP _ (FUNCTION TRUE)
|
||||
RENAMEFILE _ (FUNCTION NILL)
|
||||
GETFILENAME _ (FUNCTION NILL)
|
||||
EVENTFN _ (FUNCTION NILL)
|
||||
BLOCKIN _ (FUNCTION \EOF.ACTION)
|
||||
BLOCKOUT _ (FUNCTION NILL)
|
||||
GENERATEFILES _ (FUNCTION \NULLFILEGENERATOR)
|
||||
GETFILEPTR _ (FUNCTION ZERO)
|
||||
GETEOFPTR _ (FUNCTION ZERO)
|
||||
SETFILEPTR _ (FUNCTION NILL)
|
||||
GETFILEINFO _ (FUNCTION NILL)
|
||||
SETFILEINFO _ (FUNCTION NILL)
|
||||
SETEOFPTR _ (FUNCTION NILL])
|
||||
READP ← (FUNCTION NILL)
|
||||
BACKFILEPTR ← (FUNCTION NILL)
|
||||
EOFP ← (FUNCTION TRUE)
|
||||
RENAMEFILE ← (FUNCTION NILL)
|
||||
GETFILENAME ← (FUNCTION NILL)
|
||||
EVENTFN ← (FUNCTION NILL)
|
||||
BLOCKIN ← (FUNCTION \EOF.ACTION)
|
||||
BLOCKOUT ← (FUNCTION NILL)
|
||||
GENERATEFILES ← (FUNCTION \NULLFILEGENERATOR)
|
||||
GETFILEPTR ← (FUNCTION ZERO)
|
||||
GETEOFPTR ← (FUNCTION ZERO)
|
||||
SETFILEPTR ← (FUNCTION NILL)
|
||||
GETFILEINFO ← (FUNCTION NILL)
|
||||
SETFILEINFO ← (FUNCTION NILL)
|
||||
SETEOFPTR ← (FUNCTION NILL])
|
||||
|
||||
(\NULL.OPENFILE
|
||||
[LAMBDA (NAME ACCESS RECOG PARAMETERS DEVICE OLDSTREAM) (* bvm%: "30-Jan-85 22:05")
|
||||
(OR OLDSTREAM (create STREAM
|
||||
USERCLOSEABLE _ T
|
||||
ACCESS _ ACCESS
|
||||
FULLFILENAME _ NIL
|
||||
DEVICE _ DEVICE])
|
||||
USERCLOSEABLE ← T
|
||||
ACCESS ← ACCESS
|
||||
FULLFILENAME ← NIL
|
||||
DEVICE ← DEVICE])
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
@@ -773,6 +736,166 @@
|
||||
|
||||
|
||||
|
||||
(* ; "ISO8859/1")
|
||||
|
||||
(DEFINEQ
|
||||
|
||||
(ISO1TOMCODE
|
||||
[LAMBDA (ICODE) (* ; "Edited 5-Feb-2026 12:09 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 23:14 by rmk")
|
||||
(* ; "Edited 7-Sep-2025 22:39 by rmk")
|
||||
(* ; "Edited 3-Sep-2025 10:21 by rmk")
|
||||
(* ; "Edited 7-Aug-2025 09:37 by rmk")
|
||||
|
||||
(* ;; "ISO codes are 8bit, MCODES maybe not. Caller shouldn't pass a fat code.")
|
||||
|
||||
(OR [CAR (find PAIR in ISO1TOMCCS suchthat (EQ ICODE (CADR PAIR]
|
||||
ICODE])
|
||||
|
||||
(MTOISO1CODE
|
||||
[LAMBDA (MCODE) (* ; "Edited 5-Feb-2026 12:26 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 22:58 by rmk")
|
||||
(OR (CADR (ASSOC MCODE ISO1TOMCCS))
|
||||
MCODE])
|
||||
|
||||
(\CREATE.ISO1.FORMAT
|
||||
[LAMBDA NIL (* ; "Edited 5-Feb-2026 10:42 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 23:37 by rmk")
|
||||
(* ; "Edited 1-Feb-2026 11:18 by rmk")
|
||||
(* ; "Edited 5-Aug-2021 22:15 by rmk:")
|
||||
(* ; "Edited 9-Mar-99 17:19 by rmk:")
|
||||
(* ; "Edited 7-Dec-95 16:24 by ")
|
||||
(* ; "Edited 7-Dec-95 16:20 by ")
|
||||
(MAKE-EXTERNALFORMAT :ISO8859/1 [FUNCTION (LAMBDA (STREAM COUNTP)
|
||||
(ISO1TOMCODE (\THROUGHIN STREAM COUNTP]
|
||||
[FUNCTION (LAMBDA (STREAM NOERRORFLG)
|
||||
(ISO1TOMCODE (\PEEKBIN STREAM NOERRORFLG]
|
||||
(FUNCTION \THROUGHBACKCCODE)
|
||||
(FUNCTION NILL)
|
||||
(FUNCTION NILL)
|
||||
NIL NIL (FUNCTION MTOISO1STRING)
|
||||
NIL
|
||||
(FUNCTION NILL)
|
||||
(FUNCTION ISO1TOMSTRING])
|
||||
|
||||
(\DUMMY-UTF8-FORMAT
|
||||
[LAMBDA NIL (* ; "Edited 5-Feb-2026 15:58 by rmk")
|
||||
(* ; "Edited 1-Feb-2026 13:16 by rmk")
|
||||
|
||||
(* ;; "Works only for 7-bit codes, during the loadup")
|
||||
|
||||
(\INSTALL.EXTERNALFORMAT (create EXTERNALFORMAT using (FIND-FORMAT :ISO8859/1)
|
||||
NAME ← :UTF-8])
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(ISO1TOMSTRING
|
||||
[LAMBDA (ISTRING DESTRUCTIVE) (* ; "Edited 5-Feb-2026 11:01 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 23:46 by rmk")
|
||||
(* ; "Edited 2-Sep-2025 12:14 by rmk")
|
||||
(* ; "Edited 29-Apr-2025 13:08 by rmk")
|
||||
|
||||
(* ;; "Converts ISO8859/1 codes to MCCS codes in MSTRING.")
|
||||
|
||||
(for I ICODE (MSTRING ← (CL:IF DESTRUCTIVE
|
||||
ISTRING
|
||||
(CONCAT ISTRING))) from 1 while (SETQ ICODE (NTHCHARCODE ISTRING I))
|
||||
do (RPLCHARCODE MSTRING I (ISO1TOMCODE ICODE)) finally (RETURN MSTRING])
|
||||
|
||||
(MTOISO1STRING
|
||||
[LAMBDA (MSTRING DESTRUCTIVE) (* ; "Edited 2-Feb-2026 23:47 by rmk")
|
||||
(* ; "Edited 2-Sep-2025 12:22 by rmk")
|
||||
(* ; "Edited 29-Apr-2025 13:08 by rmk")
|
||||
|
||||
(* ;; "Converts MCCS to ISO8859/1 codes in MSTRING.")
|
||||
|
||||
(for I MCODE (ISTRING ← (CL:IF DESTRUCTIVE
|
||||
MSTRING
|
||||
(CONCAT MSTRING))) from 1 while (SETQ MCODE (NTHCHARCODE MSTRING I))
|
||||
do (RPLCHARCODE ISTRING I (MTOISO1CODE MCODE)) finally (RETURN ISTRING])
|
||||
)
|
||||
|
||||
(RPAQQ ISO1TOMCCS
|
||||
((94 8593)
|
||||
(95 8592)
|
||||
(169 8216)
|
||||
(170 8220)
|
||||
(172 95)
|
||||
(173 94)
|
||||
(174 8594)
|
||||
(175 8595)
|
||||
(180 215)
|
||||
(184 247)
|
||||
(185 8217)
|
||||
(186 8221)
|
||||
(193 768)
|
||||
(194 769)
|
||||
(195 770)
|
||||
(196 771)
|
||||
(197 772)
|
||||
(198 774)
|
||||
(199 775)
|
||||
(200 776)
|
||||
(202 778)
|
||||
(203 807)
|
||||
(204 818)
|
||||
(205 779)
|
||||
(206 808)
|
||||
(207 780)
|
||||
(208 8213)
|
||||
(209 185)
|
||||
(210 174)
|
||||
(211 169)
|
||||
(212 8482)
|
||||
(213 9834)
|
||||
(220 8539)
|
||||
(221 8540)
|
||||
(222 8541)
|
||||
(223 8542)
|
||||
(224 8486)
|
||||
(225 198)
|
||||
(226 208)
|
||||
(227 170)
|
||||
(228 294)
|
||||
(229 567)
|
||||
(230 306)
|
||||
(231 319)
|
||||
(232 321)
|
||||
(233 216)
|
||||
(234 338)
|
||||
(235 186)
|
||||
(236 222)
|
||||
(237 358)
|
||||
(238 330)
|
||||
(239 329)
|
||||
(240 312)
|
||||
(241 230)
|
||||
(242 273)
|
||||
(243 240)
|
||||
(244 295)
|
||||
(245 305)
|
||||
(246 307)
|
||||
(247 320)
|
||||
(248 322)
|
||||
(249 248)
|
||||
(250 339)
|
||||
(251 223)
|
||||
(252 254)
|
||||
(253 359)
|
||||
(254 331)))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(GLOBALVARS ISO1TOMCCS)
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
(\CREATE.ISO1.FORMAT)
|
||||
|
||||
(\DUMMY-UTF8-FORMAT)
|
||||
)
|
||||
|
||||
|
||||
|
||||
(* ;; "Also from FILEIO.")
|
||||
|
||||
(DEFINEQ
|
||||
@@ -883,15 +1006,16 @@
|
||||
(\CREATE.THROUGH16.EXTERNALFORMAT)
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (7446 15343 (\EXTERNALFORMAT 7456 . 12055) (MAKE-EXTERNALFORMAT 12057 . 14870) (
|
||||
\EXTERNALFORMAT.DEFPRINT 14872 . 15341)) (15344 18385 (\INSTALL.EXTERNALFORMAT 15354 . 16803) (
|
||||
\REMOVE.EXTERNALFORMAT 16805 . 17636) (FIND-FORMAT 17638 . 18383)) (18628 20078 (SYSTEM-EXTERNALFORMAT
|
||||
18638 . 19586) (MTOSYSSTRING 19588 . 19785) (SYSTOMSTRING 19787 . 20076)) (20442 34717 (\OUTCHAR
|
||||
20452 . 21669) (\INCCODE 21671 . 22824) (\BACKCCODE 22826 . 24505) (\BACKCCODE.EOLC 24507 . 26697) (
|
||||
\PEEKCCODE 26699 . 27024) (\PEEKCCODE.EOLC 27026 . 27405) (\INCCODE.EOLC 27407 . 29206) (
|
||||
\FORMATBYTESTREAM 29208 . 31652) (\CHECKEOLC.CRLF 31654 . 34715)) (34718 38634 (MCCSTOFORMATBYTES
|
||||
34728 . 37127) (FORMATBYTESTOMCCS 37129 . 38632)) (40045 42281 (\NULLDEVICE 40055 . 41957) (
|
||||
\NULL.OPENFILE 41959 . 42279)) (42371 47286 (\CREATE.THROUGH.EXTERNALFORMAT 42381 . 44050) (
|
||||
\CREATE.THROUGH16.EXTERNALFORMAT 44052 . 46243) (\THROUGHIN 46245 . 46669) (\THROUGHBACKCCODE 46671 .
|
||||
46942) (\THROUGHOUTCHARFN 46944 . 47284)))))
|
||||
(FILEMAP (NIL (7548 15469 (\EXTERNALFORMAT 7558 . 12157) (MAKE-EXTERNALFORMAT 12159 . 14996) (
|
||||
\EXTERNALFORMAT.DEFPRINT 14998 . 15467)) (15470 18335 (\INSTALL.EXTERNALFORMAT 15480 . 16837) (
|
||||
\REMOVE.EXTERNALFORMAT 16839 . 17586) (FIND-FORMAT 17588 . 18333)) (18753 33028 (\OUTCHAR 18763 .
|
||||
19980) (\INCCODE 19982 . 21135) (\BACKCCODE 21137 . 22816) (\BACKCCODE.EOLC 22818 . 25008) (\PEEKCCODE
|
||||
25010 . 25335) (\PEEKCCODE.EOLC 25337 . 25716) (\INCCODE.EOLC 25718 . 27517) (\FORMATBYTESTREAM 27519
|
||||
. 29963) (\CHECKEOLC.CRLF 29965 . 33026)) (33029 36945 (MCCSTOFORMATBYTES 33039 . 35438) (
|
||||
FORMATBYTESTOMCCS 35440 . 36943)) (38356 40650 (\NULLDEVICE 38366 . 40318) (\NULL.OPENFILE 40320 .
|
||||
40648)) (40731 43542 (ISO1TOMCODE 40741 . 41490) (MTOISO1CODE 41492 . 41782) (\CREATE.ISO1.FORMAT
|
||||
41784 . 43057) (\DUMMY-UTF8-FORMAT 43059 . 43540)) (43543 45078 (ISO1TOMSTRING 43553 . 44371) (
|
||||
MTOISO1STRING 44373 . 45076)) (46507 51422 (\CREATE.THROUGH.EXTERNALFORMAT 46517 . 48186) (
|
||||
\CREATE.THROUGH16.EXTERNALFORMAT 48188 . 50379) (\THROUGHIN 50381 . 50805) (\THROUGHBACKCCODE 50807 .
|
||||
51078) (\THROUGHOUTCHARFN 51080 . 51420)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
232
sources/MCCS
232
sources/MCCS
@@ -1,12 +1,10 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10 FORMAT UTF-8)
|
||||
|
||||
(FILECREATED " 5-Feb-2026 15:58:32" {WMEDLEY}<sources>MCCS.;163 65441
|
||||
(FILECREATED "20-Feb-2026 09:21:16" {WMEDLEY}<sources>MCCS.;167 61063
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (FNS \DUMMY-UTF8-FORMAT \CREATE.XCCS.EXTERNALFORMAT)
|
||||
|
||||
:PREVIOUS-DATE " 5-Feb-2026 12:26:39" {WMEDLEY}<sources>MCCS.;161)
|
||||
:PREVIOUS-DATE "19-Feb-2026 13:32:23" {WMEDLEY}<sources>MCCS.;165)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT MCCSCOMS)
|
||||
@@ -57,14 +55,10 @@
|
||||
"Mappings into MCCS: needed for hardcopy and Tedit coercion, e.g. \TEDIT.MCCS.TRANSLATE")
|
||||
|
||||
(FNS GACHATOMCODE SYMBOLTOMCODE SIGMATOMCODE ATOMCODE MATHTOMCODE HIPPOTOMCODE
|
||||
CYRILLICTOMCODE PALATINOTOMCODE)))
|
||||
(COMS (* ; "ISO8859/1")
|
||||
(FNS ISO1TOMCODE MTOISO1CODE \CREATE.ISO1.FORMAT \DUMMY-UTF8-FORMAT)
|
||||
(FNS ISO1TOMSTRING MTOISO1STRING)
|
||||
(VARS ISO1TOMCCS)
|
||||
(GLOBALVARS ISO1TOMCCS)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY (P (\CREATE.ISO1.FORMAT)
|
||||
(\DUMMY-UTF8-FORMAT])
|
||||
CYRILLICTOMCODE PALATINOTOMCODE))
|
||||
(COMS (FNS SYSTEM-EXTERNALFORMAT MTOSYSSTRING SYSTOMSTRING)
|
||||
(EXPORT (GLOBALVARS *SYSTEM-EXTERNALFORMAT*))
|
||||
(INITVARS (*SYSTEM-EXTERNALFORMAT* :UTF-8])
|
||||
|
||||
|
||||
|
||||
@@ -427,7 +421,7 @@
|
||||
|
||||
(* ;; "Converts Unicodes to MCCS codes in XSTRING.")
|
||||
|
||||
(for I XCODE (MSTRING _ (CL:IF DESTRUCTIVE
|
||||
(for I XCODE (MSTRING ← (CL:IF DESTRUCTIVE
|
||||
XSTRING
|
||||
(CONCAT XSTRING))) from 1 while (SETQ XCODE (NTHCHARCODE XSTRING I))
|
||||
do (RPLCHARCODE MSTRING I (XTOMCODE XCODE)) finally (RETURN MSTRING])
|
||||
@@ -438,7 +432,7 @@
|
||||
|
||||
(* ;; "Converts XCCS to MCCS codes in XSTRING.")
|
||||
|
||||
(for I MCODE (XSTRING _ (CL:IF DESTRUCTIVE
|
||||
(for I MCODE (XSTRING ← (CL:IF DESTRUCTIVE
|
||||
MSTRING
|
||||
(CONCAT MSTRING))) from 1 while (SETQ MCODE (NTHCHARCODE MSTRING I))
|
||||
do (RPLCHARCODE XSTRING I (MTOXCODE MCODE)) finally (RETURN XSTRING])
|
||||
@@ -500,12 +494,12 @@
|
||||
(
|
||||
(* ;; "From bravo doc")
|
||||
|
||||
(^N "356,055" MINUS)
|
||||
(^V "357,44" ENDASH)
|
||||
(^S EMDASH)
|
||||
(^O EMQUAD)
|
||||
(^X "356,055" MINUS)
|
||||
(^Y FIGURESPACE ENQUAD)
|
||||
(↑N "356,055" MINUS)
|
||||
(↑V "357,44" ENDASH)
|
||||
(↑S EMDASH)
|
||||
(↑O EMQUAD)
|
||||
(↑X "356,055" MINUS)
|
||||
(↑Y FIGURESPACE ENQUAD)
|
||||
|
||||
(* ;; "Fom current Helvetica/Timesroman fonts")
|
||||
|
||||
@@ -1388,7 +1382,7 @@
|
||||
[APPEND (XCCSUNDEFINEDPAIRS)
|
||||
'(((Uparrow TERMINAL)
|
||||
Circumflex)
|
||||
(^X Lowline])
|
||||
(↑X Lowline])
|
||||
(ALTOTEXT (APPEND (XCCSUNDEFINEDPAIRS)
|
||||
ALTOTEXT2MCCS))
|
||||
(XCCS$ '((Uparrow Circumflex)
|
||||
@@ -1463,7 +1457,7 @@
|
||||
|
||||
(* ;; "Gacha did not have a code for circumflex, so there is nothing to map")
|
||||
|
||||
(CL:IF (EQ GCODE (CHARCODE ^X))
|
||||
(CL:IF (EQ GCODE (CHARCODE ↑X))
|
||||
(CHARCODE Lowline)
|
||||
GCODE)])
|
||||
|
||||
@@ -1541,178 +1535,52 @@
|
||||
MCODE)))
|
||||
PCODE])
|
||||
)
|
||||
|
||||
|
||||
|
||||
(* ; "ISO8859/1")
|
||||
|
||||
(DEFINEQ
|
||||
|
||||
(ISO1TOMCODE
|
||||
[LAMBDA (ICODE) (* ; "Edited 5-Feb-2026 12:09 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 23:14 by rmk")
|
||||
(* ; "Edited 7-Sep-2025 22:39 by rmk")
|
||||
(* ; "Edited 3-Sep-2025 10:21 by rmk")
|
||||
(* ; "Edited 7-Aug-2025 09:37 by rmk")
|
||||
(SYSTEM-EXTERNALFORMAT
|
||||
[LAMBDA NIL (* ; "Edited 6-Feb-2026 11:29 by rmk")
|
||||
(* ; "Edited 31-Jan-2026 18:51 by rmk")
|
||||
(* ; "Edited 10-Oct-2022 11:55 by lmm")
|
||||
(* ; "Edited 7-Jul-2022 10:41 by rmk")
|
||||
|
||||
(* ;; "ISO codes are 8bit, MCODES maybe not. Caller shouldn't pass a fat code.")
|
||||
(* ;; "Returns the name, sets the global. For now, UTF-8 or through, could be something else.")
|
||||
|
||||
(OR [CAR (find PAIR in ISO1TOMCCS suchthat (EQ ICODE (CADR PAIR]
|
||||
ICODE])
|
||||
(fetch (EXTERNALFORMAT NAME) of (SETQ *SYSTEM-EXTERNALFORMAT*
|
||||
(FIND-FORMAT (FOR X IN '("LC_CTYPE" "LC_ALL" "LANG")
|
||||
WHEN (STRPOS ".UTF-8" (UNIX-GETENV X))
|
||||
DO (RETURN :UTF-8) FINALLY (RETURN :THROUGH])
|
||||
|
||||
(MTOISO1CODE
|
||||
[LAMBDA (MCODE) (* ; "Edited 5-Feb-2026 12:26 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 22:58 by rmk")
|
||||
(OR (CADR (ASSOC MCODE ISO1TOMCCS))
|
||||
MCODE])
|
||||
(MTOSYSSTRING
|
||||
[LAMBDA (MSTRING) (* ; "Edited 6-Feb-2026 00:20 by rmk")
|
||||
(MCCSTOFORMATBYTES *SYSTEM-EXTERNALFORMAT* (MKSTRING MSTRING])
|
||||
|
||||
(\CREATE.ISO1.FORMAT
|
||||
[LAMBDA NIL (* ; "Edited 5-Feb-2026 10:42 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 23:37 by rmk")
|
||||
(* ; "Edited 1-Feb-2026 11:18 by rmk")
|
||||
(* ; "Edited 5-Aug-2021 22:15 by rmk:")
|
||||
(* ; "Edited 9-Mar-99 17:19 by rmk:")
|
||||
(* ; "Edited 7-Dec-95 16:24 by ")
|
||||
(* ; "Edited 7-Dec-95 16:20 by ")
|
||||
(MAKE-EXTERNALFORMAT :ISO8859/1 [FUNCTION (LAMBDA (STREAM COUNTP)
|
||||
(ISO1TOMCODE (\THROUGHIN STREAM COUNTP]
|
||||
[FUNCTION (LAMBDA (STREAM NOERRORFLG)
|
||||
(ISO1TOMCODE (\PEEKBIN STREAM NOERRORFLG]
|
||||
(FUNCTION \THROUGHBACKCCODE)
|
||||
(FUNCTION NILL)
|
||||
(FUNCTION NILL)
|
||||
NIL NIL (FUNCTION MTOISO1STRING)
|
||||
NIL
|
||||
(FUNCTION NILL)
|
||||
(FUNCTION ISO1TOMSTRING])
|
||||
(SYSTOMSTRING
|
||||
[LAMBDA (SYSTRING) (* ; "Edited 5-Feb-2026 23:36 by rmk")
|
||||
|
||||
(\DUMMY-UTF8-FORMAT
|
||||
[LAMBDA NIL (* ; "Edited 5-Feb-2026 15:58 by rmk")
|
||||
(* ; "Edited 1-Feb-2026 13:16 by rmk")
|
||||
(* ;; "SYSSTRING is presumably shared with Unix, guarantee a copy on the way out")
|
||||
|
||||
(* ;; "Works only for 7-bit codes, during the loadup")
|
||||
|
||||
(\INSTALL.EXTERNALFORMAT (create EXTERNALFORMAT using (FIND-FORMAT :ISO8859/1)
|
||||
NAME _ :UTF-8])
|
||||
(CONCAT (FORMATBYTESTOMCCS *SYSTEM-EXTERNALFORMAT* SYSTRING])
|
||||
)
|
||||
(DEFINEQ
|
||||
(* "FOLLOWING DEFINITIONS EXPORTED")(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
|
||||
(ISO1TOMSTRING
|
||||
[LAMBDA (ISTRING DESTRUCTIVE) (* ; "Edited 5-Feb-2026 11:01 by rmk")
|
||||
(* ; "Edited 2-Feb-2026 23:46 by rmk")
|
||||
(* ; "Edited 2-Sep-2025 12:14 by rmk")
|
||||
(* ; "Edited 29-Apr-2025 13:08 by rmk")
|
||||
|
||||
(* ;; "Converts ISO8859/1 codes to MCCS codes in MSTRING.")
|
||||
|
||||
(for I ICODE (MSTRING _ (CL:IF DESTRUCTIVE
|
||||
ISTRING
|
||||
(CONCAT ISTRING))) from 1 while (SETQ ICODE (NTHCHARCODE ISTRING I))
|
||||
do (RPLCHARCODE MSTRING I (ISO1TOMCODE ICODE)) finally (RETURN MSTRING])
|
||||
|
||||
(MTOISO1STRING
|
||||
[LAMBDA (MSTRING DESTRUCTIVE) (* ; "Edited 2-Feb-2026 23:47 by rmk")
|
||||
(* ; "Edited 2-Sep-2025 12:22 by rmk")
|
||||
(* ; "Edited 29-Apr-2025 13:08 by rmk")
|
||||
|
||||
(* ;; "Converts MCCS to ISO8859/1 codes in MSTRING.")
|
||||
|
||||
(for I MCODE (ISTRING _ (CL:IF DESTRUCTIVE
|
||||
MSTRING
|
||||
(CONCAT MSTRING))) from 1 while (SETQ MCODE (NTHCHARCODE MSTRING I))
|
||||
do (RPLCHARCODE ISTRING I (MTOISO1CODE MCODE)) finally (RETURN ISTRING])
|
||||
(GLOBALVARS *SYSTEM-EXTERNALFORMAT*)
|
||||
)
|
||||
|
||||
(RPAQQ ISO1TOMCCS
|
||||
((94 8593)
|
||||
(95 8592)
|
||||
(169 8216)
|
||||
(170 8220)
|
||||
(172 95)
|
||||
(173 94)
|
||||
(174 8594)
|
||||
(175 8595)
|
||||
(180 215)
|
||||
(184 247)
|
||||
(185 8217)
|
||||
(186 8221)
|
||||
(193 768)
|
||||
(194 769)
|
||||
(195 770)
|
||||
(196 771)
|
||||
(197 772)
|
||||
(198 774)
|
||||
(199 775)
|
||||
(200 776)
|
||||
(202 778)
|
||||
(203 807)
|
||||
(204 818)
|
||||
(205 779)
|
||||
(206 808)
|
||||
(207 780)
|
||||
(208 8213)
|
||||
(209 185)
|
||||
(210 174)
|
||||
(211 169)
|
||||
(212 8482)
|
||||
(213 9834)
|
||||
(220 8539)
|
||||
(221 8540)
|
||||
(222 8541)
|
||||
(223 8542)
|
||||
(224 8486)
|
||||
(225 198)
|
||||
(226 208)
|
||||
(227 170)
|
||||
(228 294)
|
||||
(229 567)
|
||||
(230 306)
|
||||
(231 319)
|
||||
(232 321)
|
||||
(233 216)
|
||||
(234 338)
|
||||
(235 186)
|
||||
(236 222)
|
||||
(237 358)
|
||||
(238 330)
|
||||
(239 329)
|
||||
(240 312)
|
||||
(241 230)
|
||||
(242 273)
|
||||
(243 240)
|
||||
(244 295)
|
||||
(245 305)
|
||||
(246 307)
|
||||
(247 320)
|
||||
(248 322)
|
||||
(249 248)
|
||||
(250 339)
|
||||
(251 223)
|
||||
(252 254)
|
||||
(253 359)
|
||||
(254 331)))
|
||||
(DECLARE%: DOEVAL@COMPILE DONTCOPY
|
||||
(* "END EXPORTED DEFINITIONS")
|
||||
|
||||
(GLOBALVARS ISO1TOMCCS)
|
||||
)
|
||||
(DECLARE%: DONTEVAL@LOAD DOCOPY
|
||||
|
||||
(\CREATE.ISO1.FORMAT)
|
||||
|
||||
(\DUMMY-UTF8-FORMAT)
|
||||
)
|
||||
(RPAQ? *SYSTEM-EXTERNALFORMAT* :UTF-8)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (3345 14916 (\MCCSINCCODE 3355 . 6443) (\MCCSPEEKCCODE 6445 . 9332) (\MCCSOUTCHAR 9334
|
||||
. 11433) (\MCCSBACKCCODE 11435 . 12979) (\MCCSFORMATBYTESTREAM 12981 . 13711) (\MCCSCHARSETFN 13713
|
||||
. 14914)) (14917 17368 (\CREATE.MCCS.EXTERNALFORMAT 14927 . 15797) (\CREATE.XCCS.EXTERNALFORMAT 15799
|
||||
. 17366)) (17369 18346 (\MCCS.24BITENCODING.ERROR 17379 . 18344)) (19722 22360 (MTOXCODE 19732 .
|
||||
20529) (XTOMCODE 20531 . 21188) (XTOMSTRING 21190 . 21775) (MTOXSTRING 21777 . 22358)) (22361 24021 (
|
||||
MTOX$CODE 22371 . 23103) (X$TOMCODE 23105 . 24019)) (24022 24662 (KANJICHARSETP 24032 . 24288) (
|
||||
CHINESECHARSETP 24290 . 24660)) (45230 47719 (MCCSCODEMAPARRAY 45240 . 47717)) (48335 54816 (MCCSMAPFN
|
||||
48345 . 49712) (MCCSMAPPAIRS 49714 . 53822) (XCCS.CS0.UNDEFINED 53824 . 54453) (XCCSUNDEFINEDPAIRS
|
||||
54455 . 54814)) (54921 59673 (GACHATOMCODE 54931 . 55443) (SYMBOLTOMCODE 55445 . 56093) (SIGMATOMCODE
|
||||
56095 . 56741) (ATOMCODE 56743 . 57275) (MATHTOMCODE 57277 . 57933) (HIPPOTOMCODE 57935 . 58472) (
|
||||
CYRILLICTOMCODE 58474 . 58908) (PALATINOTOMCODE 58910 . 59671)) (59700 62493 (ISO1TOMCODE 59710 .
|
||||
60459) (MTOISO1CODE 60461 . 60751) (\CREATE.ISO1.FORMAT 60753 . 62018) (\DUMMY-UTF8-FORMAT 62020 .
|
||||
62491)) (62494 64025 (ISO1TOMSTRING 62504 . 63320) (MTOISO1STRING 63322 . 64023)))))
|
||||
(FILEMAP (NIL (3065 14636 (\MCCSINCCODE 3075 . 6163) (\MCCSPEEKCCODE 6165 . 9052) (\MCCSOUTCHAR 9054
|
||||
. 11153) (\MCCSBACKCCODE 11155 . 12699) (\MCCSFORMATBYTESTREAM 12701 . 13431) (\MCCSCHARSETFN 13433
|
||||
. 14634)) (14637 17088 (\CREATE.MCCS.EXTERNALFORMAT 14647 . 15517) (\CREATE.XCCS.EXTERNALFORMAT 15519
|
||||
. 17086)) (17089 18066 (\MCCS.24BITENCODING.ERROR 17099 . 18064)) (19442 22084 (MTOXCODE 19452 .
|
||||
20249) (XTOMCODE 20251 . 20908) (XTOMSTRING 20910 . 21497) (MTOXSTRING 21499 . 22082)) (22085 23745 (
|
||||
MTOX$CODE 22095 . 22827) (X$TOMCODE 22829 . 23743)) (23746 24386 (KANJICHARSETP 23756 . 24012) (
|
||||
CHINESECHARSETP 24014 . 24384)) (44966 47455 (MCCSCODEMAPARRAY 44976 . 47453)) (48071 54554 (MCCSMAPFN
|
||||
48081 . 49448) (MCCSMAPPAIRS 49450 . 53560) (XCCS.CS0.UNDEFINED 53562 . 54191) (XCCSUNDEFINEDPAIRS
|
||||
54193 . 54552)) (54659 59413 (GACHATOMCODE 54669 . 55183) (SYMBOLTOMCODE 55185 . 55833) (SIGMATOMCODE
|
||||
55835 . 56481) (ATOMCODE 56483 . 57015) (MATHTOMCODE 57017 . 57673) (HIPPOTOMCODE 57675 . 58212) (
|
||||
CYRILLICTOMCODE 58214 . 58648) (PALATINOTOMCODE 58650 . 59411)) (59414 60852 (SYSTEM-EXTERNALFORMAT
|
||||
59424 . 60368) (MTOSYSSTRING 60370 . 60563) (SYSTOMSTRING 60565 . 60850)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user