From 2f694421ad1f658bc615da8f0b26876996459568 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 15 May 2014 16:13:48 +0000 Subject: cstex git-svn-id: svn://tug.org/texlive/trunk@34041 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/cstex/opmac-d.tex | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/cstex/opmac-d.tex b/Master/texmf-dist/doc/cstex/opmac-d.tex index 735087fd6a8..ab78fec6146 100644 --- a/Master/texmf-dist/doc/cstex/opmac-d.tex +++ b/Master/texmf-dist/doc/cstex/opmac-d.tex @@ -20,6 +20,7 @@ \def\csplain{\CS plain} \def\CS{CS} +\chyph \input docby.tex @@ -174,6 +175,17 @@ druh \inext {isnextchar}{\empty}{+-} +Makro \db maybebreak "" umožní uživateli rozlomit řádek +nebo stránku v místě použití. Zlom se uskuteční, chybí-li do konce +řádku/stránky zhruba méně než "" místa. Jinak se zlom neuskuteční a +nestane se nic. Makro je závislé na módu \TeX{}u (vertikální/horizontální). +Chcete-li jím lámat +stránky, pište třeba "\par\maybebreak3cm". Makro využívá triku, že přičte a +odečte stejnou hodnotu roztažitelnosti mezery, takže tyto dvě mezery těsně +za sebou se (při nezlomení v~"\penalty-130") anulují. + +\inext {maybebreak}{^^B\cbrace}{++} + Předefinujeme makro \db uv z \csplain{}u. Tam je toto makro navrženo tak, aby mohlo mít za svůj parametr verbatim text. Důsledkem toho nefunguje správně kerning. Považuji za lepší mít správně kerning a případné uvozování verbatim @@ -1021,7 +1033,8 @@ definujeme pomocn "{prvni}{druhy}", pak "\firstdata"~"\,aa"~"\cosi" expanduje na "\cosi"~"prvni&". Tím máme možnost vyzískat data z makra. Podobně makro \db seconddata "\,"~"\" expanduje na -"\"~"&". +"\"~"&". Jsou použita pomocná makra +\db firstdataA a \db seconddataA. \inext{firstdata}{\empty}{+-} @@ -1085,7 +1098,7 @@ Makro \db makeindex nejprve definuje p "\act" tak, aby byly uzavřeny seznamy stránek (tj. aby seznam nekončil znakem "--") a do první datové oblasti každého makra typu "\," vloží konverzi textu "" do -tvaru vhodném pro abecední řazení českých slov. +tvaru vhodného pro abecední řazení českých slov. Pomocí "\expandafter \act \iilist \relax" se požadovaná činnost vykoná pro každý prvek v "\iilist". Dále makro "\makeindex" provede seřazení "\iilist" podle abecedy @@ -1106,7 +1119,7 @@ jednodu Makro \uv{prepare index item} \db prepii "\," odstraní prostřednictvím \db prepiiA z názvu kontrolní sekvence backslash a čárku a zbytek tiskne pomocí "\printii". Pokud ale je "\," uloženo v~seznamu "\iispeclist", pak se -expanduje sekvenci s názvem "\\,", ve které je uloženo, co se +expanduje na sekvenci s názvem "\\,", ve které je uloženo, co se má místo hesla vytisknout. Data těchto výjimek jsou připravena makrem "\iis" \inext{prepii}{\empty}{+-} @@ -1141,7 +1154,7 @@ M \inext{printii}{\empty}{+-} Makro \db iiparparams nastavuje parametry sazby odstavce v rejstříku. Vlevo -budeme mít "\leftsip" rovný "\iindent", ale první řádek posuneme o +budeme mít "\leftskip" rovný "\iindent", ale první řádek posuneme o "-\iindent" (viz řádek kódu~\cite[printii:iindent]) takže první řádek je vystrčen doleva. Vpravo máme pružnou mezeru, aby se seznam čísel stran mohl rozumně lámat, když je moc dlouhý. Makro "\iiparparams" si musí poznačit do @@ -1171,8 +1184,8 @@ pr %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Nejprve se zaměříme na vytvoření makra -"\isAleB"~"\,"~"\,", které rozhodne, zda je "" řazeno za -"" nebo ne. Výsledek zkoumání můžeme prověřit pomocí "\ifAleB". +"\isAleB"~"\,"~"\,", které rozhodne, zda je "" řazeno +před "" nebo ne. Výsledek zkoumání můžeme prověřit pomocí "\ifAleB". Pro porovnání dvou údajů vyžaduje norma dva průchody. V prvním (primární řazení) se rozlišuje jen mezi písmeny A B C Č D E F G H Ch I J K L M N O P Q @@ -1685,14 +1698,16 @@ zat literatury. V obou případech budou lejblíky zelené a díky "\llap" neovlivní polohu ostatní sazby. -Klikací text vytvoří makro \db link "[:]{}{}". +Klikací text vytvoří makro \db linkactive "[:]{}{}". Makro používá pdf\TeX{}ový primitiv "\pdfstartlink", ve kterém je vymezena výška a hloubka aktivní plochy. Nakonec přepne na požadovanou "" (pokud není černá), vytiskne aktivní "" a přepne zpět na černou barvu. Pdf\TeX{}ový primitiv -"\pdfendlink" ukončí sazbu aktivního textu. +"\pdfendlink" ukončí sazbu aktivního textu. K použití je připraveno makro +\db link, které dostane hodnotu "\linkactive" při "\hyperlinks", jinak pouze +přepíše svůj argument. -\inext{link}{^^B\cbrace}{++} +\inext{link}{\empty}{+-} Makro \db urllink "[:]{}" pracuje analogicky jako "\link". Jen navíc přidává některé -- cgit v1.2.3