Tips & Tricks

OS/2 Basissystem

OS/2 Fenster

Auch mit OS/2 ist es oftmals sinnvoll die Kommandozeile einzusetzen.
Um sich die Arbeit zu erleichtern bietet OS/2 eine Reihe von Möglichkeiten, die Sie unter DOS nur mit entsprechenden Zusatzprogrammen hatten.

Befehlsverkettung (&)

Mit einem & lassen sich mehrere Befehle in einer Kommandozeile eingeben.

MD SUB1 & CD SUB1 & DIR

statt

MD SUB1
CD SUB1
DIR

Bedingte Befehlsverkettung

&&

Der Befehl hinter && wird nur dann ausgeführt, wenn der Befehl davor erfolgreich beendet wurde (Returncode = 0).

MD SUBDIR && CALL Programmname SUBDIR

Starte das Programm (Programmname) nur, wenn SUBDIR angelegt werden konnte.

||

Der Befehl hinter || wird nur dann ausgeführt, wenn der Befehl davor nicht erfolgreich beendet wurde (Returncode >= 1).

MD SUBDIR || ECHO j|DEL SUBDIR

Erstelle ein Unterverzeichnis. Wenn das Verzeichnis nicht erstellt werden konnte, dann lösche den Inhalt des bereits vorhandenen Verzeichnisses, oder die vorhandenen Datei.

&& und ||

Durch eine Kombination aus && und || lassen sich auch einfache IF OK, THEN, ELSE Befehle realisieren.

COPY DATEI A:\ && DEL DATEI || ECHO Fehler beim Verschieben.

Befehlsgruppen

Mit Hilfe von Klammern () lassen sich Befehlsgruppen erzeugen, die dann wie ein Befehl abgearbeitet werden.

DETACH (CMD /C C:&CD \&DIR /S>>D:\LISTE.C) & DETACH (CMD /C E:&CD \&DIR /S>>D:\LISTE.E)

Es werden zwei Prozesse im Hintergrund gestartet. Dabei werden alle in Klammer angegebenen Befehle an den ausführenden Befehl DETACH weitergereicht.

Mehrere CONFIG.SYS Dateien verwenden

Seit OS/2 Warp Version 3 besitzt OS/2 ein zusätzliches Bootmenü. Dieses wird gestartet, indem man beim Systemstart die Tasten Alt+F1 betätigen, wenn in der linken oberen Ecke des Bildschirms ein weißes Kästchen und der Schriftzug OS/2 (oder eCS) auftauchen.

Über dieses Bootmenü haben lässt sich OS/2 im Textmodus zu starten, das Graphik-Subsystem wieder auf Standard-VGA zurückzustellen, oder eine zuvor archivierte Konfiguration wiederherzustellen.

Die Informationen für dieses Bootmenü befinden sich in den folgenden Dateien:

C:\OS2\BOOT\ALTF1TOP.SCR
C:\OS2\BOOT\ALTF1MID.SCR
C:\OS2\BOOT\ALTF1BOT.SCR

Sie werden auch in dieser Reihenfolge angezeigt.

  • Die Datei ALTF1TOP.SCR enthält das eigentliche Bootmenü.
  • Die Datei ALTF1MID.SCR enthält das Erstellungs-Datum des Installationsarchives.
  • Die Datei ALTF1BOT.SCR enthält die Daten der drei letzten Archivierungen der WPS.

Um ein eigenes Bootmenü zu erstellen, kann die Datei ALTF1TOP.SCR geändert werden. Dabei dürfen alle 3 Dateien zusammen nicht mehr als 25 Zeilen haben.

