From fb561889b726d6db74652b1e041a06a9d0256d83 Mon Sep 17 00:00:00 2001 From: rmkaplan Date: Thu, 4 Dec 2025 00:58:25 -0800 Subject: [PATCH 1/2] FONT: eliminate hyphen INFILEPs for font lookup --- sources/FONT | 120 ++++++++++++++++++++++++++-------------------- sources/FONT.LCOM | Bin 69409 -> 69651 bytes 2 files changed, 67 insertions(+), 53 deletions(-) diff --git a/sources/FONT b/sources/FONT index fb086c1fa..436f15b13 100644 --- a/sources/FONT +++ b/sources/FONT @@ -1,12 +1,12 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "29-Nov-2025 16:32:59" {WMEDLEY}FONT.;638 280293 +(FILECREATED " 3-Dec-2025 23:42:55" {WMEDLEY}FONT.;640 281223 :EDIT-BY rmk - :CHANGES-TO (VARS FONTCOMS) + :CHANGES-TO (FNS \FINDFONTFILE) - :PREVIOUS-DATE "28-Nov-2025 14:28:16" {WMEDLEY}FONT.;637) + :PREVIOUS-DATE " 2-Dec-2025 16:01:58" {WMEDLEY}FONT.;639) (PRETTYCOMPRINT FONTCOMS) @@ -1143,7 +1143,8 @@ (fetch (FONTDESCRIPTOR \SFHeight) of (FONTCREATE FONTSPEC]) (FONTPROP - [LAMBDA (FONT PROP) (* ; "Edited 2-Sep-2025 22:21 by rmk") + [LAMBDA (FONT PROP) (* ; "Edited 2-Dec-2025 16:01 by rmk") + (* ; "Edited 2-Sep-2025 22:21 by rmk") (* ; "Edited 12-Aug-2025 21:10 by rmk") (* ; "Edited 10-Aug-2025 13:28 by rmk") (* ; "Edited 23-Jul-2025 17:01 by rmk") @@ -1178,6 +1179,9 @@ elseif (MEMB (fetch (FONTDESCRIPTOR FONTFAMILY) of FONT) ALTOFONTFAMILIES) then 'ALTOTEXT + elseif (MEMB (fetch (FONTDESCRIPTOR FONTFAMILY) of FONT) + MCCSFONTFAMILIES) + then 'MCCS else (fetch (FONTDESCRIPTOR FONTFAMILY) of FONT]) (SPEC (create FONTSPEC FSFAMILY _ (ffetch FONTFAMILY of FONT) @@ -1813,24 +1817,34 @@ (\FINDFONTFILE [LAMBDA (FAMILY SIZE FACE ROTATION DEVICE CHARSET DIRLST EXTLST) + (* ; "Edited 3-Dec-2025 23:38 by rmk") (* ; "Edited 9-Jun-2025 09:40 by rmk") (* ; "Edited 15-May-2025 22:41 by rmk") (* ; "Edited 14-Sep-96 10:53 by rmk:") (* ; "Edited 6-Oct-89 11:18 by bvm") + (* ;; "This doesn't call FINDFILE because the hyphens separating the family from the face would get confused with the hyphen in TEDIT-STREAM file names.") + + (CL:UNLESS DIRLST + (SETQ DIRLST (CONS NIL))) + (* ;; "Find any font file on any directory with any naming convention with any extension. Note that ROTATION and DEVICE are just place holders. DEVICE is irrelevant because DIRLST already incorporates the device information. The variable *OLD-FONT-EXTENSIONS* can be set to suppress using the old-style lookup. If set to a list of extensions, just those will be looked up with old-style conventions.") - (for EXT FONTFILE inside EXTLST - when (SETQ FONTFILE (FINDFILE (if (FMEMB EXT *OLD-FONT-EXTENSIONS*) - then (\FONTFILENAME.OLD FAMILY SIZE FACE EXT CHARSET) - else (\FONTFILENAME FAMILY SIZE FACE EXT CHARSET)) - T DIRLST)) collect FONTFILE finally + (for EXT FONTFILE inside EXTLST join (SETQ FONTFILE (if (FMEMB EXT *OLD-FONT-EXTENSIONS*) + then (\FONTFILENAME.OLD FAMILY SIZE FACE + EXT CHARSET) + else (\FONTFILENAME FAMILY SIZE FACE EXT + CHARSET))) + (for DIR FOUND inside DIRLST + when (SETQ FOUND (INFILEP (PACKFILENAME.STRING + 'DIRECTORY DIR 'BODY FONTFILE) + )) collect FOUND) + finally - (* ;; - "Backward compatibility for devices that expect a single file") + (* ;; "Backward compatibility for devices that expect a single file") - (CL:UNLESS (CDR $$VAL) - (RETURN (CAR $$VAL)))]) + (CL:UNLESS (CDR $$VAL) + (RETURN (CAR $$VAL)))]) (\FONTFILENAMES [LAMBDA (FAMILY SIZE FACE DEVICE EXTENSIONS) (* ; "Edited 7-Oct-2025 12:21 by rmk") @@ -4583,44 +4597,44 @@ (ADDTOVAR LAMA FONTCOPY) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (12144 21857 (CHARWIDTH 12154 . 12939) (CHARWIDTHY 12941 . 14458) (STRINGWIDTH 14460 . -15553) (\CHARWIDTH.DISPLAY 15555 . 15968) (\STRINGWIDTH.DISPLAY 15970 . 16394) (\STRINGWIDTH.GENERIC -16396 . 21855)) (21858 28378 (DEFAULTFONT 21868 . 23153) (FONTCLASS 23155 . 25317) (FONTCLASSUNPARSE -25319 . 26218) (FONTCLASSCOMPONENT 26220 . 26808) (SETFONTCLASSCOMPONENT 26810 . 27252) ( -GETFONTCLASSCOMPONENT 27254 . 28376)) (30091 47595 (FONTCREATE 30101 . 33346) (FONTCREATE1 33348 . -35963) (FONTCREATE.SLUGFD 35965 . 37447) (\FONT.CHECKARGS1 37449 . 41972) (\FONTCREATE1.NOFN 41974 . -42188) (FONTFILEP 42190 . 43078) (\READCHARSET 43080 . 47593)) (47596 54672 (\FONT.CHECKARGS 47606 . -54355) (\CHARSET.CHECK 54357 . 54670)) (54673 57933 (COERCEFONTSPEC 54683 . 57931)) (60003 61342 ( -MAKEFONTSPEC 60013 . 61340)) (61343 69520 (COMPLETE.FONT 61353 . 63876) (COMPLETEFONTP 63878 . 64501) -(COMPLETE.CHARSET 64503 . 67188) (PRUNESLUGCSINFOS 67190 . 68115) (MONOSPACEFONTP 68117 . 69518)) ( -69559 77480 (FONTASCENT 69569 . 69953) (FONTDESCENT 69955 . 70440) (FONTHEIGHT 70442 . 70844) ( -FONTPROP 70846 . 76757) (\AVGCHARWIDTH 76759 . 77478)) (78137 79045 (FONTDEVICEPROP 78147 . 79043)) ( -79091 79945 (EDITCHAR 79101 . 79943)) (79991 92181 (GETCHARBITMAP 80001 . 81125) (PUTCHARBITMAP 81127 - . 83285) (\GETCHARBITMAP.CSINFO 83287 . 85303) (\PUTCHARBITMAP.CSINFO 85305 . 92179)) (92182 112662 ( -MOVECHARBITMAP 92192 . 94086) (MOVEFONTCHARS 94088 . 98048) (\MOVEFONTCHAR 98050 . 102893) ( -\MOVEFONTCHARS.SOURCEDATA 102895 . 109000) (\MAKESLUGCHAR 109002 . 111537) (SLUGCHARP.DISPLAY 111539 - . 112660)) (113595 134168 (FONTFILES 113605 . 115438) (\FINDFONTFILE 115440 . 117157) (\FONTFILENAMES - 117159 . 118154) (\FONTFILENAME 118156 . 122139) (\FONTFILENAME.OLD 122141 . 125090) ( -\FONTFILENAME.NEW 125092 . 127349) (FONTSPECFROMFILENAME 127351 . 131887) (\FONTINFOFROMFILENAME.OLD -131889 . 134166)) (134435 170238 (FONTCOPY 134445 . 139508) (FONTP 139510 . 139809) (FONTUNPARSE -139811 . 141530) (SETFONTDESCRIPTOR 141532 . 142996) (\STREAMCHARWIDTH 142998 . 147162) ( -\COERCECHARSET 147164 . 149759) (\BUILDSLUGCSINFO 149761 . 153384) (\FONTSYMBOL 153386 . 154036) ( -\DEVICESYMBOL 154038 . 154907) (\FONTFACE 154909 . 162099) (\FONTFACE.COLOR 162101 . 169021) ( -SETFONTCHARENCODING 169023 . 170236)) (170239 190538 (FONTSAVAILABLE 170249 . 175603) (FONTEXISTS? -175605 . 179583) (\SEARCHFONTFILES 179585 . 182670) (FLUSHFONTCACHE 182672 . 184895) (FLUSHFONTSINCORE - 184897 . 185094) (FINDFONTFILES 185096 . 188310) (SORTFONTSPECS 188312 . 190536)) (190539 194148 ( -MATCHFONTFACE 190549 . 191364) (MAKEFONTFACE 191366 . 192392) (FONTFACETOATOM 192394 . 194146)) ( -194779 195271 (\UNITWIDTHSVECTOR 194789 . 195269)) (209865 211932 (FONTDESCRIPTOR.DEFPRINT 209875 . -211454) (FONTCLASS.DEFPRINT 211456 . 211930)) (215761 218551 (\CREATEKERNELEMENT 215771 . 216129) ( -\FSETLEFTKERN 216131 . 216622) (\FGETLEFTKERN 216624 . 218549)) (218552 228188 (\CREATEFONT 218562 . -220001) (\CREATECHARSET 220003 . 223939) (\INSTALLCHARSETINFO 223941 . 227275) ( -\INSTALLCHARSETINFO.CHARENCODING 227277 . 228186)) (228510 229874 (\FONTRESETCHARWIDTHS 228520 . -229872)) (230504 240551 (\CREATEDISPLAYFONT 230514 . 232363) (\CREATECHARSET.DISPLAY 232365 . 238074) -(\FONTEXISTS?.DISPLAY 238076 . 240549)) (240552 255417 (STRIKEFONT.FILEP 240562 . 241450) ( -STRIKEFONT.GETCHARSET 241452 . 247044) (WRITESTRIKEFONTFILE 247046 . 251957) (STRIKECSINFO 251959 . -255415)) (255448 271765 (MAKEBOLD.CHARSET 255458 . 259107) (MAKEBOLD.CHAR 259109 . 260861) ( -MAKEITALIC.CHARSET 260863 . 264536) (MAKEITALIC.CHAR 264538 . 266884) (\SFMAKEBOLD 266886 . 269110) ( -\SFMAKEITALIC 269112 . 271763)) (271766 275915 (\SFMAKEROTATEDFONT 271776 . 273177) (\SFROTATECSINFO -273179 . 273816) (\SFROTATEFONTCHARACTERS 273818 . 274198) (\SFROTATECSINFOOFFSETS 274200 . 275913)) ( -275916 277297 (\SFMAKECOLOR 275926 . 277295))))) + (FILEMAP (NIL (12148 21861 (CHARWIDTH 12158 . 12943) (CHARWIDTHY 12945 . 14462) (STRINGWIDTH 14464 . +15557) (\CHARWIDTH.DISPLAY 15559 . 15972) (\STRINGWIDTH.DISPLAY 15974 . 16398) (\STRINGWIDTH.GENERIC +16400 . 21859)) (21862 28382 (DEFAULTFONT 21872 . 23157) (FONTCLASS 23159 . 25321) (FONTCLASSUNPARSE +25323 . 26222) (FONTCLASSCOMPONENT 26224 . 26812) (SETFONTCLASSCOMPONENT 26814 . 27256) ( +GETFONTCLASSCOMPONENT 27258 . 28380)) (30095 47599 (FONTCREATE 30105 . 33350) (FONTCREATE1 33352 . +35967) (FONTCREATE.SLUGFD 35969 . 37451) (\FONT.CHECKARGS1 37453 . 41976) (\FONTCREATE1.NOFN 41978 . +42192) (FONTFILEP 42194 . 43082) (\READCHARSET 43084 . 47597)) (47600 54676 (\FONT.CHECKARGS 47610 . +54359) (\CHARSET.CHECK 54361 . 54674)) (54677 57937 (COERCEFONTSPEC 54687 . 57935)) (60007 61346 ( +MAKEFONTSPEC 60017 . 61344)) (61347 69524 (COMPLETE.FONT 61357 . 63880) (COMPLETEFONTP 63882 . 64505) +(COMPLETE.CHARSET 64507 . 67192) (PRUNESLUGCSINFOS 67194 . 68119) (MONOSPACEFONTP 68121 . 69522)) ( +69563 77818 (FONTASCENT 69573 . 69957) (FONTDESCENT 69959 . 70444) (FONTHEIGHT 70446 . 70848) ( +FONTPROP 70850 . 77095) (\AVGCHARWIDTH 77097 . 77816)) (78475 79383 (FONTDEVICEPROP 78485 . 79381)) ( +79429 80283 (EDITCHAR 79439 . 80281)) (80329 92519 (GETCHARBITMAP 80339 . 81463) (PUTCHARBITMAP 81465 + . 83623) (\GETCHARBITMAP.CSINFO 83625 . 85641) (\PUTCHARBITMAP.CSINFO 85643 . 92517)) (92520 113000 ( +MOVECHARBITMAP 92530 . 94424) (MOVEFONTCHARS 94426 . 98386) (\MOVEFONTCHAR 98388 . 103231) ( +\MOVEFONTCHARS.SOURCEDATA 103233 . 109338) (\MAKESLUGCHAR 109340 . 111875) (SLUGCHARP.DISPLAY 111877 + . 112998)) (113933 135098 (FONTFILES 113943 . 115776) (\FINDFONTFILE 115778 . 118087) (\FONTFILENAMES + 118089 . 119084) (\FONTFILENAME 119086 . 123069) (\FONTFILENAME.OLD 123071 . 126020) ( +\FONTFILENAME.NEW 126022 . 128279) (FONTSPECFROMFILENAME 128281 . 132817) (\FONTINFOFROMFILENAME.OLD +132819 . 135096)) (135365 171168 (FONTCOPY 135375 . 140438) (FONTP 140440 . 140739) (FONTUNPARSE +140741 . 142460) (SETFONTDESCRIPTOR 142462 . 143926) (\STREAMCHARWIDTH 143928 . 148092) ( +\COERCECHARSET 148094 . 150689) (\BUILDSLUGCSINFO 150691 . 154314) (\FONTSYMBOL 154316 . 154966) ( +\DEVICESYMBOL 154968 . 155837) (\FONTFACE 155839 . 163029) (\FONTFACE.COLOR 163031 . 169951) ( +SETFONTCHARENCODING 169953 . 171166)) (171169 191468 (FONTSAVAILABLE 171179 . 176533) (FONTEXISTS? +176535 . 180513) (\SEARCHFONTFILES 180515 . 183600) (FLUSHFONTCACHE 183602 . 185825) (FLUSHFONTSINCORE + 185827 . 186024) (FINDFONTFILES 186026 . 189240) (SORTFONTSPECS 189242 . 191466)) (191469 195078 ( +MATCHFONTFACE 191479 . 192294) (MAKEFONTFACE 192296 . 193322) (FONTFACETOATOM 193324 . 195076)) ( +195709 196201 (\UNITWIDTHSVECTOR 195719 . 196199)) (210795 212862 (FONTDESCRIPTOR.DEFPRINT 210805 . +212384) (FONTCLASS.DEFPRINT 212386 . 212860)) (216691 219481 (\CREATEKERNELEMENT 216701 . 217059) ( +\FSETLEFTKERN 217061 . 217552) (\FGETLEFTKERN 217554 . 219479)) (219482 229118 (\CREATEFONT 219492 . +220931) (\CREATECHARSET 220933 . 224869) (\INSTALLCHARSETINFO 224871 . 228205) ( +\INSTALLCHARSETINFO.CHARENCODING 228207 . 229116)) (229440 230804 (\FONTRESETCHARWIDTHS 229450 . +230802)) (231434 241481 (\CREATEDISPLAYFONT 231444 . 233293) (\CREATECHARSET.DISPLAY 233295 . 239004) +(\FONTEXISTS?.DISPLAY 239006 . 241479)) (241482 256347 (STRIKEFONT.FILEP 241492 . 242380) ( +STRIKEFONT.GETCHARSET 242382 . 247974) (WRITESTRIKEFONTFILE 247976 . 252887) (STRIKECSINFO 252889 . +256345)) (256378 272695 (MAKEBOLD.CHARSET 256388 . 260037) (MAKEBOLD.CHAR 260039 . 261791) ( +MAKEITALIC.CHARSET 261793 . 265466) (MAKEITALIC.CHAR 265468 . 267814) (\SFMAKEBOLD 267816 . 270040) ( +\SFMAKEITALIC 270042 . 272693)) (272696 276845 (\SFMAKEROTATEDFONT 272706 . 274107) (\SFROTATECSINFO +274109 . 274746) (\SFROTATEFONTCHARACTERS 274748 . 275128) (\SFROTATECSINFOOFFSETS 275130 . 276843)) ( +276846 278227 (\SFMAKECOLOR 276856 . 278225))))) STOP diff --git a/sources/FONT.LCOM b/sources/FONT.LCOM index 767c19f914d1cfabd66278e912f339a480b448a4..c2b3814b358ea407af6ddfb4ebd68c089ad308b9 100644 GIT binary patch delta 1918 zcmZuy-ES0C6yMpFvNWaX*4k)W;n)ypV_IhJeC{U7-p<_Z4$RIBJJZ7ALJKas$OAqY zUyL@0ArUYLqw-*oijw$X!j@$X^5H)Cp!L5XAwKiwixSVw?3QBLec1DT&%NjOJNwVw!T@L68X66I2TbpLw$ z^z`&NRFA%Yyb8~W7v=HE-if?vF}=j7&kPuU-jTsYZZswFKs14nU=KH@=Nym=75>c)YDJrvY|r_;ki%E(nSOW|7V^$Mryv zGvN8?En+$kVRHua^pffNP6-4-U7wjDV6Z%$v-~iw@$vQ_ULS=#WT2?)UUV;7G%b^P zlaTyqb5}5Nco}{yB=N%yyc4$j_|{9g)t)q$2#vS9K3Pe87CbsU;Viatt7FY_u3GI0 z!&Z|A`g=p+N-IjMs~z(|Wd1s~zM5MLAB^pB_}M@|QeC>fI>ZgoYJBe1R<61_bbaN? zmDQoOX0Ekum(Z5vR-T;iMBjR$6aH1(buli}$vD+EpV*l3UfadJ8|+$m+YlwFn3lz6 zsWnYYvmj=~=#kx$go7qNKD1o`)hU&Hz!Bwt&<9W8sx0g^(!GccRC(LDn>A zkJ+^I4#=|9(LInQ0X&^r3}ivUq0O5*V+UPod!}Q9lo8st1I(N)_#h!9;vmm*Tm}-R z$9kUXs1kmu<2Mg6yhLWrjRVL2u@}!}I*3mTMJhpbMS>7tdmXk!UX5@A1iSek?g%~% zwS32C2Yn!l3i-Xy0+T2_97NFV03t~nvWXhK1haL=Fzs0&g4FI8a5FU0NB`Qs^yQXB zB9*^UtBoA%Yt8njg|0#~Wmc2R+(6g&g}b#+3*6m8@{YN8F$Ch+H#s`9mu=k?D(BY8 z_ws3)vYLIx7=gdk?{(d<76w|ivlfRxR`Py?94E&AzP>OYPfk=4&F=c23;iv-+3WPz zMvgqF-*@_V{#ySzF@ZY+aHO~+kgUi+m+JdM&89^*jbsh4r14O}>)AR1MTSa5zIF)6 z!Ku^3FAIVIGmcRPfydjMC8i^z%OLT=!_;uF`^;eD=IJvjTq@k(1Br%x?iiQ)uyJxR zY%pk^zdSC+RlRa?#<36)Vz?*p=xMfpj#?p*8z(MIaH1AHKMsmT;PMayGOVc};)02` zO}u6Nvdg^2&Ch=y-;F0f8cZa5@HKVg#MX%7>4*J=YP2w7!rj`_O7rQssXO%xyLK7+ z49!LQaI*6)H^WWxPn2OqzD8}Ok6Y4^15PR0RUrsHkdRb!cEkWxfC_b8W*Y<~q=-j7 z&q4gE@|q~BYa)-Aj{^uMc0^GD8##?jROOMr$a38;;&L=`YPd=V5wa1@H4!Z8`5-I7 zrpC@8gs$z_$SPTg1)^!e@`I5sM1A<1Bua4Y!Dx;kc`6>GCB4uYuZK`pH#{dAV+MJ2 zo|;y;{{6r2DQB=ZsSp>&MDhoWmKuFmPvhG>Z;ixxE Ka>wm|5B&$c2Kr0@ delta 1605 zcmZux%WoTH5cfJxnxxPqZKxo1lTj2^F(}sVw@;gwzpOvoOV+zv?>bJRkT%Fb00}rC z1VSQGqZUNNBdibyBnTA}2ZZEgV~Ij(E=VXB{shDcaf3rI9H^Mxbsm)LY34W2Z{|1a zZ>GNdJoQmynB=CcS6-hYJdr_A@*>I0xs8_|84aij^9aGXzbLV5B^tr0CRC}EbQs0JfDd+z<`rsKE7UTBx3YKLam3H<)r9xm+l z3~`AN+^*kk;5fJQ%^BMCdyO|E;AaciaDM z>46u6z2SobUlf{q!#B3>ev4R=+q(NTZFVZ3+3lFNI;L-8!+yl|4t(|h5$he(HUHA3 z=N{!1STszNm8qGfwK9l`9L>b3*$#-Z1iJ0agD7aRKvV)%R-Fcd3+TIiepSv%k-ukG zb=@slAS*m{mSI>W8)O`EM|VNS@wz%S8AzIjJDxRk#^xMqxrS|lq=+4?!Hjan0||*0 zJGrLqU=W7KdWq@`#2i`Ow;KzntHOb~YM9tI_ToBB2k|gbr1CUAd)z2#Fw zG*xN$8qMS;H`wgDacgCbyH!bkXI>5olm4s_lJ|aeO(fnsBEL{N8A9z;>!%-{YWK~o zj4a%2-JH4beQPH%i9|0MRx!LD-o!sk=RVOEhKZ?I45x;8RF$sLFyvLHrD zPCXFu0QOOl2Mdn^e;SI4{KqrVy(<2d3=nt~N~dwU(Vb{KnAG(^7X4p>3j=sHmTlp{ zB{>v)*a1%U=}x)}`RISx|Iot(X|m`tTGK20D{_JGT0}ON&Qik+w-18mZ`@ALglolG nhX%^?NMS)%JL@ozZZ&k5d9W=czQB{1;GOF{ Date: Thu, 4 Dec 2025 18:04:48 -0800 Subject: [PATCH 2/2] SPREADFONTSPEC using FONTSPEC declaration --- sources/FONT | 101 +++++++++++++++++++++++----------------------- sources/FONT.LCOM | Bin 69651 -> 69751 bytes 2 files changed, 51 insertions(+), 50 deletions(-) diff --git a/sources/FONT b/sources/FONT index 436f15b13..1abd8385f 100644 --- a/sources/FONT +++ b/sources/FONT @@ -1,10 +1,11 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED " 3-Dec-2025 23:42:55" {WMEDLEY}FONT.;640 281223 +(FILECREATED " 4-Dec-2025 09:46:06" {WMEDLEY}FONT.;644 281393 :EDIT-BY rmk - :CHANGES-TO (FNS \FINDFONTFILE) + :CHANGES-TO (MACROS SPREADFONTSPEC) + (FNS \FINDFONTFILE) :PREVIOUS-DATE " 2-Dec-2025 16:01:58" {WMEDLEY}FONT.;639) @@ -973,18 +974,18 @@ ) (DECLARE%: EVAL@COMPILE -(PUTPROPS SPREADFONTSPEC MACRO [(FONTSPEC) - (LET ((FS FONTSPEC)) +(PUTPROPS SPREADFONTSPEC MACRO [(FSPEC) + (LET ((FS FSPEC)) - (* ;; "Unwrap a FONTSPEC sequentially") + (* ;; "Unwrap a FONTSPEC ") (CL:WHEN (type? FONTDESCRIPTOR FS) (SETQ FS (FONTPROP FS 'SPEC))) - (SETQ FAMILY (pop FS)) - (SETQ SIZE (pop FS)) - (SETQ FACE (pop FS)) - (SETQ ROTATION (pop FS)) - (SETQ DEVICE (pop FS]) + (SETQ FAMILY (fetch (FONTSPEC FSFAMILY) of FS)) + (SETQ SIZE (fetch (FONTSPEC FSSIZE) of FS)) + (SETQ FACE (fetch (FONTSPEC FSFACE) of FS)) + (SETQ ROTATION (fetch (FONTSPEC FSROTATION) of FS)) + (SETQ DEVICE (fetch (FONTSPEC FSDEVICE) of FS FS]) ) (DEFINEQ @@ -4597,44 +4598,44 @@ (ADDTOVAR LAMA FONTCOPY) ) (DECLARE%: DONTCOPY - (FILEMAP (NIL (12148 21861 (CHARWIDTH 12158 . 12943) (CHARWIDTHY 12945 . 14462) (STRINGWIDTH 14464 . -15557) (\CHARWIDTH.DISPLAY 15559 . 15972) (\STRINGWIDTH.DISPLAY 15974 . 16398) (\STRINGWIDTH.GENERIC -16400 . 21859)) (21862 28382 (DEFAULTFONT 21872 . 23157) (FONTCLASS 23159 . 25321) (FONTCLASSUNPARSE -25323 . 26222) (FONTCLASSCOMPONENT 26224 . 26812) (SETFONTCLASSCOMPONENT 26814 . 27256) ( -GETFONTCLASSCOMPONENT 27258 . 28380)) (30095 47599 (FONTCREATE 30105 . 33350) (FONTCREATE1 33352 . -35967) (FONTCREATE.SLUGFD 35969 . 37451) (\FONT.CHECKARGS1 37453 . 41976) (\FONTCREATE1.NOFN 41978 . -42192) (FONTFILEP 42194 . 43082) (\READCHARSET 43084 . 47597)) (47600 54676 (\FONT.CHECKARGS 47610 . -54359) (\CHARSET.CHECK 54361 . 54674)) (54677 57937 (COERCEFONTSPEC 54687 . 57935)) (60007 61346 ( -MAKEFONTSPEC 60017 . 61344)) (61347 69524 (COMPLETE.FONT 61357 . 63880) (COMPLETEFONTP 63882 . 64505) -(COMPLETE.CHARSET 64507 . 67192) (PRUNESLUGCSINFOS 67194 . 68119) (MONOSPACEFONTP 68121 . 69522)) ( -69563 77818 (FONTASCENT 69573 . 69957) (FONTDESCENT 69959 . 70444) (FONTHEIGHT 70446 . 70848) ( -FONTPROP 70850 . 77095) (\AVGCHARWIDTH 77097 . 77816)) (78475 79383 (FONTDEVICEPROP 78485 . 79381)) ( -79429 80283 (EDITCHAR 79439 . 80281)) (80329 92519 (GETCHARBITMAP 80339 . 81463) (PUTCHARBITMAP 81465 - . 83623) (\GETCHARBITMAP.CSINFO 83625 . 85641) (\PUTCHARBITMAP.CSINFO 85643 . 92517)) (92520 113000 ( -MOVECHARBITMAP 92530 . 94424) (MOVEFONTCHARS 94426 . 98386) (\MOVEFONTCHAR 98388 . 103231) ( -\MOVEFONTCHARS.SOURCEDATA 103233 . 109338) (\MAKESLUGCHAR 109340 . 111875) (SLUGCHARP.DISPLAY 111877 - . 112998)) (113933 135098 (FONTFILES 113943 . 115776) (\FINDFONTFILE 115778 . 118087) (\FONTFILENAMES - 118089 . 119084) (\FONTFILENAME 119086 . 123069) (\FONTFILENAME.OLD 123071 . 126020) ( -\FONTFILENAME.NEW 126022 . 128279) (FONTSPECFROMFILENAME 128281 . 132817) (\FONTINFOFROMFILENAME.OLD -132819 . 135096)) (135365 171168 (FONTCOPY 135375 . 140438) (FONTP 140440 . 140739) (FONTUNPARSE -140741 . 142460) (SETFONTDESCRIPTOR 142462 . 143926) (\STREAMCHARWIDTH 143928 . 148092) ( -\COERCECHARSET 148094 . 150689) (\BUILDSLUGCSINFO 150691 . 154314) (\FONTSYMBOL 154316 . 154966) ( -\DEVICESYMBOL 154968 . 155837) (\FONTFACE 155839 . 163029) (\FONTFACE.COLOR 163031 . 169951) ( -SETFONTCHARENCODING 169953 . 171166)) (171169 191468 (FONTSAVAILABLE 171179 . 176533) (FONTEXISTS? -176535 . 180513) (\SEARCHFONTFILES 180515 . 183600) (FLUSHFONTCACHE 183602 . 185825) (FLUSHFONTSINCORE - 185827 . 186024) (FINDFONTFILES 186026 . 189240) (SORTFONTSPECS 189242 . 191466)) (191469 195078 ( -MATCHFONTFACE 191479 . 192294) (MAKEFONTFACE 192296 . 193322) (FONTFACETOATOM 193324 . 195076)) ( -195709 196201 (\UNITWIDTHSVECTOR 195719 . 196199)) (210795 212862 (FONTDESCRIPTOR.DEFPRINT 210805 . -212384) (FONTCLASS.DEFPRINT 212386 . 212860)) (216691 219481 (\CREATEKERNELEMENT 216701 . 217059) ( -\FSETLEFTKERN 217061 . 217552) (\FGETLEFTKERN 217554 . 219479)) (219482 229118 (\CREATEFONT 219492 . -220931) (\CREATECHARSET 220933 . 224869) (\INSTALLCHARSETINFO 224871 . 228205) ( -\INSTALLCHARSETINFO.CHARENCODING 228207 . 229116)) (229440 230804 (\FONTRESETCHARWIDTHS 229450 . -230802)) (231434 241481 (\CREATEDISPLAYFONT 231444 . 233293) (\CREATECHARSET.DISPLAY 233295 . 239004) -(\FONTEXISTS?.DISPLAY 239006 . 241479)) (241482 256347 (STRIKEFONT.FILEP 241492 . 242380) ( -STRIKEFONT.GETCHARSET 242382 . 247974) (WRITESTRIKEFONTFILE 247976 . 252887) (STRIKECSINFO 252889 . -256345)) (256378 272695 (MAKEBOLD.CHARSET 256388 . 260037) (MAKEBOLD.CHAR 260039 . 261791) ( -MAKEITALIC.CHARSET 261793 . 265466) (MAKEITALIC.CHAR 265468 . 267814) (\SFMAKEBOLD 267816 . 270040) ( -\SFMAKEITALIC 270042 . 272693)) (272696 276845 (\SFMAKEROTATEDFONT 272706 . 274107) (\SFROTATECSINFO -274109 . 274746) (\SFROTATEFONTCHARACTERS 274748 . 275128) (\SFROTATECSINFOOFFSETS 275130 . 276843)) ( -276846 278227 (\SFMAKECOLOR 276856 . 278225))))) + (FILEMAP (NIL (12190 21903 (CHARWIDTH 12200 . 12985) (CHARWIDTHY 12987 . 14504) (STRINGWIDTH 14506 . +15599) (\CHARWIDTH.DISPLAY 15601 . 16014) (\STRINGWIDTH.DISPLAY 16016 . 16440) (\STRINGWIDTH.GENERIC +16442 . 21901)) (21904 28424 (DEFAULTFONT 21914 . 23199) (FONTCLASS 23201 . 25363) (FONTCLASSUNPARSE +25365 . 26264) (FONTCLASSCOMPONENT 26266 . 26854) (SETFONTCLASSCOMPONENT 26856 . 27298) ( +GETFONTCLASSCOMPONENT 27300 . 28422)) (30137 47641 (FONTCREATE 30147 . 33392) (FONTCREATE1 33394 . +36009) (FONTCREATE.SLUGFD 36011 . 37493) (\FONT.CHECKARGS1 37495 . 42018) (\FONTCREATE1.NOFN 42020 . +42234) (FONTFILEP 42236 . 43124) (\READCHARSET 43126 . 47639)) (47642 54718 (\FONT.CHECKARGS 47652 . +54401) (\CHARSET.CHECK 54403 . 54716)) (54719 57979 (COERCEFONTSPEC 54729 . 57977)) (60177 61516 ( +MAKEFONTSPEC 60187 . 61514)) (61517 69694 (COMPLETE.FONT 61527 . 64050) (COMPLETEFONTP 64052 . 64675) +(COMPLETE.CHARSET 64677 . 67362) (PRUNESLUGCSINFOS 67364 . 68289) (MONOSPACEFONTP 68291 . 69692)) ( +69733 77988 (FONTASCENT 69743 . 70127) (FONTDESCENT 70129 . 70614) (FONTHEIGHT 70616 . 71018) ( +FONTPROP 71020 . 77265) (\AVGCHARWIDTH 77267 . 77986)) (78645 79553 (FONTDEVICEPROP 78655 . 79551)) ( +79599 80453 (EDITCHAR 79609 . 80451)) (80499 92689 (GETCHARBITMAP 80509 . 81633) (PUTCHARBITMAP 81635 + . 83793) (\GETCHARBITMAP.CSINFO 83795 . 85811) (\PUTCHARBITMAP.CSINFO 85813 . 92687)) (92690 113170 ( +MOVECHARBITMAP 92700 . 94594) (MOVEFONTCHARS 94596 . 98556) (\MOVEFONTCHAR 98558 . 103401) ( +\MOVEFONTCHARS.SOURCEDATA 103403 . 109508) (\MAKESLUGCHAR 109510 . 112045) (SLUGCHARP.DISPLAY 112047 + . 113168)) (114103 135268 (FONTFILES 114113 . 115946) (\FINDFONTFILE 115948 . 118257) (\FONTFILENAMES + 118259 . 119254) (\FONTFILENAME 119256 . 123239) (\FONTFILENAME.OLD 123241 . 126190) ( +\FONTFILENAME.NEW 126192 . 128449) (FONTSPECFROMFILENAME 128451 . 132987) (\FONTINFOFROMFILENAME.OLD +132989 . 135266)) (135535 171338 (FONTCOPY 135545 . 140608) (FONTP 140610 . 140909) (FONTUNPARSE +140911 . 142630) (SETFONTDESCRIPTOR 142632 . 144096) (\STREAMCHARWIDTH 144098 . 148262) ( +\COERCECHARSET 148264 . 150859) (\BUILDSLUGCSINFO 150861 . 154484) (\FONTSYMBOL 154486 . 155136) ( +\DEVICESYMBOL 155138 . 156007) (\FONTFACE 156009 . 163199) (\FONTFACE.COLOR 163201 . 170121) ( +SETFONTCHARENCODING 170123 . 171336)) (171339 191638 (FONTSAVAILABLE 171349 . 176703) (FONTEXISTS? +176705 . 180683) (\SEARCHFONTFILES 180685 . 183770) (FLUSHFONTCACHE 183772 . 185995) (FLUSHFONTSINCORE + 185997 . 186194) (FINDFONTFILES 186196 . 189410) (SORTFONTSPECS 189412 . 191636)) (191639 195248 ( +MATCHFONTFACE 191649 . 192464) (MAKEFONTFACE 192466 . 193492) (FONTFACETOATOM 193494 . 195246)) ( +195879 196371 (\UNITWIDTHSVECTOR 195889 . 196369)) (210965 213032 (FONTDESCRIPTOR.DEFPRINT 210975 . +212554) (FONTCLASS.DEFPRINT 212556 . 213030)) (216861 219651 (\CREATEKERNELEMENT 216871 . 217229) ( +\FSETLEFTKERN 217231 . 217722) (\FGETLEFTKERN 217724 . 219649)) (219652 229288 (\CREATEFONT 219662 . +221101) (\CREATECHARSET 221103 . 225039) (\INSTALLCHARSETINFO 225041 . 228375) ( +\INSTALLCHARSETINFO.CHARENCODING 228377 . 229286)) (229610 230974 (\FONTRESETCHARWIDTHS 229620 . +230972)) (231604 241651 (\CREATEDISPLAYFONT 231614 . 233463) (\CREATECHARSET.DISPLAY 233465 . 239174) +(\FONTEXISTS?.DISPLAY 239176 . 241649)) (241652 256517 (STRIKEFONT.FILEP 241662 . 242550) ( +STRIKEFONT.GETCHARSET 242552 . 248144) (WRITESTRIKEFONTFILE 248146 . 253057) (STRIKECSINFO 253059 . +256515)) (256548 272865 (MAKEBOLD.CHARSET 256558 . 260207) (MAKEBOLD.CHAR 260209 . 261961) ( +MAKEITALIC.CHARSET 261963 . 265636) (MAKEITALIC.CHAR 265638 . 267984) (\SFMAKEBOLD 267986 . 270210) ( +\SFMAKEITALIC 270212 . 272863)) (272866 277015 (\SFMAKEROTATEDFONT 272876 . 274277) (\SFROTATECSINFO +274279 . 274916) (\SFROTATEFONTCHARACTERS 274918 . 275298) (\SFROTATECSINFOOFFSETS 275300 . 277013)) ( +277016 278397 (\SFMAKECOLOR 277026 . 278395))))) STOP diff --git a/sources/FONT.LCOM b/sources/FONT.LCOM index c2b3814b358ea407af6ddfb4ebd68c089ad308b9..eb207a1933e4ecd332194dad1a029cfc69b44248 100644 GIT binary patch delta 2100 zcmaJ?U1%Le6wY2_)cc@lTHA&sJ-vwD#3t^{&i>p;t=qkGlcjriZ+12@k!U3)MG*X> zJ}BZ9d=kW12gLYd@WDqh+(MhiwlUz7ZzA;BQt{mv1w}oxKe;z)@MX@KIX`peeBaE- z_5MHB`#)J2WE1t3^Al93Cg`;(W=-kVrB_aB?9%6N9AuNj+VFi0s6&jJJgp6nl$)*> zM*>7E=5Db4QgxIh0CN zhBKwq*=P-w+B$_MZ=T^Xm^Blc?pa=B2a}Q12Bx6{pLYW=bt_w8c5Y%;Zem7ZDtrvg zmqr1JJ^sM*z7(G5lPadPkhnlR&Sq9>C6A{Bu2KjDM zeK^M};0aW#4FL_gmB672Lg)ok&&}`-*v?l;bFI6FF&;2u|eIdVWj~>3-ENPofWau>Nos=10l}76~_eCu56=L9JRor^69P73L!d#kvHSU*fDVQ)QvABJQR350jAyg z;r+jl+U%u>P;MZXd#2U1z;{I)T#we1>+C{7C01u&bzT&O@` z7A7y+!3YE43K4l=;JqnS!`xMop7|=pz(O?`gl;@7fLIQAQ4nx1Y0d?SkL|>^$nQGN zpy^<VWjC$9$e6$-vgL+6xcGu{4)_c57&onJ^9%ADnUABRhRjlaJl1 z^%Mmrl^Q?90*0QGEkyF>-8%b%Kv$i0uwtRn1-dopO z59-*PR)#wzx-@Uphw$zMb0U3eJ=dGz835HI*HQHk?RodD-A{^QLsk(-)&&l~1-m=T zV5C$pfFk(&6o}&gP(YG_Mws43jVMB^yI1(&q40a!_oz6SBa)Br=o2Z72sOgUdMdym lk_PoWF}5u~*wK%h3O1_S8EiI61QUOl6jV#^{IugX{{v{$A6fta delta 1947 zcmah~J#1V>5M~b(A{P{3xX4)XU?Jrk#pdn4f1_Z%yxa3V{QkIoIcyXqBFF_I3XYOU z1PSa^P-1OE0!2hY2M8`mcI^19P(T;aq)rh*jf4aeQDENR-T4%WW@mP0c6Rpr=FR)- z#)!Nz^4ZdJ>P&s*of)Pu9hf?&u{mAec<&fdHa@@bIG>y#6HhC^EXtUiClgOKLII=l z1EP1nCEtZ)U7n7QzY;;^40O-D(2al;`k?`Rd_bQ-y|WXKSJtQj0S`{_78r^RfwRaP zQJ9FByP)fO<^x^RfVUkVbf)AM%_>})S-3R4boF8|Uv^3@gVi#jS|(JN%4lYpc{DTC z{0^p};v{Y}EvVtR9HBDcRDVZ{tC><Vwho-IY)uo{X|qVQ-}N{sZ|S5r=jNa1ZuU0fb=DDF9Eo? za^dpI`AhGApcAjPOrYd3Jo!h-ciAmH$ZrAaj5mJ znK6TD*w~5^C-EXoHxymxZ4Y5h&7DK-N7Lj>SzSL|4Jx-c1A^;Tw%*Ft?LfZ1e%@8# zloQ81tTUh*MK-*!o-yM294L~x--4v3-u$At6~$m^@}G4824UnjofcLN7R!S8Qo=)l zbqdh!&Z}1+R>^PDx>lQPRyNN*(QT4cRth;%$OGM`{OH=(M3XOHpMA;9+e3Jv8?`vt zX@M#5#okgn7q5#dc_4rO{_^BvWgF8jl2ld-Ia0_2-NnxG4{fq$Q4mop$+F-#AwV+? zI2opBY9^*H!O-wK5{?j&3#zI2RMqUMidw1+4;Ha$M~6;pK>#%sa3kO6ZW5gI6Avg= zpdn{(T4RQSV1*nso#qO&EP3~r@h6$Za%mX3WVZbE=Ge3eUf?Wnk+irIB+D@uz$nc? z7EasoeCI^UmSv}>j!{D&ayg2kP@s74KKQ7vc9I`I93e;K-L1n_zp}IG6I{2l^;Wia zefe_xNu7 zOo~vPv(6}!U+mV2Dev!ANk;3l)V5%5KW|qz$MAjzb9~7YN!mU75LbrTS?XGZ%*&0v z|Nn&U?fpAx4)bJaJrZ@TpbY!94+mp*e^*e(`jp`yFWJNMCHgr(RAYUDDCWuMdck3e zyEV+Wg*AM7hs~HNVc1nEVFUN$5j8t9Fh@*V{(eWnmmysYe@7WzCQ4)thjz9#SjYIu G3H}3{mJ)0L