Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Unicode-Zeichen und UDO

1 view
Skip to first unread message

Andreas Bruns

unread,
May 2, 2007, 8:26:52 AM5/2/07
to
Hallo!

Ich habe hier einen Text mit Tschechischen Ortsnamen. Leider
kann UDO keine UNICODE verarbeiten und in ANSI sind nur wenige
Zeichen mit 'Caron' belegt. Wichtige wie C c n r e fehlen.

Wie bringe ich UDO 'Ceský Tesín' oder 'Decín' oder
'Ceská Trebová' bei?

Ausgabeformate sind vorerst HTML und RTF.

Andreas.

Gerhard Stoll

unread,
May 5, 2007, 3:22:00 AM5/5/07
to
AB> Wie bringe ich UDO 'Cesky Tesín' oder 'Decín' oder 'Ceská Trebová'
AB> bei?

Ich bin keine Sprachentalent aber vielleicht hift Dir folgendes:

-------------------------------cut-------------------------------
4.5.6 Universeller Zeichensatz

.
.
.


Nach der Angabe von !universal_charset [on] betrachtet UDO jede einzelne Zeile
und wandelt enthaltene universelle Zeichen in 8-Bit-Zeichen um. Die folgende
Tabelle zeigt, welche Zeichen wie umgewandelt werden:
Platzhalter x aus Beispiel
(!"x) aeiosuyAEIOU (!"a) = ä
(!'x) aeiouyAEIOUY (!'e) = é
(!`x) aeiouAEIOU (!`i) = ì
(!^x) aeiouAEIOU (!^o) = ô
(!&x) ae, oe, AE, OE (!&AE) = Æ
(!~x) anoANO (!~n) = (~n)
(!,x) cC (!,C) = Ç
(!.x) aA (!.A) = Å
(!_x) ao (!_a) = ª
(!\x) oO (!\O) = O

Das deutsche `ß' wird durch den Platzhalter (!"s) erzeugt. Kennt das
Zielformat ein Zeichen nicht, so wird das naheliegendste Zeichen benutzt,
z.B. `a' statt `â'.
-------------------------------cut-------------------------------

Damit sind intern die tschechisch Text geschrieben, z.B. die Monatsnamen:

-------------------------------cut-------------------------------
/* Czech windows-1250 encoding */
LOCAL const char *MONTH_CZE[] =
{
"ledna", "(!'u)nora", "b(!\o)ezna", "dubna", "kv(!`i)tna",
"(!`e)ervna", "(!`e)ervence", "srpna", "z(!'a)(!\o)(!'i)",
"(!\o)(!'i)jna", "listopadu", "prosince"
};
-------------------------------cut-------------------------------


Gerhard

PS: Deine andere Sache ist nicht wirklich vergessen. Es liegt zumindest nicht
an Deinem UDO Text sondern an UDO selbst.

Andreas Bruns

unread,
May 7, 2007, 4:08:19 AM5/7/07
to
Hallo Gerhard!

Gerhard Stoll wrote:
>> Wie bringe ich UDO 'Cesky Tesín' oder 'Decín' oder 'Ceská Trebová'

>> bei?
>
> Ich bin keine Sprachentalent aber vielleicht hift Dir folgendes:
>
> -------------------------------cut-------------------------------
> 4.5.6 Universeller Zeichensatz

[...]
> -------------------------------cut-------------------------------

Nicht ganz. Was ich bräuchte wäre etwa:


> (!^x) aeiouAEIOU (!^o) = ô

Nur, dass das Dach (^) auf der Spitze steht und über weiteren,
zusätzlichen Buchstaben stehen kann: Z.B. cnrC. Auf welchen
Zeichen das 'Caron' im Einzelnen zu gebrauchen ist, müsste ich
raussuchen.

Dummerweise legen die Autoren Wert auf das 'Caron', und ich
bekomme in Zukunft öfters solche Texte ... So muss ich mir wohl
etwas anderes überlegen.

