FONT: mainly to copy the CHARENCODING and MCCS translation function in font replacement
(But also now trailing some name changes in MULTI-ALIST that got out of step)
This commit is contained in:
225
sources/FONT
225
sources/FONT
@@ -1,12 +1,13 @@
|
||||
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
|
||||
|
||||
(FILECREATED "20-Sep-2025 09:39:57" {WMEDLEY}<sources>FONT.;603 281160
|
||||
(FILECREATED " 6-Oct-2025 17:57:39" {WMEDLEY}<sources>FONT.;613 284861
|
||||
|
||||
:EDIT-BY rmk
|
||||
|
||||
:CHANGES-TO (VARS NSFONTFAMILIES ALTOFONTFAMILIES)
|
||||
:CHANGES-TO (FNS \CREATECHARSET.DISPLAY \COERCECHARSET COERCEFONTSPEC)
|
||||
(VARS FONTCOMS NSFONTFAMILIES)
|
||||
|
||||
:PREVIOUS-DATE "10-Sep-2025 23:28:04" {WMEDLEY}<sources>FONT.;602)
|
||||
:PREVIOUS-DATE "26-Sep-2025 10:10:37" {WMEDLEY}<sources>FONT.;608)
|
||||
|
||||
|
||||
(PRETTYCOMPRINT FONTCOMS)
|
||||
@@ -132,6 +133,12 @@
|
||||
(PALATINO 12))
|
||||
((PALATINO (<= * 8))
|
||||
(PALATINO 10))
|
||||
((TITAN (<= * 9)
|
||||
BOLD)
|
||||
(MODERN 10))
|
||||
((TITAN (<= * 9)
|
||||
ITALIC)
|
||||
(MODERN 10))
|
||||
((TITAN (<= * 9))
|
||||
(TITAN 10))
|
||||
(LPT AMTEX]
|
||||
@@ -146,6 +153,7 @@
|
||||
(SIGMA MODERN)
|
||||
(SYMBOL MODERN)
|
||||
(TITAN CLASSIC)
|
||||
(PALATINO CLASSIC)
|
||||
(OPTIMA MODERN)
|
||||
(BOLDPS CLASSIC)
|
||||
(PCTERMINAL)
|
||||
@@ -492,7 +500,7 @@
|
||||
DEVICE NEWFONT))))
|
||||
)
|
||||
|
||||
(RPAQQ NSFONTFAMILIES (CLASSIC MODERN TERMINAL OPTIMA TITAN BOLDPS PCTERMINAL PALATINO))
|
||||
(RPAQQ NSFONTFAMILIES (CLASSIC MODERN TERMINAL OPTIMA TITAN BOLDPS PCTERMINAL))
|
||||
|
||||
(RPAQQ ALTOFONTFAMILIES (TIMESROMAN TIMESROMAND HELVETICA HELVETICAD CLARITY BRAVOX TONTO CREAM
|
||||
OLDENGLISH))
|
||||
@@ -550,7 +558,8 @@
|
||||
(GO RETRY])
|
||||
|
||||
(FONTCREATE1
|
||||
[LAMBDA (FONTSPEC CHARSET) (* ; "Edited 30-Aug-2025 23:13 by rmk")
|
||||
[LAMBDA (FONTSPEC CHARSET) (* ; "Edited 25-Sep-2025 18:41 by rmk")
|
||||
(* ; "Edited 30-Aug-2025 23:13 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 14:32 by rmk")
|
||||
(* ; "Edited 26-Aug-2025 23:45 by rmk")
|
||||
(* ; "Edited 16-Aug-2025 18:55 by rmk")
|
||||
@@ -571,13 +580,13 @@
|
||||
(DECLARE (GLOBALVARS \FONTSINCORE))
|
||||
(CL:UNLESS CHARSET (SETQ CHARSET \DEFAULTCHARSET))
|
||||
(LET (FONT)
|
||||
(CL:WHEN (if (SETQ FONT (FETCHMULTI \FONTSINCORE FONTSPEC))
|
||||
(CL:WHEN (if (SETQ FONT (FETCHMULTI \FONTSINCORE FONTSPEC T))
|
||||
elseif (AND (FONTEXISTS? FONTSPEC)
|
||||
(SETQ FONT (\CREATEFONT FONTSPEC)))
|
||||
then
|
||||
(* ;; "Storing stops internal charset recursions")
|
||||
|
||||
(STOREMULTI \FONTSINCORE FONTSPEC FONT))
|
||||
(STOREMULTI \FONTSINCORE FONTSPEC FONT T))
|
||||
|
||||
(* ;; "Even the cached font may not have had the requested charset.")
|
||||
|
||||
@@ -989,7 +998,8 @@
|
||||
(DEFINEQ
|
||||
|
||||
(COERCEFONTSPEC
|
||||
[LAMBDA (FONTSPEC COERCIONS) (* ; "Edited 28-Aug-2025 14:41 by rmk")
|
||||
[LAMBDA (FONTSPEC COERCIONS) (* ; "Edited 5-Oct-2025 09:41 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 14:41 by rmk")
|
||||
(* ; "Edited 25-Aug-2025 10:22 by rmk")
|
||||
(* ; "Edited 17-Aug-2025 19:15 by rmk")
|
||||
(* ; "Edited 16-Aug-2025 17:47 by rmk")
|
||||
@@ -1011,7 +1021,8 @@
|
||||
FAMILY)
|
||||
(COERCEFONTSPEC.MATCH (pop MATCH)
|
||||
SIZE)
|
||||
(COERCEFONTSPEC.MATCH (pop MATCH)
|
||||
(MATCHFONTFACE (\FONTFACE (OR (pop MATCH)
|
||||
'*))
|
||||
FACE)
|
||||
(COERCEFONTSPEC.MATCH (CAR MATCH)
|
||||
ROTATION)
|
||||
@@ -1625,7 +1636,8 @@
|
||||
DESTFONT])
|
||||
|
||||
(\MOVEFONTCHAR
|
||||
[LAMBDA (SOURCEDATA DCODE DFONT) (* ; "Edited 4-Sep-2025 12:37 by rmk")
|
||||
[LAMBDA (SOURCEDATA DCODE DFONT) (* ; "Edited 25-Sep-2025 21:25 by rmk")
|
||||
(* ; "Edited 4-Sep-2025 12:37 by rmk")
|
||||
(* ; "Edited 31-Aug-2025 14:36 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 20:50 by rmk")
|
||||
(* ; "Edited 26-Aug-2025 22:25 by rmk")
|
||||
@@ -1645,9 +1657,9 @@
|
||||
(LET ((DCSINFO (\INSURECHARSETINFO DFONT (\CHARSET DCODE)))
|
||||
(DTHINCODE (\CHAR8CODE DCODE))
|
||||
DESCENT ASCENT TEMP)
|
||||
(CL:WHEN [AND (FGETMULTI SOURCEDATA 'IMAGEWIDTHS)
|
||||
(NEQ (FGETMULTI SOURCEDATA 'WIDTHS)
|
||||
(FGETMULTI SOURCEDATA 'IMAGEWIDTHS))
|
||||
(CL:WHEN [AND (GETMULTI SOURCEDATA 'IMAGEWIDTHS)
|
||||
(NEQ (GETMULTI SOURCEDATA 'WIDTHS)
|
||||
(GETMULTI SOURCEDATA 'IMAGEWIDTHS))
|
||||
(OR (EQ (ffetch (CHARSETINFO WIDTHS) of DCSINFO)
|
||||
(ffetch (CHARSETINFO IMAGEWIDTHS) of DCSINFO))
|
||||
(NULL (ffetch (CHARSETINFO IMAGEWIDTHS) of DCSINFO]
|
||||
@@ -1657,7 +1669,7 @@
|
||||
(replace (CHARSETINFO IMAGEWIDTHS) of DCSINFO with (\COPYARRAYBLOCK (ffetch (CHARSETINFO
|
||||
WIDTHS)
|
||||
of DCSINFO))))
|
||||
[if (FGETMULTI SOURCEDATA 'SLUG)
|
||||
[if (GETMULTI SOURCEDATA 'SLUG)
|
||||
then (\MAKESLUGCHAR DTHINCODE DCSINFO)
|
||||
else (CL:WHEN (fetch (CHARSETINFO CSSLUGP) of DCSINFO)
|
||||
(* ; "No longer a slug csinfo")
|
||||
@@ -1665,18 +1677,18 @@
|
||||
))
|
||||
(\SETCHARSETINFO DFONT (\CHARSET DCODE)
|
||||
DCSINFO))
|
||||
(CL:WHEN (SETQ TEMP (FGETMULTI SOURCEDATA 'BITMAP))
|
||||
(\PUTCHARBITMAP.CSINFO DTHINCODE DCSINFO TEMP (FGETMULTI SOURCEDATA 'DESCENT))
|
||||
(CL:WHEN (SETQ TEMP (GETMULTI SOURCEDATA 'BITMAP))
|
||||
(\PUTCHARBITMAP.CSINFO DTHINCODE DCSINFO TEMP (GETMULTI SOURCEDATA 'DESCENT))
|
||||
(UPDATEINFOELEMENT WIDTHS)
|
||||
(UPDATEINFOELEMENT IMAGEWIDTHS)
|
||||
(UPDATEINFOELEMENT YWIDTHS)
|
||||
(CL:WHEN (FGETMULTI SOURCEDATA 'LEFTKERN)
|
||||
(\FSETLEFTKERN DCSINFO DTHINCODE (FGETMULTI SOURCEDATA 'LEFTKERN)))
|
||||
(CL:WHEN (GETMULTI SOURCEDATA 'LEFTKERN)
|
||||
(\FSETLEFTKERN DCSINFO DTHINCODE (GETMULTI SOURCEDATA 'LEFTKERN)))
|
||||
(replace (CHARSETINFO CSSLUGP) of DCSINFO with NIL)
|
||||
(CHARSETPROP DCSINFO 'SOURCE (FONTPROP DFONT 'SPEC)))]
|
||||
(SETQ DESCENT (IMAX (FGETMULTI SOURCEDATA 'DESCENT)
|
||||
(SETQ DESCENT (IMAX (GETMULTI SOURCEDATA 'DESCENT)
|
||||
(fetch (CHARSETINFO CHARSETDESCENT) of DCSINFO)))
|
||||
(SETQ ASCENT (IMAX (FGETMULTI SOURCEDATA 'ASCENT)
|
||||
(SETQ ASCENT (IMAX (GETMULTI SOURCEDATA 'ASCENT)
|
||||
(fetch (CHARSETINFO CHARSETASCENT) of DCSINFO)))
|
||||
(replace (CHARSETINFO CHARSETDESCENT) of DCSINFO with DESCENT)
|
||||
(replace (CHARSETINFO CHARSETASCENT) of DCSINFO with ASCENT)
|
||||
@@ -1834,7 +1846,7 @@
|
||||
|
||||
(PUTPROPS UPDATEINFOELEMENT MACRO [(FIELD)
|
||||
(LET [(DBLOCK (ffetch (CHARSETINFO FIELD) of DCSINFO))
|
||||
(NEWVAL (FGETMULTI SOURCEDATA 'FIELD]
|
||||
(NEWVAL (GETMULTI SOURCEDATA 'FIELD]
|
||||
(CL:WHEN NEWVAL
|
||||
(CL:UNLESS DBLOCK
|
||||
(SETQ DBLOCK (\CREATECSINFOELEMENT))
|
||||
@@ -2372,7 +2384,8 @@
|
||||
(SHOULDNT])
|
||||
|
||||
(\COERCECHARSET
|
||||
[LAMBDA (FONTSPEC CHARSET CODE COERCIONS) (* ; "Edited 31-Aug-2025 00:00 by rmk")
|
||||
[LAMBDA (FONTSPEC CHARSET CODE COERCIONS FONT) (* ; "Edited 6-Oct-2025 17:56 by rmk")
|
||||
(* ; "Edited 31-Aug-2025 00:00 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 23:07 by rmk")
|
||||
(* ; "Edited 27-Aug-2025 17:08 by rmk")
|
||||
(* ; "Edited 16-Aug-2025 17:48 by rmk")
|
||||
@@ -2394,7 +2407,14 @@
|
||||
(for CFS CFONT CSINFO in (COERCEFONTSPEC FONTSPEC COERCIONS)
|
||||
when (AND (SETQ CFONT (FONTCREATE1 CFS CHARSET))
|
||||
(SETQ CSINFO (\INSURECHARSETINFO CFONT CHARSET)))
|
||||
unless (AND CODE (SLUGCHARP.DISPLAY CODE CFONT)) do (RETURN (LIST CFONT CSINFO])
|
||||
unless (AND CODE (SLUGCHARP.DISPLAY CODE CFONT))
|
||||
do (CL:WHEN FONT
|
||||
(replace (FONTDESCRIPTOR FONTCHARENCODING) of FONT with (fetch (FONTDESCRIPTOR
|
||||
FONTCHARENCODING)
|
||||
of CFONT))
|
||||
(replace (FONTDESCRIPTOR FONTTOMCCSFN) of FONT with (fetch (FONTDESCRIPTOR FONTTOMCCSFN
|
||||
) of CFONT)))
|
||||
(RETURN (LIST CFONT CSINFO])
|
||||
|
||||
(\BUILDSLUGCSINFO
|
||||
[LAMBDA (FONT SLUGWIDTH) (* ; "Edited 17-Aug-2025 12:46 by rmk")
|
||||
@@ -2749,7 +2769,8 @@
|
||||
(DEFINEQ
|
||||
|
||||
(FONTSAVAILABLE
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE CHECKFILESTOO?) (* ; "Edited 30-Aug-2025 13:55 by rmk")
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE CHECKFILESTOO?) (* ; "Edited 25-Sep-2025 18:39 by rmk")
|
||||
(* ; "Edited 30-Aug-2025 13:55 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 14:43 by rmk")
|
||||
(* ; "Edited 23-Aug-2025 10:51 by rmk")
|
||||
(* ; "Edited 15-Aug-2025 12:18 by rmk")
|
||||
@@ -2807,7 +2828,8 @@
|
||||
(APPLY* FN FAMILY SIZE FACE ROTATION DEVICE))))])
|
||||
|
||||
(FONTEXISTS?
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE NOCOERCIONS) (* ; "Edited 28-Aug-2025 22:16 by rmk")
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE NOCOERCIONS) (* ; "Edited 26-Sep-2025 10:10 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 22:16 by rmk")
|
||||
(* ; "Edited 23-Aug-2025 12:45 by rmk")
|
||||
(* ; "Edited 16-Aug-2025 17:49 by rmk")
|
||||
(* ; "Edited 12-Aug-2025 21:04 by rmk")
|
||||
@@ -2827,9 +2849,9 @@
|
||||
(* ;;
|
||||
"FAMILY was a font descriptor, unmodified by other args: record that it exists")
|
||||
|
||||
(STOREMULTI \FONTEXISTS?-CACHE FONTSPEC)
|
||||
else (if (FETCHMULTI \FONTSINCORE FONTSPEC)
|
||||
elseif (SETQ VAL (FETCHMULTI \FONTEXISTS?-CACHE FONTSPEC))
|
||||
(STOREMULTI \FONTEXISTS?-CACHE FONTSPEC T)
|
||||
else (if (FETCHMULTI \FONTSINCORE FONTSPEC T)
|
||||
elseif (SETQ VAL (FETCHMULTI \FONTEXISTS?-CACHE FONTSPEC T))
|
||||
then (CL:UNLESS (EQ VAL 'NO)
|
||||
VAL)
|
||||
else (* ;
|
||||
@@ -2848,7 +2870,7 @@
|
||||
(FUNCTION TRUE))
|
||||
FONTSPEC)))
|
||||
(if VAL
|
||||
then (STOREMULTI \FONTEXISTS?-CACHE FONTSPEC VAL)
|
||||
then (STOREMULTI \FONTEXISTS?-CACHE FONTSPEC VAL T)
|
||||
elseif [AND (NOT NOCOERCIONS)
|
||||
(find FS in (COERCEFONTSPEC FONTSPEC (FONTDEVICEPROP
|
||||
DEVICE
|
||||
@@ -2857,8 +2879,8 @@
|
||||
then
|
||||
(* ;; "It's coerceable...but not yet coerced.")
|
||||
|
||||
(STOREMULTI \FONTEXISTS?-CACHE FONTSPEC VAL)
|
||||
else (STOREMULTI \FONTEXISTS?-CACHE FONTSPEC 'NO)
|
||||
(STOREMULTI \FONTEXISTS?-CACHE FONTSPEC VAL T)
|
||||
else (STOREMULTI \FONTEXISTS?-CACHE FONTSPEC 'NO T)
|
||||
NIL])
|
||||
|
||||
(\SEARCHFONTFILES
|
||||
@@ -2905,19 +2927,21 @@
|
||||
do (push FONTSFOUND THISFONT))) finally (RETURN (DREVERSE FONTSFOUND])
|
||||
|
||||
(FLUSHFONTSINCORE
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE) (* ; "Edited 4-Sep-2025 10:14 by rmk")
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE) (* ; "Edited 26-Sep-2025 10:04 by rmk")
|
||||
(* ; "Edited 4-Sep-2025 10:14 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 14:44 by rmk")
|
||||
(* ; "Edited 18-Aug-2025 00:33 by rmk")
|
||||
(* ; "Edited 12-Aug-2025 21:07 by rmk")
|
||||
(* ; "Edited 21-Jul-2025 08:59 by rmk")
|
||||
(* ; "Edited 21-Jun-2025 11:19 by rmk")
|
||||
(DECLARE (SPECVARS . T)
|
||||
(GLOBALVARS \FONTSINCORE))
|
||||
(GLOBALVARS \FONTSINCORE \FONTEXISTS?-CACHE))
|
||||
(SPREADFONTSPEC (\FONT.CHECKARGS FAMILY SIZE FACE ROTATION DEVICE))
|
||||
(LET ((NFLUSHED 0))
|
||||
(DECLARE (SPECVARS NFLUSHED))
|
||||
(LET ((INCOREFLUSHED 0)
|
||||
(EXISTSFLUSHED 0))
|
||||
(DECLARE (SPECVARS INCOREFLUSHED EXISTSFLUSHED))
|
||||
[MAPMULTI \FONTSINCORE (FUNCTION (LAMBDA (FM S FC R DPAIR)
|
||||
(CL:WHEN [AND (OR (EQ FAMILY FM)
|
||||
(CL:WHEN (AND (OR (EQ FAMILY FM)
|
||||
(EQ FAMILY '*))
|
||||
(OR (EQ SIZE S)
|
||||
(EQ SIZE '*))
|
||||
@@ -2925,10 +2949,24 @@
|
||||
(OR (EQ ROTATION R)
|
||||
(EQ ROTATION '*))
|
||||
(OR (EQ DEVICE (CAR DPAIR))
|
||||
(EQ DEVICE '*]
|
||||
(ADD NFLUSHED 1)
|
||||
(EQ DEVICE '*))
|
||||
(CDR DPAIR))
|
||||
(ADD INCOREFLUSHED 1)
|
||||
(RPLACD DPAIR))]
|
||||
(LIST NFLUSHED 'flushed])
|
||||
[MAPMULTI \FONTEXISTS?-CACHE (FUNCTION (LAMBDA (FM S FC R DPAIR)
|
||||
(CL:WHEN (AND (OR (EQ FAMILY FM)
|
||||
(EQ FAMILY '*))
|
||||
(OR (EQ SIZE S)
|
||||
(EQ SIZE '*))
|
||||
(MATCHFONTFACE FACE FC)
|
||||
(OR (EQ ROTATION R)
|
||||
(EQ ROTATION '*))
|
||||
(OR (EQ DEVICE (CAR DPAIR))
|
||||
(EQ DEVICE '*))
|
||||
(CDR DPAIR))
|
||||
(ADD EXISTSFLUSHED 1)
|
||||
(RPLACD DPAIR))]
|
||||
(LIST INCOREFLUSHED EXISTSFLUSHED])
|
||||
|
||||
(FINDFONTFILES
|
||||
[LAMBDA (FAMILY SIZE FACE ROTATION DEVICE DIRLST EXTLST) (* ; "Edited 28-Aug-2025 14:45 by rmk")
|
||||
@@ -3549,7 +3587,8 @@
|
||||
INDEX KERNVALUE])
|
||||
|
||||
(\FGETLEFTKERN
|
||||
[LAMBDA (FONT PREVCHARCODE CHARCODE) (* ; "Edited 30-Aug-2025 23:29 by rmk")
|
||||
[LAMBDA (FONT PREVCHARCODE CHARCODE) (* ; "Edited 25-Sep-2025 21:25 by rmk")
|
||||
(* ; "Edited 30-Aug-2025 23:29 by rmk")
|
||||
(* ; "Edited 8-Jul-2025 22:15 by rmk")
|
||||
(* ; "Edited 22-May-2025 09:53 by rmk")
|
||||
(* ; "Edited 18-May-2025 21:30 by rmk")
|
||||
@@ -3568,14 +3607,15 @@
|
||||
)))
|
||||
(\CHAR8CODE PREVCHARCODE]
|
||||
(OR (FIXP KERN)
|
||||
(FGETMULTI (LISTP KERN)
|
||||
(GETMULTI (LISTP KERN)
|
||||
CHARCODE)
|
||||
0])
|
||||
)
|
||||
(DEFINEQ
|
||||
|
||||
(\CREATEFONT
|
||||
[LAMBDA (FONTSPEC) (* ; "Edited 28-Aug-2025 14:30 by rmk")
|
||||
[LAMBDA (FONTSPEC) (* ; "Edited 25-Sep-2025 21:24 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 14:30 by rmk")
|
||||
(* ; "Edited 18-Aug-2025 00:17 by rmk")
|
||||
(* ; "Edited 16-Aug-2025 20:52 by rmk")
|
||||
(* ; "Edited 12-Aug-2025 23:36 by rmk")
|
||||
@@ -3586,7 +3626,7 @@
|
||||
|
||||
(* ;; "")
|
||||
|
||||
(LET [(FN (CAR (FGETMULTI IMAGESTREAMTYPES (fetch (FONTSPEC FSDEVICE) of FONTSPEC)
|
||||
(LET [(FN (CAR (GETMULTI IMAGESTREAMTYPES (fetch (FONTSPEC FSDEVICE) of FONTSPEC)
|
||||
'FONTCREATE]
|
||||
(CL:WHEN FN
|
||||
(if (EQ (NARGS FN)
|
||||
@@ -3596,7 +3636,8 @@
|
||||
(APPLY FN FONTSPEC)))])
|
||||
|
||||
(\CREATECHARSET
|
||||
[LAMBDA (CHARSET FONT) (* ; "Edited 2-Sep-2025 22:59 by rmk")
|
||||
[LAMBDA (CHARSET FONT) (* ; "Edited 25-Sep-2025 21:24 by rmk")
|
||||
(* ; "Edited 2-Sep-2025 22:59 by rmk")
|
||||
(* ; "Edited 31-Aug-2025 14:36 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 14:31 by rmk")
|
||||
(* ; "Edited 27-Aug-2025 12:55 by rmk")
|
||||
@@ -3624,9 +3665,9 @@
|
||||
(\ILLEGAL.ARG CHARSET))
|
||||
(LET [(CSINFO (if (fetch (FONTDESCRIPTOR FONTCOMPLETEP) of FONT)
|
||||
then (\GETCHARSETINFO FONT CHARSET)
|
||||
else (APPLY* (OR (CAR (FGETMULTI IMAGESTREAMTYPES (fetch (FONTDESCRIPTOR
|
||||
FONTDEVICE)
|
||||
of FONT)
|
||||
else (APPLY* (OR (CAR (GETMULTI IMAGESTREAMTYPES (fetch (FONTDESCRIPTOR
|
||||
FONTDEVICE)
|
||||
of FONT)
|
||||
'CREATECHARSET))
|
||||
(FUNCTION \READCHARSET))
|
||||
(create FONTSPEC using (FONTPROP FONT 'DEVICESPEC))
|
||||
@@ -3786,7 +3827,8 @@
|
||||
FONTDEVICESPEC _ (create FONTSPEC using FONTSPEC])
|
||||
|
||||
(\CREATECHARSET.DISPLAY
|
||||
[LAMBDA (FONTSPEC FONT CHARSET) (* ; "Edited 2-Sep-2025 23:42 by rmk")
|
||||
[LAMBDA (FONTSPEC FONT CHARSET) (* ; "Edited 6-Oct-2025 17:56 by rmk")
|
||||
(* ; "Edited 2-Sep-2025 23:42 by rmk")
|
||||
(* ; "Edited 30-Aug-2025 19:42 by rmk")
|
||||
(* ; "Edited 28-Aug-2025 23:08 by rmk")
|
||||
(* ; "Edited 26-Aug-2025 23:29 by rmk")
|
||||
@@ -3821,7 +3863,7 @@
|
||||
"If no COERCIONS, skip that first \COERCECHARSET call--easier debugging of the other cases.")
|
||||
|
||||
(SETQ CSINFO (if (AND (FONTDEVICEPROP 'DISPLAY 'FONTCOERCIONS)
|
||||
(CADR (\COERCECHARSET FONTSPEC CHARSET)))
|
||||
(CADR (\COERCECHARSET FONTSPEC CHARSET NIL 'FONTCOERCIONS FONT)))
|
||||
elseif [SETQ CSINFO (OR (\READCHARSET FONTSPEC CHARSET FONT)
|
||||
(CADR (\COERCECHARSET FONTSPEC CHARSET NIL
|
||||
'CHARCOERCIONS]
|
||||
@@ -4494,6 +4536,12 @@
|
||||
(PALATINO 12))
|
||||
((PALATINO (<= * 8))
|
||||
(PALATINO 10))
|
||||
((TITAN (<= * 9)
|
||||
BOLD)
|
||||
(MODERN 10))
|
||||
((TITAN (<= * 9)
|
||||
ITALIC)
|
||||
(MODERN 10))
|
||||
((TITAN (<= * 9))
|
||||
(TITAN 10))
|
||||
(LPT AMTEX)))
|
||||
@@ -4510,6 +4558,7 @@
|
||||
(SIGMA MODERN)
|
||||
(SYMBOL MODERN)
|
||||
(TITAN CLASSIC)
|
||||
(PALATINO CLASSIC)
|
||||
(OPTIMA MODERN)
|
||||
(BOLDPS CLASSIC)
|
||||
(PCTERMINAL)
|
||||
@@ -4576,43 +4625,43 @@
|
||||
(ADDTOVAR LAMA FONTCOPY)
|
||||
)
|
||||
(DECLARE%: DONTCOPY
|
||||
(FILEMAP (NIL (11690 21403 (CHARWIDTH 11700 . 12485) (CHARWIDTHY 12487 . 14004) (STRINGWIDTH 14006 .
|
||||
15099) (\CHARWIDTH.DISPLAY 15101 . 15514) (\STRINGWIDTH.DISPLAY 15516 . 15940) (\STRINGWIDTH.GENERIC
|
||||
15942 . 21401)) (21404 27924 (DEFAULTFONT 21414 . 22699) (FONTCLASS 22701 . 24863) (FONTCLASSUNPARSE
|
||||
24865 . 25764) (FONTCLASSCOMPONENT 25766 . 26354) (SETFONTCLASSCOMPONENT 26356 . 26798) (
|
||||
GETFONTCLASSCOMPONENT 26800 . 27922)) (29612 53880 (FONTCREATE 29622 . 32867) (FONTCREATE1 32869 .
|
||||
35371) (FONTCREATE.SLUGFD 35373 . 36855) (\FONT.CHECKARGS 36857 . 43447) (\FONT.CHECKARGS1 43449 .
|
||||
47972) (\FONTCREATE1.NOFN 47974 . 48188) (FONTFILEP 48190 . 49078) (\READCHARSET 49080 . 53878)) (
|
||||
53881 60798 (\FONT.CHECKARGS 53891 . 60481) (\CHARSET.CHECK 60483 . 60796)) (60799 63705 (
|
||||
COERCEFONTSPEC 60809 . 63703)) (65775 66565 (MAKEFONTSPEC 65785 . 66563)) (66566 73231 (COMPLETE.FONT
|
||||
66576 . 68990) (COMPLETEFONTP 68992 . 69615) (COMPLETE.CHARSET 69617 . 72302) (PRUNESLUGCSINFOS 72304
|
||||
. 73229)) (73270 81191 (FONTASCENT 73280 . 73664) (FONTDESCENT 73666 . 74151) (FONTHEIGHT 74153 .
|
||||
74555) (FONTPROP 74557 . 80468) (\AVGCHARWIDTH 80470 . 81189)) (81848 82756 (FONTDEVICEPROP 81858 .
|
||||
82754)) (82802 83656 (EDITCHAR 82812 . 83654)) (83702 95892 (GETCHARBITMAP 83712 . 84836) (
|
||||
PUTCHARBITMAP 84838 . 86996) (\GETCHARBITMAP.CSINFO 86998 . 89014) (\PUTCHARBITMAP.CSINFO 89016 .
|
||||
95890)) (95893 116274 (MOVECHARBITMAP 95903 . 97797) (MOVEFONTCHARS 97799 . 101759) (\MOVEFONTCHAR
|
||||
101761 . 106505) (\MOVEFONTCHARS.SOURCEDATA 106507 . 112612) (\MAKESLUGCHAR 112614 . 115149) (
|
||||
SLUGCHARP.DISPLAY 115151 . 116272)) (117208 137225 (FONTFILES 117218 . 119051) (\FINDFONTFILE 119053
|
||||
. 120770) (\FONTFILENAMES 120772 . 121646) (\FONTFILENAME 121648 . 125631) (\FONTFILENAME.OLD 125633
|
||||
. 128582) (\FONTFILENAME.NEW 128584 . 130841) (FONTSPECFROMFILENAME 130843 . 134944) (
|
||||
\FONTINFOFROMFILENAME.OLD 134946 . 137223)) (137492 172639 (FONTCOPY 137502 . 142565) (FONTP 142567 .
|
||||
142866) (FONTUNPARSE 142868 . 144587) (SETFONTDESCRIPTOR 144589 . 146053) (\STREAMCHARWIDTH 146055 .
|
||||
150219) (\COERCECHARSET 150221 . 152160) (\BUILDSLUGCSINFO 152162 . 155785) (\FONTSYMBOL 155787 .
|
||||
156437) (\DEVICESYMBOL 156439 . 157308) (\FONTFACE 157310 . 164500) (\FONTFACE.COLOR 164502 . 171422)
|
||||
(SETFONTCHARENCODING 171424 . 172637)) (172640 191625 (FONTSAVAILABLE 172650 . 177396) (FONTEXISTS?
|
||||
177398 . 181255) (\SEARCHFONTFILES 181257 . 184342) (FLUSHFONTSINCORE 184344 . 186181) (FINDFONTFILES
|
||||
186183 . 189397) (SORTFONTSPECS 189399 . 191623)) (191626 195049 (MATCHFONTFACE 191636 . 192451) (
|
||||
MAKEFONTFACE 192453 . 193293) (FONTFACETOATOM 193295 . 195047)) (195277 195769 (\UNITWIDTHSVECTOR
|
||||
195287 . 195767)) (211369 213436 (FONTDESCRIPTOR.DEFPRINT 211379 . 212958) (FONTCLASS.DEFPRINT 212960
|
||||
. 213434)) (217265 219947 (\CREATEKERNELEMENT 217275 . 217633) (\FSETLEFTKERN 217635 . 218126) (
|
||||
\FGETLEFTKERN 218128 . 219945)) (219948 229370 (\CREATEFONT 219958 . 221289) (\CREATECHARSET 221291 .
|
||||
225121) (\INSTALLCHARSETINFO 225123 . 228457) (\INSTALLCHARSETINFO.CHARENCODING 228459 . 229368)) (
|
||||
229692 231056 (\FONTRESETCHARWIDTHS 229702 . 231054)) (231686 241600 (\CREATEDISPLAYFONT 231696 .
|
||||
233545) (\CREATECHARSET.DISPLAY 233547 . 239123) (\FONTEXISTS?.DISPLAY 239125 . 241598)) (241601
|
||||
256466 (STRIKEFONT.FILEP 241611 . 242499) (STRIKEFONT.GETCHARSET 242501 . 248093) (WRITESTRIKEFONTFILE
|
||||
248095 . 253006) (STRIKECSINFO 253008 . 256464)) (256497 272814 (MAKEBOLD.CHARSET 256507 . 260156) (
|
||||
MAKEBOLD.CHAR 260158 . 261910) (MAKEITALIC.CHARSET 261912 . 265585) (MAKEITALIC.CHAR 265587 . 267933)
|
||||
(\SFMAKEBOLD 267935 . 270159) (\SFMAKEITALIC 270161 . 272812)) (272815 276964 (\SFMAKEROTATEDFONT
|
||||
272825 . 274226) (\SFROTATECSINFO 274228 . 274865) (\SFROTATEFONTCHARACTERS 274867 . 275247) (
|
||||
\SFROTATECSINFOOFFSETS 275249 . 276962)) (276965 278346 (\SFMAKECOLOR 276975 . 278344)))))
|
||||
(FILEMAP (NIL (12161 21874 (CHARWIDTH 12171 . 12956) (CHARWIDTHY 12958 . 14475) (STRINGWIDTH 14477 .
|
||||
15570) (\CHARWIDTH.DISPLAY 15572 . 15985) (\STRINGWIDTH.DISPLAY 15987 . 16411) (\STRINGWIDTH.GENERIC
|
||||
16413 . 21872)) (21875 28395 (DEFAULTFONT 21885 . 23170) (FONTCLASS 23172 . 25334) (FONTCLASSUNPARSE
|
||||
25336 . 26235) (FONTCLASSCOMPONENT 26237 . 26825) (SETFONTCLASSCOMPONENT 26827 . 27269) (
|
||||
GETFONTCLASSCOMPONENT 27271 . 28393)) (30074 54455 (FONTCREATE 30084 . 33329) (FONTCREATE1 33331 .
|
||||
35946) (FONTCREATE.SLUGFD 35948 . 37430) (\FONT.CHECKARGS 37432 . 44022) (\FONT.CHECKARGS1 44024 .
|
||||
48547) (\FONTCREATE1.NOFN 48549 . 48763) (FONTFILEP 48765 . 49653) (\READCHARSET 49655 . 54453)) (
|
||||
54456 61373 (\FONT.CHECKARGS 54466 . 61056) (\CHARSET.CHECK 61058 . 61371)) (61374 64457 (
|
||||
COERCEFONTSPEC 61384 . 64455)) (66527 67317 (MAKEFONTSPEC 66537 . 67315)) (67318 73983 (COMPLETE.FONT
|
||||
67328 . 69742) (COMPLETEFONTP 69744 . 70367) (COMPLETE.CHARSET 70369 . 73054) (PRUNESLUGCSINFOS 73056
|
||||
. 73981)) (74022 81943 (FONTASCENT 74032 . 74416) (FONTDESCENT 74418 . 74903) (FONTHEIGHT 74905 .
|
||||
75307) (FONTPROP 75309 . 81220) (\AVGCHARWIDTH 81222 . 81941)) (82600 83508 (FONTDEVICEPROP 82610 .
|
||||
83506)) (83554 84408 (EDITCHAR 83564 . 84406)) (84454 96644 (GETCHARBITMAP 84464 . 85588) (
|
||||
PUTCHARBITMAP 85590 . 87748) (\GETCHARBITMAP.CSINFO 87750 . 89766) (\PUTCHARBITMAP.CSINFO 89768 .
|
||||
96642)) (96645 117125 (MOVECHARBITMAP 96655 . 98549) (MOVEFONTCHARS 98551 . 102511) (\MOVEFONTCHAR
|
||||
102513 . 107356) (\MOVEFONTCHARS.SOURCEDATA 107358 . 113463) (\MAKESLUGCHAR 113465 . 116000) (
|
||||
SLUGCHARP.DISPLAY 116002 . 117123)) (118058 138075 (FONTFILES 118068 . 119901) (\FINDFONTFILE 119903
|
||||
. 121620) (\FONTFILENAMES 121622 . 122496) (\FONTFILENAME 122498 . 126481) (\FONTFILENAME.OLD 126483
|
||||
. 129432) (\FONTFILENAME.NEW 129434 . 131691) (FONTSPECFROMFILENAME 131693 . 135794) (
|
||||
\FONTINFOFROMFILENAME.OLD 135796 . 138073)) (138342 174145 (FONTCOPY 138352 . 143415) (FONTP 143417 .
|
||||
143716) (FONTUNPARSE 143718 . 145437) (SETFONTDESCRIPTOR 145439 . 146903) (\STREAMCHARWIDTH 146905 .
|
||||
151069) (\COERCECHARSET 151071 . 153666) (\BUILDSLUGCSINFO 153668 . 157291) (\FONTSYMBOL 157293 .
|
||||
157943) (\DEVICESYMBOL 157945 . 158814) (\FONTFACE 158816 . 166006) (\FONTFACE.COLOR 166008 . 172928)
|
||||
(SETFONTCHARENCODING 172930 . 174143)) (174146 194697 (FONTSAVAILABLE 174156 . 179011) (FONTEXISTS?
|
||||
179013 . 182991) (\SEARCHFONTFILES 182993 . 186078) (FLUSHFONTSINCORE 186080 . 189253) (FINDFONTFILES
|
||||
189255 . 192469) (SORTFONTSPECS 192471 . 194695)) (194698 198121 (MATCHFONTFACE 194708 . 195523) (
|
||||
MAKEFONTFACE 195525 . 196365) (FONTFACETOATOM 196367 . 198119)) (198349 198841 (\UNITWIDTHSVECTOR
|
||||
198359 . 198839)) (214441 216508 (FONTDESCRIPTOR.DEFPRINT 214451 . 216030) (FONTCLASS.DEFPRINT 216032
|
||||
. 216506)) (220337 223127 (\CREATEKERNELEMENT 220347 . 220705) (\FSETLEFTKERN 220707 . 221198) (
|
||||
\FGETLEFTKERN 221200 . 223125)) (223128 232764 (\CREATEFONT 223138 . 224577) (\CREATECHARSET 224579 .
|
||||
228515) (\INSTALLCHARSETINFO 228517 . 231851) (\INSTALLCHARSETINFO.CHARENCODING 231853 . 232762)) (
|
||||
233086 234450 (\FONTRESETCHARWIDTHS 233096 . 234448)) (235080 245127 (\CREATEDISPLAYFONT 235090 .
|
||||
236939) (\CREATECHARSET.DISPLAY 236941 . 242650) (\FONTEXISTS?.DISPLAY 242652 . 245125)) (245128
|
||||
259993 (STRIKEFONT.FILEP 245138 . 246026) (STRIKEFONT.GETCHARSET 246028 . 251620) (WRITESTRIKEFONTFILE
|
||||
251622 . 256533) (STRIKECSINFO 256535 . 259991)) (260024 276341 (MAKEBOLD.CHARSET 260034 . 263683) (
|
||||
MAKEBOLD.CHAR 263685 . 265437) (MAKEITALIC.CHARSET 265439 . 269112) (MAKEITALIC.CHAR 269114 . 271460)
|
||||
(\SFMAKEBOLD 271462 . 273686) (\SFMAKEITALIC 273688 . 276339)) (276342 280491 (\SFMAKEROTATEDFONT
|
||||
276352 . 277753) (\SFROTATECSINFO 277755 . 278392) (\SFROTATEFONTCHARACTERS 278394 . 278774) (
|
||||
\SFROTATECSINFOOFFSETS 278776 . 280489)) (280492 281873 (\SFMAKECOLOR 280502 . 281871)))))
|
||||
STOP
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user