Zum Seiteninhalt
Netzum Sorglos - Webdesign, SEO, Programmierung

Transliteration with Perl Module Lingua::Translit

Lingua::Translit is a Perl module that transliterates text from one writing system to another based on a variety of standards.

The Lingua::Translit Perl module provides a simple to use object-oriented API as well as the command line application "translit".

Additional tools allow you to extend the module and write your own rule sets in an XML format and integrate them easily. For the extension have a look at the Developer Documentation for details, examples and templates.

Features

Standards Compliant
Lingua::Translit supports a large set of standards like ISO 9, DIN 31634 or GOST 7.79.
Portable
Lingua::Translit is known to work on a large set of operating systems, including Microsoft Windows, Linux and FreeBSD.
Simple API
The API is object oriented, simple and easy to understand.
Extendable
More transliteration standards can either be added by yourself or by our linguists upon request.
Open Source
Lingua::Translit is both Open Source and Free Software.
Unicode Aware
Lingua::Translit provides full UTF-8 support.
Dependency Free
Lingua::Translit does not depend on any other third party Perl modules.

Supported Transliteration Standards

The transliteration is done according to given transliteration standards defined by various national or international organisations, like ISO, DIN or GOST. Additionally common national transliteration rules can be applied.

The following standards are currently handled by Lingua::Translit:

Writing system: Cyrillic
Standard Description Reversible?
ALA-LC RUS Cyrillic to Latin, Russian no
ISO 9 Cyrillic to Latin yes
ISO/R 9 Cyrillic to Latin yes
DIN 1460 RUS Cyrillic to Latin, Russian yes
DIN 1460 UKR Cyrillic to Latin, Ukrainian yes
DIN 1460 BUL Cyrillic to Latin, Bulgarian yes
Streamlined System BUL Cyrillic to Latin, Bulgarian no
GOST 7.79 RUS Cyrillic to Latin, Russian yes
GOST 7.79 RUS OLD Cyrillic to Latin with support for Old Russian (pre 1918), Russian no
GOST 7.79 UKR Cyrillic to Latin, Ukrainian yes
BGN/PCGN RUS Standard Cyrillic to Latin, Russian no
BGN/PCGN RUS Strict Cyrillic to Latin, Russian no
Writing system: Greek
Standard Description Reversible?
ISO 843 Greek to Latin no
DIN 31634 Greek to Latin (academic) no
Greeklish Greek to Latin (phonetic) no
Writing system: Arabic
Standard Description Reversible?
Common ARA Common Romanization of Arabic no
Writing system: Latin
Standard Description Reversible?
Common CES Czech without diacritics no
Common DEU German without umlauts or sharp s ligature no
Common POL Unaccented Polish no
Common RON Romanian without diacritics no
Common SLK Slovak without diacritics no
Common SLV Slovenian without diacritics no
ISO 8859-16 RON Romanian with appropriate diacritics yes
Writing system: Sanskrit
Standard Description Reversible?
IAST Devanagari IAST Romanization to Devanāgarī no
Devanagari IAST Devanāgarī to IAST Romanization no
balls

Documentation

Lingua::Translit's documentation is available on CPAN:

To extend Lingua::Translit, have a look at the Developer Documentation.

Download

The latest release of Lingua::Translit is Lingua-Translit-0.29.tar.gz (108.67 kB).

If you are running one of the following distributions/operating systems, you may use its tools to install Lingua::Translit, although the version(s) provided may not reflect the latest release:

License

Lingua::Translit is both open source and free software, covered by the same license terms as Perl itself, which means you can redistribute it and/or modify it under the terms of either:

  1. the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or
  2. the "Artistic License".

Copyright

Copyright (©) 2008 Alex Linke & Rona Linke
Copyright (©) 2009-2016 Lingua-Systems Software GmbH
Copyright (©) 2016-2017 Netzum Sorglos, Lingua-Systems Software GmbH
Copyright (©) 2017-2024 Netzum Sorglos Software GmbH

Credits

Lingua::Translit is actively developed not only by its developers at Netzum Sorglos, but also by contributors from the Perl community:

  • Thanks to Dr. Daniel Eiwen, Romanisches Seminar, Universität Köln for his help on Romanian transliteration ("Common RON").
  • Thanks to Dimitry Smal and Rusar Publishing for contributing the "ALA-LC RUS" transliteration table.
  • Thanks to Ahmed Elsheshtawy for his help implementing the "Common ARA" Arabic transliteration.
  • Thanks to Dusan Vuckovic for contributing the "ISO/R 9" transliteration table.
  • Thanks to Ștefan Suciu for contributing the "ISO 8859-16 RON" transliteration table.
  • Thanks to Philip Kime for contributing the "IAST Devanagari" and "Devanagari IAST" transliteration tables.
  • Thanks to Nikola Lečić for contributing the "BGN/PCGN RUS Standard" and "BGN/PCGN RUS Strict" transliteration tables.