Die Funktionsweise des Bootmenüs ist ganz einfach.

  • Wenn das Bootmenü aufgerufen wurde, wartet OS/2 darauf, daß eine Taste (von a-z) gedrückt wird. Nehmen Wir an, die Taste 'A' wurde betätigt. Jetzt versucht OS/2 als erstes die Datei
    C:\OS2\BOOT\CONFIG.A zu finden.
  • Existiert diese setzt OS/2 den Systemstart mit dieser Datei fort, andernfalls wird die normale CONFIG.SYS verwendet.
  • Ist die entsprechende CONFIG-Datei abgearbeitet, versucht OS/2 als nächstes die Datei C:\OS2\BOOT\ALTF1A.CMD zu finden. Diese Datei ist eine normale Batch-Datei.
  • Diese wird von OS/2 ausgeführt, und zwar noch bevor der Presentation-Manager geladen wird.
  • Existiert diese Datei nicht, verwendet OS/2 die Datei C:\OS2\BOOT\ALTF1.CMD
  • Diese Datei wird von OS/2 verwendet, um die Standard-VGA-Auflösung einzustellen, oder die Archivierten Systemkonfigurationen wiederherzustellen.

Ausnahmen:

  • F2 Wird die Taste 'F2' betätigt, startet OS/2 im Textmodus.
    Dazu wird die Datei C:\OS2\BOOT\CONFIG.X verwendet.
  • F3 Wird die Taste 'F3' betätigt, verwendet OS/2 die normale CONFIG.SYS.
    Allerdings wird anschließend die Basisarbeitsoberfläche geladen und das Programm Installation-Anpassen gestartet.
  • F4 Wird die Taste 'F4' betätigt, verwendet OS/2 die normale CONFIG.SYS.
    Zusätzlich wird SETVGA.CMD ausgeführt und damit der Bildschirmtreiber wieder auf Standard-VGA zurückgestellt.

Auf diese Weise lassen sich verschiedene CONFIG.SYS anlegen, die dann einfach ausgewählt werden können.

Presentation Manager

Der PM (Presentation Manager) stellt die Funktionen für die graphische Oberfläche zur Verfügung. Er bildet die Basis, auf der die WPS aufsetzt.

**Den PM mit der Maus bedienen

  • Strg + MB-1 - Halten auf die Titelleiste eines Fensters
    Das Fenster wird verschoben, erhält aber nicht den Fokus.
    (Das Fenster wird nicht in den Vordergrund geholt)
  • MB-1 - Doppel-Klick
    Wird die Aktion auf der Titelleiste eines Fensters ausgeführt, schaltet dieses Fenster zwischen Maximalgröße und Normalgröße um.
  • Esc Während einer Aktion mit der Maus, bricht diese ab.

