eoconv - Convert text files between various Esperanto encodings
eoconv [-q] --from=encoding --to=encoding [file ...]
Options: --from specify input encoding (see below) --to specify output encoding (see below) -q, --quiet suppress warnings
--help detailed help message --man full documentation --version display version information
Valid encodings: post-h post-x post-caret pre-caret html-hex html-dec iso-8859-3 utf7 utf8 utf16 utf32
eoconv will read the given input files (or stdin if no files are specified) containing Esperanto text in the encoding specified by --from, and then output it in the encoding specified by --to.
Esperanto is written in an alphabet of 28 letters. However, only 22 of these letters can be found in the standard ASCII character set. The remaining six -- `c', `g', `h', `j', and `s' with circumflex, and `u' with breve -- are not available in ASCII; neither are they among the characters available in the common 8-bit ISO-8859-1 character encoding. Therefore, while the six special Esperanto characters pose no problem for handwritten texts, they were impossible to represent on standard typewriters, and are somewhat problematic even on modern-day computers. Various encoding systems have been developed to represent Esperanto text in printed and typed text.
This was the solution proposed by the creator of Esperanto, L. L. Zamenhof. He recommended using `u' for `u-breve' and appending an `h' to a letter to indicate that it should have a circumflex. However, the letters `u' and `h' are already part of the Esperanto alphabet, so using them for another purpose invites ambiguity and mispronunciation. It also makes conversion of Esperanto text to postfix-h notation `lossy' or one-way; it is generally not possible to convert from postfix-h notation via automated means. This notation suffers from the additional drawback that the text cannot be sorted with standard rules for ASCII text.
This is the most common ASCII notation encountered today. It involves appending an `x' to a letter to indicate that it should have an accent (be it circumflex or breve). Since `x' is not a letter in the Esperanto alphabet, no ambiguity results. However, ASCII sorting algorithms still fail with postfix-x text.
Two slightly less popular ASCII encodings are to prepend or append a caret (`^') to a letter to indicate that it should have an accent.
ISO 8859-3, also known as Latin-3 or South European, is an 8-bit character encoding for Turkish, Maltese, and Esperanto. High-bit characters are used to encode the accented Esperanto letters.
Unicode is a standard for matching every character of every human language to a specific code. The mapping methods are known as Unicode Transformation Formats (UTF). Among them are UTF-32, UTF-16, UTF-8 and UTF-7, where the numbers indicate the number of bits in one unit.
Unicode codes for Esperanto characters can be escaped in HTML documents by using HTML entities. The codes can be represented in either decimal (base-10) or hexadecimal (base-16) notation; the two are functionally equivalent.
Because postfix-h notation is inherently ambiguous, conversion from postfix-h text is unlikely to result in coherent text. Use at your own risk, and carefully proofread the results.
Report bugs to <psychonaut@nothingisreal.com>.
Copyright (C) 2004 Tristan Miller.
Permission is granted to make and distribute verbatim or modified copies of this manual provided the copyright notice and this permission notice are preserved on all copies.