From 2b70d3ce264a0dbc2f05d2288622a952f7759d44 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 25 Apr 2016 21:51:01 +0000 Subject: cstex (25apr16) git-svn-id: svn://tug.org/texlive/trunk@40748 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/cstex/opmac-d.tex | 38 ++++++++++++++++- Master/texmf-dist/doc/cstex/opmac-u-en.pdf | Bin 235111 -> 238254 bytes Master/texmf-dist/doc/cstex/opmac-u-en.tex | 51 ++++++++++++++++++++-- Master/texmf-dist/doc/cstex/opmac-u.pdf | Bin 270987 -> 273197 bytes Master/texmf-dist/doc/cstex/opmac-u.tex | 66 ++++++++++++++++++++++++----- 5 files changed, 139 insertions(+), 16 deletions(-) (limited to 'Master/texmf-dist/doc/cstex') diff --git a/Master/texmf-dist/doc/cstex/opmac-d.tex b/Master/texmf-dist/doc/cstex/opmac-d.tex index 767b6a096e1..85482f28976 100644 --- a/Master/texmf-dist/doc/cstex/opmac-d.tex +++ b/Master/texmf-dist/doc/cstex/opmac-d.tex @@ -128,19 +128,31 @@ Naprogramujeme \db addprotect "", kter \inext {protectlist}{\empty}{+-} +OPmac užívá v makrech pro speciální vlastnosti PDF výstupu výhradně +primitivy pdf\TeX{}u. Lua\TeX{} nám v roce 2016 přidělal starosti, protože +předefinoval pdf\TeX{}ové primitivy. Proto při detekování nového Lua\TeX{}u +(to poznáme podle "\pdfextension") nastavíme význam primitivu "\pdfoutput" +do původního stavu a dále, na konci souboru maker (viz +sekci~\ilink[zaver]{\numref[zaver]}), voláme speciální soubor +"opmac-luatex.tex", který nastaví další pdf\TeX{}ové primitivy podle +původního významu. + +\inext {pdfextension}{\empty}{+-} + Některá makra budou fungovat jen v pdf\TeX{}u při nastaveném "\pdfoutput=1". Připravíme si tedy test \db ifpdftex, který pak použijeme při čtení souboru "opmac.tex". Test nikdy nebudeme vkládat do maker, takže při čtení souboru "opmac.tex" už musí být jasné, zda bude výstup směrován do DVI nebo PDF. Pozdější změna "\pdfoutput" může způsobit potíže. Xe\TeX{} sice není pdf\TeX, ale po dobu čtení maker jej za pdf\TeX{} budeme -považovat a na konci čtení maker (viz sekci~~\ilink[zaver]{\numref[zaver]}) +považovat a na konci čtení maker (viz sekci~\ilink[zaver]{\numref[zaver]}) to spravíme. \inext {ifpdftex}{\empty}{+-} Makra \db sdef a \db sxdef umožňují pohodlně definovat kontrolní sekvence -ohraničené pomocí "\csname...\endcsname". +ohraničené pomocí "\csname...\endcsname". Stejně tak \db slet nastaví význam +sekvencí ohraničených pomocí "\csname...\endcsname". \inext {sdef}{\empty}{+-} @@ -511,6 +523,15 @@ Fontov \inext {addprotect}{\empty}{+-} +Makro \db fontfam je definováno v souboru "fontfam.tex". Není účelné je +zavádět přímo do OPmac, protože makro přečte také rozsáhlá data o fontech, +která mohou zbytečně zatěžovat paměť, pokud uživatel "\fontfam" nikdy +nepoužije. Takže tento makro soubor a data jsou přečteny až při prvním +použití "\fontfam". Uvedený soubor maker definuje "\fontfam", takže na +následujícím řádku nevidíte žádnou rekurzi. + +\inext {fontfam}{\empty}{+-} + \subsec Texty ve více jazycích %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2610,6 +2631,17 @@ p makra "\bbl:b" a "\bbl:c" si dva seznamy "\citelist" a "\citelistB" před svou činností spojí do seznamu jediného nazvaného "\citelist". +Makro \db usebib je definováno v souboru maker (modulu) "opmac-bib.tex". +Tuto sadu maker není účelné zahrnout přímo do OPmac, protože je závislá na +externím balíčku "librarian.tex". Soubor maker tedy zavádíme až v případě, že +uživatel skutečně použil makro "\usebib". Je použit stejný trik, jako +v~případě makra "\fontfam". + +\inext{usebib}{}{++} + +Uživatel nicméně může makro soubor na začátku svého dokumentu volat +explicitně pomocí "\input opmac-bib". + \subsec Úprava output rutiny %%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2743,6 +2775,8 @@ jednotky pomoc V případě, že je použit Xe\TeX, načteme dodatečná makra ze souboru "opmac-xetex.tex". Tato makra nahrazují některá makra z OPmac Xe\TeX-specifickou variantou nebo emulují pdf\TeX{}ové primitivy. +V případě, že je použit nový LuaTeX, načteme makra "opmac-luatex.tex", která +rekonstruují pdf\TeX{}ové primitivy dle původního významu. Nakonec pomocí "\inputref" přečteme REF soubor (pokud existuje) a vrhneme se na zpracování dokumentu, který nám připravil uživatel. Přeji dobré pořízení. diff --git a/Master/texmf-dist/doc/cstex/opmac-u-en.pdf b/Master/texmf-dist/doc/cstex/opmac-u-en.pdf index 9a2a9c24833..4ac1c8b789e 100644 Binary files a/Master/texmf-dist/doc/cstex/opmac-u-en.pdf and b/Master/texmf-dist/doc/cstex/opmac-u-en.pdf differ diff --git a/Master/texmf-dist/doc/cstex/opmac-u-en.tex b/Master/texmf-dist/doc/cstex/opmac-u-en.tex index 5cc91d877c9..0dd65224551 100644 --- a/Master/texmf-dist/doc/cstex/opmac-u-en.tex +++ b/Master/texmf-dist/doc/cstex/opmac-u-en.tex @@ -20,7 +20,7 @@ \tit OPmac -- macros for plain\TeX\fnotemark1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\centerline{\it Petr Ol\v s\'ak, 2012, 2013, 2014} +\centerline{\it Petr Ol\v s\'ak, 2012 -- 2016} \bigskip \centerline{\url{http://petr.olsak.net/opmac-e.html}} @@ -182,6 +182,48 @@ This is {\em important} text. % = This is {\it important\/} text. \bi This is {\em important} text. % = This is\/ {\bf important} text. \endtt +\sec Selection of font family +%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +OPmac doesn't select default font family. The default is the same as in +plain \TeX{} (CM fonts) or \CS{}plain (CS fonts). It is possible to "\input" +so called ``font-files'' for loading a font family, i.\,e.\ typically four +variants of fonts "\rm", "\bf", "\it" and "\bi". The font-files use +primitive command "\font" for loading individual fonts. + +You need not to remember names of font-files if you are using +"\fontfam[]" macro which loads the appropriate font-file. The +argument "" is case insensitive and spaces are ignored. So, +"\fontfam[Times Roman]" is equal to "\fontfam[TimesRoman]" and it is equal +to "\fontfam[timesroman]". Several aliases are prepared, thus +"\fontfam[times]" can be used for loading Times Roman family too. + +If you write "\fontfam[?]" then all available font families are listed on +the terminal and in the log file. The listing looks like: + +\begtt + [LM Fonts] {\rm \bf \it \bi ; mod:\caps ; +AMS} (8z 8t u) + [TG Heros] {\rm \bf \it \bi ; mod:\caps \cond ; +TX} (8z 8t) + ... +\endtt + +The "" is followed by the list of basic variant selectors, then +available variant modifiers are listed. After plus character, the default +set of math fonts used together with given family is named. The available +font encodings are written in round brackets. More information about +"\fontfam" macro can be found in the "fontfam.tex" file. + +The modifiers of basic variant selectors ("\caps", "\cond" for example) must +be used immediately before the variant selector and they can be +(independently) combined: "\caps\it" or "\cond\caps\bf". The modifiers can +be followed by "\fam" command instead of normal variant selector. Then +current variant is kept (but modified) in such case and all consecutive +basic variant selectors are modified too. More about font modifers are +mentioned in the "cs-heros.tex" file. + +The "\fontfam[Catalog]" prints a font catalogue of all configured font +families. + \sec Parts of the document %%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1039,9 +1081,9 @@ hook started inside the group before ".bbl" file is read. Example: \endtt \noindent -{\bf Direct reading of ".bib" files} is possible after "\input opmac-bib". -This package uses the external package "librarian.tex" by Paul Isambert. -The usage is similar to previous case: +{\bf Direct reading of ".bib" files} is possible by "\usebib" macro. +This macro reads macro package "opmac-bib.tex" (on demand) which uses the external +package "librarian.tex" by Paul Isambert. The usage is similar to previous case: \begtt % print only \cited and \nocited entries @@ -1391,6 +1433,7 @@ the end. \usebbl/? bbl-base % use pre-generated bbl file, ? in {a,b,c} \usebib/? (style) bib-base % direct using of .bib file, ? in {s,c} +\fontfam [FamilyName] % selection of font family \typosize [font-size/baselineskip] % size setting of typesetting \typoscale [factor-font/factor-baselineskip] % size scaling \thefontsize [size] \thefontscale [factor] % current font size diff --git a/Master/texmf-dist/doc/cstex/opmac-u.pdf b/Master/texmf-dist/doc/cstex/opmac-u.pdf index 224f494d611..a80e01d341c 100644 Binary files a/Master/texmf-dist/doc/cstex/opmac-u.pdf and b/Master/texmf-dist/doc/cstex/opmac-u.pdf differ diff --git a/Master/texmf-dist/doc/cstex/opmac-u.tex b/Master/texmf-dist/doc/cstex/opmac-u.tex index 5dcb3351cc8..7bc11f38da4 100644 --- a/Master/texmf-dist/doc/cstex/opmac-u.tex +++ b/Master/texmf-dist/doc/cstex/opmac-u.tex @@ -20,7 +20,7 @@ \tit OPmac -- rozĹĄiřujĂ­cĂ­ makra plain\TeX{}u %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\centerline{\it Petr OlĹĄĂĄk, 2012, 2013, 2014} +\centerline{\it Petr OlĹĄĂĄk, 2012 -- 2016} \bigskip \centerline{\url{http://petr.olsak.net/opmac.html}} @@ -76,10 +76,10 @@ po načtenĂ­ {\tt opmac.tex} zavede jinĂŠ fonty a pouĹžije jinĂ˝ balíček typu {\tt *-math.tex}, například {\tt tx-math.tex}. Příklad začátku dokumentu: \begtt -\input opmac % zavedenĂ­ makra OPmac -\chyph % zapnutĂ­ čeĹĄtiny -\input lmfonts % pouĹžitĂ­ Latin Modern fontĹŻ -\typosize[12/14] % nastavenĂ­ zĂĄkladnĂ­ velikosti sazby +\input opmac % zavedenĂ­ makra OPmac +\chyph % zapnutĂ­ čeĹĄtiny +\fontfam [LM fonts] % pouĹžitĂ­ Latin Modern fontĹŻ +\typosize[12/14] % nastavenĂ­ zĂĄkladnĂ­ velikosti sazby \endtt Makro OPmac potřebuje ke svĂŠ činnosti \csplain{} optimĂĄlně ve verzi aspoň @@ -176,6 +176,49 @@ To je {\em zdĹŻrazněnĂ˝} text. % jako: To je {\it zdĹŻrazněnĂ˝\/} text. \endtt +\sec VĂ˝běr fontovĂŠ rodiny +%%%%%%%%%%%%%%%%%%%%%%%%% + +OPmac implicitně rodinu fontĹŻ nenastavuje, tj. fonty jsou připraveny stejnĂŠ +jako v plainTeXu (CM fonty) nebo \CS{}plainu (CS fonty). Je ale moĹžnĂŠ +pouŞít tzv. \uv{fontovĂŠ soubory} pro zavedenĂ­ jinĂŠ fontovĂŠ rodiny, tj. +typicky čtyř zĂĄkladnĂ­ch variant "\rm", "\bf", "\it" a "\bi". Tyto soubory +interně pouŞívajĂ­ primitivnĂ­ příkaz "\font" pro zavedenĂ­ jednotlivĂ˝ch fontĹŻ. + +NemusĂ­te si pamatovat nĂĄzev souboru, kterĂ˝ je potřeba pro zavedenĂ­ fontovĂŠ +rodiny pouŞít. Stačí napsat "\fontfam[]" a poĹžadovanĂ˝ +soubor se načte. V argumentu nezĂĄleŞí na mezerĂĄch a velkĂ˝ch +pĂ­smenech, takĹže "\fontfam[Times Roman]" je totĂŠĹž jako +"\fontfam[TimesRoman]" i jako "\fontfam[timesroman]". TakĂŠ je připraveno +několik běžnĂ˝ch aliasĹŻ, takĹže třeba "\fontfam[times]" rovněž zavede rodinu +Times~Roman. + +PouĹžijete-li "\fontfam[?]", zobrazĂ­ se na terminĂĄlu a v log souboru přehled +vĹĄech fontovĂ˝ch rodin dostupnĂ˝ch pomocĂ­ fontovĂ˝ch souborĹŻ. Část seznamu vypadĂĄ +takto: + +\begtt + [LM Fonts] {\rm \bf \it \bi ; mod:\caps ; +AMS} (8z 8t U) + [TG Heros] {\rm \bf \it \bi ; mod:\caps \cond ; +TX} (8z 8t) +\endtt +% +Nejprve je uveden , pak nĂĄsleduje seznam zĂĄkladnĂ­ch selektorĹŻ +pro vĂ˝běr variant v danĂŠ rodině, dĂĄle seznam dostupnĂ˝ch modifikĂĄtorĹŻ těchto +zĂĄkladnĂ­ch selektorĹŻ pak za znakem plus je uvedena implicitnĂ­ matematickĂĄ +sada fontĹŻ uĹžitĂĄ k vybranĂŠ rodině a konečně v kulatĂŠ zĂĄvorce je seznam +kĂłdovĂĄnĂ­, kterĂŠ rodina fontĹŻ podporuje. VĂ­ce informacĂ­ o makru "\fontfam" +lze najĂ­t v souboru "fontfam.tex". + +ModifiĂĄtory (např. "\caps", "\cond") se pĂ­ĹĄĂ­ těsně před selektor varianty, +tedy například "\caps\it" nebo "\cond\caps\bf". ModifikĂĄtory nĂĄsledovanĂŠ +příkazem "\fam" (např. "\caps\fam") nastavĂ­ modifikĂĄtor pro vĹĄechny nĂĄsledně +pouĹžitĂŠ zĂĄkladnĂ­ selektory. ModifikĂĄtory pracujĂ­ nezĂĄvisle na sobě. VĂ­ce +se o nich pĂ­ĹĄe v souboru "cs-heros.tex". + +PouĹžijete-li "\fontfam[Catalog]", vytiskne se katalog dostupnĂ˝ch fontovĂ˝ch +rodin. + + \label[cleneni] \sec ČleněnĂ­ dokumentu %%%%%%%%%%%%%%%%%%%%%% @@ -1380,8 +1423,9 @@ podle rĹŻznĂ˝ch stylĹŻ rĹŻznĂŠ soubory typu "mybbl-plain.bbl", \medskip \noindent -{\bf PřímĂŠ čtenĂ­ ".bib" databĂĄze} je moĹžnĂŠ po "\input opmac-bib.tex". -Tato přídavnĂĄ makra navĂ­c pouŞívajĂ­ externĂ­ balíček na čtenĂ­ ".bib" souborĹŻ +{\bf PřímĂŠ čtenĂ­ ".bib" databĂĄze} je moĹžnĂŠ pomocĂ­ makra "\usebib". +Je-li toto makro pouĹžito poprvĂŠ, natĂĄhne se dodatečnĂ˝ modul "opmac-bib.tex", +kterĂ˝ navĂ­c potřebuje externĂ­ balíček na čtenĂ­ ".bib" souborĹŻ "librarian.tex" od Paula Isamberta. UĹžitĂ­ je podobnĂŠ jako při "\usebbl": \begtt @@ -1681,12 +1725,12 @@ Toto makro mĹŻĹžete předefinovat, ale ponechte v předu "\setlccodes", vzadu "{}{}" a za kaĹždĂ˝m znakem piĹĄte tečku, kterĂĄ je implicitnĂ­m ignorovanĂ˝m znakem. +\maybebreak 4cm \sec ShrnutĂ­ %%%%%%%%%%%% -%KlíčovĂĄ makra balĂ­ku OPmac jsou stručně shrnuta v nĂĄsledujĂ­cĂ­m vĂ˝pisu. - +\vskip-.5\baselineskip \def\tthook{\adef!{\string\endtt}\adef&{\kern.25em}} \begtt \tit @@ -1724,6 +1768,7 @@ znakem. \usebbl/? % pouĹžitĂ­ předgenerovanĂŠ databĂĄze, ? je z {a,b,c} \usebib/? (