diff options
author | Karl Berry <karl@freefriends.org> | 2019-03-13 20:57:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-03-13 20:57:13 +0000 |
commit | 2a0df47c9a261e34a4071da2134f1efd2b7a55ad (patch) | |
tree | 43e762f4d9a6fd9f7109eba1b6e21da86e768b3e /Master/texmf-dist/doc/cstex/opmac-d.tex | |
parent | f4bb07267c294f84d8f0656f916930f6883ca6f4 (diff) |
cstex (13mar19)
git-svn-id: svn://tug.org/texlive/trunk@50372 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.tex | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/cstex/opmac-d.tex b/Master/texmf-dist/doc/cstex/opmac-d.tex index 0c19a207b5a..fcabe66ad6f 100644 --- a/Master/texmf-dist/doc/cstex/opmac-d.tex +++ b/Master/texmf-dist/doc/cstex/opmac-d.tex @@ -8,7 +8,7 @@ % UTF-8 encTeX has a conflict with DocByTeX \chyph -\def\projectversion{Aug. 2018} +\def\projectversion{Mar. 2019} \def\headtitle{OPmac} \widowpenalty=10000 @@ -344,6 +344,7 @@ uživatelské dokumentaci. \dgn \nb colsep \dgn \nb mnoteindent \dgn \nb mnotesize +\dgn \nb titskip \dgn \nb picdir \dgn \nb bibtexhook \dgn \nb chaphook @@ -2797,6 +2798,40 @@ jednotky pomocí makra \db truedimen. \inext{trueunit}{\empty}{+-} +\subsec [styly] Předdefinované styly +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +Makro \db boxlines pracuje obdobně jako makro plainTeX{}u "\obeylines", ale +jednotlivé řádky jsou samostatné "\hbox"y různě široké. +Proto například "\vbox{\boxlines <řádky textu>}" vytvoří "\vbox", který je stejně +široký jako nejširší řádek v něm. Toto makro bude použito v makru +"\address", které je definováno ve stylu "\letter". + +\inext{boxlines}{\empty}{+-} + +Toto makro při přechodu do horizontálního módu pomocí "\everypar" tento mód +okamžitě uzavře a otevře běžný "\hbox\bgroup". V něm je konc řádku aktivní a +jakmile k němu dojde, provede se \db boxlinesE, což ukončí skupinu "\hbox"u +pmocí "\egroup". Nejvíce komplikací přináší syntaktická alternativa, kdy +uživatel může ukončit skupinu, kterou sám otevřel, explicitním "}", a to +nejen ve vertikálním módu (to pak funguje správně), ale také třeba +v rámci vnitřního horizontálního módu. Tím se tento mód ukončí, ale +neukončí se uživatelova skupina. Proto pomocí "\aftergroup" iniciaozavén ve +vnitřním horizontálním módu je za kompletovaným "\hbox"em +spuštěna dvojice maker \db boxlinesC a \db boxlinesD, která zkontroluje, +zda těsně následuje "\empty". To je příznak toho, že jsme ukončili interní +horizonrální mód pomocí "\boxlinesE". V takovém případě neděláme nic. Jinak +ukončíme i uživatelovu skupinu pomocí "\egroup". Je tam použit +"\expandafter", protože uživatel může mít taky své "\aftergroup". + +Následují definice maker \db report a \db letter nastavující předdefinovaný +styl dokumentu v souladu s tím, co je o tom psáno v uživatelské dokumentaci. +\dgn \nb address +\dgn \nb subject +\dgn \nb author + +\inext{report}{\empty}{+-} + \subsec [zaver] Závěr %%%%%%%%%%%%%%%%%%%%% |