[Allegro] Umcodierung von utf8-Daten

Thomas Berger ThB at Gymel.com
Mi Jan 9 11:20:55 CET 2013


Lieber Herr Schleifenbaum,

> da derzeit der Umcodierung von utf8-Daten mittels ucodes.xpt aufgrund des
> Speicherlimits von 8000 Byte Grenzen gesetzt sind,
> bin ich auf der Suche nach einer alternativen Umcodierung.
> 
> Perl bietet eine Batch-Datei, *piconv.bat*, die alle möglichen
> Zeichenumwandlungen vollbringen kann.
> 
> Wenn die Daten in utf-8 vorliegen (Pica-download)
> in welches Format müssten sie umgesetzt werden, damit das rauskommt was
> ucodes.xpt macht?

perldoc piconv

DESCRIPTION
    piconv is perl version of iconv, a character encoding converter widely
    available for various Unixen today. This script was primarily a
    technology demonstrator for Perl 5.8.0, but you can use piconv in the
    place of iconv for virtually any case.



piconv -l listet die bekannten Codierungen, wenig ueberraschend sind
"Ostwest", "Pica", ISO5426 oder MARC8 nicht dabei...

Allerdings nutzt piconv gerade nicht iconv, sondern emuliert es mit
den Encode-Modulen von Perl, und hier ist es einfacher moeglich, eine
Konversion fuer einen Privatzeichensatz zu definieren und zu
aktivieren (Ergaenzungen von iconv hingegen muessen m.W. durch Neu-
complilation und Austausch von libiconv.dll und/oder Perl hineingefummelt
werden, das ist aufwendig) Allerdings:
"For the sake of speed and efficiency, most of the encodings are now supported
via a compiled form: XS modules generated from UCM files. Encode provides the
enc2xs tool to achieve that. Please see enc2xs for more details."

"UCM" ist dabei ein recht einfaches Textformat, allerdings beschreibt
es wohl die Zustaende eines Umsetzungsautomaten und ist daher /nicht/
das Textformat, mit dem das Unicode-Konsortium die Mappings
definiert (Beispiele in
ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/ ). UCM-Dateien
fuer MAB habe ich ergooglen koennen (nebst
zugehoerigem Perl-Encode-modul ;-), fuer die anderen Formate (selbst MARC21)
sind mir keine bekannt.

viele Gruesse
Thomas Berger




Mehr Informationen über die Mailingliste Allegro