summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/plain/encxvlna
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-07-03 20:44:06 +0000
committerManuel Pégourié-Gonnard <mpg@elzevir.fr>2008-07-03 20:44:06 +0000
commit7f7ad97d2c0c901fc9e2583ba37fac26e15b3a54 (patch)
treef39c602699755970a48a770ca541f4e6d7c540bf /Master/texmf-dist/tex/plain/encxvlna
parente29b03bf3d2ccd1cccc3baceb65e8c9080f61af7 (diff)
new encxvlna packages
git-svn-id: svn://tug.org/texlive/trunk@9194 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/plain/encxvlna')
-rw-r--r--Master/texmf-dist/tex/plain/encxvlna/encxvlna.tex72
1 files changed, 72 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/plain/encxvlna/encxvlna.tex b/Master/texmf-dist/tex/plain/encxvlna/encxvlna.tex
new file mode 100644
index 00000000000..6a740d5ab77
--- /dev/null
+++ b/Master/texmf-dist/tex/plain/encxvlna/encxvlna.tex
@@ -0,0 +1,72 @@
+% Vlna implementovana jako makra v encTeXu
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Leden 2003 Petr Olsak
+
+% The following test and error message was
+% inserted by Z. Wagner
+\expandafter\ifx\csname mubyte\endcsname\relax
+ \newhelp\vlnahelp
+ {This package is implemented by new primitives of encTeX of Feb 2003^^J
+ but this extension was not detected in your system. You can continue^^J
+ but all commands of `encxvlna' will be ignored. If your TeX distribution^^J
+ contains encTeX but does not activate it, you have to create the format^^J
+ using the -enc switch (e.g. in fmtutils.cnf). If you do not have encTeX^^J
+ at all, you have to compile it from the source code. You can find^^J
+ the source code including documentation at^^J
+ http://math.feld.cvut.cz/olsak/enctex.html
+ }
+ \errhelp\vlnahelp
+ \errmessage
+ {encTeX of Feb 2003 or later not detected,^^Jthe rest of the package will be ignored}
+ \expandafter\endinput\fi
+
+% 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
+
+
+