1
0
mirror of synced 2026-01-27 04:41:54 +00:00
Files
Interlisp.medley/docs/primer/24-GLOBAL-VARIABLES.TEDIT
2020-12-13 17:04:48 -07:00

51 lines
29 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
1
Medley for the Novice, Release 2.0
1
Medley for the Novice, Release 2.0
24. GLOSSARY OF GLOBAL SYSTYEM VARIABLES
1
24. GLOSSARY OF GLOBAL SYSTYEM VARIABLES
1
"24"24. GLOSSARY OF GLOBAL SYSTEM VARIABLES
6
As you can tell by now, there are many system variables in Medley that are useful to know. The following sections gather many of the important variables together into groups relating to directory searching, system flags, history lists, system menus, windows, and, of course, the catchall miscellaneous category.
Directories
1
DISPLAYFONTDIRECTORIES(DISPLAYFONTDIRECTORIES (Variable) NIL NIL ("24") 1)
Its value is a list of directories to search for the bitmap files for display fonts. Usually, it contains the FONT directory where you copies the bitmap files (see Chapter 16), and the current connected directory. The current connected directory is specified by the atom NIL. Here is an example value of DISPLAYFONTDIRECTORIES.
ff¦ðÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÀ À À À À À À À À À À À À À À À À ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿ¿ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüþÿý·àûƒƒ¿÷ß`x{ì`pØø?ÿïÿÿÿÿo°þààÿÿÿÿÿÿÿüú¾ûý÷ï{}½¿÷îï÷¹ï½ïo·ýï¾÷}Ûý÷ûßÿïÿÿÿÿg¾÷ûíþßoÿÿÿÿÿÿüü~ÿš﻽¿ëîïïÚï½÷o·ûÿ½û}ÛýÿûÜxîãÅÇk¾÷ûíþßïÿÿÿÿÿÿüú¿¹·ï»‡½¿ëõàïÛo½÷o°;ÿ½û}ØûÛ·mݹ»m¾ð;íþáïÿÿÿÿÿÿüþÿ÷½·ï»ûƒ¿ÝûïïÛo½÷`wûÿ½ûÛÿïø>7ëñ½ƒÿm¾÷øþþàÿÿÿÿÿÿÿüÿÿû½·ï»ý¿¿ÁûïïÛ¯½÷o·ûÿ½û}Ûÿ÷ûù·åͽ¿ÿn¾÷ûíþÿoÿÿÿÿÿÿÿüÿþû¹·ï{}¿¿¾ûï÷»Ï½ïo·ýï¾÷}Ûý÷ûû·nݹ»ÿo>÷ûíþßoÿÿÿÿÿÿÿüÿÿŹàûƒ¿<C692>¾ûïø{_ûüXïbÅÇo¾ðìàïÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ½ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÃÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÀ À À À À À@À À‚‚D À‡øÀ À‚‚"H @A@ Á"P #8pàB
 €âLJ8q`Cˆ„,XpáÅ<C3A1><8q`‚€ Áp!$L<>DˆD"@ñ"&<>@H2d‰&D<>@ Á H#D€ðD>@<40>""a"@øÃäD@ Á"H ˆD<>B <20>""DE"@€"D Á"D BdHD‰A"<10>"Hˆ&<>DE2@‰$D À€D !£ˆ8pð@<40>
€â!‡q`CÂ,@páÄC q À€  À@À À À À À ÀÀ ÀD À‡øÀ€à@€  À"H @A@@  À"P #8pàB
 €âLJ8q`Cˆ„,D°!Ë,4   Àp!$L<>DˆD"@ñ"&<>@H2DÈ DL2L À H#D€ðD>@<40>""a"Dˆ C"D À"H ˆD<>B <20>""DE"Dˆ @ˆ"D À"D BdHD‰A"<10>"Hˆ&<>DE2LÈ DH"L@ ÀD !£ˆ8pð@<40>
€â!‡q`CÂ,4° Cˆ"4€ À   ÀÀ 8 À À À À ÀÀ ÀD À‡øÀ8€  À"H @A@@ € À"P #8pàB
 €âLJ8q`Cˆ„,XqcÄK  @ Àp!$L<>DˆD"@ñ"&<>@H2dL"@ À H#D€ðD>@<40>""a"@HŸ>@ À"H ˆD<>B <20>""DE"@H<>  @ À"D BdHD‰A"<10>"Hˆ&<>DE2@"ˆ"@@ ÀD !£ˆ8pð@<40>
€â!‡q`CÂ,@ˆŽ À  ÀÀ  À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À À ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿüÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü
Figure 24.1. Value for the Atom DISPLAYFONTDIRECTORIES
INTERPRESSFONTDIRECTORIES(INTERPRESSFONTDIRECTORIES (Variable) NIL NIL ("24") 1)
Is set to a list of directories to search for the font width files for InterPress fonts.
DIRECTORIES(DIRECTORIES (Variable) NIL NIL ("24") 1)
This variable is bound to a list of the directories you will be using (see Figure 24-2). The system uses this variable when it is trying to find a file to load. It checks each directory in the list, until the file is found. NIL in list means to check the current connected directory.
LISPUSERSDIRECTORIES(LISPUSERSDIRECTORIES (Variable) NIL NIL ("24") 1)
Its value is a list of directories to search for library package files.
Flags
1
(DWIMIFYCOMPFLG (Flag) NIL NIL ("24") 2)DWIMIFYCOMPFLG
This flag, if set to T, will cause all expressions to be completely dwinified before the expression is compiled (see Chapter 9). In this state, when the system does not recognize a function of keyword, it will compare the word to a system maintained list to determine whether the word is a macro, CLISP word, or misspelled user-defined variable.
An example of swinifying before compilation is to convert an IF call to a COND. before they are compiled. Undwimified expressions can cause inaccurate compilation. This flag is set by the system to NIL. Normally, you want this set to T. For more information on DWIM, refer to the IRM.
SYSPRETTYFLAG(SYSPRETTYFLAG (Flag) NIL NIL ("24") 2)
When set to T, all lists returned to the executive window are pretty printed. This flag is originally set by the system to NIL.
CLISPIFTRANFLG(CLISPIFTRANFLG (Flag) NIL NIL ("24") 2)
When set to T, keeps the IF expression, rather than the COND translation in your code.
PRETTYTABFLG(PRETTYTABFLG (Flag) NIL NIL ("24") 2)
When set to T, the pretty printer puts out a tab character rather than several spaces to try to make code align. If NIL, it uses space characters instead.
FONTCHANGEFLG(FONTCHANGEFLG (Flag) NIL NIL ("24") 2)
If NIL, then when pretty printing no font changes will happen (e.g., a smaller font for comments, bold for clip words, and so forth). The default is the atom ALL, so different fonts are used where appropriate.
AUTOBACKTRACEFLG(AUTOBACKTRACEFLG (Flag) NIL NIL ("24") 2)
There are many possible values for this variable. They affect when the back trace window appears with the break window, and how much detail is included in it. The values of this variable include:
ÿÿïf NIL, its initial value. The back trace window is not brought up when an error is generated, until you open it yourself.
ïf ÿT, which means that the back trace BT window is opened for error breaks
ÿÿïf BT! brings up a back trace window with more detail, BT!, window for error breaks
ïf ALWAYS brings up a backtrace BT window for both error breaks, and breaks caused by calling the function BREAK
ïf ALWAYS! brings up a backtrace window with more detail, BT!, for both error breaks and breaks caused by calling the functionÿ
NOSPELLFLG(NOSPELLFLG (Flag) NIL NIL ("24") 3)
Is initially bound to NIL, so that DWIM tries to correct all spelling errors, whether they are in a form you just typed in or within a function being run. If the variable is T, then no spelling correction is performed. This variable is automatically reset to T when you are compiling a file. If it has some other non-NIL value, then spelling correction is only performed on type-in.
History Lists
1
LISPXHISTORY(LISPXHISTORY (Variable) NIL NIL ("24") 3)
Originally set to the list (NIL 0 30 100), with the following argument interpretation. The NIL is the list (implemented as a circular queue) to which the top level commands append. 0 is the current prompt number. 30 is the maximum length of the history list. 100 is the highest number used as a prompt. This is a system maintained list used by the programmers assistant commands REDO, UNDO, FIX, and ?? use to retrieve past function calls.
To delete the history list, reset the variable LISPXHISTORY to its original value of (NIL 0 30 100).
Setting this variable to NIL disables all the programmers assistant features.
EDITHISTORY(EDITHISTORY (Variable) NIL NIL ("24") 3)
This is also set to (NIL 0 30 100), and has the same description as LISPXHISTORY. This list allows you to UNDO edits. You reset this the same way as LISPXHISTORY.
System Menus
1
System menus(SYSTEM% MENUS NIL System% menus NIL ("24") 3) are all bound to global varieables and are easy to modyfy. If the menu name is set to the NIL value, the menu will be recreated using an items list bound to a global variable.
To change a system menu, edit the items list bound to the appropriate global variable (system menus use this items list with the default WHENSELECTEDFN), then set the value of the name to NIL. The next time you need the menu, it will be created from the items list you just edited. The names of system menus and the items lists follow.
BackgroundMenu(SYSTEM% MENUS NIL System% menus NIL ("24") 3 SUBNAME BACKGROUND% MENU SUBTEXT Background% Menu)
This is the variable bound to the menu this displays when you press the right button in the grey background area of the screen.
BackgroundMenuCommands
This list is used for the list of ITEMS for the background menu when it is created.
WindowMenu(SYSTEM% MENUS NIL System% menus NIL ("24") 3 SUBNAME WINDOW% MENU SUBTEXT Window% Menu)
This is the variable bound to the default window menu displayed when the right mouse button is pressed inside of a window.
WindowMenuCommands
This is the list of ITEMS for the WindowMenu.
BreakMenu(SYSTEM% MENUS NIL System% menus NIL ("24") 4 SUBNAME BREAK% MENU SUBTEXT Break% Menu)
The menu displayed when the middle mouse button is pressed in a break window.
BreakMenuCommands
The list of ITEM for the BreakMenu.
Windows
1
PROMPTWINDOW
Global name of the prompt window.
T
Although the value T has several meanings (such as universal TRUE), it also stands for the standard output stream. As this is usually the executive window, it may be used as the name for the TTY Window at the top level. Mouse processes have their own TTY Windows. A reference to the window T in a mouse driven function (e.g., a WHENSELECTEFN, Chapter 12) will open a TTY Window for Mouse.
Miscellaneous
1
CLEANUPOPTION
This is a list of options that you set to automate clean-up after a work session. Example options are listing files, or recompilation. You will want to keep this set to NIL until you become comfortable with the machine.
FILELST
The list of all the files you loaded.
SYSFILES
The list of all the files you loaded for the SYSOUT file.
INITIALS
An atom you can bind to your name. If bound, the editor will add your name, in addition to the date, in the editor comment at the beginning of each function.
FIRSTNAME
If this variable is set, the system will use it to greet you personally when you log on to your machine.
INITIALSLST
A list of elements of the form (USERNAME . INITIALS) or (USERNAME FIRSTNAME INITIALS). This list is used by the function GREET to set your INITIALS, and your FIRSTNAME when you log in.
#CAREFULCOLUMNS
An integer. PRETTYPRINT estimates the number of characters in an atom, instead of computing it, for efficiency. Unfortunately, for very long atom names, errors can occur. #CAREFULCOLUMNS is the number of columns from the right within which PRETTYPRINT should compute the number of characters in each atom, to prevent these errors. Initially this is set to zero. PRETTYPRINT never computes the number of characters in an atom. If you set it to 20 or 30, when PRETTYPRINT comes within 20 or 30 columns of the right of the window, it will begin computing exactly how many characters are in each atom. This will prevent errors.
DWIMWAIT
Bound to the number of seconds DWIM should wait before it uses the default response, FIXSPELLDEFAULT, to answer its question.
FIXSPELLDEFAULT
Bound to either Y or N. Its value is used as the default answer to questions asked by DWIM that you don't answer in DWIMWAIT seconds. It is initially bound to Y, but is rebound to N when DWIMIFYing.
\TimeZoneComp
This is the global variable set to the absolute value of the time offset from Greenwich. For EST, \TimeZoneComp should be set to 5.
(LIST ((PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC "24-" "") STARTINGPAGE# 1) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD RIGHT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY HELVETICA OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC "24-" "")) (270 15 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGR) (54 27 558 36) NIL) (TEXT NIL NIL (54 54 504 690) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC "24-" "")) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD LEFT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY HELVETICA OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC "24-" "")) (54 15 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGV) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE VERSOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 684) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC "24-" "")) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD RIGHT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY HELVETICA OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC "24-" "")) (270 15 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGR) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE RECTOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 684) NIL))))).àTT-HHà
T,HHà
2HÌà
Ì2lxàx,llà-àT-àT,HHà
,HHà2àà5àÌàFøø PAGEHEADING VERSOHEADFøø PAGEHEADING RECTOHEADEøø PAGEHEADINGFOOTINGVEøø PAGEHEADINGFOOTINGR,
CLASSIC
TITAN
CLASSIC HELVETICAMODERN HELVETICACLASSIC
 HELVETICA
MODERN

TIMESROMAN
 HRULE.GETFNMODERN
 " HRULE.GETFNCLASSIC
#* HRULE.GETFNCLASSIC

)
 HRULE.GETFNCLASSIC

 
IM.CHAP.GETFN HELVETICA)  HRULE.GETFNMODERN

9  HRULE.GETFNCLASSIC
 4IM.INDEX.GETFN
ož
 BMOBJ.GETFN3CLASSIC
"
 7IM.INDEX.GETFN
Y )IM.INDEX.GETFN
ã9 2IM.INDEX.GETFN
H HRULE.GETFNCLASSIC
 (IM.INDEX.GETFNTITAN

,= z".
'IM.INDEX.GETFN o (IM.INDEX.GETFN   &IM.INDEX.GETFN h$
'IM.INDEX.GETFNÓ *IM.INDEX.GETFNÆ
ì
"#
b2

.



^
$IM.INDEX.GETFN
ˆU:? HRULE.GETFNCLASSIC
 *IM.INDEX.GETFN
3!./ 2 )IM.INDEX.GETFN
 # ( 
 HRULE.GETFNCLASSIC
 .IM.INDEX.GETFN\S »`IM.INDEX.GETFN "-
XIM.INDEX.GETFN{ VIM.INDEX.GETFN@
  
 HRULE.GETFNCLASSIC

" )

0 HRULE.GETFNCLASSIC
Þ & - Ÿ
i  &
   
 6 q V œ U A9  d XQ£zº