CSLaTeX --- úpravy LaTeXu 2e pro českou a slovenskou sazbu Verze pro LaTeX z prosince '96 ========================================================== 28.10.1997 Jaroslav Šnajdr CSLaTeX je sada konfiguračních souborů pro LaTeX2e, které umožňují v tomto systému připravovat české a slovenské dokumenty. Balík je distribuován (jak je u LaTeXu zvykem) v souboru cslatex.dtx, který obsahuje příslušná makra i s důkladnou dokumentací. Soubor cslatex.ins je dávka pro program docstrip, který z dtx zdroje vygeneruje vlastní soubory. Instalace --------- (jednodušší postup instalace z balíku cslatex-10-97.tar, viz INSTALL.cslatex) Pro instalaci potřebujete (kromě TeXu): o CS-fonty. o české a slovenské vzory dělení czhyphen.tex a skhyphen.tex. Jsou součástí csplainu. o LaTeXové "obrázkové" fonty lasy, lcircle a line. o Originální LaTeX2e. Distribuční soubory jsou k nalezení na CTANu v adresáři /tex-archive/macros/latex/base/. Pokud toto všechno máte, můžete začít instalovat: o Smažte (zazálohujte) starou verzi LaTeXu. POZOR! Toto se netýká podpůrných balíčků, např. graphics, tools nebo psnfss. Jejich upgrade (je-li k dispozici novější verze) je samostatnou záležitostí a není bezpodmínečně nutný. Pokud máte nainstalovanou starší verzi CSLaTeXu, měly by zmizet adresáře texmf/tex/latex/cslatex, input a src. Máte-li v adresáři input některé styly, které nejsou standardní součástí LaTeXu (např. a4, a4wide, fancyhdr), vytvořte adresář texmf/tex/latex/misc a přesuňte je tam. o Pokud váš TeX používá ke hledání v adresářovém stromu hashovací soubor (např. v teTeXu ls-R), nechte ho znovu vytvořit, aby se projevily provedené změny -- smazané soubory. V teTeXu k tomuto slouží příkaz texhash. o Vytvořte si někde v /tmp dočasný adresář, do kterého zkopírujete distribuční soubory LaTeXu a CSLaTeXové soubory cslatex.dtx a cslatex.ins. o V tomto adresáři rozbalte distribuci LaTeXu příkazy "initex unpack.ins" a "initex cslatex.ins". o V normální konfiguraci používá LaTeX v kódování T1 dc-fonty. Máte-li novější ec-fonty, vytvořte příslušně upravené definiční soubory příkazem "initex ec.ins". Tento krok musí následovat až PO zpracování unpack.ins. o Vytvořte formát LaTeX příkazem "initex latex.ltx". Nyní máme v našem adresáři 266 souborů, z nichž ty potřebné přesuneme na příslušná místa do adresářové struktury TeXu: o Soubor latex.fmt přesuňte do adresáře s formáty -- v teTeXu texmf/web2c. o Konfigurační soubory pro češtinu přesuneme do adresáře texmf/tex/latex/cslatex. Jsou to tyto: fonttext.cfg hyphen.cfg il2enc.def il2*.fd lczech.sty lslovak.sty o Do adresáře texmf/tex/latex/input dáme vstupní soubory LaTeXu: docstrip.tex *.cls *.clo *.sty *.fd *.ist *.def *.cfg o Zdrojové soubory LaTeXu fontmath.ltx fonttext.ltx hyphen.ltx latex.ltx ltpatch.ltx preload.ltx nejsou třeba pro normální práci, ale budeme je potřebovat, pokud chceme vygenerovat znovu formát. Tento případ může nastat, když budeme do LaTeXu přidávat nové vzory dělení, nebo když si fmt soubor prostě omylem smažeme. Proto je přesuneme do adresáře /texmf/tex/latex/src. Ostatní soubory nebudeme potřebovat, proto je můžeme smazat. Vygenerujeme hashovací soubor pro TeX příkazem "texhash" (teTeX). LaTeX je nainstalován a můžeme ho otestovat na nějakém krátkém dokumentíku. Konfigurace dělení slov ----------------------- Konfigurační příkazy se nacházejí v souboru cslatex/hyphen.cfg. Příslušná část souboru je viditelně ohraničena komentářovými řádkami. K zavedení vzorů dělení slouží příkaz \DeclareLanguage[seznam kódování]{jméno příkazu zapnutí vzorů}% {jméno souboru se vzory a výjimkami}% {\lefthyphenmin=číslo \righthyphenmin=číslo \@requesthyphens \@splitrequestedfalse} Vzory dělení načtené s \@requesthyphens umí využívat funkci přenášení pomlčky při dělení (viz níže). Implicitně je zavedena americká angličtina, čeština a slovenština v kódování IL2. Pro zavedení češtiny v IL2 i T1 použijte: \DeclareLanguage[IL2,T1]{\czech}{czhyphen.tex}% {\lefthyphenmin=2 \righthyphenmin=3 \@requesthyphens}% V běžném TeXu může být maximálně 4 až 5 vzorů najednou -- víc se do jeho paměti nevejde. Styl czech.sty/slovak.sty ------------------------- Bez zavedení tohoto stylu se CSLaTeX chová jako normální LaTeX a používá cm-fonty bez českých znaků. Pomocný styl zavedeme pomocí \usepackage[parametry]{czech} popř. \usepackage[paremetry]{slovak} Parametry můžou být: T1 Cork kódování. Budou se používat dc(ec) fonty. Aby se správně dělila slova, musí být vzory dělení nataženy také pro T1 (viz výše). Bez tohoto parametru je použito kódování IL2. split Zapíná přenášení pomlčky při dělení slov typu propan- -butan. Tato vlastnost funguje skoro bez problémů -- výjimkou je použití `-' jako minus v čísle, které čte TeX v horizontálním módu (tak bývá zadáváno např. \looseness=-1); v těchto případech je při zapnutém přenášení dělítka možné napsat \minus. nosplit Vypíná přenášení pomlčky. To je také implicitní chování. nocaptions Nebudou předefinovány texty vkládané LaTeXem jako "Kapitola" nebo "Obsah". Zůstanou tedy původní "Chapter" nebo "Contents". olduv Příkaz \uv je (nově) definován tak, že zajistí správný kerning kolem uvozovek, ale uvnitř jeho argumentu nelze použít příkaz \verb. Použitím volby olduv dostaneme starou definici, která se chovala přesně obráceně -- špatný kerning, lze použít \verb. Oba tyto požadavky se navzájem vylučují a nikdo dosud nevymyslel řešení, kde by fungovalo obojí najednou. Volba 'cstex', která umožňovala používání příkazů \csprimeson/off, byla zrušena a tyto příkazy lze používat rovnou. Kvůli zpětné kompatibilitě je stále deklarována, ale vůbec nic nedělá -- její použití pouze nezpůsobí chybu. Příkazy definované ve stylu czech/slovak.sty -------------------------------------------- \dateczech Příkaz \today expanduje na české datum, např. 30. srpna 1977. \dateslovak Slovenské datum, např. 30. augusta 1977. \dateUSenglish Americké \today, např. August 30th, 1977. \dateenglish Britské \today, např. 30th August 1977. \captionsczech České captions -- Předmluva, Tabulka. \captionsslovak Slovenské captions -- Predhovor, Tabuľka. \captionsenglish Anglické captions -- Preface, Table. \csprimeson, \csprimesoff ``Anglické'' uvozovky se (ne)budou sázet jako české 99 66. \cstieon, \cstieoff Předefinuje vlnku ~, aby se v mat. módu (ne)sázela mezera. --