*** empty log message ***
authorclaus
Tue, 09 Aug 1994 00:35:25 +0200
changeset 5 420e4af41733
parent 4 bf0b63015196
child 6 e62874de13a6
*** empty log message ***
d_portable.rc
d_sample_display.rc
d_sun.rc
display.rc
h_sample_host.rc
host.rc
smalltalk.rc
smalltalk_r.rc
--- a/d_portable.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/d_portable.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -1,9 +1,23 @@
 "*
  * $Header$
- * display configuration - for my portable-pc (gas plasma b&w vga / 8514 color)
+ *
+ * display configuration - for my portable-pc (gas plasma b&w vga or 8514 color)
  *"
 
+"*
+ * view style
+ *"
+" "
 View defaultStyle:#iris
+" "
+
+" 
+View defaultStyle:#mswindows
+" 
+
+" 
+View defaultStyle:#openwin
+" 
 !
 
 "*
@@ -32,6 +46,8 @@
 !
 "*
  * figure out if running on plasma or color display
+ * (the plasma display works with 640x480 only;
+ *  the 8514 has 1024x768 resolution)
  */"
 Display width == 640 ifTrue:[
     "*
--- a/d_sample_display.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/d_sample_display.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -5,30 +5,63 @@
  * this is a dummy script -
  * use this file as a guide for display-specific configurations
  * (see how display.rc figures out on what type of display we run)
+ *
+ * i.e. copy this file to d_<your_display_type>.rc and edit as needed
+ * see d_sun.rc, d_iris.rc etc. as examples
  *"
 
-"
-View defaultStyle:#next
-"
-"
-View defaultStyle:#iris
-"
-"
-View defaultStyle:#openwin
-"
-"
-View defaultStyle:#motif
-"
-"
-View defaultStyle:#view3D
-"
-"
-View defaultStyle:#normal
-"
+"*
+ * view style - uncomment the one you like most (I prefer #iris :-)
+ *"
+"View defaultStyle:#next"
+"View defaultStyle:#iris"
+"View defaultStyle:#openwin"
+"View defaultStyle:#motif"
+"View defaultStyle:#view3D"
+"View defaultStyle:#normal"
+"View defaultStyle:#mswindows"
+"View defaultStyle:#st80"
 
 "*
  * define keys/keyboard abbreviations etc. which are not handled by xmodmap
  *"
+|map|
+
+map := Display keyboardMap.
+
+"
+map bindValue:#Again to:#F1.   
+map bindValue:#Copy  to:#F2.   
+map bindValue:#Cut   to:#F3.   
+"
+
+"
+ * on some german keyboards, we get already translated characters
+ * (plus the ALT-key)
+ *"
+"
+map bindValue:$[ to:#'Alt['.
+map bindValue:$] to:#'Alt]'.
+map bindValue:${ to:#'Alt{'.
+map bindValue:$} to:#'Alt}'.
+map bindValue:$\ to:#'Alt\'.
+map bindValue:$| to:#'Alt|'.
+map bindValue:$@ to:#'Alt@'.
+"
+
+"
+ * on others, they come untranslated
+ * (plus the ALT-key)
+ *"
+"
+map bindValue:$[ to:#'Alt8'.
+map bindValue:$] to:#'Alt9'.
+map bindValue:${ to:#'Alt7'.
+map bindValue:$} to:#'Alt0'.
+map bindValue:$\ to:#'Alt?'.
+map bindValue:$| to:#'Alt<'.
+map bindValue:$@ to:#'Altq'.
+"
 !
 
 "*
@@ -80,8 +113,9 @@
 !
 
 "*
- * define if you have a b&w monitor connected to a
+ * uncomment if you have a b&w monitor connected to a
  * color server (which the server wouldn't know)
+ * try 'Display visualType' to see what X thinks.
  *"
 "Display hasColors:false"
 !
--- a/d_sun.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/d_sun.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -3,10 +3,22 @@
  * display configuration - sun
  *"
 
+"*
+ * view style - uncomment the one you like
+ *"
 "
 View defaultStyle:#openwin
 "
+
+"
 View defaultStyle:#iris
+"
+
+"
+View defaultStyle:#motif 
+"
+
+View defaultStyle:#normal 
 !
 
 "
@@ -30,5 +42,3 @@
 map bindValue:#Home  to:#F27.
 map bindValue:#End   to:#R13.
 !
-
-
--- a/display.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/display.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -1,12 +1,17 @@
 "*
  * $Header$
- * display related configuration
- * first do some common setup, then try to find a
- * display specific initialization file.
+ *
+ * DONT add site specific things here - use your own d_xxx.rc file instead
+ *
+ * display related configuration:
+ *   first do some common setup, then try to find a
+ *   display specific initialization file.
  *"
 
 "*
  * key bindings common to all display types
+ * use event monitor, to see what the Xserver sends us;
+ * put display-specific stuff into a d_hostName.rc file.
  *"
 |map|
 
@@ -27,6 +32,7 @@
 
 map bindValue:#Accept    to:#Cmda.
 map bindValue:#Explain   to:#Cmde.
+map bindValue:#Explain   to:#Cmdh.
 
 map bindValue:#BeginOfLine to:#Ctrla.
 map bindValue:#EndOfLine   to:#Ctrle.
@@ -38,6 +44,19 @@
 map bindValue:#SelectToEnd to:#CtrlE.           "that is ctrl-shift-e"
 map bindValue:#SelectFromBeginning to:#CtrlA.   "that is ctrl-shift-a"
 
+"
+ * on some german keyboards, the x-server does NOT correctly
+ * xlate characters ....
+ *"
+"
+map bindValue:$[ to:#'Alt['.
+map bindValue:$] to:#'Alt]'.
+map bindValue:${ to:#'Alt{'.
+map bindValue:$} to:#'Alt}'.
+map bindValue:$\ to:#'Alt\'.
+map bindValue:$| to:#'Alt|'.
+"
+
 "*
  * international characters - map to iso8859 values
  *"
@@ -64,6 +83,199 @@
 !
 
 "*
+ * mouse-button translation
+ *
+ * the default translation is #(1 2 3) (i.e. identity).
+ * If you dont want the 3rd button (some x-servers dont produce button2-
+ * but button3-events instead), uncomment the following line:
+ * (this translates the 3rd button into 2nd button).
+ *"
+"/ XWorkstation buttonTranslation:#(1 2 2)
+
+"*
+ * lefthanders can uncomment this:
+ *"
+"/ XWorkstation buttonTranslation:#(3 2 1)
+
+"*
+ * or:
+ * (notice, that this is usually already done for you in the Xserver's configuration).
+ *"
+"/ XWorkstation buttonTranslation:#(2 2 1)
+
+"*
+ * you can also use symbolic buttons:
+ * (allowed are #select #menu and #paste)
+ *
+ * the following line puts paste onto the right button (as in xterm):
+ *"
+XWorkstation buttonTranslation:#(select #menu #paste)
+
+"*
+ * while that one puts the pop-up menu both on the middle and right buttons:
+ *"
+"/ XWorkstation buttonTranslation:#(select #menu #menu)
+!
+
+
+"*
+ * define extensions for image files
+ * moved this from code to here (from Image-class), for more flexibility
+ * actually since this is not display- but host specific (naming conventions)
+ * it should be moved into the host.rc or h_xxx.rc file
+ *"
+|formats|
+
+formats := Image fileFormats.
+formats at:'.xbm'  put:XBMReader.
+formats at:'.tiff' put:TIFFReader.
+formats at:'.tif'  put:TIFFReader.
+formats at:'.gif'  put:GIFReader.
+formats at:'.img'  put:IMGReader.
+"formats at:'.pcx'  put:PCXReader.      "
+"formats at:'.mac'  put:MacPaintReader. "
+formats at:'.im8'  put:SunRasterReader.
+formats at:'.icon' put:SunRasterReader.
+formats at:'.face' put:FaceReader.
+"formats at:'.g3'   put:G3FileReader.   "
+formats at:'.bmp'  put:WindowsIconReader.
+formats at:'.ico'  put:WindowsIconReader.
+formats at:'.BMP'  put:WindowsIconReader.
+formats at:'.ICO'  put:WindowsIconReader.
+formats at:'.jpg'  put:JPEGReader.
+formats at:'.jpeg' put:JPEGReader.
+formats at:'.ppm'  put:PBMReader.
+formats at:'.pbm'  put:PBMReader.
+formats at:'.pgm'  put:PBMReader.
+formats at:'.form' put:ST80FormReader.
+formats at:'.bm'   put:XBMReader.
+formats at:'.pm'   put:XPMReader.
+formats at:'.xpm'  put:XPMReader.
+!
+
+"*
+ * find out, on what type of display we run
+ * (they should have added this to the x-protocol)
+ *
+ * look for a file named 'd_<displays-hostname>.rc' and file it in
+ *"
+
+|displayVar display displayType s idx|
+
+"find display name from environment or -display argument"
+
+idx := Arguments indexOf:'-display'.
+idx ~~ 0 ifTrue:[
+    displayVar := Arguments at:idx + 1.
+] ifFalse:[
+    displayVar := OperatingSystem getEnvironment:'DISPLAY'.
+].
+display := displayVar.
+
+displayVar notNil ifTrue:[
+    ((displayVar startsWith:':0') or:[displayVar startsWith:'unix:0'])  ifTrue:[
+        display := OperatingSystem getHostName.
+    ] ifFalse:[
+        (displayVar endsWith:':0') ifTrue:[
+            display := displayVar copyTo:(displayVar size - 2)
+        ] ifFalse:[
+            (displayVar endsWith:':0.0') ifTrue:[
+                display := displayVar copyTo:(displayVar size - 4)
+            ]
+        ]
+    ].
+    display isNil ifTrue:[
+        'cannot determine display I am running on' errorPrintNL.
+    ] ifFalse:[
+        "if there is a corresponding file ..."
+
+        s := Smalltalk systemFileStreamFor:('d_' , display , '.rc').
+        s notNil ifTrue:[
+            displayType := display.
+            s close.
+        ].
+        "otherwise ..."
+        displayType isNil ifTrue:[
+            "just an example - stuff could also be hardwired here ..."
+            display notNil ifTrue:[
+                (display startsWith:'clam') ifTrue:[
+                    displayType := 'next'
+                ].
+                (display startsWith:'porty') ifTrue:[
+                    displayType := 'portable'
+                ].
+                (display startsWith:'blue') ifTrue:[
+                    displayType := 'iris'
+                ].
+                (display startsWith:'sun') ifTrue:[
+                    displayType := 'sun'
+                ].
+                (display startsWith:'hp') ifTrue:[
+                    displayType := 'hpux'
+                ].
+                (display startsWith:'slsv') ifTrue:[
+                    "all those machines here at SEL are suns"
+                    displayType := 'sun'
+                ].
+            ].
+        ].
+    ].
+
+    displayType isNil ifTrue:[
+        "use type of machine smalltalk is running on as default ..."
+
+        (displayVar startsWith:':0') ifTrue:[
+            displayType := OperatingSystem getSystemType.
+        ] ifFalse:[
+            (displayVar startsWith:(OperatingSystem getHostName , ':0')) ifTrue:[
+                displayType := OperatingSystem getSystemType.
+            ]
+        ]
+    ]
+].
+
+"now, if the above mess found something, we have it in displayType;
+ fileIn d_<displayType>.rc"
+
+displayType notNil ifTrue:[
+    (Smalltalk at:#'_ImageDisplayName') ~= displayType ifTrue:[
+        ('trying display setup d_' , displayType , '.rc ...') errorPrintNewline.
+        Smalltalk fileIn:('d_' , displayType , '.rc')
+    ].
+    Smalltalk at:#'_ImageDisplayName' put:displayType
+]
+!
+
+"*
+ * set a default style, if not been set by rc-file
+ * this is set according the system we are running on.
+ * Notice: normally, the below is not needed, since the style
+ *         is always set by the d_xxx.rc file.
+ *         Except, when the d_xxx.rc is not present.
+ *"
+|type|
+
+View defaultStyle isNil ifTrue:[
+    type := OperatingSystem getSystemType.
+    type = 'sunos' ifTrue:[
+        View defaultStyle:#openwin
+    ].
+    type = 'next' ifTrue:[
+        View defaultStyle:#next
+    ].
+    type = 'iris' ifTrue:[
+        View defaultStyle:#iris
+    ].
+    type = 'linux' ifTrue:[
+        View defaultStyle:#iris 
+    ].
+    type = 'hpux' ifTrue:[
+        View defaultStyle:#motif 
+    ].
+]
+!
+
+"*
  * take a smaller font on small (i.e. vga) screens
  *"
 |sz|
@@ -92,6 +304,9 @@
     ] ifFalse:[
         MenuView defaultFont:(Font family:'helvetica' face:'bold' style:'roman' size:sz).
         Launcher defaultFont:(Font family:'helvetica' face:'bold' style:'roman' size:sz).
+        (View defaultStyle == #mswindows) ifTrue:[
+            SelectionInListView defaultFont:(Font family:'courier' face:'bold' style:'roman' size:sz).
+        ]
     ]
 ].
 
@@ -99,101 +314,4 @@
  * this defines the default font for code views
  *"
 CodeView defaultFont:(Font family:'courier' face:'medium' style:'roman' size:sz).
-
-' '
 !
-
-"*
- * find out, on what type of display we run
- * (they should have added this to the x-protocol)
- *
- * look for a file named 'd_<displays-hostname>.rc' and file it in
- *"
-
-|displayVar display displayType s idx|
-
-"find display name from environment or -display argument"
-
-idx := Arguments indexOf:'-display'.
-idx ~~ 0 ifTrue:[
-    displayVar := Arguments at:idx + 1.
-] ifFalse:[
-    displayVar := OperatingSystem getEnvironment:'DISPLAY'.
-].
-display := displayVar.
-
-displayVar notNil ifTrue:[
-    ((displayVar startsWith:':0') or:[displayVar startsWith:'unix:0'])  ifTrue:[
-        display := OperatingSystem getHostName.
-    ] ifFalse:[
-        (displayVar endsWith:':0') ifTrue:[
-            display := displayVar copyTo:(displayVar size - 2)
-        ]
-    ].
-    display isNil ifTrue:[
-        'cannot determine display I am running on' printNewline.
-    ] ifFalse:[
-        "if there is a corresponding file ..."
-        s := Smalltalk systemFileStreamFor:('d_' , display , '.rc').
-        s notNil ifTrue:[
-            displayType := display.
-            s close.
-        ].
-        "otherwise ..."
-        displayType isNil ifTrue:[
-            "just an example - stuff could also be hardwired here ..."
-            display notNil ifTrue:[
-                (display startsWith:'clam') ifTrue:[
-                    displayType := 'next'
-                ].
-                (display startsWith:'porty') ifTrue:[
-                    displayType := 'portable'
-                ].
-                (display startsWith:'blue') ifTrue:[
-                    displayType := 'iris'
-                ].
-                (display startsWith:'sun') ifTrue:[
-                    displayType := 'sun'
-                ].
-                (display startsWith:'slsv') ifTrue:[
-                    "all those machines here at SEL are suns"
-                    displayType := 'sun'
-                ].
-            ].
-        ].
-    ].
-
-    displayType isNil ifTrue:[
-        "use type of machine smalltalk is running on as default ..."
-
-        (displayVar startsWith:':0') ifTrue:[
-            displayType := OperatingSystem getSystemType.
-        ]
-    ]
-].
-
-displayType notNil ifTrue:[
-    ('reading display setup d_' , displayType , '.rc ...') printNewline.
-    Smalltalk fileIn:('d_' , displayType , '.rc')
-].
-!
-
-"*
- * set a default style, if not been set by rc-file
- * this is set acc. the system we are running on
- *"
-|type|
-
-View defaultStyle isNil ifTrue:[
-    type := OperatingSystem getSystemType.
-    type = 'sunos' ifTrue:[
-        View defaultStyle:#openwin
-    ].
-    type = 'next' ifTrue:[
-        View defaultStyle:#next
-    ].
-    type = 'iris' ifTrue:[
-        View defaultStyle:#iris
-    ].
-]
-!
--- a/h_sample_host.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/h_sample_host.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -1,6 +1,9 @@
 "*
  * $Header$
- * startup configuration for host specific stuff -
+ * sample startup configuration for host specific stuff -
+ *
+ * You should copy this file to h_<your_host_name>.rc
+ * and change it for your site.
  *"
 
 "*
@@ -12,8 +15,6 @@
 "*
  * printer command configuration 
  * - uncomment the one you have
- * you can also change the stuff below to adapt to the current
- * host - see display.rc for an example.
  *"
 " " 
 PostscriptPrinterStream autoload.
--- a/host.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/host.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -1,21 +1,32 @@
 "*
  * $Header$
+ *
+ * DONT add site specific things here - use your own h_xxx.rc file instead
+ *
  * startup configuration for host specific stuff -
  * looks for a host specific init file and loads it.
  *"
 
 |host s|
 
+(OperatingSystem getSystemType = 'hpux') ifTrue:[
+    OperatingSystem disableSignal:(OperatingSystem sigALRM)
+].
+
 host := OperatingSystem getHostName.
 host isNil ifTrue:[
-    'cannot determine host I am running on' printNewline.
+    'cannot determine host I am running on' errorPrintNewline.
 ] ifFalse:[
     "if there is a corresponding file ..."
-    ('reading host setup h_' , host , '.rc ...') printNewline.
-    s := Smalltalk systemFileStreamFor:('h_' , host , '.rc').
-    s notNil ifTrue:[
-        s fileIn.
-        s close.
+    (Smalltalk at:#'_ImageHostName') ~= host ifTrue:[
+        ('trying host setup h_' , host , '.rc ...') errorPrintNewline.
+
+        s := Smalltalk systemFileStreamFor:('h_' , host , '.rc').
+        s notNil ifTrue:[
+            s fileIn.
+            s close.
+        ].
+        Smalltalk at:#'_ImageHostName' put:host.
     ]
 ].
 !
--- a/smalltalk.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/smalltalk.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -12,27 +12,72 @@
  *"
 
 "*
- * check for display beeing compiled into the system;
+ * just a quick check, if this ST/X installation seems to
+ * be halfway complete (it happened to some people, that
+ * their source/resource directories where not installed)
+ * - better to warn early ... 
+ *"
+|anyWrong missing|
+anyWrong := false.
+missing := ''.
+(Smalltalk getSystemFileName:'resources/SBrowser.rs') isNil ifTrue:[
+    '***********************************************************************' errorPrintNL.
+    '***** ATTENTION: please check installation of your resource files' errorPrintNL.
+    anyWrong := true.
+    missing := '''resources'' '.
+].
+(Smalltalk getSystemFileName:'source/Object.st') isNil ifTrue:[
+    '***********************************************************************' errorPrintNL.
+    '***** ATTENTION: please check installation of your source files' errorPrintNL.
+    anyWrong := true.
+    missing := missing , '''source'' '.
+].
+(Smalltalk getSystemFileName:'bitmaps/SBrowser.xbm') isNil ifTrue:[
+    '***********************************************************************' errorPrintNL.
+    '***** ATTENTION: please check installation of your bitmap files' errorPrintNL.
+    anyWrong := true.
+    missing := missing , '''bitmaps'' '.
+].
+anyWrong ifTrue:[
+    '*****' errorPrintNL.
+    '***** directory(s) named: ' errorPrint. missing errorPrint. 'incomplete/not existing' errorPrintNL.
+    '***** your path is: ' errorPrint.
+    Smalltalk systemPath asArray storeString errorPrintNL.
+    '*****' errorPrintNL.
+    '***********************************************************************' errorPrintNL.
+]
+!
+
+"*
+ * check for display-classes being compiled into the system;
+ * (and if display connection can be established)
  * if not, enter a simple read-eval-print loop
  *"
 Display isNil ifTrue:[
-    'oops - no display' printNewline.
+    DeviceWorkstation notNil ifTrue:[
+        'cannot connect to display' errorPrintNewline
+    ] ifFalse:[
+        'oops - no display' errorPrintNewline.
+    ].
     Smalltalk readEvalPrint.
     Smalltalk exit
 ]
 !
 
 "*
- * this makes X-errors to be handled immediately (so you see,
+ * this makes X-errors be handled immediately (so you see,
  * where it occured) but slows down the system soooo muuuucccchhh ..
  * if commented out, errors will be reported asynchronously.
  * (I enable this, when things go bad during startup)
  *"
-"Display unBuffered"!
+"Display unBuffered"
+!
 
 "*
  * this starts incremental GC earlier
  * (default is 500000)
+ * the number given is the number of bytes which have to be allocated
+ * since the last GC, to start the incremental GC running.
  *"
 "
 ObjectMemory incrementalGCLimit:100000 
@@ -40,39 +85,40 @@
 !
 
 "*
- * you can override the view style (which is otherwise defined
- * in the View.rs resource file)
+ * lazy loading
+ * (faster fileIn) - this is EXPERIMENTAL
+ *"
+" "
+Autoload compileLazy:true
+" "
+!
+
+"*
+ * you can override the view style 
+ * OBSOLETE: its now defined in the d_xxx.rc files
+ * PS: I personally like #iris most
  *"
 "View defaultStyle:#iris "
-"View defaultStyle:#motif "
+"View defaultStyle:#motif "      "ugly"
 "View defaultStyle:#next "
-"View defaultStyle:#normal "
+"View defaultStyle:#view3D "     "somewhat neutral 3D style"
+"View defaultStyle:#mswindow "   "not finished"
+"View defaultStyle:#normal "     "the good old style"
 !
 
 "*
  * define the language (you can also set the LANG-shell variable)
  * (currently only #english and #german are supported)
+ * setting it here will override the LANG variable setting,
+ * if neither set here nor in LANG, english is the default.
+ * (currently, strings are not available for other than english
+ *  and german; french will follow next - see resource files)
  *"
 "Language := #german"
 "Language := #english" 
 !
 
 "*
- * define how views look
- * (setting View3D to true is fancy)
- *"
-View3D := (Display depth > 1)  
-"View3D := false               "
-!
-
-"*
- * dont want the 3rd button 
- * (some x-servers dont produce button2 but button3 events)
- * this xlates the 3rd button into 2nd button
- *"
-XWorkstation buttonTranslation:#(1 2 2) !
-
-"*
  * this handles all variant display stuff
  * (i.e. things which might change, when DISPLAY is set different)
  *"
@@ -86,48 +132,64 @@
 !
 
 "*
+ * you can add your very private things here - if its put into HOME/.smalltalk,
+ * each user can add his/her private things even when everything else is
+ * shared
+ *"
+Smalltalk fileIn:'private.rc'
+!
+
+"*
  * start some views ...
  * you can add all stuff you'd like to come up by default
  * the first time
  *"
 
 "*
- * start a Transcript
+ * start a Transcript (if linked-in)
  *"
-Stdout showCr:'starting Transcript ...'.
-"Smalltalk debugOn."
-TextCollector newTranscript!
+TextCollector notNil ifTrue:[
+    'starting Transcript ...' errorPrintNL.
+    TextCollector newTranscript.
+]
+!
 
 "
  you can change colors too ..
+ obsolete: below code sets it only for the current Transcript,
+ which will not affect future ones.
+ See code above, which changes the class resources - thats better
 "
-(View defaultStyle == #iris) ifTrue:[
-    (Display hasColors and:[Display depth > 4]) ifTrue:[
-        Transcript foregroundColor:(Color lightGrey) backgroundColor:(Color red:0 green:0 blue:25);
-                   cursorForegroundColor:(Color black) backgroundColor:(Color green);
-                   selectionForegroundColor:(Color black) backgroundColor:(Color grey);
-                   viewBackground:(Color red:0 green:0 blue:25)
-    ] ifFalse:[
-        Transcript foregroundColor:(Color white) backgroundColor:(Color black);
-                   cursorForegroundColor:(Color black) backgroundColor:(Color white);
-                   selectionForegroundColor:(Color black) backgroundColor:(Color veryLightGrey);
-                   viewBackground:(Color black)
-    ]
-]
-!     
+
+"/(View defaultStyle == #iris) ifTrue:[
+"/    (Display hasColors and:[Display depth > 4]) ifTrue:[
+"/        Transcript foregroundColor:(Color lightGrey) backgroundColor:(Color red:0 green:0 blue:25);
+"/                   cursorForegroundColor:(Color black) backgroundColor:(Color green);
+"/                   selectionForegroundColor:(Color black) backgroundColor:(Color grey);
+"/                   viewBackground:(Color red:0 green:0 blue:25)
+"/    ] ifFalse:[
+"/        Transcript foregroundColor:(Color white) backgroundColor:(Color black);
+"/                   cursorForegroundColor:(Color black) backgroundColor:(Color white);
+"/                   selectionForegroundColor:(Color black) backgroundColor:(Color veryLightGrey);
+"/                   viewBackground:(Color black)
+"/    ]
+"/]
 
 "*
- * start the Launcher
+ * start the Launcher (if linked-in)
  *"
-Stdout showCr:'starting main-menu ...'.
-Launcher start!
+Launcher notNil ifTrue:[
+    'starting main-menu ...' errorPrintNL.
+    Launcher open
+]
+!
 
 "*
  * start a SystemBrowser
  * - I dont want one (using Launcher)
  *"
 "
- SystemBrowser start
+ SystemBrowser open
 "
 !
 
@@ -136,7 +198,7 @@
  * - I dont want one (using Launcher)
  *"
 "
- FileBrowser start
+ FileBrowser open
 "
 !
 
@@ -145,15 +207,15 @@
  * - I dont want one (using Launcher)
  *"
 "
-Workspace start
+Workspace open
 "
 !
 
-
 "*
  * if things go very badly, turn on message tracing ...
+ * but be prepared for lots of output
  *"
-"
+" 
 Smalltalk debugOn.
 "
 "*
--- a/smalltalk_r.rc	Tue Aug 09 00:33:56 1994 +0200
+++ b/smalltalk_r.rc	Tue Aug 09 00:35:25 1994 +0200
@@ -9,6 +9,9 @@
  * notice, that all views and things have already been restored when this
  * script is run ....
  *"
+"
+MessageTracer trapMethod:(View class compiledMethodAt:#defaultStyle:).
+"
 
 "*
  * this handles all variant display stuff
@@ -57,12 +60,12 @@
 Do you want to reconfigure the view style ?'.
 
     reconfigure ifTrue:[
-	Display knownViews do:[:aView |
-	    aView reinitStyle.
-	].
-	ModalDisplay knownViews do:[:aView |
-	    aView reinitStyle.
-	].
+        Display knownViews do:[:aView |
+            aView reinitStyle.
+        ].
+        ModalDisplay knownViews do:[:aView |
+            aView reinitStyle.
+        ].
     ].
 ].