[cstex] LaTeX - užší font, ruština

Petr Olsak petr at olsak.net
Tue Oct 30 08:15:29 CET 2012


On Mon, 29 Oct 2012, Josef Tkadlec wrote:

> Dobrý den, může mi, prosím, někdo poradit s následujícími problémy?
>
> 2. V českém textu používám krátké ruské výrazy pomocí {\cyr ...}:
>
> \usepackage [czech]{babel}
> \usepackage [latin2]{inputenc}
> \usepackage [T1]{fontenc}
> \usepackage {lmodern}
> \input cyracc.def \font\tencyr=wncyr10 \def\cyr {\tencyr\cyracc}
>
> Není to ideální - rád bych, aby fungovalo ruské dělení slov a šlo
> používat například \large (ideálně psát \foreignlanguage
> {russian}{...}). Žádné z řešení (nezkoušel jsem použít utf-8, které
> nechci), které jsem našel na webu, mi nefungovalo.

Z požadavku ,,nechci použít utf8, tj. chci použít zpřežky z wncyr`` 
vyplývá technický problém, který myslím TeXisté z ruska neřešili a tudíž k 
tomu není připravena odpovídající podpora. Rusové totiž ty zpřežky 
nepoužívají. Možná se mýlím, rád se nechám v této věci poučit. Nicméně 
problém z technického hlediska popíšu:

Při použití fontu wncyr jsou k dispozici ligatury, např. ya vede na ruské 
ja, sh vede na ruské š atd. Soubor definic v cyracc.def k tomuto 
základnímu ligaturnímu mechanismu přidává jen pár drobností.

TeX při hledání míst pro dělení slov má před sebou text, který je zapsán 
*před* jeho proměnou na ligatury. Jinými slovy, musely by existovat vzory 
dělení slov zapsané těmi zpřežkami. Myslím si, že takové vzory dělení slov 
neexistují. Dovedu si představit řešení: konvertovat existující UTF-8 
vzory dělení slov do těch zpřežek a nějak ty vzory nanutit LaTeXu. Nebo 
implementovat ten zpřežkový mechanismus pomocí aktivních znaků a použít 
nějaký ruský font, který je kódován v souladu s jedním z mnoha ruských 
kódování, které jsou použity v babelu při zavádění vzorů dělení slov. Ani 
jeden z těchto námětů ovšem není prací pro laika.

Zdravím

Petr Olšák


More information about the csTeX mailing list