> Damit sind intern die tschechisch Text geschrieben, z.B. die
> Monatsnamen:
>
> -------------------------------cut-------------------------------
> /* Czech windows-1250 encoding */
> LOCAL const char *MONTH_CZE[] =
> {
> "ledna", "(!'u)nora", "b(!\o)ezna", "dubna", "kv(!`i)tna",
> "(!`e)ervna", "(!`e)ervence", "srpna", "z(!'a)(!\o)(!'i)",
> "(!\o)(!'i)jna", "listopadu", "prosince"
> };
> -------------------------------cut-------------------------------

Leider alle ohne 'Caron' ... :-(

> PS: Deine andere Sache ist nicht wirklich vergessen. Es liegt
> zumindest nicht an Deinem UDO Text sondern an UDO selbst.

Danke, das Du es nicht vergessen hast. Ich habe ja einen Workaround,
auch wenn er etwas nervig ist. Ich hoffe auf Abhilfe in einer
zukünftigen Version.

Andreas.


Andreas Bruns

unread,
May 7, 2007, 4:27:34 AM5/7/07
to
Hallo Gerhard!
>
> Gerhard Stoll wrote:
>>> Wie bringe ich UDO 'Cesky Tesín' oder 'Decín' oder 'Ceská Trebová'
>>> bei?
>>
>> Ich bin keine Sprachentalent aber vielleicht hift Dir folgendes:
>>
>> -------------------------------cut-------------------------------
>> 4.5.6 Universeller Zeichensatz
> [...]
>> -------------------------------cut-------------------------------

Gibt es eine Möglichkeit, Zeichen als Dezimalcode einzugeben?

C+Caron als dezimal 268? HTML-Code wäre 'Č' -- Noch wäre es
übersichtlich, Makros zu nehmen, ich würde eine universelle
Lösung wie (!d+268) für dezimal vorziehen. Aber auch (!u+010c)
für Unicode wäre gut, dann fiele das lästige Umrechnen von der
Win-Zeichentabelle weg ...

Andreas.

Ulf Dunkel

unread,
Jul 25, 2008, 6:43:29 AM7/25/08
to
Hallo Andreas.

>>>> Wie bringe ich UDO 'Cesky Tesín' oder 'Decín' oder 'Ceská Trebová'
>>>> bei?
>>> Ich bin keine Sprachentalent aber vielleicht hift Dir folgendes:
>>>
>>> -------------------------------cut-------------------------------
>>> 4.5.6 Universeller Zeichensatz
>> [...]
>>> -------------------------------cut-------------------------------
>
> Gibt es eine Möglichkeit, Zeichen als Dezimalcode einzugeben?

Ich nutze UDO ja auch für unsere tschechischen Handbücher, und das
bisher auch ohne Unicode. So machen wir es:

In der Präambel zum tschechischen Dokument setze ich:

# use a language flag
!set cs

# don't convert to HTML entities
!html_ignore_8bit iso-8859-2

Der tschechische Autor schreibt seine UDO-Dateien einfach in iso-8859-2
und das war's auch schon.

Ach ja - nicht ganz. ;-)

Die meisten Server, die HTML-Seiten ausliefern, haben ein
voreingestelltes Encoding, so dass das in dem UDO-HTML-Seitenheader
ausgegebene Encoding nicht greift.

Daher haben wir auf unserem Server definiert, dass .htm-Dateien wie
PHP-Dateien angesehen werden.

Die tschechischen Seiten bekommen nach dem Generieren durch UDO von mir
noch einen PHP-Header verpasst, der anschließend einen header()-Befehl
abschickt, so dass der Browser auf jeden Fall das richtige Encoding wählt.

Aber ich hoffe, dass wir es bald anfassen können, UDO Unicode
beizubringen. Dann wäre das alles Geschichte.


--
Bis bald / See you soon / A bientôt / Tot ziens / Ghis revido
Ulf Dunkel - www.icalamus.net / www.dsd.net / www.calamus.net

0 new messages