############################################################
# @(#) UDO und Sonderzeichen
# 22.01.1996: UDOs Vorgehen bei doppelten Apostrophen
############################################################

!subnode Sonderzeichen

############################################################

!subsubnode Doppelte Anführungszeichen

!index Anführungszeichen !! typographische
!index Typographische Anführungszeichen

Doppelte Anführungszeichen werden bei der Umwandlung durch
typographische
Anführungszeichen(!N)z.B. ""Gänsefüßchen"" unten und oben(!n) ersetzt, falls
diese vom jeweiligen Format unterstützt werden. Werden diese nicht
unterstützt, so werden die doppelten Anführungszeichen durch einfache
ersetzt.

In der folgenden ASCII-Simulation wird gezeigt, wie das Ergebnis in später
aussehen kann, wenn das jeweilige Ausgabeformat echte Anführungszeichen
unterstützt.

!begin_quote
!begin_verbatim
Echte ""Gänsefüßchen""

Echte  Gänsefüßchen"
      "
!end_verbatim
!end_quote

Wenn Sie in der Ausgabedatei doppelte Anführungszeichen sehen möchten, so
müssen Sie stattdessen (!T)((""))text((""))(!t) angeben.


!index !/no_quotes

(!HINTS)

!begin_enumerate

!index !/no_quotes
!item Die Umwandlung in typographische Anführungszeichen kann man
durch den Schalter (!I)!/no_quotes~[~](!i) im Vorspann ausschalten.

!item Bei der Ausgabe ins Rich Text Format werden spezielle
RTF-Kommandos verwendet. Manche Textverarbeitungen wandeln diese
Kommandos jedoch nicht in deutsche Anführungszeichen um, sondern in
die englischen Versionen. Daran kann UDO leider nichts ändern.

!end_enumerate

############################################################

!subsubnode Doppelte Apostrophe

!index Apostrophe !! doppelte

Genau wie bei doppelten Anführungszeichen paßt UDO auch hier doppelt
vorkommende Apostrophe an.

Aus!..

!begin_quote
!begin_verbatim
Hier stehen ''doppelte Apostrophe''.
!end_verbatim
!end_quote

!.. wird

!begin_quote
Hier stehen ''doppelte Apostrophe''.
!end_quote

Wenn Sie in der Ausgabedatei doppelte Apostrophe sehen möchten, so
müssen Sie stattdessen (!T)((''))text((''))(!t) angeben.

!index !/no_quotes

(!HINT) Der Schalter (!I)!/no_quotes~[~](!i) hat genau wie auf die doppelten
Anführungszeichen Einfluß auf die Umsetzung der doppelten Apostrophe.

############################################################

!subsubnode Feste Leerzeichen
!alias	Tilde

!index Leerzeichen
!index Tilde

Möchten Sie zwischen zwei Wörtern ein festes oder mehrere feste Leerzeichen
angeben, so benutzen Sie dafür die Tilde ((!T)!~(!t)). Feste Leerzeichen eignen
sich (auch) dafür, den Zeilenumbruch an der jeweiligen Stelle zu
unterbinden.

Bei den Dateien, die im ASCII-Format ausgegeben werden und vom zugehörigen
Konverter nicht mehr nachformatiert werden, ersetzt UDO die Tilde durch ein
Leerzeichen und achtet selber darauf, wann kein Zeilenumbruch erfolgen darf. 

Bei den anderen Formaten ersetzt UDO die Tilde durch folgende
formatspezifische Zeichenfolgen, die den gleichen Zweck
erfüllen:

!autoref [off]
!begin_xlist [WinHelp:] !short
!item	[(!LaTeX):]	(!T)!~(!t)
!item	[HTML:]		(!T)&nbsp;(!t)
!item	[RTF:]		(!T)\!~(!t)
!item	[WinHelp:]	(!T)\!~(!t)
!end_xlist
!autoref [on]

Wenn Sie die Tilde selber ausgeben möchten, so müssen Sie die Zeichenfolge
(!T)!!~(!t) benutzen.

(!HINT) Bei externen Verweisen wird die Tilde nicht in ein festes
Leerzeichen umgewandelt, wird also von UDO direkt übernommen.