Manipulationen mit der Fensterliste

  • Umschalt + MB-1 Markiert den aktuellen Eintrag und alle Einträge zwischen diesem und dem zuvor markierte Eintrag.
  • Umschalt + Eingabe oder Umschalt + Doppelklick MB-1 Verkleinert das markierte Programm auf Symbolgröße
    Das funktioniert auch dann, wenn dieses Programm keinen Eintrag Symbolgröße im Kontextmenü hat.
    Sogar die WPS kann man auf diese Weise minimieren.
    (Die WPS kann mit einem einfachen Doppelklick + MB-1 wiederhergestellt werden.
  • Strg + Eingabe oder Strg + Doppelklick MB-1 Maximiert das markierte Programm.
    Auch die WPS kann auf diese Weise maximiert werden.
    Allerdings läßt sich das bei der WPS nur durch einen Systemstart rückgängig machen.
  • Alt + MB-1 Anschließend kann der Name des Programmes geändert werden.
    Mit einem Mausklick auf eines der anderen Felder oder der Enter-Taste (Zehnerblock) wird die Änderung übernommen.
  • Strg + MB-1 Schaltet die Markierung um.
  • Umschalt -F8 Schaltet den Markierungsmodus um.
    Jetzt kann die Markierung mit den Cursortasten verschoben werden, ohne die Markierung der anderen Einträge zu verändern.
    Die Einstellung kann durch erneutes betätigen von Umschalt + F8 wieder aufgehoben werden.

Workplace Shell

WPS Konfiguration sichern

Seit OS/2 Warp Version 3 ist es möglich, die wichtigen Systemdateien bei jedem Systemstart sichern zu lassen. Diese Funktion hat aber einige Nachteile.

  • Die Sicherung wird bei jedem Systemstart ausgeführt.
  • Der Systemstart dauert durch die Sicherung länger.
  • Es werden nur 3 Generationen gesichert.
  • Die Funktion ist ohne einen Systemstart nicht korrekt ausführbar.

Um diese Probleme zu umgehen, bieten sich eine ganze Reihe von Programmen an, die diese Probleme nicht haben. Alle diese Programme verfolgen unterschiedliche Strategien bei der Sicherung der Systemkonfiguration.

TODO: Liste von Programmen zum Sichern der WPS

Startreihenfolge des Systemstartordners festlegen

  • Im Einstellungsnotebook des Systemstartordners die Anzeigeart "Einspaltig" auswählen.
  • Anschließend die Programmobjekte nach belieben Anordnen.

Die WPS startet jetzt alle im Systemstartordner enthaltenen Objekte in der vorgegebenen Reihenfolge (von oben nach unten).

Leider läßt sich die Reihenfolge mit der die Programme in der Fensterliste angezeigt werden, auf diesem Wege nicht bestimmen. Das liegt daran, das die einzelnen Programm unterschiedlich lange benötigen, bis Sie sich in die Fensterliste eintragen.

Objekt pixelweise verschieben

  • Das Icon mit einem Klick der Maustaste 1 markieren.
  • Den Mauszeiger auf die Kante der Hintergrundmarkierung positionieren.
  • Jetzt läßt sich das Icon um einige wenige Pixel verschieben.

Programme mit Parametern starten

Wenn im Feld Parameter, in den Einstellungen des Programmobjektes folgendes eingetragen wird:

[Beschreibung]

Beschreibung dabei durch einen beliebigen Text ersetzen.

Jetzt erscheint bei jedem Start des Programmes eine Aufforderung, die Parameter für das Programm einzugeben.

Natürlich können vor und hinter den eckigen Klammer auch andere Parameter angegeben werden, wenn sich diese nicht bei jedem Programmstart ändern.

Parameterübergabe bei Drag'n Drop konfigurieren

  • %* Standardvorgabe -- An die Anwendung wird der komplette Pfad- und Dateiname übergeben.
    D:\BEISPIEL\TESTIT.TXT
  • %**P Übergibt den komplette Pfad ohne abschließenden Backslash.
    D:\BEISPIEL
  • %**D Übergibt nur den Laufwerksbuchstaben.
    D:
  • %**N Übergibt den Dateinamen ohne Erweiterung.
    TESTIT
  • %**F Übergibt den Dateinamen mit Erweiterung.
    TESTIT.TXT
  • %**E Übergibt nur die Erweiterung.
    TXT

Bedienung der WPS mit der Maus

  • MB-1 Markiert genau ein Objekt der WPS
  • Alt + MB-1 Schaltet den Edititermodus für einen Objekttitel ein. (konfigurierbar)
  • Strg + MB-1 Die Markierung des Objektes wird geändert, ohne das sich die Markierung anderer Objekte ändert.
  • Umschalt + MB-1 Bei ein- oder mehrspaltiger Anzeige werden alle Objekte zwischen dem angeklickten und dem zuvor markierten Objekt markiert.
  • Doppelklick MB-1 Öffnet das angeklickte Objekt.
    Bei einem Ordner wird die Standardansicht geöffnet.
    Ein Doppelklick auf die WPS aktiviert die Klickstartleiste oder das Warpcenter.
  • Alt + Doppelklick MB-1 Öffnet das Einstellungsnotizbuch für das, bzw. alle markierten Objekte.
  • Strg + Doppelklick MB-1 Öffnet alle markierten Objekte.
  • Umschalt + Doppelklick MB-1 Öffnet das Objekt und schließt gleichzeitig den Stammordner.
  • Alt + Strg + Doppelklick MB-1 Öffnet das Einstellungsnotizbuch für das angeklickte Objekt, unabhängig davon ob noch andere Objekte markiert sind.
  • Alt + Umschalt + Doppelklick MB-1 Öffnet das Einstellungsnotizbuch für das angeklickte Objekt, unabhängig davon ob noch andere Objekte markiert sind, und schließt gleichzeitig den Stammordner.
  • ziehen MB-2 Standardaktion für das Bewegen eines oder der markierten Objekte ausführen. Standard für normale Objekte ist verschieben.
    Schreibgeschützte Objekte werden kopiert.
  • Strg + ziehen MB-1 Erweitert die Markierung auf alle überstrichenen Objekte.
  • Alt + MB-2 Aufnehmen des Objektes (seit Warp Version 4)
  • Strg + MB-2 Kopiert die aufgenommenen Objekte in den Zielordner.
  • Umschalt + MB-2 Verschiebt die aufgenommenen Objekte in den Zielordner.
  • Strg + Umschalt + MB-2 Erstellt für alle aufgenommenen Objekte eine Referenz im Zielordner.
  • Umschalt + ziehen MB-2 Das oder die markierten Objekte in den Zielordner verschieben.
    Ist die Aktion für eines der markierten Objekte nicht zugelassen, wird diese auch für die anderen Objekte nicht ausgeführt.
  • Strg + ziehen MB-2 Kopiert das oder die markierten Objekte in den Zielordner.
  • Strg + Umschalt + ziehen MB-2 Erstellt für das oder die markierten Objekte eine Referenz im Zielordner.
  • MB-1 + MB-2 auf den Hintergrund der Arbeitsoberfläche Die Fensterliste wird angezeigt.

REXX

OS/2 bietet mit REXX eine Vielzahl von Manipulations- und Steuerungsmöglichkeiten an. Mit Hilfe dieser Möglichkeiten lassen sich viele Aufgaben erledigen, für die sonst zusätliche Tools erforderlich wären.

Autoren eines Programmes bietet REXX Funktionen, um Programme auf dem Zielsystem zu installieren und zu konfigurieren.

Kontextsensitive REXX-Hilfe für den EPM

Dazu muss eine Datei mit dem folgenden Inhalt erstellt und anschließen in ein Verzeichnis im Suchpfad (SET PATH=...) kopiert werden.

REXX.NDX

EXTENSIONS: CMD
(SYS*, VIEW REXX.INF REXX-Dienst)
(a*, VIEW REXX.INF ~)
(b*, VIEW REXX.INF ~)
(c*, VIEW REXX.INF ~)
(d*, VIEW REXX.INF ~)
(e*, VIEW REXX.INF ~)
(f*, VIEW REXX.INF ~)
(g*, VIEW REXX.INF ~)
(h*, VIEW REXX.INF ~)
(i*, VIEW REXX.INF ~)
(j*, VIEW REXX.INF ~)
(k*, VIEW REXX.INF ~)
(l*, VIEW REXX.INF ~)
(m*, VIEW REXX.INF ~)
(n*, VIEW REXX.INF ~)
(o*, VIEW REXX.INF ~)
(p*, VIEW REXX.INF ~)
(q*, VIEW REXX.INF ~)
(r*, VIEW REXX.INF ~)
(s*, VIEW REXX.INF ~)
(t*, VIEW REXX.INF ~)
(u*, VIEW REXX.INF ~)
(v*, VIEW REXX.INF ~)
(w*, VIEW REXX.INF ~)
(x*, VIEW REXX.INF ~)
(y*, VIEW REXX.INF ~)
(z*, VIEW REXX.INF ~)

Dann noch den folgenden Eintrag in der CONFIG.SYS ergänzen.

SET HELPNDX=EPMKWHLP.NDX+REXX.NDX

Programme starten mit REXX

call SysSetObjectData Name, 'OPEN=DEFAULT' 

Entspricht einem Doppelklick auf das Objekt.

Mit Name muss entweder die Objektid oder der komplette Dateiname angegeben werden.

Beispiele:
OBJECT_ID <WC3>
Dateiname C:\WC3\WC3.EXE
/****************************************************************************/
/*                                  OPEN.CMD                                */
/****************************************************************************/
PARSE ARG name Restline

call RxFuncAdd 'SysSetObjectData', 'RexxUtil', 'SysSetObjectData'

name = Translate( name, ' ', '"' )
name = Translate( name, " ", "'" )
name = Strip(name)

call SysSetObjectData name, 'OPEN=DEFAULT'

EXIT