Workplace Shell
Die Workplace Shell
OS2.INI
OS2SYS.INI
Schriften verwalten
Schriften installieren
Über den Schriftenmanager von OS/2 lassen sich viele verschiedene Schriften verwalten.
Seit Warp 4 besitzt OS/2 neben dem ATM auch einen Truetype Schriftenmanager, so daß sich neben den klassischen Postscript-Schriften auch fast alle Windows Schriften nutzen kann.
Wie kann ich neue Schriften in OS/2 installieren?
Neue Schriften lassen sich über die Schriftartpalette installieren.
- In der Systemkonfiguration die Schriftartpalette öffnen
- Schriftart editieren (egal welche)
- Hinzufügen
- Das Verzeichnis mit den Schriftarten angeben
- Die gewünschten Schriftarten auswählen
- und installieren.
ATM Schriften
Unter ATM-Schriften versteht man spezielle PostScript Schriften für den Adobe Type Manager.
Ich möchte neue ATM-Schriften im System installieren, aber OS/2 nimmt meine PFM-Dateien nicht an? Die PFM Schriftdateien enthalten nicht alle Informationen, die der OS/2 ATM benötigt. Für diesen werden AFM- und PFB-Dateien benötigt.
Es gibt ein Programm namens PFM2AFM, das PFM-Dateien in entsprechende AFM-Dateien konvertiert. Die so erstellten Schriftsätze enthalten allerdings nicht alle Informationen, die ein vollwertiger ATM-Schriftsatz enthält. Deshalb kann es zu Unterschieden in der Darstellung kommen.
Truetype Schriften
Bei Truetype-Schriften ist darauf zu achten, das keine gepackten Dateien verwendet werden.
Diese müssen vor der Installation mit dem Programm
C:\OS2\MDOS\WINOS2\EXPAND.EXE
ausgepackt werden.
OS/2 und DOS-Fenster
OS/2 und DOS-Fenstergröße festlegen
Wenn die Umschalt-Taste gedrückt gehalten wird, während die Größe des OS/2- oder DOS-Fensters geändert wird, speichert die WPS die neue Größe dauerhaft. Diese Einstellung gilt anschließend für alle DOS- und OS/2- Textmodeprogramme.
Wenn bestimmte OS/2- oder DOS-Programme mit einer anderen Fenstergröße geöffnet werden sollen, geht dies zum Beispiel mit dem Programm SETVIO.CMD? von Detlef Ahlgrimm.
Ein Objekt läßt sich nicht löschen
- Mit Hilfe eines Laufwerksobjektes oder der Kommandozeile einen neuen Ordner (Bsp.: Kill_It) im Hauptverzeichnis der Festplatte erstellen.
- Das unlöschbare Objekt (mit gedrückter SHIFT-Taste) in diesen Ordner verschieben.
- Den Ordner löschen (in den Mülleimer ziehen oder über die Kommandozeile, ...)
Codepage ändern
OS/2 bietet die Möglichkeit für jedes Programm eine beliebige Codepage zu auszuwählen.
Nehmen wir an, in der CONFIG.SYS. ist folgende Einstellung vorgegeben
CODEPAGE=437,850
Das Programm benötigt aber die CODEPAGE 850 um korrekt zu funktionieren.
- Das Einstellungsnotitzbuch des Programmobjektes öffnen.
- Die Lasche Allgemein auswählen und den ICONEDITOR starten (den Button "Editieren" auswählen).
- Zum Einstellungsnotizbuch (Iconeditor nicht schließen) zurückwechseln und die Lasche Programm auswählen.
- Dort folgende Daten eintragen:
Pfad und Dateiname: CMD.EXE
Parameter: /C CHCP 850&<Programmname>&EXIT
- Erneut die die Lasche Allgemein auswählen. Statt des Programmicons ist dort jetzt das Standard-OS2-Icon zu sehen.
- Deshalb wieder zum ICONEDITOR wechseln und Datei/Speichern ausführen und den Editor verlassen.
- Nach dem Verlassen sollte wieder das Originalprogrammicon zu sehen sein.
- Anschließend zur Lasche Sitzung wechseln und die Option "Beim Start Systemgröße" aktivieren.
Systemabschluss ohne Maus durchführen
- Mit STRG-ESC die Fensterliste aufrufen,
- Die Arbeitsoberfläche aufrufen (POS 1, Return),
- Mit der Leertaste (wechselt die Markierung des aktuellen Objekts) alle Objekte freigeben (oder mit STRG-ALT GR-ß alle vorhandenen Markierungen löschen),
- Mit UMSCH-F10 das Kontextmenü öffnen,
- Den Menüpunkt "Systemabschluß" wählen.
Programme und Dateiverküpfungen
OS/2 stellt die Verbindung zwischen Dateien und den zugehörigen Programmen auf 2 verschiedene Arten.
- Anhand der Dateinamenerweiterung (Extension)
- über sogenannte Eigenschaften.
Es ist auch möglich, mehrere Programme mit einem Dateityp oder einer Dateierweiterung zu Verknüpfen. Im Kontextmenü erscheinen alle zugeordneten Programme.
Wie erstelle ich eine Verknüpfung anhand der Erweiterung?
- Ein Programmobjekt für das Programm erstellen, dem eine Erweiterung zugeordnet werden soll.
- Unter Einstellungen/Zuordnung/Neuer Name die gewünschte Dateierweiterung(en) eintragen und anschließend hinzufügen wählen.
- Alle unerwünschten Zuordnungen bei anderen Objekten löschen.
- Alle Zuordnungen werden im Kontextmenü Öffnen des betroffenen Datenobjektes angegeben.
Einem Programm bestimmte Dateieigenschaften zuordnen?
- Öffne das Kontextmenü des gewünschten Programmobjektes.
- Im Kontextmenü wähle unter Einstellungen/Zuordnung/Verfügbare Typen einen der angebotenen Typen aus.
- Hinzufügen auswählen.
- Anschließend alle unerwünschten Zuordnungen bei anderen Objekten löschen.
- Alle Zuordnungen werden im Kontextmenü Öffnen des betroffenen Datenobjektes angegeben.
Bestimmte Dateieigenschaften erstellen?
- Über die OS/2 Einstellungen Das Einstellungsnotebook einer beliebigen Datendatei öffnen. (z.B.: Schablonenordner/Datendatei) Die neue Eigenschaft unter: "neuer Typ:" eintragen. Die neue Eigenschaft über Neu zu den vorhandenen hinzufügen.
- Einen speziellen Editor (ASSOED*) verwenden.
TODO:
Laufwerksobjekte
Wie kann ich die Standardeinstellung der Laufwerksobjekte wiederherstellen?
- Über die Einstellungen
- Stellen Sie die Standardanzeige wieder zurück auf Strukturanzeige.
Kontextmenü / Einstellungen / Menü / Öffnen / Einstellungen / Standardfunktion / Strukturanzeige - Löschen Sie jetzt die Datei \WP ROOT. SF des entsprechenden Laufwerks. Verwenden Sie das folgenden REXX-Programm.
- Stellen Sie die Standardanzeige wieder zurück auf Strukturanzeige.
/* Default.Cmd */
/* Setzt alle lokalen Laufwerke auf Default View */
/* (C) vowe 1994 */
call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
call SysLoadFuncs
LocalDrives = SysDriveMap('C:', 'LOCAL')
say 'Setze Default View für ' LocalDrives
Do N=1 to Words(LocalDrives)
call SysSetObjectData word(LocalDrives,N),'DEFAULTVIEW=DEFAULT'
end
Klickstartleiste
Wie kann ich verhindern, das die Klickstartleiste bei jedem Doppelklick auf den Desktop erscheint?
- Löschen Sie den Eintrag Launchpad aus ihrer CONFIG.SYS.
SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS,LAUNCHPAD
ändern sie ihn in:
SET AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS
Löschen Sie anschließend die Klickstartleiste.
Möchten Sie die Klickstartleiste später wiederhaben, tragen Sie einfach wieder das Schlüsselwort LAUNCHPAD in der CONFIG.SYS ein.
- Verwenden Sie die Datei NEW-LNCH
Enthalten ist eine REXX-Datei, mit der sie die Klickstartleiste entsprechend modifizieren können.
Kann ich mehr als eine Klickstartleiste verwenden?
Ja. Das ist kein Problem.
- Manuell
- Das vorhandene Klickstartobjekt mit STRG-
kopieren. - Alle Objekte von beiden Klickstartleisten, bis auf eines, löschen und nach Wunsch konfigurieren.
- Zum Schluß das einzelne oben erwähnte Objekt löschen.
- Das vorhandene Klickstartobjekt mit STRG-
- Das Programm NEW-LNCH? verwenden.
- Das Programm NEWKSL? verwenden.
Woher kommen die die grünen Fragezeichen und wie kann ich die löschen?
Die Klickstartleiste speichert die Programme in Form von Referenzen. Wenn jetzt eine dieser Referenzen ins 'leere' zeigt, zeigt die Klickstartleiste an dieser Stelle ein grünes Fragezeichen.
Diese Fragezeichen können Sie ganz einfach löschen, indem Sie sie auf den Papierkorb (Shredder) ziehen.
Vereinzelt kann es dazu kommen, das auch das nicht mehr möglich ist. In diesem Fall löschen Sie die Klickstartleiste einfach komlett. Wenn in der CONFIG.SYS der Eintrag
SET AUTOSTART=...,LAUNCHPAD
steht, können Sie mit einem Doppelklick auf den Desktop einen neue Klickstartleiste erzeugen lassen. Spätestens nach dem nächsten Systemstart (mit obigem Eintrag) haben Sie die Klickstartleiste wieder.
Ich erhalte öfter die Meldung "Die Anwendung Klickstartleiste reagiert nicht". Was kan ich dagegen tun? Wenn Sie das Objekt der Klickstartleiste in einen anderen Ordner der WPS verschieben, kann es zu Problemen mit der Klickstartleiste kommen.
Entfernen Sie in dem Fall den Eintrag LAUNCHPAD aus der CONFIG.SYS
SET AUTOSTART=...,LAUNCHPAD => SET AUTOSTART=...
Jetzt wird die Klickstartleiste erst gestartet, wenn Sie einen Doppelklick auf dem Desktop ausführen. Möchten Sie, daß die Klickstartleiste trotzdem bei jedem Systemstart gestartet wird, erstellen Sie einfach eine Referenz im Systemstartordner.
Warpcenter
Das mit OS/2 Warp 4 eingeführte Warpcenter soll die Klickstartleiste ablösen.
Undokumentierte Features des Warpcenters
Mit den folgenden Befehlen können Sie einige undokumentierte Funktionen des Warpcenters einschalten. Dazu tragen Sie diese Befehle in ihrer CONFIG.SYS ein.
SET SCKILLFEATUREENABLED=1
Mit diesem Schalter erhalten Sie im Warpcenter statt der Fensterliste eine Prozessliste, wenn Sie mit STRG-Linke Maustaste auf das Symbol 'Fensterliste' klicken. In der jetzt erscheinenden Liste können Sie jeden Prozess mit einem einfachen Mausklick beenden.
SET KILLFEATUREENABLED=1
Funktionsbeschreibung siehe SET SCKILLFEATUREENABLED
SET SCUSEPRETTYCLOCK=ON
Ist dieser Schalter gesetzt, erscheint die Uhr im Warpcenter nicht mehr Schwarz auf Grau, sondern Grün auf Schwarz.
SET SCFINDUTILITY=<Suchprogramm>
Mit dieser Einstellung können Sie frei bestimmen, welches Suchprogramm vom Warpcenter gestartet werden soll, wenn Sie den entsprechenden Knopf betätigen. TODO:
Systemstart
Programmstart nach Shutdown verhindern
Wie kann ich verhindern, daß nach einem Systemabschluß die zuletzt laufenden Programme wieder gestartet werden?
Möglichkeit 1:
In der CONFIG.SYS folgende Zeile anpassen:
SET RESTARTOBJECTS=STARTUPFOLDERSONLY
Bei einem Systemstart werden ab jetzt nur noch die im Systemstartordner abgelegten Programme gestartet.
oder:
SET RESTARTOBJECTS=NO
Bei einem Systemstart werden auch die im Systemstartordner abgelegten Programme nicht gestartet. Die STARTUP.CMD wird aber weiterhin ausgeführt.
Möglichkeit 2:
In der CONFIG.SYS das Schlüsselwort PROGRAMS aus der folgenden Zeile entfernen.
AUTOSTART=PROGRAMS,TASKLIST,FOLDERS,CONNECTIONS,LAUNCHPAD
Möglichkeit 3:
Halten Sie die Tasten STRG-Shift-F1 beim Start der PM-Shell gedrückt, bis die WPS angezeigt werden.
Stop der Bootvorgang während dieser Zeit, lassen Sie die F1-Taste kurz los, damit der Bootvorgang fortgesetzt wird.
Systemabschluß
Kann ich den Systemabschluß automatisieren?
Erstellen Sie eine Batch-Datei, in der Sie alle Befehle aufrufen, die vor einem Systemabschluß ausgeführt werden sollen. Als Beispiel hier ein REXX-Programm.
STOP_OS2.CMD
/*********************************/
/* Shutdownscript für OS/2-Warp */
/*********************************/
/* REXXUtil-Funktionen laden. */
call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
Call SysLoadFuncs
'@ECHO OFF'
/***************************************************************************/
/* Hier wird überprüft, ob ein Parameter an das Objekt übergeben wurde */
/* (z.B.: per Drag'n Drop). Wenn ja, dann wird der Systemabschluß nicht */
/* ausgeführt. */
/***************************************************************************/
PARSE ARG PARAM
IF \ (PARAM='') THEN
EXIT
END
/*
An dieser Stelle können Sie jetzt alle Befehle einfügen, die Sie vor
einem Systemabschluß durchführen möchten.
Alle OS/2-Befehle müssen Sie in Hochkomma einschließen.
Beispiel:
'ECHO j|DEL D:\TEMP\*'
*/
/***************************************************************************/
/* Rexxutil-Funktionen abmelden. */
/***************************************************************************/
CALL SYSDROPFUNCS
/***************************************************************************/
/* Systemabschluß initiieren und das REXX-Programm beenden, damit das */
/* Programm STOP_OS2.CMD beim nächsten Systemstart nicht wieder geladen */
/* wird. */
/***************************************************************************/
'DETACH D:\SYSTEM\SHUTDOWN\SHUTDOWN.EXE'
EXIT
Der Nachteil dieser Methode liegt darin, das Sie bei allen Textmode-Programmen, die noch laufen, eine Nachfrage erhalten, ob Sie das jeweilige Programm wirklich beenden wollen. Das bietet ihnen zwar die Möglichkeit alle noch nicht gespeicherten Dateien ordnungsgemäß zu sichern, ein unbeaufsichtigter Systemabschluß ist damit aber nicht möglich.
Wie starte ich einen automatischen Systemabschluß ohne Nachfrage? Wenn Sie OS/2 unbeaufsichtigt laufen lassen, und das System zu einer bestimmten Zeit abschalten wollen, müssen sie mindestens die Dateisysteme korrekt abschließen, wenn Sie keinen Datenverlust riskieren wollen und das System keinen CHKDSK beim nächsten Systemstart durchführen soll.
Es gibt in den Mailboxen eine ganze Reihe von Programmen, die diese Funktion ausführen. Mit Nachfrage, mit und ohne Timeout, für den Textmode oder für den PM.
Hier eine kleine Auswahl:
- SHTDWN01.ZIP
- SHTDWN16.ZIP
- SHUT32.ZIP
- SHUTDN4.ZIP
- SHUTDOWN.LZH
- OS2STOP.LZH
Wenn Sie den Bootmanager bei sich installiert haben, liefert ihnen IBM eine Möglichkeit gleich mit.
SETBOOT.EXE /IBD:Z
Mit diesem Befehl wird ein Systemabschluß durchgeführt, der identisch ist mit einem manuellen Systemstart über C-A-D (Strg-Alt-Entf). Der Bootmanager versucht jetzt den Rechner von der Platte Z: zu starten. Da dies normalerweise nicht möglich ist (wer hat schon 26 Laufwerke), wird der Bootvorgang mit folgender Meldung angehalten:
Kein Betriebssystem; System gestoppt.
Führen Sie diesen Befehl so ca. 5-10 Minuten bevor der Rechner ausgeschaltet wird mit einem entsprechenden Programm (z.B.: PIM aus dem Bonuspak, CRON*, ...) aus.
Der Nachteil an dieser Methode ist, das Sie alle Einstellungen verlieren, die Sie seit dem letzten Systemstart an der WPS durchgeführt haben. Das ist zwar bei einem unbeaufsichtigt laufenden Rechner normalerweise nicht so tragisch, manchmal aber doch recht ärgerlich.
Um diesen Nachteil zu umgehen, verwenden Sie das unter WPS-Einstellungen manuell sichern beschriebene REXX-Programm.
Verwenden Sie kein Objekt, um das Shutdown-Programm zu starten. Beim nächsten Systemstart wird OS/2 dieses dann wieder laden, ...
Benötigen Sie ein Object, dann versehen Sie es mit folgenden Einstellungen.
Pfad- und Dateiname: *
Parameter: /C DETACH E:\BOOT_OS2.CMD
Ergänzen Sie ausserdem das Programm BOOT_OS2.CMD um folgende Zeile
/* Beginning of REXX file */
call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
call SysLoadFuncs
CALL SYSSLEEP 2
[ ... ]
EXIT
TODO: