1
0
mirror of synced 2026-03-21 08:59:02 +00:00

Palatino translation table and function

This commit is contained in:
rmkaplan
2025-10-06 21:01:24 -07:00
parent eddc006b66
commit c52a4005de
2 changed files with 176 additions and 52 deletions

View File

@@ -1,12 +1,14 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED "20-Sep-2025 09:45:41" {WMEDLEY}<sources>MCCS.;138 51315
(FILECREATED " 6-Oct-2025 16:44:20" {WMEDLEY}<sources>MCCS.;149 56371
:EDIT-BY rmk
:CHANGES-TO (FNS MCCSMAPPAIRS)
:CHANGES-TO (VARS PALATINOTOMCCS MCCSCOMS)
(FNS MCCSMAPPAIRS XCCS.CS0.UNDEFINED XCCSUNDEFINEDPAIRS XCCSUNDEFINEDCONTROLS
PALATINOTOMCODE MCCSMAPFN)
:PREVIOUS-DATE " 9-Sep-2025 22:45:13" {WMEDLEY}<sources>MCCS.;137)
:PREVIOUS-DATE "20-Sep-2025 09:45:41" {WMEDLEY}<sources>MCCS.;138)
(PRETTYCOMPRINT MCCSCOMS)
@@ -38,25 +40,26 @@
(FNS MTOXCODE XTOMCODE XTOMSTRING MTOXSTRING)
(FNS MTOX$CODE X$TOMCODE)
(FNS KANJICHARSETP CHINESECHARSETP)
(COMS (* ; " Mapping functions to MCCS")
(* ;; "Used by \TEDIT.MCCS.TRANSLATE .")
(VARS ALTOTEXT2MCCS SYMBOLTOMCCS SIGMATOMCCS HIPPOTOMCCS CYRILLICTOMCCS MATHTOMCCS)
(COMS (* ; " Mapping to MCCS")
(VARS ALTOTEXT2MCCS SYMBOLTOMCCS SIGMATOMCCS HIPPOTOMCCS CYRILLICTOMCCS MATHTOMCCS
PALATINOTOMCCS)
(FNS MCCSCODEMAPARRAY)
(GLOBALVARS ALTOTOMCCSARRAY SYMBOLTOMCCSARRAY HIPPOTOMCCSARRAY CYRILLICTOMCCSARRAY
MATHTOMCCSARRAY SIGMATOMCCSARRAY)
MATHTOMCCSARRAY SIGMATOMCCSARRAY PALATINOTOMCCSARRAY)
(INITVARS (ALTOTOMCCSARRAY (MCCSCODEMAPARRAY 'MCCS))
(SYMBOLTOMCCSARRAY (MCCSCODEMAPARRAY SYMBOLTOMCCS))
(HIPPOTOMCCSARRAY (MCCSCODEMAPARRAY HIPPOTOMCCS))
(CYRILLICTOMCCSARRAY (MCCSCODEMAPARRAY CYRILLICTOMCCS))
(MATHTOMCCSARRAY (MCCSCODEMAPARRAY MATHTOMCCS))
(SIGMATOMCCSARRAY (MCCSCODEMAPARRAY SIGMATOMCCS)))
(FNS MCCSMAPFN MCCSMAPPAIRS XCCSUNDEFINEDPAIRS)
(COMS (* ;
 "Mappings into MCCS: needed for hardcopy and Tedit coercion")
(SIGMATOMCCSARRAY (MCCSCODEMAPARRAY SIGMATOMCCS))
(PALATINOTOMCCSARRAY (MCCSCODEMAPARRAY PALATINOTOMCCS)))
(FNS MCCSMAPFN MCCSMAPPAIRS XCCS.CS0.UNDEFINED XCCSUNDEFINEDPAIRS)
(COMS
(* ;;
 "Mappings into MCCS: needed for hardcopy and Tedit coercion, e.g. \TEDIT.MCCS.TRANSLATE")
(FNS GACHATOMCODE SYMBOLTOMCODE SIGMATOMCODE ATOMCODE MATHTOMCODE HIPPOTOMCODE
CYRILLICTOMCODE])
CYRILLICTOMCODE PALATINOTOMCODE])
@@ -458,12 +461,7 @@
(* ; " Mapping functions to MCCS")
(* ;; "Used by \TEDIT.MCCS.TRANSLATE .")
(* ; " Mapping to MCCS")
(RPAQQ ALTOTEXT2MCCS
@@ -1158,6 +1156,95 @@
("0,375" Null)
("0,376" Null)
("0,377" Null)))
(RPAQQ PALATINOTOMCCS
(("0,32" "361,353")
("0,34" "361,260")
("0,35" "361,277")
("0,36" "361,304")
("0,37" "361,153")
("0,136" "0,255")
("0,137" "0,254")
(NIL "0,240")
("0,200" "361,047")
("0,201" "361,124")
("0,202" "361,043")
("0,203" "361,077")
("0,204" "361,114")
("0,205" "361,120")
("0,206" "361,121")
("0,207" "361,117")
("0,210" "361,122")
("0,211" "361,134")
("0,212" "361,140")
("0,213" "361,141")
("0,214" "361,145")
("0,215" "361,137")
("0,216" "361,155")
("0,217" "361,160")
("0,220" "361,142")
("0,221" "361,241")
("0,222" "361,243")
("0,223" "361,276")
("0,224" "361,250")
("0,225" "361,320")
("0,226" "361,321")
("0,227" "361,322")
("0,230" "361,322")
("0,231" "361,334")
("0,232" "361,244")
("0,233" "361,341")
("0,234" "361,261")
("0,235" "361,337")
("0,236" "361,262")
("0,237" "361,255")
("0,240" "361,247")
("0,244" "0,057")
(* ; "Slash, but should be fraction")
("0,246" "357,243")
("0,250" "0,244")
("0,254" "357,052")
("0,255" "357,053")
("0,256" "360,004")
("0,257" "360,005")
("0,261" EMDASH)
("0,262" "357,060")
("0,263" "357,061")
("0,267" "357,146")
("0,270" "43,262")
("0,271" "357,050")
("0,274" "41,104")
("0,275" "357,101")
("0,311" "357,153")
("0,314" "361,314")
("0,321" "375,261")
("0,324" "361,324")
("0,325" "375,362")
("0,326" "375,363")
("0,327" "0,274")
("0,330" "0,275")
("0,331" "0,264")
("0,332" "0,270")
("0,333" "357,152")
("0,334" "361,265")
("0,335" "0,261")
("0,336" "361,042")
("0,337" "357,044")
("0,340" "361,340")
("0,344" "361,041")
("0,345" "361,345")
("0,346" "361,050")
("0,347" "361,044")
("0,355" "361,355")
("0,356" "361,055")
("0,357" "361,061")
("0,360" "361,360")
("0,362" "361,062")
("0,364" "361,065")
("0,366" "361,060")
("0,367" "361,277")
("0,375" "361,100")
("0,376" "361,104")))
(DEFINEQ
(MCCSCODEMAPARRAY
@@ -1192,7 +1279,7 @@
(DECLARE%: DOEVAL@COMPILE DONTCOPY
(GLOBALVARS ALTOTOMCCSARRAY SYMBOLTOMCCSARRAY HIPPOTOMCCSARRAY CYRILLICTOMCCSARRAY MATHTOMCCSARRAY
SIGMATOMCCSARRAY)
SIGMATOMCCSARRAY PALATINOTOMCCSARRAY)
)
(RPAQ? ALTOTOMCCSARRAY (MCCSCODEMAPARRAY 'MCCS))
@@ -1206,10 +1293,13 @@
(RPAQ? MATHTOMCCSARRAY (MCCSCODEMAPARRAY MATHTOMCCS))
(RPAQ? SIGMATOMCCSARRAY (MCCSCODEMAPARRAY SIGMATOMCCS))
(RPAQ? PALATINOTOMCCSARRAY (MCCSCODEMAPARRAY PALATINOTOMCCS))
(DEFINEQ
(MCCSMAPFN
[LAMBDA (FROMENCODING) (* ; "Edited 6-Sep-2025 12:40 by rmk")
[LAMBDA (FROMENCODING) (* ; "Edited 5-Oct-2025 19:56 by rmk")
(* ; "Edited 6-Sep-2025 12:40 by rmk")
(* ; "Edited 4-Sep-2025 08:06 by rmk")
(* ; "Edited 24-May-2025 10:55 by rmk")
@@ -1234,11 +1324,13 @@
(CYRILLIC (FUNCTION CYRILLICTOMCODE))
(XCCS (FUNCTION XTOMCODE))
(GACHA (FUNCTION GACHATOMCODE))
(PALATINO (FUNCTION PALATINOTOMCODE))
(MCCS NIL)
NIL])
(MCCSMAPPAIRS
[LAMBDA (FROMENCODING NONIDENTITY) (* ; "Edited 20-Sep-2025 09:45 by rmk")
[LAMBDA (FROMENCODING NONIDENTITY) (* ; "Edited 6-Oct-2025 09:47 by rmk")
(* ; "Edited 20-Sep-2025 09:45 by rmk")
(* ; "Edited 6-Sep-2025 16:43 by rmk")
(* ; "Edited 31-Aug-2025 16:16 by rmk")
@@ -1259,37 +1351,56 @@
(Leftarrow Lowline)
(Lowline Leftarrow)
(Circumflex Uparrow)))
(PALATINO (APPEND (XCCS.CS0.UNDEFINED)
PALATINOTOMCCS))
(for C M from 0 to \MAXTHINCHAR when (SETQ M (APPLY* FN C NONIDENTITY))
collect (LIST C M]
(* ;; "Weed out interspersed comments")
(* ;; "Weed out interspersed comments, convert to charcodes")
[for P in PAIRS when (LISTP P) unless (EQ '* (CAR P))
collect (LIST (if (LISTP (CAR P))
then
(* ;;
[SETQ PAIRS (for P in PAIRS when (LISTP P) unless (EQ '* (CAR P))
collect (LIST (if (LISTP (CAR P))
then
(* ;;
 "Allows for the (Uparrow TERMINAL) case above, for MOVEFONTCHARS")
(CONS (CL:IF (CHARCODEP (CAAR P))
(CAAR P)
(CHARCODE.DECODE (CAAR P)))
(CDAR P))
elseif (CHARCODEP (CAR P))
then (CAR P)
else (CHARCODE.DECODE (CAR P)))
(CL:IF (CHARCODEP (CADR P))
(CADR P)
(CHARCODE.DECODE (CADR P)))])])
(CONS (CL:IF (CHARCODEP (CAAR P))
(CAAR P)
(CHARCODE.DECODE (CAAR P)))
(CDAR P))
elseif (CHARCODEP (CAR P))
then (CAR P)
else (CHARCODE.DECODE (CAR P)))
(CL:IF (CHARCODEP (CADR P))
(CADR P)
(CHARCODE.DECODE (CADR P)))]
(* ;;
 "Any character that is moved gets replaced by a slug. It may then be coerced from another font.")
[APPEND PAIRS (for P in PAIRS when (CAR P) collect (LIST NIL (CAR P])])
(XCCS.CS0.UNDEFINED
[LAMBDA NIL (* ; "Edited 5-Oct-2025 22:44 by rmk")
(* ;; "Maps slugs to all undefined/reserved characters in XCCS")
(APPEND (for I from 0 to (SUB1 (CHARCODE SPACE)) collect (LIST NIL I))
(for I from (CHARCODE "0,#NULL") to (SUB1 (CHARCODE "0,#SPACE"))
collect (LIST NIL I))
(for I in (CHARCODE ("0,177" "0,246" "0,250" "0,300" "0,351" "0,326" "0,327" "0,330"
"0,331" "0,332" "0,333" "0,377")) collect (LIST NIL I])
(XCCSUNDEFINEDPAIRS
[LAMBDA NIL (* ; "Edited 2-Sep-2025 13:14 by rmk")
(APPEND (for I from 0 to (SUB1 (CHARCODE SPACE)) collect (LIST NIL I))
(for I from 127 to \MAXTHINCHAR collect (LIST NIL I])
[LAMBDA NIL (* ; "Edited 5-Oct-2025 22:39 by rmk")
(* ; "Edited 2-Sep-2025 13:14 by rmk")
(APPEND (XCCS.CS0.UNDEFINED)
(for I from 128 to \MAXTHINCHAR collect (LIST NIL I])
)
(* ; "Mappings into MCCS: needed for hardcopy and Tedit coercion")
(* ;; "Mappings into MCCS: needed for hardcopy and Tedit coercion, e.g. \TEDIT.MCCS.TRANSLATE")
(DEFINEQ
@@ -1365,16 +1476,29 @@
(CL:UNLESS (EQ MCODE CCODE)
MCODE)))
CCODE])
(PALATINOTOMCODE
[LAMBDA (PCODE) (* ; "Edited 5-Oct-2025 20:08 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")
(* ; "Edited 1-Jun-2025 07:02 by rmk")
(OR (CL:WHEN (ILEQ PCODE \MAXTHINCHAR)
(LET ((MCODE (ELT PALATINOTOMCCSARRAY PCODE)))
(CL:UNLESS (EQ MCODE PCODE)
MCODE)))
PCODE])
)
(DECLARE%: DONTCOPY
(FILEMAP (NIL (2791 14362 (\MCCSINCCODE 2801 . 5889) (\MCCSPEEKCCODE 5891 . 8778) (\MCCSOUTCHAR 8780
. 10879) (\MCCSBACKCCODE 10881 . 12425) (\MCCSFORMATBYTESTREAM 12427 . 13157) (\MCCSCHARSETFN 13159
. 14360)) (14363 15245 (\CREATE.MCCS.EXTERNALFORMAT 14373 . 15243)) (15246 16223 (
\MCCS.24BITENCODING.ERROR 15256 . 16221)) (17599 20237 (MTOXCODE 17609 . 18406) (XTOMCODE 18408 .
19065) (XTOMSTRING 19067 . 19652) (MTOXSTRING 19654 . 20235)) (20238 21898 (MTOX$CODE 20248 . 20980) (
X$TOMCODE 20982 . 21896)) (21899 22539 (KANJICHARSETP 21909 . 22165) (CHINESECHARSETP 22167 . 22537))
(40660 42534 (MCCSCODEMAPARRAY 40670 . 42532)) (43063 47227 (MCCSMAPFN 43073 . 44285) (MCCSMAPPAIRS
44287 . 46919) (XCCSUNDEFINEDPAIRS 46921 . 47225)) (47303 51292 (GACHATOMCODE 47313 . 47825) (
SYMBOLTOMCODE 47827 . 48475) (SIGMATOMCODE 48477 . 49123) (ATOMCODE 49125 . 49657) (MATHTOMCODE 49659
. 50315) (HIPPOTOMCODE 50317 . 50854) (CYRILLICTOMCODE 50856 . 51290)))))
(FILEMAP (NIL (3015 14586 (\MCCSINCCODE 3025 . 6113) (\MCCSPEEKCCODE 6115 . 9002) (\MCCSOUTCHAR 9004
. 11103) (\MCCSBACKCCODE 11105 . 12649) (\MCCSFORMATBYTESTREAM 12651 . 13381) (\MCCSCHARSETFN 13383
. 14584)) (14587 15469 (\CREATE.MCCS.EXTERNALFORMAT 14597 . 15467)) (15470 16447 (
\MCCS.24BITENCODING.ERROR 15480 . 16445)) (17823 20461 (MTOXCODE 17833 . 18630) (XTOMCODE 18632 .
19289) (XTOMSTRING 19291 . 19876) (MTOXSTRING 19878 . 20459)) (20462 22122 (MTOX$CODE 20472 . 21204) (
X$TOMCODE 21206 . 22120)) (22123 22763 (KANJICHARSETP 22133 . 22389) (CHINESECHARSETP 22391 . 22761))
(43331 45205 (MCCSCODEMAPARRAY 43341 . 45203)) (45821 51491 (MCCSMAPFN 45831 . 47198) (MCCSMAPPAIRS
47200 . 50497) (XCCS.CS0.UNDEFINED 50499 . 51128) (XCCSUNDEFINEDPAIRS 51130 . 51489)) (51596 56348 (
GACHATOMCODE 51606 . 52118) (SYMBOLTOMCODE 52120 . 52768) (SIGMATOMCODE 52770 . 53416) (ATOMCODE 53418
. 53950) (MATHTOMCODE 53952 . 54608) (HIPPOTOMCODE 54610 . 55147) (CYRILLICTOMCODE 55149 . 55583) (
PALATINOTOMCODE 55585 . 56346)))))
STOP

Binary file not shown.