|
1 | 1 | (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) |
2 | 2 |
|
3 | | -(FILECREATED "29-Nov-2025 16:32:59" {WMEDLEY}<sources>FONT.;638 280293 |
| 3 | +(FILECREATED " 4-Dec-2025 09:46:06" {WMEDLEY}<sources>FONT.;644 281393 |
4 | 4 |
|
5 | 5 | :EDIT-BY rmk |
6 | 6 |
|
7 | | - :CHANGES-TO (VARS FONTCOMS) |
| 7 | + :CHANGES-TO (MACROS SPREADFONTSPEC) |
| 8 | + (FNS \FINDFONTFILE) |
8 | 9 |
|
9 | | - :PREVIOUS-DATE "28-Nov-2025 14:28:16" {WMEDLEY}<sources>FONT.;637) |
| 10 | + :PREVIOUS-DATE " 2-Dec-2025 16:01:58" {WMEDLEY}<sources>FONT.;639) |
10 | 11 |
|
11 | 12 |
|
12 | 13 | (PRETTYCOMPRINT FONTCOMS) |
|
973 | 974 | ) |
974 | 975 | (DECLARE%: EVAL@COMPILE |
975 | 976 |
|
976 | | -(PUTPROPS SPREADFONTSPEC MACRO [(FONTSPEC) |
977 | | - (LET ((FS FONTSPEC)) |
| 977 | +(PUTPROPS SPREADFONTSPEC MACRO [(FSPEC) |
| 978 | + (LET ((FS FSPEC)) |
978 | 979 |
|
979 | | - (* ;; "Unwrap a FONTSPEC sequentially") |
| 980 | + (* ;; "Unwrap a FONTSPEC ") |
980 | 981 |
|
981 | 982 | (CL:WHEN (type? FONTDESCRIPTOR FS) |
982 | 983 | (SETQ FS (FONTPROP FS 'SPEC))) |
983 | | - (SETQ FAMILY (pop FS)) |
984 | | - (SETQ SIZE (pop FS)) |
985 | | - (SETQ FACE (pop FS)) |
986 | | - (SETQ ROTATION (pop FS)) |
987 | | - (SETQ DEVICE (pop FS]) |
| 984 | + (SETQ FAMILY (fetch (FONTSPEC FSFAMILY) of FS)) |
| 985 | + (SETQ SIZE (fetch (FONTSPEC FSSIZE) of FS)) |
| 986 | + (SETQ FACE (fetch (FONTSPEC FSFACE) of FS)) |
| 987 | + (SETQ ROTATION (fetch (FONTSPEC FSROTATION) of FS)) |
| 988 | + (SETQ DEVICE (fetch (FONTSPEC FSDEVICE) of FS FS]) |
988 | 989 | ) |
989 | 990 | (DEFINEQ |
990 | 991 |
|
|
1143 | 1144 | (fetch (FONTDESCRIPTOR \SFHeight) of (FONTCREATE FONTSPEC]) |
1144 | 1145 |
|
1145 | 1146 | (FONTPROP |
1146 | | - [LAMBDA (FONT PROP) (* ; "Edited 2-Sep-2025 22:21 by rmk") |
| 1147 | + [LAMBDA (FONT PROP) (* ; "Edited 2-Dec-2025 16:01 by rmk") |
| 1148 | + (* ; "Edited 2-Sep-2025 22:21 by rmk") |
1147 | 1149 | (* ; "Edited 12-Aug-2025 21:10 by rmk") |
1148 | 1150 | (* ; "Edited 10-Aug-2025 13:28 by rmk") |
1149 | 1151 | (* ; "Edited 23-Jul-2025 17:01 by rmk") |
|
1178 | 1180 | elseif (MEMB (fetch (FONTDESCRIPTOR FONTFAMILY) of FONT) |
1179 | 1181 | ALTOFONTFAMILIES) |
1180 | 1182 | then 'ALTOTEXT |
| 1183 | + elseif (MEMB (fetch (FONTDESCRIPTOR FONTFAMILY) of FONT) |
| 1184 | + MCCSFONTFAMILIES) |
| 1185 | + then 'MCCS |
1181 | 1186 | else (fetch (FONTDESCRIPTOR FONTFAMILY) of FONT]) |
1182 | 1187 | (SPEC (create FONTSPEC |
1183 | 1188 | FSFAMILY _ (ffetch FONTFAMILY of FONT) |
|
1813 | 1818 |
|
1814 | 1819 | (\FINDFONTFILE |
1815 | 1820 | [LAMBDA (FAMILY SIZE FACE ROTATION DEVICE CHARSET DIRLST EXTLST) |
| 1821 | + (* ; "Edited 3-Dec-2025 23:38 by rmk") |
1816 | 1822 | (* ; "Edited 9-Jun-2025 09:40 by rmk") |
1817 | 1823 | (* ; "Edited 15-May-2025 22:41 by rmk") |
1818 | 1824 | (* ; "Edited 14-Sep-96 10:53 by rmk:") |
1819 | 1825 | (* ; "Edited 6-Oct-89 11:18 by bvm") |
1820 | 1826 |
|
| 1827 | + (* ;; "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.") |
| 1828 | + |
| 1829 | + (CL:UNLESS DIRLST |
| 1830 | + (SETQ DIRLST (CONS NIL))) |
| 1831 | + |
1821 | 1832 | (* ;; "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.") |
1822 | 1833 |
|
1823 | | - (for EXT FONTFILE inside EXTLST |
1824 | | - when (SETQ FONTFILE (FINDFILE (if (FMEMB EXT *OLD-FONT-EXTENSIONS*) |
1825 | | - then (\FONTFILENAME.OLD FAMILY SIZE FACE EXT CHARSET) |
1826 | | - else (\FONTFILENAME FAMILY SIZE FACE EXT CHARSET)) |
1827 | | - T DIRLST)) collect FONTFILE finally |
| 1834 | + (for EXT FONTFILE inside EXTLST join (SETQ FONTFILE (if (FMEMB EXT *OLD-FONT-EXTENSIONS*) |
| 1835 | + then (\FONTFILENAME.OLD FAMILY SIZE FACE |
| 1836 | + EXT CHARSET) |
| 1837 | + else (\FONTFILENAME FAMILY SIZE FACE EXT |
| 1838 | + CHARSET))) |
| 1839 | + (for DIR FOUND inside DIRLST |
| 1840 | + when (SETQ FOUND (INFILEP (PACKFILENAME.STRING |
| 1841 | + 'DIRECTORY DIR 'BODY FONTFILE) |
| 1842 | + )) collect FOUND) |
| 1843 | + finally |
1828 | 1844 |
|
1829 | | - (* ;; |
1830 | | - "Backward compatibility for devices that expect a single file") |
| 1845 | + (* ;; "Backward compatibility for devices that expect a single file") |
1831 | 1846 |
|
1832 | | - (CL:UNLESS (CDR $$VAL) |
1833 | | - (RETURN (CAR $$VAL)))]) |
| 1847 | + (CL:UNLESS (CDR $$VAL) |
| 1848 | + (RETURN (CAR $$VAL)))]) |
1834 | 1849 |
|
1835 | 1850 | (\FONTFILENAMES |
1836 | 1851 | [LAMBDA (FAMILY SIZE FACE DEVICE EXTENSIONS) (* ; "Edited 7-Oct-2025 12:21 by rmk") |
|
4583 | 4598 | (ADDTOVAR LAMA FONTCOPY) |
4584 | 4599 | ) |
4585 | 4600 | (DECLARE%: DONTCOPY |
4586 | | - (FILEMAP (NIL (12144 21857 (CHARWIDTH 12154 . 12939) (CHARWIDTHY 12941 . 14458) (STRINGWIDTH 14460 . |
4587 | | -15553) (\CHARWIDTH.DISPLAY 15555 . 15968) (\STRINGWIDTH.DISPLAY 15970 . 16394) (\STRINGWIDTH.GENERIC |
4588 | | -16396 . 21855)) (21858 28378 (DEFAULTFONT 21868 . 23153) (FONTCLASS 23155 . 25317) (FONTCLASSUNPARSE |
4589 | | -25319 . 26218) (FONTCLASSCOMPONENT 26220 . 26808) (SETFONTCLASSCOMPONENT 26810 . 27252) ( |
4590 | | -GETFONTCLASSCOMPONENT 27254 . 28376)) (30091 47595 (FONTCREATE 30101 . 33346) (FONTCREATE1 33348 . |
4591 | | -35963) (FONTCREATE.SLUGFD 35965 . 37447) (\FONT.CHECKARGS1 37449 . 41972) (\FONTCREATE1.NOFN 41974 . |
4592 | | -42188) (FONTFILEP 42190 . 43078) (\READCHARSET 43080 . 47593)) (47596 54672 (\FONT.CHECKARGS 47606 . |
4593 | | -54355) (\CHARSET.CHECK 54357 . 54670)) (54673 57933 (COERCEFONTSPEC 54683 . 57931)) (60003 61342 ( |
4594 | | -MAKEFONTSPEC 60013 . 61340)) (61343 69520 (COMPLETE.FONT 61353 . 63876) (COMPLETEFONTP 63878 . 64501) |
4595 | | -(COMPLETE.CHARSET 64503 . 67188) (PRUNESLUGCSINFOS 67190 . 68115) (MONOSPACEFONTP 68117 . 69518)) ( |
4596 | | -69559 77480 (FONTASCENT 69569 . 69953) (FONTDESCENT 69955 . 70440) (FONTHEIGHT 70442 . 70844) ( |
4597 | | -FONTPROP 70846 . 76757) (\AVGCHARWIDTH 76759 . 77478)) (78137 79045 (FONTDEVICEPROP 78147 . 79043)) ( |
4598 | | -79091 79945 (EDITCHAR 79101 . 79943)) (79991 92181 (GETCHARBITMAP 80001 . 81125) (PUTCHARBITMAP 81127 |
4599 | | - . 83285) (\GETCHARBITMAP.CSINFO 83287 . 85303) (\PUTCHARBITMAP.CSINFO 85305 . 92179)) (92182 112662 ( |
4600 | | -MOVECHARBITMAP 92192 . 94086) (MOVEFONTCHARS 94088 . 98048) (\MOVEFONTCHAR 98050 . 102893) ( |
4601 | | -\MOVEFONTCHARS.SOURCEDATA 102895 . 109000) (\MAKESLUGCHAR 109002 . 111537) (SLUGCHARP.DISPLAY 111539 |
4602 | | - . 112660)) (113595 134168 (FONTFILES 113605 . 115438) (\FINDFONTFILE 115440 . 117157) (\FONTFILENAMES |
4603 | | - 117159 . 118154) (\FONTFILENAME 118156 . 122139) (\FONTFILENAME.OLD 122141 . 125090) ( |
4604 | | -\FONTFILENAME.NEW 125092 . 127349) (FONTSPECFROMFILENAME 127351 . 131887) (\FONTINFOFROMFILENAME.OLD |
4605 | | -131889 . 134166)) (134435 170238 (FONTCOPY 134445 . 139508) (FONTP 139510 . 139809) (FONTUNPARSE |
4606 | | -139811 . 141530) (SETFONTDESCRIPTOR 141532 . 142996) (\STREAMCHARWIDTH 142998 . 147162) ( |
4607 | | -\COERCECHARSET 147164 . 149759) (\BUILDSLUGCSINFO 149761 . 153384) (\FONTSYMBOL 153386 . 154036) ( |
4608 | | -\DEVICESYMBOL 154038 . 154907) (\FONTFACE 154909 . 162099) (\FONTFACE.COLOR 162101 . 169021) ( |
4609 | | -SETFONTCHARENCODING 169023 . 170236)) (170239 190538 (FONTSAVAILABLE 170249 . 175603) (FONTEXISTS? |
4610 | | -175605 . 179583) (\SEARCHFONTFILES 179585 . 182670) (FLUSHFONTCACHE 182672 . 184895) (FLUSHFONTSINCORE |
4611 | | - 184897 . 185094) (FINDFONTFILES 185096 . 188310) (SORTFONTSPECS 188312 . 190536)) (190539 194148 ( |
4612 | | -MATCHFONTFACE 190549 . 191364) (MAKEFONTFACE 191366 . 192392) (FONTFACETOATOM 192394 . 194146)) ( |
4613 | | -194779 195271 (\UNITWIDTHSVECTOR 194789 . 195269)) (209865 211932 (FONTDESCRIPTOR.DEFPRINT 209875 . |
4614 | | -211454) (FONTCLASS.DEFPRINT 211456 . 211930)) (215761 218551 (\CREATEKERNELEMENT 215771 . 216129) ( |
4615 | | -\FSETLEFTKERN 216131 . 216622) (\FGETLEFTKERN 216624 . 218549)) (218552 228188 (\CREATEFONT 218562 . |
4616 | | -220001) (\CREATECHARSET 220003 . 223939) (\INSTALLCHARSETINFO 223941 . 227275) ( |
4617 | | -\INSTALLCHARSETINFO.CHARENCODING 227277 . 228186)) (228510 229874 (\FONTRESETCHARWIDTHS 228520 . |
4618 | | -229872)) (230504 240551 (\CREATEDISPLAYFONT 230514 . 232363) (\CREATECHARSET.DISPLAY 232365 . 238074) |
4619 | | -(\FONTEXISTS?.DISPLAY 238076 . 240549)) (240552 255417 (STRIKEFONT.FILEP 240562 . 241450) ( |
4620 | | -STRIKEFONT.GETCHARSET 241452 . 247044) (WRITESTRIKEFONTFILE 247046 . 251957) (STRIKECSINFO 251959 . |
4621 | | -255415)) (255448 271765 (MAKEBOLD.CHARSET 255458 . 259107) (MAKEBOLD.CHAR 259109 . 260861) ( |
4622 | | -MAKEITALIC.CHARSET 260863 . 264536) (MAKEITALIC.CHAR 264538 . 266884) (\SFMAKEBOLD 266886 . 269110) ( |
4623 | | -\SFMAKEITALIC 269112 . 271763)) (271766 275915 (\SFMAKEROTATEDFONT 271776 . 273177) (\SFROTATECSINFO |
4624 | | -273179 . 273816) (\SFROTATEFONTCHARACTERS 273818 . 274198) (\SFROTATECSINFOOFFSETS 274200 . 275913)) ( |
4625 | | -275916 277297 (\SFMAKECOLOR 275926 . 277295))))) |
| 4601 | + (FILEMAP (NIL (12190 21903 (CHARWIDTH 12200 . 12985) (CHARWIDTHY 12987 . 14504) (STRINGWIDTH 14506 . |
| 4602 | +15599) (\CHARWIDTH.DISPLAY 15601 . 16014) (\STRINGWIDTH.DISPLAY 16016 . 16440) (\STRINGWIDTH.GENERIC |
| 4603 | +16442 . 21901)) (21904 28424 (DEFAULTFONT 21914 . 23199) (FONTCLASS 23201 . 25363) (FONTCLASSUNPARSE |
| 4604 | +25365 . 26264) (FONTCLASSCOMPONENT 26266 . 26854) (SETFONTCLASSCOMPONENT 26856 . 27298) ( |
| 4605 | +GETFONTCLASSCOMPONENT 27300 . 28422)) (30137 47641 (FONTCREATE 30147 . 33392) (FONTCREATE1 33394 . |
| 4606 | +36009) (FONTCREATE.SLUGFD 36011 . 37493) (\FONT.CHECKARGS1 37495 . 42018) (\FONTCREATE1.NOFN 42020 . |
| 4607 | +42234) (FONTFILEP 42236 . 43124) (\READCHARSET 43126 . 47639)) (47642 54718 (\FONT.CHECKARGS 47652 . |
| 4608 | +54401) (\CHARSET.CHECK 54403 . 54716)) (54719 57979 (COERCEFONTSPEC 54729 . 57977)) (60177 61516 ( |
| 4609 | +MAKEFONTSPEC 60187 . 61514)) (61517 69694 (COMPLETE.FONT 61527 . 64050) (COMPLETEFONTP 64052 . 64675) |
| 4610 | +(COMPLETE.CHARSET 64677 . 67362) (PRUNESLUGCSINFOS 67364 . 68289) (MONOSPACEFONTP 68291 . 69692)) ( |
| 4611 | +69733 77988 (FONTASCENT 69743 . 70127) (FONTDESCENT 70129 . 70614) (FONTHEIGHT 70616 . 71018) ( |
| 4612 | +FONTPROP 71020 . 77265) (\AVGCHARWIDTH 77267 . 77986)) (78645 79553 (FONTDEVICEPROP 78655 . 79551)) ( |
| 4613 | +79599 80453 (EDITCHAR 79609 . 80451)) (80499 92689 (GETCHARBITMAP 80509 . 81633) (PUTCHARBITMAP 81635 |
| 4614 | + . 83793) (\GETCHARBITMAP.CSINFO 83795 . 85811) (\PUTCHARBITMAP.CSINFO 85813 . 92687)) (92690 113170 ( |
| 4615 | +MOVECHARBITMAP 92700 . 94594) (MOVEFONTCHARS 94596 . 98556) (\MOVEFONTCHAR 98558 . 103401) ( |
| 4616 | +\MOVEFONTCHARS.SOURCEDATA 103403 . 109508) (\MAKESLUGCHAR 109510 . 112045) (SLUGCHARP.DISPLAY 112047 |
| 4617 | + . 113168)) (114103 135268 (FONTFILES 114113 . 115946) (\FINDFONTFILE 115948 . 118257) (\FONTFILENAMES |
| 4618 | + 118259 . 119254) (\FONTFILENAME 119256 . 123239) (\FONTFILENAME.OLD 123241 . 126190) ( |
| 4619 | +\FONTFILENAME.NEW 126192 . 128449) (FONTSPECFROMFILENAME 128451 . 132987) (\FONTINFOFROMFILENAME.OLD |
| 4620 | +132989 . 135266)) (135535 171338 (FONTCOPY 135545 . 140608) (FONTP 140610 . 140909) (FONTUNPARSE |
| 4621 | +140911 . 142630) (SETFONTDESCRIPTOR 142632 . 144096) (\STREAMCHARWIDTH 144098 . 148262) ( |
| 4622 | +\COERCECHARSET 148264 . 150859) (\BUILDSLUGCSINFO 150861 . 154484) (\FONTSYMBOL 154486 . 155136) ( |
| 4623 | +\DEVICESYMBOL 155138 . 156007) (\FONTFACE 156009 . 163199) (\FONTFACE.COLOR 163201 . 170121) ( |
| 4624 | +SETFONTCHARENCODING 170123 . 171336)) (171339 191638 (FONTSAVAILABLE 171349 . 176703) (FONTEXISTS? |
| 4625 | +176705 . 180683) (\SEARCHFONTFILES 180685 . 183770) (FLUSHFONTCACHE 183772 . 185995) (FLUSHFONTSINCORE |
| 4626 | + 185997 . 186194) (FINDFONTFILES 186196 . 189410) (SORTFONTSPECS 189412 . 191636)) (191639 195248 ( |
| 4627 | +MATCHFONTFACE 191649 . 192464) (MAKEFONTFACE 192466 . 193492) (FONTFACETOATOM 193494 . 195246)) ( |
| 4628 | +195879 196371 (\UNITWIDTHSVECTOR 195889 . 196369)) (210965 213032 (FONTDESCRIPTOR.DEFPRINT 210975 . |
| 4629 | +212554) (FONTCLASS.DEFPRINT 212556 . 213030)) (216861 219651 (\CREATEKERNELEMENT 216871 . 217229) ( |
| 4630 | +\FSETLEFTKERN 217231 . 217722) (\FGETLEFTKERN 217724 . 219649)) (219652 229288 (\CREATEFONT 219662 . |
| 4631 | +221101) (\CREATECHARSET 221103 . 225039) (\INSTALLCHARSETINFO 225041 . 228375) ( |
| 4632 | +\INSTALLCHARSETINFO.CHARENCODING 228377 . 229286)) (229610 230974 (\FONTRESETCHARWIDTHS 229620 . |
| 4633 | +230972)) (231604 241651 (\CREATEDISPLAYFONT 231614 . 233463) (\CREATECHARSET.DISPLAY 233465 . 239174) |
| 4634 | +(\FONTEXISTS?.DISPLAY 239176 . 241649)) (241652 256517 (STRIKEFONT.FILEP 241662 . 242550) ( |
| 4635 | +STRIKEFONT.GETCHARSET 242552 . 248144) (WRITESTRIKEFONTFILE 248146 . 253057) (STRIKECSINFO 253059 . |
| 4636 | +256515)) (256548 272865 (MAKEBOLD.CHARSET 256558 . 260207) (MAKEBOLD.CHAR 260209 . 261961) ( |
| 4637 | +MAKEITALIC.CHARSET 261963 . 265636) (MAKEITALIC.CHAR 265638 . 267984) (\SFMAKEBOLD 267986 . 270210) ( |
| 4638 | +\SFMAKEITALIC 270212 . 272863)) (272866 277015 (\SFMAKEROTATEDFONT 272876 . 274277) (\SFROTATECSINFO |
| 4639 | +274279 . 274916) (\SFROTATEFONTCHARACTERS 274918 . 275298) (\SFROTATECSINFOOFFSETS 275300 . 277013)) ( |
| 4640 | +277016 278397 (\SFMAKECOLOR 277026 . 278395))))) |
4626 | 4641 | STOP |
0 commit comments