[cstex] Diakritika v \hyphenation

Petr Sojka sojka at fi.muni.cz
Thu Mar 5 19:37:08 CET 2015


On Thu, Mar 05, 2015 at 09:24:31AM -0800, Mirek Zajdák (Alkor) wrote:
> \documentclass[draft,a4paper,12pt,openany]{book}
> \usepackage[utf8]{inputenc}
> \usepackage[czech]{babel}
> \usepackage[T1]{fontenc}
> ........
> \shorthandoff{-}
> \hyphenation{ku-pří-kla-du}
> \listfiles
> \begin{document}
> ........
> 
> slovo "kupříkladu" přeteče přes pravý okraj a řádek se zlomí až za ním (tak jsem to zjistil):
> 
> Overfull \hbox (7.2575pt too wide) in paragraph at lines 2036--2059
> \T1/cmr/m/n/12 s dra-ma-tic-k???m na-p???-t???m je ne-roz-lu???n??? spjat pro-bl???m dra-ma
> -tic-k???ho ???asu. Jestli???e se te??? kup??????kladu|

TeX aplikuje dělení jen na slova, přičemž slovo je 
_pouze_ sekvence _znaků_ (letters, znaky kategorie 11,
viz TeXbook str. 37). 
Slovo například nesmí obsahovat primitiv \kern, tedy
uvozovka se nesmí v rámci slova takto posouvat. 
Níže uvedené makro \allowhyphens
zařídí, že je na něm slovo ukončeno: 
\newcommand\allowhyphens{\nobreak \hskip 0pt \relax}
Napíšete-li kupříkladu\allowhyphens" 
tak by se slovo kupříkladu rozdělit s uvedenou preambulí
mělo. Praktické je si dělení zkoušet na příkladech:
\showhyphens{kupříkladu}
\showhyphens{kupříkladu,}
\showhyphens{kupříkladu"}
\showhyphens{kupříkladu$^1$}

Další příčinou nefunkčnosti může být to, že znak uvozovky 
má nastavenu špatně kategorii. Ta se nastavuje 
příkazem \lccode, kupříkladu 
\lccode`\"=12

HTH,
Petr Sojka
 
> ---------------------
> 
> Pokud slovo "kupříkladu" v textu nahradím "ku\-pří\-kla\-du", rozdělí se za slabikou "ku".



More information about the csTeX mailing list