--- a/display.rc Sun Feb 11 17:36:29 1996 +0100
+++ b/display.rc Tue Feb 27 19:28:39 1996 +0100
@@ -83,8 +83,9 @@
map bindValue:#FocusPrevious to:#CmdCursorLeft. "experimental"
map bindValue:#FocusNext to:#AltCursorRight. "experimental"
map bindValue:#FocusPrevious to:#AltCursorLeft. "experimental"
-map bindValue:#FocusNext to:#CtrlCursorRight. "experimental"
-map bindValue:#FocusPrevious to:#CtrlCursorLeft. "experimental"
+map bindValue:#FocusNext to:#CtrlCursorRight. "experimental"
+map bindValue:#FocusPrevious to:#CtrlCursorLeft. "experimental"
+map bindValue:#FocusNext to:#CtrlTab. "experimental"
"/ cannot do this: otherwise tab character is lost ...
"/ map bindValue:#FilenameCompletion to:#Tab.
--- a/keyboard.rc Sun Feb 11 17:36:29 1996 +0100
+++ b/keyboard.rc Tue Feb 27 19:28:39 1996 +0100
@@ -16,26 +16,7 @@
* correct for your environment
*"
-|map macros|
-
-map := Display keyboardMap.
-
-"/ remove these 2 lines, if your keyboard has a COMPOSE-key.
-"/ None of our servers here has one - so we simulate it using CTRL-R ...
-"/ which on some (of our) servers comes pretranslated as Multi_key
-
-map bindValue:#Compose to:#'Control_R'.
-map bindValue:#Compose to:#'Multi_key'.
-map bindValue:#Compose to:#'Mode_switch'.
-
-
-"/ a kludge: some Xservers send #Delete for both the backspace
-"/ and the Delete key. In this case, we use the Backspace function
-"/ for both keys. If your Xserver does not do this (it should not)
-"/ remove or comment the following 'bindValue:#BackSpace'-line:
-"/
-
-map bindValue:#BackSpace to:#Delete.
+|macros|
"/
"/ define some keyboard macros as virtual function-keys:
@@ -46,13 +27,17 @@
"/ Cmd-F95: indents selection by 4
"/ Cmd-F94: undents selection by 4
"/
+
macros := Smalltalk at:#FunctionKeySequences.
macros isNil ifTrue:[
macros := IdentityDictionary new.
Smalltalk at:#FunctionKeySequences put:macros.
].
-"/ macro to replace selection by unix command
+"/
+"/ macro to replace a text selection by unix commands output
+"/
+
macros at:#F99 put:'
"replace selection by
corresponding
@@ -67,7 +52,9 @@
contents asString
]'.
+"/
"/ macro to toggle tabs
+"/
macros at:#F98 put:'
"toggle between 4-col
and 8-col tabs"
@@ -76,7 +63,9 @@
ifTrue:[self setTab8]
ifFalse:[self setTab4]'.
+"/
"/ macro to get next spelling error, and select it
+"/
macros at:#F97 put:'
|errs thisErr sl sc|
@@ -101,8 +90,10 @@
ifAbsent:[self device beep]
]'.
+"/
"/ macro to send contents to spell; remember spelling errors
"/ does not work on all systems (some do not have spell ...)
+"/
macros at:#F96 put:'
|p f s|
@@ -115,7 +106,9 @@
self information:''F7 positions on the next spelling error''.
'.
+"/
"/ macro to indent by 4
+"/
macros at:#F95 put:'
"indent selected line-range
by 4 spaces (i.e. to the right)"
@@ -134,7 +127,10 @@
]
]
'.
+
+"/
"/ macro to undent by 4
+"/
macros at:#F94 put:'
"undent selected line-range
by 4 spaces (i.e. to the left)"
@@ -155,6 +151,30 @@
]
]
'.
+!
+
+|map|
+
+map := Display keyboardMap.
+
+"/ remove these lines, if your keyboard has a COMPOSE-key.
+"/ None of our Xdisplays here has one - so we simulate it using CTRL-R ...
+"/ which on some (of our) servers comes pretranslated as Multi_key,
+"/ or even Mode_switch.
+
+map bindValue:#Compose to:#'Control_R'.
+map bindValue:#Compose to:#'Multi_key'.
+map bindValue:#Compose to:#'Mode_switch'.
+
+
+"/ a kludge: some Xservers send #Delete for both the backspace
+"/ and the Delete key. In this case, we use the Backspace function
+"/ for both keys. If your Xserver does not do this (it should not)
+"/ remove or comment the following 'bindValue:#BackSpace'-line:
+"/
+
+map bindValue:#BackSpace to:#Delete.
+
"/
"/ my personal preferences - comment it, if you do not like them
"/ bind function and other keys as:
--- a/smalltalk.rc Sun Feb 11 17:36:29 1996 +0100
+++ b/smalltalk.rc Tue Feb 27 19:28:39 1996 +0100
@@ -1,5 +1,6 @@
"/
"/ $Header$
+"/
"/ startup configuration for smalltalk
"/
"/ - everything in here are plain smalltalk expressions;
@@ -31,7 +32,7 @@
"/ allow definition of the systemPath from an environment variable
"/ for example, to only try files in a users home and /usr/local/lib/smalltalk,
"/ add the following in your shell-profile:
-"/ export STX_SYSTEMPATH=$HOME:/usr/local/lib/smalltalk
+"/ export STX_SYSTEMPATH=$HOME:/usr/local/lib/smalltalk
"/ notice, that shell variable names are NOT expanded again in STX_SYSTEMPATH
"/ Make certain that all relevant files are found along your path - you may see
"/ funny viewStyles, colors and stupid strings if wrong.
@@ -40,6 +41,40 @@
(path := OperatingSystem getEnvironment:'STX_SYSTEMPATH') notNil ifTrue:[
Smalltalk systemPath:(path asCollectionOfSubstringsSeparatedBy:$:)
].
+!
+
+|args|
+
+args := Smalltalk commandLineArguments.
+args last = '--buildClasses' ifTrue:[
+ 'binary' asFilename isDirectory ifFalse:[
+ 'no binary directory for classes.' printNL.
+ ] ifTrue:[
+ "/
+ "/ load all lazy classes
+ "/
+ Autoload subclasses do:[:aClass |
+ Autoload autoloadFailedSignal handle:[:ex |
+ 'autoload failed' printNL.
+ ex return.
+ ] do:[
+ 'loading ' print. aClass name print. ' ...' printNL.
+ aClass autoload.
+ ]
+ ].
+
+ "/
+ "/ binary save all classes
+ "/
+ Autoload loadedClasses do:[:cls |
+ 'saving binary of ' print. cls name print. ' ...' printNL.
+ cls binaryFileOut.
+ OperatingSystem executeCommand:'mv *.cls binary'.
+ ]
+ ].
+ Smalltalk exit
+].
+!
"/
"/ map Language variable setting to known and handled
@@ -267,3 +302,9 @@
"/ Processor activeProcess vmTrace:true.
!
+
+"/'st.img' asFilename exists ifFalse:[
+"/ 'saving initial image for faster future startup ...' infoPrintNL.
+"/ ObjectMemory primSnapShotOn:'st.img'
+"/].
+!