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 |
aqv | Apple-QuickView |
asc | ASCII |
drc | David's Readme Compiler |
htag | HP-Helptag-SGML |
html | HTML |
hh | HtmlHelp |
info | Texinfo |
ipf | OS/2 IPF |
ldoc | Linuxdoc-SGML |
lyx | LyX |
man | Manualpage |
nroff | Nroff |
pas | Pascal-Sourcecode |
pch | Pure-C-Help |
PDFLaTeX | |
ps | PostScript |
rtf | RTF |
src | C-Sourcecode |
stg | ST-Guide |
tex | LaTeX |
tvh | Turbo-Vision-Help |
udo | UDO (Universal Document) |
wh4 | WinHelp4 |
win | WinHelp |
Um beispielsweise eine Zeile nur in das ASCII-Format auszugeben, gibt man folgendes an:
!raw [asc] Diese Zeile erscheint nur im ASCII-Format
Um eine Zeile in allen Formaten außer dem ASCII-Format auszugeben, gibt man folgendes an:
!ifndest [asc] !raw [all] Diese Zeile erscheint nicht im ASCII-Format !endif
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_preamble [tex] !raw [tex] \documentstyle[11pt,german,makeidx]{article} !raw [tex] \makeindex [...] !raw [tex] \printindex
!ifdest [html] !begin_raw <FORM method=post action="mailto:info@dirk-hagedorn.de"> <PRE> <p> Name: <INPUT name="Name" size=60> <p> <p> <INPUT type=submit value="Absenden"> <p> <INPUT type=reset value="Löschen"> </PRE> </FORM> !end_raw !else In der HTML-Version befindet sich hier ein Formular. !endif