ALIGN [ (l1 [l2]) ] /kette/ [ MOVEALL ] [ H ] [ I ] [ n | ALL ] ALoder
ALIGN [ (l1 [l2]) ] col [ LEFT | RIGHT [ MOVEALL ] ] [ n | ALL ] ALDieser Befehl verschiebt die betroffenen Sätze horizontal.
Zeilen können explizit angegeben werden: von Zeile l1 bis Zeile l2 oder von Zeile l1 bis zum Datenende. Sie können aber auch implizit angegeben werden: beginnend mit der aktuellen Zeile n Zeilen oder alle Zeilen des workfile.
In der ersten Form werden von den betroffenen Zeilen alle diejenigen verschoben, die die Zeichenkette kette enthalten. Sie werden so ausgerichtet, dass kette jeweils untereinander steht. Das Ergebnis richtet sich nach derjenigen Zeile, in der kette am weitesten rechts steht, weil Zeilen alle nach rechts, aber im allgemeinen nicht nach links verschoben werden können. Diejenigen Zeichen, die vor kette stehen, bleiben an ihrem Ort. Hast du zum Beispiel die Zeilen
abc.def.de - - [23/Dec/2005...
xyx.ghijkl.at - - [24/Dec/2005...
abc.def.de - - [23/Dec/2005...
xyx.ghijkl.at - - [24/Dec/2005...
Zusätzlich hast du die Möglichkeit, die Zeilen als ganzes zu
verschieben, indem die Zeichen vor kette mit verschoben
werden, wenn du den Parameter MOVEALL angibst. Der
Befehl ALIGN /[/ MOVEALL ALL hätte also folgendes
ergeben:
abc.def.de - - [23/Dec/2005...
xyx.ghijkl.at - - [24/Dec/2005...
Bei der zweiten Form geschieht die Ausrichtung der betroffenen Zeilen
anhand der angegebenen Spalte. Steht in dieser Spalte ein Leerzeichen,
so werden ohne Angabe weiterer Parameter alle Zeichen nach dieser Spalte
so weit nach links verschoben, dass das erste Nicht-Leerzeichen in diese
Spalte gerät. Gibst du aber den Parameter RIGHT an, so
werden alle Zeichen vor dieser Spalte so weit nach rechts verschoben,
dass das erste Nicht-Leerzeichen in diese Spalte gerät. Gibst du bei
dieser Verschiebung zusätzlich den Parameter MOVEALL an,
so wird die Zeile insgesamt nach rechts verschoben, so dass also auch
die Zeichen nach der Spalte an der Verschiebung teilnehmen. Wenn du etwa
folgende Zeilen hast:
abc def
1234567 90123456
xyz ABC
so hat der Befehl ALIGN 7 ALL das Ergebnis
abc def
1234567 90123456
xyz ABC
der Befehl ALIGN 7 RIGHT ALL das Ergebnis
abc def
1234567 90123456
xyz ABC
und der Befehl ALIGN 7 RIGHT MOVEALL ALL das Ergebnis
abc def
1234567 90123456
xyz ABC