allegro-C Logo

Text-Editor X

Anwendung:

Bearbeitung von "normalen" Textdateien, auch "ASCII-Dateien" genannt = Dateien, die aus schlichtem Text bestehen, wobei die Zeilen durch die Steuerzeichen "Carriage Return / Line Feed" (Codes 13 10) getrennt sind

Darunter fallen die Parameterdateien (.APR, .APT, .API und .AIM), ferner die .CFG-Dateien, auch UIF- und H-Dateien sowie die CockPit-Vorgaben DEFAULT.OPT, nicht jedoch Datenbank- und Indexdateien (.ALG, .ALD, .ADX, .TBL!)

Editor x wird vom CockPit automatisch aufgerufen, wenn eine Datei zu bearbeiten ist. Sie können aber mit dem E-Befehl in der Datei DEFAULT.OPT jeden anderen Editor verlangen (siehe Handbuch Kap. Kap.0.11).

Installation:

X wird automatisch auf Ihr Programmverzeichnis kopiert. Kann auch in jedem anderen Verzeichnis installiert werden, wenn dieses in der PATH-Variablen von DOS aufgeführt wird. Die Dateien X.EXE und X.MAC (= Funktionstasten-Belegung, Farbeinstellungen) gehören zusammen.

Aufruf:

x dateiname

z.B. x d-1.apr

Dann erscheint der Anfang der Datei dateiname (22 Zeilen). Wenn sie nicht existiert, wird sie am Ende beim Speicherbefehl (siehe unten: Quit mit s) neu angelegt und mit dem geschriebenen Text bespeichert.

Zustand:

Der Editor befindet sich nach dem Start im Befehlszustand.In der obersten Zeile steht eine Liste von Befehlen, die man geben kann. Wenn man die Leertaste drückt, kommt die Liste der restlichen Befehle. Von jedem Befehl braucht nur der Anfangsbuchstabe eingegeben zu werden (siehe unten). Im Befehlszustand kann man auch den Cursor bewegen, aber nicht schreiben. Dazu muß man wissen:

Die wichtigsten Handgriffe

2 Minuten, die sich lohnen

