V Lyxu hezky česky (návod na zavedení češtiny do wysiwym editoru Lyx)

Sázecí systém LaTeX, pomocí kterého je možné snadno vytvářet typograficky dokonalé dokumenty, byl donedávna znám téměř výhradně mezi uživateli Linuxu. Pro uživatele Windows, zvyklé „tahat hlodavce za ocas“ je jeho užívání poněkud obtížnější. Situaci značně změnil wysiwym editor LyX , který LaTeX zpřístupnil i komunitě zvyklé na poněkud vyšší uživatelský standard. Co mi však u LyXu chybí je kvalitní návod na zavedení češtiny. Příčina je zřejmá: Latexový guruové Lyxem pohrdají a ti ostatní to neumějí: návody, které jsem našel byly neschůdně složité, zkrátka určené pro uživatele Linuxu, nebo dokonce zcela nesmyslné...

Díky babelu umí LyX česky téměř ihned po své instalaci, bohužel však nepříliš dokonale. Většina uživatelů se s tím spokojí a vytvářejí pak dokumenty nepříliš odlišné od dokumentů vytvářených textovými procesory s použitím systémových písem. A to je škoda.

Tento můj pokus (rozhodně nejsem LaTeXový odborník) o snadné a rychlé zavedení češtiny do Lyxu se týká verze Lyxu 1.5.2 a MikTeXu 2.6 na Windows, ale měl by být v podstatě univerzální.

V LyXu (respektive v LaTeXu obecně) lze zavést češtinu dvěma způsoby, a to pomocí balíčku babel nebo použitím speciálního cs formátu (cslatex či pdfcslatex). Na internetu lze nalézt mnoho článků brojících proti používání babelu pro češtinu, ale pozor: tyto články se týkají starých vydání babelu, která, co se týče češtiny, opravdu nebyla příliš kvalitní!!!! Pomocí nového babelu lze dosáhnout výstupu prakticky nerozeznatelného od výstupu cslatexu (zatím jediný rozdíl, který se mi podařilo najít je, že babel nepřenáší spojovník na nový řádek při dělení slov typu propan-butan). Protože použití babelu je mnohem jednodušší a má oproti cslatexu mnoho výhod, doporučuji použít babel. Jeho použití je snadné i v LyXu.

Jako chyba Lyxu se mi jeví to, že některé volby (kódování písma, použití babelu) ukládá jako nastavení Lyxu, i když se zřejmě jedná o vlastnost dokumentu. Proto jsem se rozhodl nastavení Lyxu zcela ignorovat a předefinovat jej úpravou hlavičky dokumentu (tedy tzv. Preambule Latexu: Dokument -> Nastavení -> Preambule Latexu). Zlepší se tak přenositelnost dokumentů z jedné instalace LyXu do druhé a je to pro uživatele přehlednější.

Při zavedení češtiny jde o to aby (zhruba seřazeno podle důležitosti):

  1. Latexem generované popisy byly české (Chapter -> Kapitola, Bibliography -> Literatura, české názvy měsíců v datech atp.).
  2. Psaní českých uvozovek „text“.
  3. Písmo bylo dobře počeštěné (diakritická znaménka ladící s písmem a správně umístěná; správný kerning v párech s diakritikou [ďa, ťa, ťu, ďo ...]).
  4. Dělení slov bylo české (po sla-bi-kách).
  5. Předložky byly od slov odděleny nezlomitelnou mezerou, aby předložky nezůstávaly osamocené na konci řádku.
  6. PdfLatexem generovaný soubor pdf byl prohledávatelný a kopírovatelný včetně slov s diakritikou.

Postup při zavedení češtiny

Pokud jste netrpěliví a nechcete studovat celý návod, stáhněte si testovací soubor, spusťte ho v LyXu a v Dokument -> Nastavení zmáčkněte tlačítko Uložit jako standardní nastavení dokumentu. Tlačitkem Prohlížet PDF otestujte zda to správně funguje. V preambuli Latexu je předvoleno použití fontu Pagella, Heros a Cursor z balíčku TeX-Gyre, pokud máte správně nastavený MiKTeX, tak se balíček se nainstaluje automaticky. Jiné fonty můžete volit též z preambule Latexu testovacího souboru odkomentováním/zakomentováním příslušných příkazů. Doporučuji ještě provést body 4. a 5., ty s pomocí testovacího souboru udělat nelze.

A teď podrobný návod:

1. Zavedení českých popisů

V LyXu do preambule Latexu každého dokumentu (Dokument -> Nastavení -> Preambule Latexu) vložte řádek:

\usepackage[czech]{babel}

2. Uvozovky

V menu Dokument -> Nastavení -> Jazyk vybereme uvozovky označené jako ,,text``(třetí shora).

Na stejné kartě nastavíme jazyk češtinu (pokud dokument bude převážně český) a kódování. Kódování může být „standardní“, pokud píšeme jen česky, používáme-li více jazyků v jednom dokumentu bude nutné použít kódování utf8.

Poznámka: V CSLaTeXu jsou české uvozovky definovány makrem \uv{text v uvozovkách}. Poslední vydání babelu (ještě není v MiKteXu) použití tohoto makra umožňuje také, i když hlavně kvůli zpětné kompatibilitě se soubory psanými pro CSLaTeX. Nepatrný, snad nepodstatný rozdíl mezi makrem \uv{} a LyXovým ,,text`` je v kerningu.

3. České fonty

