diff options
Diffstat (limited to 'Master/texmf-dist/doc/generic/enctex/vlna.tex')
-rw-r--r-- | Master/texmf-dist/doc/generic/enctex/vlna.tex | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/enctex/vlna.tex b/Master/texmf-dist/doc/generic/enctex/vlna.tex new file mode 100644 index 00000000000..fcc3e8216be --- /dev/null +++ b/Master/texmf-dist/doc/generic/enctex/vlna.tex @@ -0,0 +1,54 @@ +% Vlna implementovana jako makra v encTeXu +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Leden 2003 Petr Olsak + +% Toto je ukazka moznosti encTeXu. Na urovni maker muzeme +% naprogramovat program vlna. + +% Pomocna makra: + +\def\setmu #1#2{\mubyte #1##1 #2\endmubyte} % use encTeX Feb 2003 +\bgroup \uccode`X=\endlinechar \uppercase{\gdef\endchar{X}} + \uccode`X=`\{ \uppercase{\gdef\leftbrace{X}} +\egroup + +\def\sylabi #1{% + \setmu \spacesylab {\space#1} % <mezera>v lese -> <mezera>v~lese + \setmu \normalsylab {(#1} % (v lese -> (v~lese + \setmu \normalsylab {\endchar#1} % <zacatek radku>v lese -> v~lese + \setmu \normalsylab {[#1} % [v lese -> [v~lese + \setmu \specsylab {\leftbrace#1} % {v lese -> {v~lese +} +% dve moznosti za predlozkou: mezera nebo konec radku: + +\def\sylab #1{\sylabi {#1\space}\sylabi {#1\endchar}} + +% seznam predlozek: + +\sylab v \sylab k \sylab o \sylab s \sylab u \sylab z +\sylab V \sylab K \sylab O \sylab S \sylab U \sylab Z +\sylab A \sylab I \sylab i \sylab a + +% makra neudelaji nic v matematickem modu a verbatim prostredi: + +\def\exx{\expandafter\expandafter\expandafter} +\def\spacesylab {\ifmmode\else\ifnum\catcode`\ =10 \exx\spacesylabP \fi\fi} +\def\normalsylab {\ifmmode\else\ifnum\catcode`\ =10 \exx\normalsylabP \fi\fi} +\def\specsylab {\ifmmode\else\ifnum\catcode`\ =10 \exx\specsylabP \fi\fi} + +\def\spacesylabP {\afterassignment\spacesylabR \let\next= } +\def\spacesylabR {\ifhmode\unskip\fi \next \normalsylabP} +\def\normalsylabP #1 {#1~} +\def\specsylabP #1{{\normalsylabP #1}} + +\def\uv{\futurelet\next\uvR} +\def\uvR{\ifx \next\specsylab \expandafter \uvS \else \expandafter \uvP \fi} +\long\def\uvP #1{\clqq#1\crqq} +\long\def\uvS \specsylab #1{\normalsylab \clqq#1\crqq} + +\mubytein=2 % potrebujeme i konstrukce "a v lese -> a~v~lese" + +\endinput + + + |