Mit den folgenden drei Punkten lernen Sie in 2 Minuten alles, was Sie für normale Bearbeitungen an den Parameterdateien brauchen. Die nachfolgenden Seiten enthalten eine vollständige Beschreibung aller Funktionen des Editors. Damit können Sie sich nach und nach vertraut machen.

  1. Wenn die Datei erscheint: mit dem Cursor an die zu bearbeitende Stelle fahren. (Bei großen Dateien ist der Find-Befehl (siehe unten unter f) dabei hilfreich.

  2. <Einfg> : Schreibzustand einschalten. Oben links steht "Insert", man ist also im Einfügemodus. Mit Taste <Einfg> kann man ständig zwischen Einfüge- und Überschreibmodus ("Exchange") umschalten, wie bei Textprogrammen üblich.

  3. <Esc> : Schreibzustand verlassen, Befehlszustand wird wieder eingeschaltet,

    q : Quit-Befehl zum Beenden der Bearbeitung, dann gibt es 2 Möglichkeiten:

    s : Save-Befehl zum Speichern

    e : Ende ohne Speichern, d.h. die ausgeführten Änderungen werden ignoriert.

Schreibzustand:

Wenn man im Befehlszustand x statt <Einfg> gedrückt hat, ist man sofort im Überschreibmodus, sonst im Einfügemodus.

Die einzelnen Funktionstasten haben dann folgende Wirkungen: (im Befehlszustand übrigens auch)

<Cursortasten> und <BildOben>/<BildUnten>
normale Wirkung, wie Sie es erwarten.

<Pos 1>
Sprung an den Zeilenanfang. Sofortige Wiederholung: Sprung an den Bildschirmanfang.

<Strg+Pos 1>
Sprung an den Textanfang.

<Ende>
Sprung ans Zeilenende. Sofortige Wiederholung: Sprung an den Anfang der letzten Bildschirmzeile.

<Strg+Ende>
Sprung an das Textende.

<Entf>
<Rücktaste>
<Einfg>
normale Wirkung wie in anderen Programmen

<Esc>
Sprung in den Befehlszustand, siehe oben.

<Enter> oder <RETURN>
Zeile wird an der Stelle, wo sich der Cursor befindet, geteilt. Der hintere Teil wird eine Zeile tiefer gesetzt.

Wenn man das nicht bewußt machen will, sondern einfach nur an den Anfang der nächsten Zeile gehen will: <Home> und <CursorUnten> statt <Enter> geben.

Befehle

Hier die Liste der Befehle und ihrer Wirkungen:

Again
ein vorher gegebener Befehl, z.B. ein Suchbefehl (f oder -) oder ein Ersetzungsbefehl (r) wird wiederholt.

Buffer
Die Cursorposition wird markiert. Man fährt dann mit dem Cursor (dabei sind auch PgUp und PgDn sowie Find-Befehl erlaubt) an eine beliebige andere Stelle weiter unten in der Datei und drückt abermals b . Von der vorher markierten Stelle bis zu dieser Endposition wird alles in einen "Pufferspeicher" kopiert. Sodann:

Copy
Der Inhalt des Pufferspeichers (siehe Buffer, Delete und F3) wird an der Stelle eingefügt, wo der Cursor gerade steht. Wiederholbar!

Delete
Wie Buffer, nur wird beim zweiten Druck auf d der markierte Bereich gelöscht. Wenn man gleich danach c drückt, wird das rückgängig gemacht. Sonst kann man den gelöschten Teil auch woanders wieder einfügen. Auch mehrmals an verschiedene Stellen. Beim nächsten b oder d -Befehl oder F3 wird der Pufferspeicher durch einen neuen Inhalt ersetzt, d.h. sein Inhalt ist dann verloren.

Find
man gibt danach eine beliebige Zeichenkette und dann Enter. Falls die Zeichenkette im Text (ab Cursorposition nach unten) vorkommt, landet der Cursor sofort genau dahinter. Wiederholung mit a (= again). - : (Minus) dasselbe, nur rückwärts, d.h. von der Cursorposition nach oben.

Get
Einen anderen Text, dessen Namen man anschließend eingeben muß, laden und an der Cursorposition in den aktuellen Text einkopieren.

Insert
Übergang in den Schreibzustand (siehe unten), wobei die eingegebenen Zeichen an der Cursorposition eingesetzt werden (= Einfügemodus). Wechsel in den normalen Überschreibmodus und zurück: jeweils mit der <Ins>-Taste. (= <Einfg>-Taste)

Jump
Zu einer vorher gesetzten Marke (a,b,c,d) springen: dazu gibt man nach dem j einen dieser Buchstaben (siehe Tag).

Macro
Einschalten der Makro-Prozedur: sie dient zur Belegung der Funktionstasten mit beliebigen Tastenfolgen. Es erscheint oben ein Untermenü Delete Load Record Save

Man gibt einen der Anfangsbuchstaben; die Wirkung ist:

  • d: ein vorher mit r gespeichertes Makro wird gelöscht

  • l: eine vorher gespeicherte Funktionstastenbelegung wird geladen

  • r: Makro aufzeichnen: danach gibt man eine der Tasten F1 - F8. Auf dieser Taste soll die nachfolgende Tastensequenz gespeichert werden. Man gibt nun beliebige Befehle oder auch Text ein, geht dann wieder in den Befehlszustand (Esc) und drückt abermals m . Damit ist die gewählte Funktionstaste mit der eingegebenen Tastenfolge belegt. Beispiel siehe unten.

  • s: die zuvor gespeicherten Makros werden als Datei x.mac gespeichert und bei erneutem Aufruf von x automatisch geladen.

\: (Backslash)

Eingabe von Zeichen, die sonst per Tastatur nicht eingegeben werden können. Es erscheint oben die Frage Literal: , die man mit dem ASCII-Zahlenwert des gewünschten Zeichens beantwortet. An der Cursorposition erscheint dann dieses Zeichens. (Die Eingabe im Schreibmodus mittels <Alt>-Taste und Ziffern funktioniert nicht mit allen Zeichen.) Will man z.B. das Teilfeld-Trennzeichen auf die Taste F2 legen, kann man folgendes Makro dafür definieren: (siehe Befehl m)

<Esc> m r F2 \ 31 <Enter> m

Anschließend löst F2 immer das Teilfeldtrennzeichen aus. Wenn dies dauerhaft so bleiben soll: mit der Tastenfolge <Esc> m s die Makros speichern.

Other
Ein zweiter Text kann zusätzlich geladen werden.

Zwischen beiden schaltet man anschließend nach Belieben durch Druck auf o hin und her und bearbeitet sie unabhängig voneinander. Jedoch:

Teile, die man in dem einen Text mit b markiert oder mit d gelöscht hat, kann man mit c in den anderen einkopieren!

Weil das Hin- und Her-Schalten sehr schnell geht, kann man diese Funktion auch benutzen, um zwei Dateien visuell zu vergleichen.

Hat man an beiden Texten Veränderungen gemacht, muß beim Quit-Befehl für jeden einzeln entschieden werden, ob er zu speichern ist oder nicht.

Put
Ausschnitt abspeichern : Textbereich wird zunächst markiert wie bei b. Nach dem zweiten p wird aber nach einem Namen gefragt. Unter diesem Namen wird dann der markierte Bereich als Datei gespeichert. So kann man leicht Teile aus Dateien kopieren, die man später separat verwenden will. Gibt man PRN als Dateiname, wo wird der Textausschnitt sofort gedruckt.

Quit
Ausstieg aus dem Editor. Es erscheint ein Untermenü: Backup Exit Initialize Save-Exit Update Write

Die wichtigsten Unterfunktionen sind s und e :

s
der Text wird in der bearbeiteten Form neu abgespeichert, die alte Form ist verloren. Das ist der Normalfall.

Text speichern: Man gibt also normalerweise, um eine Bearbeitung abzuschliessen, hintereinander <Esc> q s.

b
dasselbe, aber die alte Form wird umbenannt (Typ .BAK) und bleibt somit erhalten.

e
die Bearbeitung wird ergebnislos abgebrochen, d.h. die Datei bleibt unverändert erhalten. Wenn man Änderungen am Text vorgenommen hat, wird man noch gefragt, ob man wirklich die Änderungen ignorieren will. Man bestätigt mit y oder geht mit n <Esc> zurück in die Bearbeitung.

w
der Text kann in eine andere Datei geschrieben werden. Der Name wird dann abgefragt. Die andere Datei wird überschrieben, wenn sie existiert!

Replace

Wie bei Find wird nach einer zu suchenden Zeichenkette gefragt. Dann wird nach einer dafür einzusetzenden Ersatzzeichenfolge gefragt. Nach Enter wird die Ersetzung, falls möglich, ausgeführt.

Wiederholung mit a .

Mehrfachausführung: vor r eine Zahl eingeben! Wenn man z.B. eingibt: 999 r xyz <Enter> abc <Enter> (hinter der Zahl kein <Enter>, sondern sofort r !) werden die nächsten 999 vorkommenden xyz jeweils durch abc ersetzt.

Set
Verschiedene Optionen können gesetzt werden.

Am wichtigsten: Case

Wenn man nach s hintereinander c und y gibt, wird die Groß-Klein-Unterscheidung eingeschaltet. Sonst wirken die Befehle f s und r nämlich unterschiedslos auf groß und klein geschriebene Buchstaben.

Auch wichtig: Farbeinstellungen. Geben Sie z.B. einmal s p f 0 s p b 7, dann haben Sie alles schwarz auf weiß. (Werte: 0=schwarz, 1=blau, 2=grün, 3=cyan, 4=rot, 5=magenta, 6=braun, 7=weiß; zur Vordergrundfarbe kann man 8 addieren, dann wird sie heller, z.B. 14=gelb)

Tag
(Sprungmarke) Danach drückt man a , b , c oder d.

Damit hat man die Cursorposition (unsichtbar) markiert. Also kann man bis zu vier Stellen in der Datei gleichzeitig markieren.

Mit j (siehe dort) kann man diese Stellen jederzeit wieder anspringen.

Die Marken bleiben bei Abspeicherung nicht erhalten!

Xchange
Vom Befehlszustand geht man mit x in den Überschreibmodus, d.h. in den "normalen" Schreibzustand. Aus diesem geht man mit <Esc> wieder in den Befehlszustand.

#

Die Nummer der aktuellen Zeile wird angezeigt.

Funktionstasten

Jeder kann sie selbst belegen: siehe oben Befehl m . Die mitgelieferte Datei X.MAC, die automatisch jedesmal geladen wird, enthält diese Belegungen:

<F3>
Zeile löschen, in der sich der Cursor befindet. Anschliessend kann man die Zeile woanders einkopieren, indem man den Cursor dorthin bewegt und Befehl c gibt. Die gelöschte Zeile wandert also zunächst in den Pufferspeicher (siehe Befehle b und d ).

<F4>
Leerzeile einfügen, und zwar vor die Zeile, in der sich der Cursor befindet. Wenn man vorher (im Befehlszustand!) eine Zahl eingibt, werden entsprechend viele Leerzeilen eingesetzt. Also z.B. 7 F4 (kein <Enter> hinter der 7 !).

<F5>
Zeilenende (ab Cursor) löschen. Der gelöschte Teil geht in den Pufferspeicher und kann mit c woanders wieder einkopiert werden.

<F8>
Wenn der Cursor gerade auf einem der Klammerzeichen ([{ }]) steht, dann springt er vor bzw. zurück zur dazugehörigen schließenden bzw. öffnenden Klammer. (Unschätzbar für den C-Programmierer, weniger für andere Benutzer)

<F9>
DOS-Exkursion: Bearbeitung kurzfristig unterbrechen. Anschließend kann man jeden MS-DOS-Befehl ausführen und dann mit dem Befehl EXIT in den Editor zurückkehren - an die vorher verlassene Stelle!





© Universitätsbibliothek Braunschweig, Bernhard Eversberg, 30.09.1996
B.Eversberg@tu-bs.de