V MiKTeXu je nepřehledné množství různých fontů, najít mezi nimi ty dobře počeštěné je docela obtížné. Pokusil jsem se tedy vytvořit přehled takových fontů (zřejmě ne zcela úplný). Přehled písem je spolu s „defaultním“ písmem LyXu (Computer Modern) v pdf souboru. Různá kvalita písem se lépe projeví až po vytištění.

V LyXu se standardně písma zavádějí z menu Dokument -> Nastavení -> Fonty. Tento postup je možný, ale je třeba mít na paměti, že jen některá písma jsou použitelná (Times, Palatino, Bookman, New Century, Zapf Chancery, Helvetika, Avant Garde, Courier) a do preambule Latexu je navíc třeba zapsat \usepackage[IL2]{fontenc}. Pouze písmo Latin Modern lze použít s kódováním T1. Je lepší a přehlednější menu Fonty nepoužívat a volit písmo pomocí preambule Latexu (Dokument -> Nastavení -> Preambule Latexu). Jak jednotlivá písma zavést vyčtete z následující tabulky:

Přehled dobře počeštěných písem v distribuci MiKTeX 2.6
zavedení českého písma v preambuli Latexu rmfamily (šerifové písmo) sffamily (bezšerifové písmo) ttfamily (strojopis) matematické symboly

1. styly zavádějící písmo a s písmem sladěné matematické symboly

\usepackage[IL2]{fontenc} cmr cmss cmtt ~ cmr
\usepackage[IL2]{fontenc} \usepackage{mathptmx} ptm (times) - - ~ times
\usepackage[IL2]{fontenc} \usepackage{mathpazo} ppl (palatino) - - ~ palatino
\usepackage[IL2]{fontenc} \usepackage{ccfonts} ccr (concrete - není české!!!) - - ~ concrete
\usepackage[T1]{fontenc} \usepackage{lmodern} lmr (Latin Modern Roman) lmss (Latin Modern Sans) lmtt (Latin Modern tt) ~ LM
\usepackage[T1]{fontenc} \usepackage[math]{kurier} kurier - - ~ kurier
\usepackage[T1]{fontenc} \usepackage[math]{iwona} iwona - - ~ iwona
\usepackage[T1]{fontenc} \usepackage[math]{anttor} antt (Antykwa Torunska) - - ~ antt
2. styly zavádějící více písem
\usepackage[IL2]{fontenc} \usepackage{newcent} pnc (New Century Schoolbook) pag (Avantgarde) pcr (Curier) -
\usepackage[IL2]{fontenc} \usepackage{bookman} pbk (Bookman) pag (Avantgarde) pcr (Curier) -
3. zavedení jednotlivých písem
\usepackage[T1]{fontenc} \renewcommand{\rmdefault}{qzc} qzc (TeX Gyre Chorus) - - -
\usepackage[T1]{fontenc} \renewcommand{\rmdefault}{qtm} qtm (TeX Gyre Termes) - - -
\usepackage[T1]{fontenc} \renewcommand{\rmdefault}{qpl} qpl (TeX Gyre Pagella) - - -
\usepackage[T1]{fontenc} \renewcommand{\rmdefault}{qcs} qcs (TeX Gyre Scholla) - - -
\usepackage[T1]{fontenc} \renewcommand{\rmdefault}{qbk} qbk (TeX Gyre Bonum) - - -
\usepackage[T1]{fontenc} \renewcommand{\sfdefault}{qhv} - qhv (TeX Gyre Heros) - -
\usepackage[T1]{fontenc} \renewcommand{\sfdefault}{qag} - qhv (TeX Gyre Adventor) - -
\usepackage[T1]{fontenc} \renewcommand{\ttdefault}{qcr} - - qcr(TeX Gyre Cursor) -
\usepackage[T1]{fontenc} \usepackage{aurical}

a v textu: \fontauri{text} \fontamici{text}

- - - -

Osobně dávám přednost fontům v kódování T1 (tedy těm, které jsou uvedeny v preambuli příkazem \usepackage[T1]{fontenc} ). Důvodem je snadnější vytvoření kopírovatelného pdf souboru (viz níže) a také to, že všechny znaky z klávesnice odpovídají výsledku. U písem v kódování IL2 se znaky < > zobrazují jako otočený vykřičník a otazník a musí se zapisovat jako latexové příkazy (po Ctrl + l) \lt či \gt nebo v matematickém modu (po Ctrl + m).

4. Dělení slov

5. Vložení nezlomitelné mezery mezi slovo a předložku

(Návod jsem převzal z http://gchat.czweb.org/cslyx.php a mírně upravil)

Návod funguje v případě použití pdflatexu (ten lze doporučit pro většinu dokumentů). Jak to udělat pro výstup s použitím latexu nevím. Latex používám jen spolu s powerdotem pro přípravu prezentací a tam textu není tolik, aby nezlomitelné mezery nebylo možné vložit ručně.

6. Prohledávatelnost a kopírovatelnost pdf

Do preambule Latexu (Dokument -> Nastavení -> Preambule Latexu) vložíme:

\usepackage{cmap}

To je o trochu složitější, vše je popsáno na http://usenet.jyxo.cz/cz.comp.cstex/0409/pdflatex-pismenka-bez-diakritiky-po-copy-and-paste-z-acrobat.html, nebo stručněji na http://zyka.net/typokvitek/typokv-download-TeX-cz.html.

Uložení:

Pokud chcete toto nastavení používat jako výchozí v menu Dokument -> Nastavení potvrdíme Uložit jako standardní nastavení dokumentu.

Potíže

Pokud něco nefunguje, problém nejčastěji spočívá v tom, že LyX nebo dokonce ani Miktex neví o některých Latexových formátech či souborech.