UDO bietet das !raw-Kommando und die raw-Umgebung an, mit denen es möglich ist, Zeilen nur dann auszugeben, wenn man in ein bestimmtes Format 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 dem !raw-Befehl spielen Kürzel eine große Rolle. Hier eine Übersicht, welches Kürzel für welches Ausgabeformat benutzt werden kann:
amg | AmigaGuide
Hypertext-System, vorwiegend zur Dokumentation von Amiga-Programmen Commodore Amiga |
aqv | Apple QuickView
älteres Hypertext-Format unter Mac OS Apple |
asc | ASCII
Reiner Text alle Plattformen |
c | Sourcecode (C-Format)
Die UDO-Quelldatei wird in Sourcecode umgewandelt, d.h. normaler Text wird Kommentar, der Inhalt der Sourcecode-Umgebung wird C-Source. diverse |
drc | David's Readme Compiler
DOS-Programm zum Erzeugen menügesteuerter Liesmich-Dateien als EXE-Datei MS-DOS |
hah | HTML-Format für Apple-Hilfe-Bücher
Mac OS X |
helptag | HP-Helptag-SGML
SGML-basiertes Hypertext-Hilfesystem für kommerzielle Unices (HP-UX, Sun Solaris, IBM AIX) Unix |
hh | HTMLHelp
zum Erzeugen von HTML-Help-Dateien unter Windows (HTML-Variante mit Erweiterungen) Win32 |
html | HTML (Hypertext Markup Language)
Seitenauszeichnungssprache, u.a. für Webseiten, Dokumentationen usw. plattformunabhängig |
info | GNU Texinfo
zum Erzeugen von Online-Dokumentationen mit dem Kommandozeilen-Aufruf info 'command' Linux, MiNTNet |
ipf | OS/2 IPF
SGML-basiertes Textformat zur Erzeugung von Hilfedateien (INF, HLP) unter OS/2 OS/2 |
linuxdoc | Linuxdoc-SGML
Linuxdoc-SGML (neuerdings: SGMLtools) ist genau wie UDO ein Multiformat-Konverter, der sein eigenes Format in LaTeX, Manualpage, RTF, HTML, Texinfo usw. umwandeln kann Unix/Linux |
lyx | LyX
LaTeX-verwandtes Dokumentverarbeitungsprogramm Unix/Linux |
man | Manualpage
Unix-/Linux-Hilfeseiten für Kommandozeilenprogramme/-aufrufe Unix/Linux |
nroff | NROFF
Unix-/Linux-Hilfeseiten für Kommandozeilenprogramme/-aufrufe Unix/Linux |
pascal | Sourcecode (Pascal-Format)
Die UDO-Quelldatei wird in Sourcecode umgewandelt, d.h. normaler Text wird Kommentar, der Inhalt der Sourcecode-Umgebung wird Pascal-Source. diverse |
pchelp | Pure-C-Hilfe
Hilfesystem für den Pure-C-Compiler Atari TOS |
pdflatex | PDFLaTeX
zum Erzeugen von PDF-Dateien aus LaTeX diverse |
ps | PostScript
geräteunabhängige Seitenbeschreibungssprache, z.B. zum Ansteuern von Druckern; kann zum Erstellen von PDF-Dateien genutzt werden (Ghostscript, Adobe Distiller) diverse |
rtf | RTF (Rich Text Format)
Textformat für den Textaustausch zwischen verschiedenen Textverarbeitungsprogrammen diverse |
stg | ST-Guide
Hypertextsystem Atari TOS |
tex | LaTeX 2.09, LaTeX2e
Satzsystem, insbesondere für wissenschaftliche Publikationen zahlreiche Plattformen |
udo | UDO
führt alle UDO-Eingabedateien in eine einzige Datei zusammen alle von UDO unterstützten |
v | Turbo-Vision-Help
zum Erstellen von Onlinehilfen für DOS-Programme, die mit Borlands Turbo-Vision-Bibliothek geschrieben wurden MS-DOS |
win, wh4 | Windows-Help, WinHelp4
RTF-Variante zum Erzeugen von Win-Help-Dateien unter Windows Windows (Win16, Win32) |
Um beispielsweise eine Zeile nur in das ASCII-Format auszugeben, gibt man folgendes an:
Um eine Zeile in allen Formaten außer dem ASCII-Format auszugeben, gibt man folgendes an:
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, dass 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 muss, damit LaTeX weiß, mit welchem Stil ein Dokument auszudrucken ist und damit es einen Index erzeugt:
!no_preamble [tex] !raw [tex] \documentstyle[11pt,german,makeidx]{article} !raw [tex] \makeindex [...] !raw [tex] \printindex
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üsste.
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:someone@somewhere.org"> <pre> <p>Name: <input name="Name" size="60"></p> <p><input type="submit" value="Absenden"></p> <p><input type="reset" value="Löschen"></p> </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 nur den Quelltext des Formulars sehen! Nur bei der Verwendung der raw-Umgebung wird das Formular auch als solches vom HTML-Browser dargestellt.
Eine weitere Möglichkeit dazu bietet der Befehl !rinclude.
Will man größere Blöcke als Kommentar in die Ausgabedatei schreiben, wäre es ziemlich mühsam, wenn man jede Zeile mit einem Kürzel beginnen müsste.
Daher bietet UDO die comment-Umgebung
an. Sie wird mit dem
Befehl !begin_comment begonnen und mit dem Befehl
!end_comment beendet.
Genau wie der Inhalt der Zeilen, die mit !comment begonnen werden, gibt UDO diese Zeilen ohne Anpassung von Sonderzeichen und ohne Berücksichtigung von UDO-Befehlen als Kommentar aus.
Eine weitere Möglichkeit dazu bietet der Befehl !cinclude.