Home Miszellaneen Abfragebefehle Tips & Tricks

Formatspezifische Befehle

UDO bietet für jedes Ausgabeformat zwei Befehle und eine Umgebung, mit denen es möglich ist, Zeilen nur dann auszugeben, wenn man in eines der Formate umwandelt.

In diesen Zeilen können dann spezielle Befehle für ein Format angegeben werden, die UDO dann 1:1, also Umwandlung von Sonderzeichen und ohne Einrückungen, ausgibt.

Bei diesen Befehlen und Umgebungen spielen Kürzel eine große Rolle. Hier eine Übersicht, welches Kürzel für welches Ausgabeformat benutzt werden kann:

asc ASCII
aqv Apple-QuickView
htag HP-Helptag-SGML
html HTML
info Texinfo
ldoc Linuxdoc-SGML
lyx LyX
man Manualpage
pch Pure-C-Help
pdf PDF
rtf RTF
stg ST-Guide
tex LaTeX
tvh Turbo-Vision-Help
win WinHelp

Es existieren nun je zwei Befehle für jedes Format, mit dem man Zeilen, die nur für dieses Format bestimmt sind, und für Zeilen die für alle außer dieses Format bestimmt sind, ausgeben kann. Die Befehle ergeben sich, indem man den Kürzeln ein Ausrufezeichen bzw. noch ein weiteres Gleichheitzeichen voranstellt.

Um beispielsweise eine Zeile nur in das ASCII-Format auszugeben, gibt man folgendes an:

!asc Diese Zeile erscheint nur im ASCII-Format

Um eine Zeile in allen Formaten außer dem ASCII-Format auszugeben, gibt man folgendes an:

!=asc Diese Zeile erscheint nicht im ASCII-Format

Der Inhalt dieser Zeilen wird ohne das Kommando selbst, ohne Berücksichtigung von UDO-Kommandos und ohne Umwandlung von Sonderzeichen ausgegeben. Diese Zeilen sorgen — genau wie alle Kommandos — auch dafür, daß ein Absatz beendet wird. Diese Kommandos eignen sich also nicht dazu, mittem in einem Absatz unterschiedliche Sätze einzufügen!

Dieses Kommandos können dazu dienen, formatspezifische Kommandos einzufügen. Im folgenden Beispiel wird gezeigt, welche Kommandos man in einen Quelltext einfügen muß, damit LaTeX weiß, mit welchem Stil ein Dokument auszudrucken ist und damit es einen Index erzeugt:

!no_preambel [tex]
!tex \documentstyle[11pt,german,makeidx]{article}
!tex \makeindex
[...]
!tex \printindex

Die raw-Umgebung

Will man größere Blöcke im jeweiligen Format angeben, wäre es ziemlich mühsam, wenn man jede Zeile mit einem Kürzel beginnen müßte.

Daher bietet UDO die "raw-Umgebung" an. Sie wird mit dem Befehl !begin_raw begonnen und mit dem Befehl !end_raw beendet.

Genau wie der Inhalt der Zeilen, die mit den obigen Formatkürzeln begonnen werden, gibt UDO diese Zeilen ohne Anpassung von Sonderzeichen und ohne Berücksichtigung von UDO-Befehlen direkt aus.

Zusammen mit der Möglichkeit, das Ausgabeformat abzufragen, in das ein Quelltext umgewandelt wird, können spezielle Befehle ausgegeben werden. Anwendungsbeispiele wären z.B. komplizierte Tabellen für LaTeX oder Formulare für HTML. Letzteres soll hier aufgezeigt werden:

!ifdest [html]
!begin_raw
<FORM method=post action="mailto:DirkHage@aol.com">
<PRE>
<p>    Name:  <INPUT name="Name" size=60>
<p>
<p>           <INPUT type=submit value="Absenden">
<p>           <INPUT type=reset value="L&ouml;schen">
</PRE>
</FORM>
!end_raw
!else
In der HTML-Version befindet sich hier ein Formular.
!endif

Um noch einmal den Unterschied zur verbatim-Umgebung klarzumachen: Der Text einer verbatim-Umgebung wird 1:1 dargestellt. Würden Sie das obige Formular in eine verbatim-Umgebung packen, würden Sie im HTML-Browser lediglich den Quelltext des Formulars sehen! Nur bei der Verwendung der raw-Umgebung wird das Formular auch als solches vom HTML-Browser dargestellt.


Home Miszellaneen Abfragebefehle Tips & Tricks