I created a .map
file for Cyrillic to Latin transliteration as in using xetex for automatic transliteration of Cyrillic letters
I placed the cyrillic-to-latin.tec
file in the folder.
\documentclass{article}\usepackage{fontspec}\usepackage{ifluatex,ifxetex}\setmainfont[Mapping=cyrillic-to-latin]{texgyreadventor-regular.otf}\begin{document}\ifxetex This is XeTeX\else\ifluatex This is LuaTeX\fi\fiHello, worldЗдравствуй, Мир\end{document}
The thing works perfectly running XeLaTeX, but the mapping system is simply ignored by LuaLaTeX.
Compiled with XeLaTeXImage may be NSFW.
Clik here to view.
Compiled with LuaLaTeXImage may be NSFW.
Clik here to view.
How to force LuaLaTeX in using the desired font mapping?
Note: as @Michal.h21 asks, I put the .map file I personally use for transliteration with italian rules:
; TECkit mapping for TeX input conventions <-> Unicode charactersLHSName "Cyrillic-to-Latin"RHSName "UNICODE"pass(Unicode); ligatures from Knuth's original CMR fontsU+002D U+002D <> U+2013 ; -- -> en dashU+002D U+002D U+002D <> U+2014 ; --- -> em dashU+0027 <> U+2019 ; ' -> right single quoteU+0027 U+0027 <> U+201D ; '' -> right double quoteU+0022 > U+201D ; " -> right double quoteU+0060 <> U+2018 ; ` -> left single quoteU+0060 U+0060 <> U+201C ; `` -> left double quoteU+0021 U+0060 <> U+00A1 ; !` -> inverted exclamU+003F U+0060 <> U+00BF ; ?` -> inverted question; additions supported in T1 encodingU+002C U+002C <> U+201E ; ,, -> DOUBLE LOW-9 QUOTATION MARKU+003C U+003C <> U+00AB ; << -> LEFT POINTING GUILLEMETU+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMETU+0410 <> U+0041 ; AU+0411 <> U+0042 ; BU+0412 <> U+0056 ; VU+0413 <> U+0047 ; GU+0414 <> U+0044 ; DU+0415 <> U+0045 ; EU+0416 <> U+017D ; ŽU+0417 <> U+005A ; ZU+0418 <> U+0049 ; IU+041A <> U+004B ; KU+041B <> U+004C ; LU+041C <> U+004D ; MU+041D <> U+004E ; NU+041E <> U+004F ; OU+041F <> U+0050 ; PU+0420 <> U+0052 ; RU+0421 <> U+0053 ; SU+0422 <> U+0054 ; TU+0423 <> U+0055 ; UU+0424 <> U+0046 ; FU+0426 <> U+0043 ; CU+0427 <> U+010C ; ČU+0428 <> U+0160 ; ŠU+042D <> U+0116 ; ĖU+042E <> U+004A U+0075 ; JuU+042F <> U+004A U+0061 ; JaU+0401 <> U+00CB ; ËU+0430 <> U+0061 ; aU+0431 <> U+0062 ; bU+0432 <> U+0076 ; vU+0433 <> U+0067 ; gU+0434 <> U+0064 ; dU+0435 <> U+0065 ; eU+0436 <> U+017E ; žU+0437 <> U+007A ; zU+0438 <> U+0069 ; iU+0439 <> U+006A ; jU+043A <> U+006B ; kU+043B <> U+006C ; lU+043C <> U+006D ; mU+043D <> U+006E ; nU+043E <> U+006F ; oU+043F <> U+0070 ; pU+0440 <> U+0072 ; rU+0441 <> U+0073 ; sU+0442 <> U+0074 ; tU+0443 <> U+0075 ; uU+0444 <> U+0066 ; fU+0446 <> U+0063 ; cU+0447 <> U+010D ; čU+0448 <> U+0161 ; šU+044D <> U+0117 ; ėU+044E <> U+006A U+0075 ; juU+044F <> U+006A U+0061 ; jaU+0451 <> U+00EB ; ëU+0456 <> U+0069 ; iU+0406 <> U+0049 ; IU+0454 <> U+006A U+0065 ; jeU+0468 <> U+004A U+0065 ; JeU+0425 <> U+0043 U+0068 ; ChU+0445 <> U+0063 U+0068 ; chU+0418 <> U+0049 ; IU+0429 <> U+0160 U+010D ; ŠčU+042A <> U+0027 ; 'U+042B <> U+0059 ; YU+042C <> U+2019 ; 'U+0449 <> U+0161 U+010D ; ščU+044A <> U+2019 ; 'U+044B <> U+0079 ; yU+044C <> U+2019 ; '