summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/cstex/opmac-d.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-04-25 21:51:01 +0000
committerKarl Berry <karl@freefriends.org>2016-04-25 21:51:01 +0000
commit2b70d3ce264a0dbc2f05d2288622a952f7759d44 (patch)
tree3733d984650762bf67b0856d46301d974ae79380 /Master/texmf-dist/doc/cstex/opmac-d.tex
parent6b9c748b268e3e8cc785287f5d31bc7e15db2e76 (diff)
cstex (25apr16)
git-svn-id: svn://tug.org/texlive/trunk@40748 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/cstex/opmac-d.tex')
-rw-r--r--Master/texmf-dist/doc/cstex/opmac-d.tex38
1 files changed, 36 insertions, 2 deletions
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 "<makro>", které zařídí vložení "<makra>" do sezna
\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á makra zabezpečíme proti rozkladu v parametru "\write".
\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řečte makrem \db Xcite "{<lejblík>}" z REF souboru takto:
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í makra \db truedimen.
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í.