7. History


 

7.1. History Funktion

Die Eingabe-Funktion in Status-Zeile 2 kennt verschiedene Typen von Input-Strings (siehe Kapitel "History File"), von denen jeder einen eigenen History-Buffer hat. Dieser Buffer wird (im Verlauf einer String- Eingabe in Status-Zeile 2) mit Cursor Up / Down zum Vorschein gebracht. In der Mitte des Bildschirms erscheint ein Fenster mit den letzten 16 Einträgen für diesen String-Typ. Die Einträge sind in der Reihenfolge ihrer Benutzung sortiert - der letzte in der untersten Zeile. Dies ist anfangs auch die selektierte Zeile (durch inverse Darstellung hervorgehoben). Bedienung wie folgt: - Cursor Up / Down Die selektierte Zeile wird nach oben / unten verschoben. - <esc> / ^C Abbruch der History-Funktion, die alte Status-Zeile 2 bleibt erhalten. - <cr> Die aktuell selektierte History-Zeile wird in die Status-Zeile 2 übernommen und kann dort weiter editiert werden. - <Del> / <Entf> Die selektierte Zeile wird aus dem History Buffer gelöscht. - <Ins> / <Einfg> Die selektierte Zeile wird gegen Löschen verriegelt / freigegeben (durch eine Markierung vor der Zeile erkennbar).

7.2. History File

Der History Buffer wird nach dem Starten des Editors vom File MBEDIT.HST gelesen und vor dem Beenden wieder zurückgeschrieben. Auf diese Weise bleiben History-Einträge auch über längere Unterbrechungen hinweg erhalten. Der File befindet sich auf der User-Home-Directory, bestimmt durch die Umge- bungsvariable ":HOME:" bzw. "HOME" (siehe auch Kapitel "Umgebungsvariablen"). MBEDIT.HST ist ein ASCII-File, der selbst wieder editiert werden kann, wobei der End-of-String-Character '\0' am Ende jeder Zeile stehen muß. - Format der Einträge im History-File : 3 1:the quick brown fox ...'\0'<cr><lf> | ||| | | | ||| | +-- zum leichteren Editieren | ||| | mit einem Text-Editor | ||| | | ||| +-- Ende des Strings | ||| | ||+-- Text mit allen ASCII-Charactern außer '\0' | || | |+-- Markierung für Start des Text-Strings | | | +-- 1 = löschen verriegelt, 0 = löschen erlaubt | +-- History-Kennung (z.B.: 3 = "Find" History) - Liste der History-Kennungen Id | Eingabe-String-Typ -----+--------------------- 0 | Filename (Quit Init / Write, Get / Put File, Get Macro-File) 1 | Set Margin 2 | Numerical Inputs (Hex Input, File Number, Left Column, Tabs, | View Row, Jump Line, Jump Position) 3 | Find 4 | Replace 5 | System ("!") 6 | Calc 7 | Macro (Create / Delete / Save / Execute)

7.3. Status File

Beim Verlassen von mbedit wird die aktuelle File-Zusammenstellung auf einem speziellen File "MBEDIT.STA" auf der aktuellen Directory abgespeichert. Wenn mbedit mit dem Kommando "mbedit -" oder "mbedit last_again" aufgerufen wird, wird dieser File benutzt, um die gleiche File-Zusammenstellung wieder herzu- stellen, inklusive Schreibschutz und der letzten Cursor-Position. - Format der Einträge (max. 10) im Status-File : 0 MBEDIT.C 5078 0 SWITCHES.C 75622 1 HISTORY.H 1260 0 ..\INCL\DATA.H 335 | | | | | +-- Cursor-Position im File | +-- Pfadname / Filename +-- 1 = View Only Bis Zur Version 7.05 wurde der Status File "mbedit.sta" in jeder aktuellen Directory angelegt. Daher gab es eine wahre Inflation dieser Files. Viele Anwender haben sich darüber beklagt, deshalb beschloß ich, das Verhalten dieses Status Files zu modifizieren. Seit Version 7.06, existiert nur noch ein Status File "mbedit.sta" auf der User-Home-Directory. Der Nachteil dieser Tatsache ist, daß man jetzt von der Option "mbedit - " or "mbedit last_again" nur noch Gebrauch machen kann, solange man auf derselben Directory arbeitet. Ich denke, mit dieser Ein- schränkung kann man leben. Das alte oder neue Verhalten kann mit der #define-Konstanten "WITH_LAST_AGAIN" im Header-File "config.h" angewählt werden (siehe dort !).