Lingua-Translit
view release on metacpan or search on metacpan
xml/gost_7-79_rus.xml view on Meta::CPAN
<translit>
<!-- meta information -->
<name>GOST 7.79 RUS</name>
<desc>GOST 7.79:2000, Cyrillic to Latin, Russian</desc>
<reverse>true</reverse>
<!-- set of transliteration rules -->
<!--
Used abbreviations (according to Unicode Standard 5.0):
CCL = CYRILLIC CAPITAL LETTER
CSL = CYRILLIC SMALL LETTER
LCL = LATIN CAPITAL LETTER
LSL = LATIN SMALL LETTER
-->
<rules>
<!-- context dependent rules -->
<!--'tse' is 'c' before 'i,e,y,j'-->
<rule>
<from>ц</from> <!-- CSL TSE -->
<to>c</to> <!-- LSL C -->
<context>
<before>[iejyиейыюяэё]</before>
</context>
</rule>
<rule>
<from>Ц</from> <!-- CCL TSE -->
<to>C</to> <!-- LCL C -->
<context>
<before>[IEJYИЕЙЫЮЯЁЭ]</before>
</context>
</rule>
<!--otherwise 'cz'-->
<rule>
<from>ц</from> <!-- CSL TSE -->
<to>cz</to> <!-- LSL C LSL Z -->
</rule>
<rule> <!-- ALLCAPS -->
<from>Ц</from> <!-- CCL TSE -->
<to>CZ</to> <!-- LCL C LCL Z-->
<context>
<before>[\p{IsUpper}\p{IsSpace}]</before>
<after>[\p{IsUpper}\p{IsSpace}]</after>
</context>
</rule>
<rule>
<from>Ц</from> <!-- CCL TSE -->
<to>Cz</to> <!-- LCL C LSL Z-->
</rule>
<!-- transliterations resulting in multiple characters -->
<rule>
<from>щ</from> <!-- CSL SHCHA -->
<to>shh</to> <!-- LSL S LSL H LSL H -->
</rule>
<rule> <!-- ALLCAPS -->
<from>Щ</from> <!-- CCL SHCHA -->
<to>SHH</to> <!-- LCL S LCL H LCL H -->
<context>
<before>[\p{IsUpper}\p{IsSpace}]</before>
<after>[\p{IsUpper}\p{IsSpace}]</after>
</context>
</rule>
<rule>
<from>Щ</from> <!-- CCL SHCHA -->
<to>Shh</to> <!-- LCL S LSL H LSL H -->
</rule>
<rule>
<from>ё</from> <!-- CSL IO -->
<to>yo</to> <!-- LSL Y LSL O -->
</rule>
<rule> <!-- ALLCAPS -->
<from>Ё</from> <!-- CCL IO -->
<to>YO</to> <!-- LCL Y LCL O -->
<context>
<before>[\p{IsUpper}\p{IsSpace}]</before>
<after>[\p{IsUpper}\p{IsSpace}]</after>
</context>
</rule>
<rule>
<from>Ё</from> <!-- CCL IO -->
<to>Yo</to> <!-- LCL Y LSL O -->
</rule>
<rule>
<from>ж</from> <!-- CSL ZHE -->
<to>zh</to> <!-- LSL Z LSL H -->
</rule>
<rule>
<from>Ж</from> <!-- CCL ZHE -->
<to>ZH</to> <!-- LCL Z LCL H -->
<context>
<before>[\p{IsUpper}\p{IsSpace}]</before>
<after>[\p{IsUpper}\p{IsSpace}]</after>
</context>
</rule>
<rule>
<from>Ж</from> <!-- CCL ZHE -->
<to>Zh</to> <!-- LCL Z LSL H -->
</rule>
<rule>
<from>ч</from> <!-- CSL CHE -->
<to>ch</to> <!-- LSL C LSL H -->
</rule>
<rule> <!-- ALLCAPS-->
<from>Ч</from> <!-- CCL CHE -->
<to>CH</to> <!-- LCL C LCL H -->
<context>
<before>[\p{IsUpper}\p{IsSpace}]</before>
<after>[\p{IsUpper}\p{IsSpace}]</after>
( run in 0.316 second using v1.01-cache-2.11-cpan-d7a12ab2c7f )