Hallo winni,
ich habe hier ein Ruby-Programm, welches mir aus einer
XML-Datei Texte extrahiert und sie mir in einer Excel-Datei
sowie in Po/MO-Datei ablegt.
Vor lauter Konvertieren schwirrt mir der Kopf
Ehrlich, ich weiss nicht genau, wo das UTF-8-Problem liegt. laut Überschrift bei Ruby, weiter unten aber auch/oder bei Excel, der „Software“(?).
Der Ablauf, soweit ich ihn verstanden habe, ist so:
(1) XML-Datei
|
(2) Ruby ------+
| |
(3) Excel |
(4) | Po-Datei
| |
(5) | PoEdit
| |
(6) | Mo-Datei
| |
(7) | Software(?)
(8) Übersetzungsbüro
Habe ich den Ablauf richtig verstanden?
An welcher Stelle liegt nun das Problem?
Nun habe ich ein Problem mit der Codierung der Umlaute und
Sonderzeichen:
Mein Verständnis-Problem liegt darin:
Die Quell-Excel-Datei ist meistens ISO-8859-1 (und nur im
Ausnahmefall UTF-8)
Ich denke, die Excel-Datei wird mit Ruby erzeugt, liegt also in deiner Hand. Warum sollte sie dann wechselnde Codierungen haben?
Ist die Quell-Datei UTF-8-codiert,
mit Quell-Datei meinst Du jetzt die XML-Datei?
hat Excel ein Problem mit
der Darstellung (oder wie kann ich da UTF8 einstellen?)
zu Excel kann ich nichts sagen.
Die Software erwartet eine MO-Datei, welche UTF-8-codiert ist.
Dafür muss auch die Po-Datei UTF-8_codiert sein.
Wenn es irgendwie an Ruby liegt, welche Version benutzt Du denn? Ruby 1.8.x kann eigentlich mit UTF-8 nicht umgehen, da hilft als eine mögliche Lösung
$KCODE='u'
require 'jcode'
im Kopf des Programmes.
Ruby 1.9.x soll inzwischen UTF-8 beherrschen, da ich aber nur 1.8 benutze, kann ich dazu nichts sagen.
Beste Anlaufstelle für solche Fragen ist das Ruby-Forum, kompetentente und sehr nette Leute:
http://forum.ruby-portal.de/
Aber vielleicht kann dir auch hier geholfen werden, wenn sich der Nebel über dem Problem mit deiner Hilfe etwas gelüftet hat
Wahrscheinlich bin aber ich auch bloß so begriffsstutzig und blicke im Moment nicht so ganz durch. Was mich außerdem noch etwas verwirrt, ist das Einschieben von PoEdit. Lassen sich mit Ruby nicht gleich diese mo- und po-Dateien mit Hilfe von libgettext-ruby erzeugen?
http://packages.debian.org/lenny/libgettext-ruby1.9
Oder handelt es sich hier um eine zufällige Namensgleichheit und das ganze hat nichts mit Internationalisierung zu tun?
http://st-on-it.blogspot.com/2008/07/rails-gettext-c…
Viele Grüße
Marvin