Warning, /libraries/kdb/src/tools/transliteration/transliteration_table.readme is written in an unsupported language. File is not indexed.
0001 Transliteration Table README 0002 ---------------------------- 0003 0004 1. Rationale: Identifiers within the database or programming languages 0005 only accept latin-1 characters, numbers and '_' character. 0006 0007 Application developers can enter captions (titles) to give 0008 objects or variables a meaningful name using full unicode set. 0009 0010 Transliteration is used to convert unicode captions to identifiers 0011 without loosing meaning of the names. 0012 0013 More info: 0014 https://en.wikipedia.org/wiki/Transliteration 0015 https://en.wikipedia.org/wiki/Romanization 0016 0017 2. We use special kind of romanization as we only allow characters 0018 described in 1. 0019 0020 3. Implementation: transliteration table, was generated by 0021 generate_transliteration_table.sh shell script is used 0022 to transliterate any unicode character (having code < 65535) 0023 to an identifier, what gives constant time for converting 0024 single character. 0025 0026 The resulting generated code is kept in transliteration_table.{h|cpp} files, 0027 included by identifier.cpp for use in public utility functions. 0028 0029 For each item, the table (basically a table of c-strings) contains: 0030 - a NULL string it the resulting conversion have to be "_" string; 0031 - a c-string of size 1 or more containing a valid transliteration 0032 as described in 1.; 0033 - an empty string "" if the transliteration should return empty string 0034 (can be useful e.g. for soft signs in Cyrillic) 0035 0036 4. Fixes: Because iconv/recode tools are not fully implemented in regards 0037 to transliteration to latin-1 (e.g. no good support for Greek and 0038 Cyrillic/Serbian characters), the transliteration_table.cpp file is patched. 0039 The original table computer-generated table is available in 0040 transliteration_table.cpp.orig.bz2 file. 0041 0042 If you find invalid or missing transliterations, please edit 0043 transliteration_table.cpp (using UTF-8-compliant text editor, e.g. Kate). 0044 Then please send the transliteration_table.cpp file to the KDb Team. 0045 0046 5. Credits 0047 Jaroslaw Staniek <staniek at kde.org> 0048 Michael Drueing <michael at drueing.de> 0049 Chusslove Illich <caslav.ilic at gmx.net> 0050 Michal Svec <rebel at atrey.karlin.mff.cuni.cz>