Skip to content

Commit 097f346

Browse files
authored
Rmk143 INITVARS command for MEDLEY-INIT-VARS, FLUSHFONTCACHE (#2383)
* loadup scripts: set MEDLEY-INIT-VARS to NOBIND before loading MEDLEYDIR so that INITVARS in MEDLEYDIR replaces any previous settings in the loadup-sysout * FONT: add cache for FONTSAVAILABLE, add FLUSHFONTCACHE. See FONTCODECHANGES.tedit * Make FONTEXISTS and FONTSAVAILABLE consistent
1 parent 17b6aae commit 097f346

File tree

9 files changed

+315
-341
lines changed

9 files changed

+315
-341
lines changed
980 Bytes
Binary file not shown.

library/UNIXUTILS

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
22

3-
(FILECREATED " 4-Nov-2025 10:11:10" {WMEDLEY}<library>UNIXUTILS.;34 18037
3+
(FILECREATED "26-Nov-2025 14:21:13" {WMEDLEY}<library>UNIXUTILS.;35 18084
44

55
:EDIT-BY rmk
66

7-
:CHANGES-TO (FNS SLASHIT)
7+
:CHANGES-TO (VARS UNIXUTILSCOMS)
88

9-
:PREVIOUS-DATE "22-Oct-2025 13:05:51" {WMEDLEY}<library>UNIXUTILS.;33)
9+
:PREVIOUS-DATE " 4-Nov-2025 10:11:10" {WMEDLEY}<library>UNIXUTILS.;34)
1010

1111

1212
(PRETTYCOMPRINT UNIXUTILSCOMS)
@@ -19,8 +19,8 @@
1919
(INITVARS (ShellBrowser)
2020
(ShellOpener))
2121
(FUNCTIONS ShellCommand ShellWhich)
22-
(ADDVARS (MEDLEY-INIT-VARS (ShellBrowser)
23-
(ShellOpener)))
22+
(ADDVARS (MEDLEY-INIT-VARS (ShellBrowser NIL RESET)
23+
(ShellOpener NIL RESET)))
2424
(FNS ShellBrowser ShellBrowse ShellOpener ShellOpen PROCESS-COMMAND SLASHIT UNIX-FILE-NAME)
2525
(PROPS (UNIXUTILS FILETYPE))))
2626
(DECLARE%: EVAL@COMPILE DONTCOPY
@@ -57,8 +57,8 @@
5757
(T (SETFILEPTR S 0)
5858
(RSTRING S])
5959

60-
(ADDTOVAR MEDLEY-INIT-VARS (ShellBrowser)
61-
(ShellOpener))
60+
(ADDTOVAR MEDLEY-INIT-VARS (ShellBrowser NIL RESET)
61+
(ShellOpener NIL RESET))
6262
(DEFINEQ
6363

6464
(ShellBrowser
@@ -327,7 +327,7 @@
327327

328328
(PUTPROPS UNIXUTILS FILETYPE CL:COMPILE-FILE)
329329
(DECLARE%: DONTCOPY
330-
(FILEMAP (NIL (1110 1483 (ShellCommand 1110 . 1483)) (1485 1882 (ShellWhich 1485 . 1882)) (1972 17959
331-
(ShellBrowser 1982 . 3754) (ShellBrowse 3756 . 4441) (ShellOpener 4443 . 6131) (ShellOpen 6133 . 11612
332-
) (PROCESS-COMMAND 11614 . 12227) (SLASHIT 12229 . 14684) (UNIX-FILE-NAME 14686 . 17957)))))
330+
(FILEMAP (NIL (1137 1510 (ShellCommand 1137 . 1510)) (1512 1909 (ShellWhich 1512 . 1909)) (2019 18006
331+
(ShellBrowser 2029 . 3801) (ShellBrowse 3803 . 4488) (ShellOpener 4490 . 6178) (ShellOpen 6180 . 11659
332+
) (PROCESS-COMMAND 11661 . 12274) (SLASHIT 12276 . 14731) (UNIX-FILE-NAME 14733 . 18004)))))
333333
STOP

library/UNIXUTILS.DFASL

22 Bytes
Binary file not shown.

scripts/loadups/loadup-init.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ main() {
1111
(* "make init files; this file is loaded as a 'greet' file by scripts/loadup-init.sh")
1212
1313
(SETQ MEDLEYDIR NIL)
14+
(SETATOMVAL (QUOTE MEDLEY-INIT-VARS) (QUOTE NOBIND))
1415
(LOAD (CONCAT (UNIX-GETENV "MEDLEYDIR") "/sources/MEDLEYDIR.LCOM"))
1516
(MEDLEY-INIT-VARS)
1617
(PUTASSOC (QUOTE MEDLEY) (LIST (UNIX-GETENV (QUOTE LOADUP_COMMIT_ID))) SYSOUTCOMMITS)

scripts/loadups/loadup-lisp-from-mid.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ main() {
1212
1313
(PROGN
1414
(SETQ LOADUP-SUCCESS NIL)
15+
(SETATOMVAL (QUOTE MEDLEY-INIT-VARS) (QUOTE NOBIND))
1516
(LOAD (CONCAT (QUOTE {DSK}) (UNIX-GETENV (QUOTE MEDLEYDIR)) (QUOTE /sources/MEDLEYDIR.LCOM)))
1617
(MEDLEY-INIT-VARS)
1718
(LOAD (CONCAT (QUOTE {DSK}) (UNIX-GETENV (QUOTE LOADUP_SOURCEDIR)) (QUOTE /LOADUP-LISP.LCOM)))

sources/FONT

Lines changed: 218 additions & 285 deletions
Large diffs are not rendered by default.

sources/FONT.LCOM

81 Bytes
Binary file not shown.

sources/MEDLEYDIR

Lines changed: 85 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
22

3-
(FILECREATED "23-Aug-2025 17:25:03" {DSK}<home>larry>il>medley>sources>MEDLEYDIR.;36 12210
3+
(FILECREATED "26-Nov-2025 21:51:39" {WMEDLEY}<sources>MEDLEYDIR.;43 15970
44

5-
:EDIT-BY "lmm"
5+
:EDIT-BY rmk
66

7-
:CHANGES-TO (FNS MEDLEYDIR)
7+
:CHANGES-TO (VARS MEDLEYDIRCOMS)
88

9-
:PREVIOUS-DATE "18-Aug-2025 11:19:10" {DSK}<home>larry>il>medley>sources>MEDLEYDIR.;34)
9+
:PREVIOUS-DATE "26-Nov-2025 17:12:16" {WMEDLEY}<sources>MEDLEYDIR.;42)
1010

1111

1212
(PRETTYCOMPRINT MEDLEYDIRCOMS)
@@ -25,7 +25,47 @@
2525

2626
(* ;; "**WARNING** The EVALed expressions get run early in the lodup.")
2727

28-
(VARS MEDLEY-INIT-VARS)
28+
29+
(* ;; "The INITVARS prevents this from accumulating entries from other files that happen to have been loaded when this is worked on and saved. The loadup scripts set MEDLEY-INIT-VARS to NOBIND to make sure that these are the initial values (as opposed to whatever there was in the startup sysout. But the FONT cache variables have to be specified here, because FONT is in the INIT and the resetting to NOBIND would wipe out these entries even if they were already correct in the init sysout.")
30+
31+
[INITVARS (MEDLEY-INIT-VARS '((\FONTEXISTS?-CACHE NIL RESET)
32+
(\FONTSAVAILABLEFILECACHE NIL RESET)
33+
[LISPUSERSDIRECTORIES (MEDLEYDIR '("library" "lispusers"
34+
"internal"
35+
"greetfiles"
36+
"doctools"]
37+
[LISPSOURCEDIRECTORIES (MEDLEYDIR '("sources"]
38+
(LISPSOURCEDIRECTORY (CAR LISPSOURCEDIRECTORIES))
39+
(IRM.HOST&DIR (MEDLEYDIR '"docs/dinfo"))
40+
(IRM.DINFOGRAPH)
41+
(DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES
42+
))
43+
(LOGINHOST/DIR (LET [(LHD (DIRECTORYNAME (OR (UNIX-GETENV
44+
"LOGINDIR")
45+
(UNIX-GETENV
46+
"HOME"]
47+
(AND (GETD 'PSEUDOHOSTS)
48+
(TARGETHOST 'LI)
49+
(PSEUDOHOST 'LI LHD))
50+
LHD)
51+
RESET)
52+
(USERGREETFILES [LIST (CONS LOGINHOST/DIR '("INIT" COM))
53+
(CONS LOGINHOST/DIR '("INIT"]
54+
RESET)
55+
(DISPLAYFONTDIRECTORIES (MEDLEYDIR '("fonts/medleydisplayfonts"
56+
"fonts/displayfonts")
57+
NIL NIL T))
58+
(POSTSCRIPTFONTDIRECTORIES (MEDLEYDIR '("fonts/postscriptfonts"
59+
)
60+
NIL NIL T))
61+
(INTERPRESSFONTDIRECTORIES (MEDLEYDIR '("fonts/ipfonts")
62+
NIL NIL T))
63+
(UNICODEDIRECTORIES (MEDLEYDIR '("unicode/xerox")
64+
NIL NIL T))
65+
(XCL::*WHERE-IS-CASH-FILES* (MEDLEYDIR '("loadups")
66+
"whereis.hash" NIL T))
67+
(LOADUPSDIRECTORIES (MEDLEYDIR '("loadups")
68+
NIL NIL T]
2969
(DECLARE%: EVAL@COMPILE DOCOPY (ADDVARS (GLOBALVARS MEDLEYDIR MEDLEY-INIT-VARS
3070
\SAVE.MEDLEYDIR DIRECTORIES SYSOUTCOMMITS])
3171

@@ -201,50 +241,49 @@
201241
(* ;; "**WARNING** The EVALed expressions get run early in the lodup.")
202242

203243

204-
(RPAQQ MEDLEY-INIT-VARS
205-
((ShellBrowser)
206-
(ShellOpener)
207-
[LISPUSERSDIRECTORIES (MEDLEYDIR '("library" "lispusers" "internal" "greetfiles" "doctools"]
208-
[LISPSOURCEDIRECTORIES (MEDLEYDIR '("sources"]
209-
(LISPSOURCEDIRECTORY (CAR LISPSOURCEDIRECTORIES))
210-
(IRM.HOST&DIR (MEDLEYDIR '"docs/dinfo"))
211-
(IRM.DINFOGRAPH)
212-
(DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES))
213-
(LOGINHOST/DIR (LET [(LHD (DIRECTORYNAME (OR (UNIX-GETENV "LOGINDIR")
214-
(UNIX-GETENV "HOME"]
215-
(AND (GETD 'PSEUDOHOSTS)
216-
(TARGETHOST 'LI)
217-
(PSEUDOHOST 'LI LHD))
218-
LHD))
219-
[USERGREETFILES (LIST (CONS LOGINHOST/DIR '("INIT" COM))
220-
(CONS LOGINHOST/DIR '("INIT"]
221-
(DISPLAYFONTDIRECTORIES (MEDLEYDIR '("fonts/medleydisplayfonts" "fonts/displayfonts")
222-
NIL NIL T))
223-
(POSTSCRIPTFONTDIRECTORIES (MEDLEYDIR '("fonts/postscriptfonts")
224-
NIL NIL T))
225-
(INTERPRESSFONTDIRECTORIES (MEDLEYDIR '("fonts/ipfonts")
226-
NIL NIL T))
227-
(UNICODEDIRECTORIES (MEDLEYDIR '("unicode/xerox")
228-
NIL NIL T))
229-
(LOGINHOST/DIR (LET [(LHD (DIRECTORYNAME (OR (UNIX-GETENV "LOGINDIR")
230-
(UNIX-GETENV "HOME"]
231-
(AND (GETD 'PSEUDOHOSTS)
232-
(TARGETHOST 'LI)
233-
(PSEUDOHOST 'LI LHD))
234-
LHD)
235-
RESET)
236-
(USERGREETFILES [LIST (CONS LOGINHOST/DIR '("INIT" COM))
237-
(CONS LOGINHOST/DIR '("INIT"]
238-
RESET)
239-
(XCL::*WHERE-IS-CASH-FILES* (MEDLEYDIR '("loadups")
240-
"whereis.hash" NIL T))
241-
(LOADUPSDIRECTORIES (MEDLEYDIR '("loadups")
242-
NIL NIL T))))
244+
245+
246+
(* ;;
247+
"The INITVARS prevents this from accumulating entries from other files that happen to have been loaded when this is worked on and saved. The loadup scripts set MEDLEY-INIT-VARS to NOBIND to make sure that these are the initial values (as opposed to whatever there was in the startup sysout. But the FONT cache variables have to be specified here, because FONT is in the INIT and the resetting to NOBIND would wipe out these entries even if they were already correct in the init sysout."
248+
)
249+
250+
251+
(RPAQ? MEDLEY-INIT-VARS
252+
'((\FONTEXISTS?-CACHE NIL RESET)
253+
(\FONTSAVAILABLEFILECACHE NIL RESET)
254+
[LISPUSERSDIRECTORIES (MEDLEYDIR '("library" "lispusers" "internal" "greetfiles" "doctools"]
255+
[LISPSOURCEDIRECTORIES (MEDLEYDIR '("sources"]
256+
(LISPSOURCEDIRECTORY (CAR LISPSOURCEDIRECTORIES))
257+
(IRM.HOST&DIR (MEDLEYDIR '"docs/dinfo"))
258+
(IRM.DINFOGRAPH)
259+
(DIRECTORIES (APPEND LISPUSERSDIRECTORIES LISPSOURCEDIRECTORIES))
260+
(LOGINHOST/DIR (LET [(LHD (DIRECTORYNAME (OR (UNIX-GETENV "LOGINDIR")
261+
(UNIX-GETENV "HOME"]
262+
(AND (GETD 'PSEUDOHOSTS)
263+
(TARGETHOST 'LI)
264+
(PSEUDOHOST 'LI LHD))
265+
LHD)
266+
RESET)
267+
(USERGREETFILES [LIST (CONS LOGINHOST/DIR '("INIT" COM))
268+
(CONS LOGINHOST/DIR '("INIT"]
269+
RESET)
270+
(DISPLAYFONTDIRECTORIES (MEDLEYDIR '("fonts/medleydisplayfonts" "fonts/displayfonts")
271+
NIL NIL T))
272+
(POSTSCRIPTFONTDIRECTORIES (MEDLEYDIR '("fonts/postscriptfonts")
273+
NIL NIL T))
274+
(INTERPRESSFONTDIRECTORIES (MEDLEYDIR '("fonts/ipfonts")
275+
NIL NIL T))
276+
(UNICODEDIRECTORIES (MEDLEYDIR '("unicode/xerox")
277+
NIL NIL T))
278+
(XCL::*WHERE-IS-CASH-FILES* (MEDLEYDIR '("loadups")
279+
"whereis.hash" NIL T))
280+
(LOADUPSDIRECTORIES (MEDLEYDIR '("loadups")
281+
NIL NIL T))))
243282
(DECLARE%: EVAL@COMPILE DOCOPY
244283

245284
(ADDTOVAR GLOBALVARS MEDLEYDIR MEDLEY-INIT-VARS \SAVE.MEDLEYDIR DIRECTORIES SYSOUTCOMMITS)
246285
)
247286
(DECLARE%: DONTCOPY
248-
(FILEMAP (NIL (1675 9578 (MEDLEY-INIT-VARS 1685 . 5163) (MEDLEYDIR 5165 . 8378) (MEDLEYSUBSTDIR 8380
249-
. 9358) (SET-SYSOUT-COMMIT 9360 . 9576)))))
287+
(FILEMAP (NIL (5329 13232 (MEDLEY-INIT-VARS 5339 . 8817) (MEDLEYDIR 8819 . 12032) (MEDLEYSUBSTDIR
288+
12034 . 13012) (SET-SYSOUT-COMMIT 13014 . 13230)))))
250289
STOP

sources/MEDLEYDIR.LCOM

1.41 KB
Binary file not shown.

0 commit comments

Comments
 (0)