Sie können die Umgebungsvariablen wie üblich entweder mit dem Systemaufruf
SetEnv <Variable> <Ersetzung>setzen oder verändern, um die bei Ihnen gültige Konfiguration zu berücksichtigen, oder Sie können die internen Standardwerte beibehalten. Hier ist eine Liste der Suchpfad-Umgebungen, ihrer Vorgabewerte und dessen, was
Variable | Vorgabewert | Dateien |
MFBASES | "MF:bases" |
*.base Kommandodateien |
MFINPUTS | "MF:inputs/*," |
|
"MF:mfinputs/*," |
||
"MF:inputs/amsfonts/sources/*," |
||
"MF:mfinputs/amsfonts/sources/*," |
||
"MF:inputs/old-german/*," |
||
"MF:mfinputs/old-german/*" |
*.mf Programmdateien | |
MFPOOL | "MF:,MF:pool" |
mf.pool Textverzeichnis |
MFCONFIG | "MF:config" |
mfmemory.config |
Zusätzlich dazu wurden auch für die Hilfsprogramme einige Umgebungsvariable eingerichtet, die insbesondere die Unterscheidung zwischen den verschiedenen Arten von Zeichensatzkodierungen ermöglichen.
Variable | Vorgabewert | Dateien |
GFFONTS | "TEX:gf/*," |
|
"TEX:fonts/gf/*," |
||
"TEX:texfonts/gf/*" |
*.*gf Dateien | |
PKFONTS | "TEX:pk/*," |
|
"TEX:fonts/pk/*," |
||
"TEX:texfonts/pk/*," |
||
"TEX:pk/amiga/*," |
||
"TEX:fonts/pk/amiga/*," |
||
"TEX:texfonts/pk/amiga/*," |
||
"TEX:pk/deskjet/*," |
||
"TEX:fonts/pk/deskjet/*," |
||
"TEX:texfonts/pk/deskjet/*," |
||
"TEX:pk/cx/*," |
||
"TEX:fonts/pk/cx/*," |
||
"TEX:textfonts/pk/cx/*," |
||
"TEX:pk/ljfour/*," |
||
"TEX:fonts/pk/ljfour/*," |
||
"TEX:texfonts/pk/ljfour/*" |
*.*pk Dateien | |
VFFONTS | "TEX:vf," |
|
"TEX:fonts/vf," |
||
"TEX:texfonts/vf" |
*.vf Dateien | |
PLFONTS | "TEX:pl," |
|
"TEX:fonts/pl," |
||
"TEX:texfonts/pl" |
*.[v]pl Dateien |
Alle Programme in der neuen Version suchen ohne Berücksichtigung dieser
Pfade immer zuerst im aktuellen Verzeichnis nach den jeweiligen Dateien.
Dadurch konnte insbesondere das Problem mit der Notation für das „aktuelle``
Verzeichnis beseitigt werden. Zwar ist weiterhin die leere Zeichenkette
und zusätzlich der Punkt "."
erlaubt, jedoch bringt dies keinerlei
Gewinn; eine Datei wird stets von der ersten Stelle ihres Auftretens im
Gesamtsuchpfad aus benutzt.
Die umständliche Angabe von mehrfach geschachtelten Unterverzeichnissen ist nicht mehr notwendig. An jeden beliebigen Eintrag in einer Umgebungsvariablen kann jetzt ein Stern * angehängt werden, wodurch sowohl in diesem Pfad als auch in jedem direkten Unterpfad nach der erforderlichen Datei gesucht wird (siehe den obigen Eintrag für MFINPUTS). Beliebig tiefe Suche im Verzeichnisbaum ist durch Anhängen eines Doppelsterns ** möglich, kann aber bei stark verzweigten Verzeichnissen beim Aufruf der Programme etwas Zeit kosten.
Eine weitere positive Eigenschaft der neuen Pfadsuchroutinen ist, daß Sie die obigen Vorgabewerte nicht in die Umgebungsvariablen aufnehmen müssen. Wenn Ihre Konfiguration die Verwendung anderer oder zusätzlicher Pfade erfordert, genügt die Angabe der fehlenden Einträge in die entsprechende Umgebungsvariable. Sämtliche internen Vorgaben werden dann einfach daran angehängt, also im Suchprozeß zum Schluß auf jeden Fall berücksichtigt.
An dieser Stelle möchte ich mich bei Giuseppe Ghibò bedanken, der mir
freundlicherweise den Quelltext seines EVPATHS-Paketes zur
Verfügung gestellt hat. Ohne diese konstruktive Mitwirkung würde es
die elegante Implementierung der rekursiven Pfadsuche für nicht geben. Insgesamt verdankt die neue Version ihre Existenz und den
erweiterten Umfang dem hartnäckigen Fordern aus Italien.
Tritt bei der Verarbeitung ein Fehler auf oder unterbrechen Sie bei seiner Arbeit, so meldet sich
mit dem Fragezeichen als
Eingabemarke. Geben Sie in solch einem Fall ,e` (oder
,E`) ein, so wird dadurch Ihr Texteditor aufgerufen. Welcher
das in Ihrem Fall ist, wird durch die Umgebungsvariable MFEDIT
gesteuert, die ein Aufrufmuster enthält, um Ihren bevorzugten Systemeditor
in der gerade bearbeiteten Datei an der fehlerhaften Stelle zu positionieren.
Dies ist nicht notwendigerweise die Datei, mit der Sie
aufgerufen
haben. Geben Sie als Wert von MFEDIT einen beliebigen Programmaufruf
oder ein beliebiges Skript an, der/das Ihren Editor in der Datei
,
%s
` und der Zeile ,%d
` positioniert. Die
Standardeinstellung lautet folgendermaßen und startet den mit dem
Betriebssystem gelieferten Editor MEmacs:
EDITOR "MEmacs goto %d %s"Im rexx-Verzeichnis finden Sie einige ARexx-Skripten zur Verwendung des Cygnus Ed Professional Editors. Wenn Sie diese verwenden wollen, müssen Sie einfach der Umgebungsvariablen MFEDIT die Zeichenkette
"rx MF:rexx/MFEdit.rexx %s %d"zuweisen. Das zweite Skript NameStruc müssen Sie in das REXX:-Verzeichnis kopieren, da es direkt aus MFEdit.rexx aufgerufen wird.
Wie schon in der vorangegangenen Version, können Generierungsläufe für
die virtuellen Gerätetreiber proof und smoke am
Bildschirm mitverfolgt werden, so wie es im ,book` von
Don Knuth [4] beschrieben ist. Da dies aber einige erweiterte
Bibliotheksroutinen verwendet, die in älteren Versionen des Betriebssystems
nicht vorhanden sind, funktioniert dies nur ab AmigaDOS 2.0 und
höher. Die explizite Aktivierung durch Setzen der Umgebungsvariablen
MFWTERM auf den Wert ,amiterm` ist nicht mehr
notwendig, da dies zu Mißverständnissen führte.