############################################################

!subsubnode Gedankenstriche

!index Minuszeichen

UDO bietet --- wie sollte es auch anders sein --- eine Möglichkeit,
Gedankenstriche (wie hier) bereits im Quelltext anzugeben.

Gedankenstriche werden von (!LaTeX), RTF und WinHelp unterstützt. Bei den
anderen Formaten werden zwei bzw. drei Minuszeichen durch eines ersetzt.

Mit (!T)(---)(!t) können Sie einen langen, mit (!T)(--)(!t) einen kurzen
Gedankenstrich ausgeben. Wenn Sie drei Minuszeichen ausgeben möchten, so
müssen Sie im Quelltext (!T)((---))(!t) benutzen. Wenn Sie zwei Minuszeichen
ausgeben möchten, so müssen Sie im Quelltext (!T)((--))(!t) benutzen.

############################################################

!subsubnode Umwandlung von 8-bit-Zeichen

!index Systemzeichensatz
!index Zeichensatz
!index Umlautumwandlung
!index Umwandlung !! Umlaute

In einem Quelltext können Sie, anders als bei (!LaTeX), HTML, WinHelp oder
RTF, auch Zeichen aus dem oberen Teil Ihres Systemzeichensatzes verwenden.
Es ist also nicht erforderlich, sich zu überlegen, wie denn wohl ein ""ß""
oder ein ""ä"" in der Ausgabedatei auszusehen hat; UDO erledigt die
Umwandlung für Sie automatisch.

UDO erwartet Quelltexte mit dem jeweiligen Systemzeichensatz. Nutzen Sie UDO
auf einem DOS-kompatiblen Rechner, so erwartet UDO Quelltexte, die mit dem
DOS-Zeichensatz geschrieben wurden. Die Atari-Version erwartet Quelltexte
mit Zeichen des Atari-Zeichensatzes usw.

UDO kann aber auch Quelltexte verarbeiten, die mit systemfremden
Zeichensätzen erstellt wurden. Und um es richtig komfortabel zu
machen, können Quelltexte sogar aus einem Mischmasch von benutzten
Zeichensätzen bestehen.

Sie müssen UDO lediglich mit Befehlen mitteilen, mit welchem Zeichensatz die
folgenden Zeilen erstellt wurden. Folgende Befehle stehen zur
Verfügung, in den Klammern sehen Sie die Bezeichnung des jeweiligen
Zeichensatzes:

!begin_ilist [!/code_mac:] !short

!index DOS-Zeichensatz
!index Zeichensatz !! DOS
!index !/code_dos
!item [!/code_dos:] IBM-PC, MS-DOS

!index HP-Roman-8-Zeichensatz
!index Zeichensatz !! HP-Roman-8
!index !/code_hp8
!item [!/code_hp8:] HP Roman 8

!index ISO-Latin1-Zeichensatz
!index Zeichensatz !! ISO Latin 1
!index Windows-Zeichensatz
!index Zeichensatz !! Windows
!index ANSI-Zeichensatz
!index Zeichensatz !! ANSI
!index !/code_iso
!item [!/code_iso:] ISO Latin 1, Windows ANSI

!index Macintosh-Zeichensatz
!index Zeichensatz !! Macintosh
!index !/code_mac
!item [!/code_mac:] Apple Macintosh

!index Atari-Zeichensatz
!index Zeichensatz !! Atari
!index !/code_tos
!item [!/code_tos:] Atari ST

!end_ilist

!smallskip

!index Sonderzeichen !! Anpassung
!index Anpassung !! Sonderzeichen
!index Grafikzeichen

Die Anpassung der Sonderzeichen hat jedoch ihre Grenzen. So enthalten
alle Zeichensätze ein paar Zeichen,die in anderen Zeichensätzen
fehlen. So ist die Benutzung der Grafikzeichen des DOS-Zeichensatzes oder der
hebräischen Zeichen des Atari-Zeichensatzes problematisch, da diese zu
systemspezifisch sind und in anderen Formaten nicht nachgebildet werden
können. Auch auf die Verwendung mathematischer Zeichen sollte möglichst verzichtet
werden, da diese zumeist in anderen Zeichensätzen fehlen.

!index Zeichensatz !! systemfremde
!index Systemfremde Zeichensätze

Werden systemfremde Zeichensätze verarbeitet, sind die Einschränkungen
noch etwas größer, da UDO intern zunächst Texte in den
ISO-Latin-1-Zeichensatz umwandelt,
der als größter gemeinsamer Nenner angesehen werden kann. Erst dann
wird von ISO-Latin-1 in den jeweiligen Systemzeichensatz umgewandelt.
Auf diesem Wege können im ungünstigen Fall manche Zeichen nicht
umgewandelt werden.

!index Fehlermeldung

UDO wird in einem solchen Fall eine Fehlermeldung ausgeben. Sie
sollten dann auf die Verwendung dieser Zeichen verzichten.

(!HINT) Es kann durchaus sein, daß mir das eine oder andere Zeichen
""durch die Lappen"" gegangen ist oder Zeichen falsch umgesetzt werden.
Sollten Sie auf solche Zeichen stoßen, so melden Sie mir dies bitte
unverzüglich. Vielen Dank!

############################################################

!subsubnode Universeller Zeichensatz

!index Zeichensatz !! universeller

Mit den im vorherigen Abschnitt beschriebenen Befehlen ist es möglich,
Quelltexte auch mit 8-Bit-Zeichen systemweit weiterzugeben.

Werden Quelltexte jedoch über das Internet ausgetauscht, kann es
passieren, daß irgendwo auf dem Übetragungswege 8-Bit-Zeichen
umgewandelt oder angepaßt werden. Dies wäre bei Quelltexten, die
mehrere Zeichensätze verwenden fatal.

Um nun den Austausch von Quelltexten auch hier zur ermöglichen, bietet
UDO einen ""universellen Zeichensatz"" an. Es handelt sich hierbei
nicht wirklich um einen Zeichensatz, sondern vielmehr um eine
Möglichkeit, 8-Bit-Zeichen durch Folgen mehrere 7-Bit-Zeichen zu
emulieren.

!index !/universal_charset

Da die nötigen Abfragen und Umwandlungen sehr rechenintensiv sind, muß
man UDO mitteilen, daß die folgenden Zeilen ""universelle Zeichen""
beinhalten. Dies geschieht durch den Einsatz des Schalters
(!I)!/universal_charset(!i).

Nach der Angabe von (!I)!/universal_charset~[on](!i) betrachtet UDO
jede einzelne Zeile und wandelt enthaltene universelle Zeichen in
8-Bit-Zeichen um. Die folgende Tabelle zeigt, welche Zeichen wie
umgewandelt werden:

!universal_charset [on]
!begin_table [|l|l|l|] !hline
PH      !! x aus          !! Beispiel 
(!/"x)  !! aeiosuyAEIOU   !! (!T)(!/"a)(!t) = (!"a)
(!/'x)  !! aeiouyAEIOUY   !! (!T)(!/'e)(!t) = (!'e)
(!/`x)  !! aeiouAEIOU     !! (!T)(!/`i)(!t) = (!`i)
(!/^x)  !! aeiouAEIOU     !! (!T)(!/^o)(!t) = (!^o)
(!/&x)  !! ae, oe, AE, OE !! (!T)(!/&AE)(!t) = (!&AE)
(!/~x)  !! anoANO         !! (!T)(!/~n)(!t) = (!~n)
(!/,x)  !! cC             !! (!T)(!/,C)(!t) = (!,C)
(!/.x)  !! aA             !! (!T)(!/.A)(!t) = (!.A)
(!/_x)  !! ao             !! (!T)(!/_a)(!t) = (!_a)
(!/\x)  !! oO             !! (!T)(!/\O)(!t) = (!\O)
!hline
!end_table

Das deutsche ''ß'' wird durch den Platzhalter (!/"s) erzeugt.
Kennt das Zielformat ein Zeichen nicht, so wird das naheliegendste Zeichen
benutzt, z.B. ''a'' statt ''(!^a)''.
!universal_charset [off]

