summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/csplain/base
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-12-21 17:18:31 +0000
committerKarl Berry <karl@freefriends.org>2012-12-21 17:18:31 +0000
commit1b512e2a067c98afcd3edcbdfe2743953ddd337d (patch)
tree581c5b6baf825a2d9789259d2a857c38cafb7224 /Master/texmf-dist/tex/csplain/base
parent55f452fc0f663684549d2d2d603fb5ac7320f45a (diff)
csplain (20dec12)
git-svn-id: svn://tug.org/texlive/trunk@28597 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/csplain/base')
-rw-r--r--Master/texmf-dist/tex/csplain/base/cavantga.tex41
-rw-r--r--Master/texmf-dist/tex/csplain/base/cbookman.tex39
-rw-r--r--Master/texmf-dist/tex/csplain/base/chelvet.tex39
-rw-r--r--Master/texmf-dist/tex/csplain/base/cncent.tex38
-rw-r--r--Master/texmf-dist/tex/csplain/base/cpalatin.tex37
-rw-r--r--Master/texmf-dist/tex/csplain/base/csenc-u.tex54
-rw-r--r--Master/texmf-dist/tex/csplain/base/csfontsm.tex67
-rw-r--r--Master/texmf-dist/tex/csplain/base/csplain.ini32
-rw-r--r--Master/texmf-dist/tex/csplain/base/ctimes.tex38
-rw-r--r--Master/texmf-dist/tex/csplain/base/czech.sty259
-rw-r--r--Master/texmf-dist/tex/csplain/base/dcfonts.tex23
-rw-r--r--Master/texmf-dist/tex/csplain/base/ecfonts.tex23
-rw-r--r--Master/texmf-dist/tex/csplain/base/hyphen.lan591
-rw-r--r--Master/texmf-dist/tex/csplain/base/il2code.tex4
-rw-r--r--Master/texmf-dist/tex/csplain/base/plaina4.tex9
-rw-r--r--Master/texmf-dist/tex/csplain/base/slovak.sty258
-rw-r--r--Master/texmf-dist/tex/csplain/base/t1code.tex268
-rw-r--r--Master/texmf-dist/tex/csplain/base/t1enc-u.tex130
-rw-r--r--Master/texmf-dist/tex/csplain/base/ttimes.tex50
-rw-r--r--Master/texmf-dist/tex/csplain/base/ucode.tex314
20 files changed, 1285 insertions, 1029 deletions
diff --git a/Master/texmf-dist/tex/csplain/base/cavantga.tex b/Master/texmf-dist/tex/csplain/base/cavantga.tex
deleted file mode 100644
index d74dcf89f00..00000000000
--- a/Master/texmf-dist/tex/csplain/base/cavantga.tex
+++ /dev/null
@@ -1,41 +0,0 @@
-% The file cavantga.tex (C) Petr Olsak, 1996, 1999
-% Use "\input cavantga" to set the AvantGarde fonts family in text mode.
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set AvantGarde fonts family in very
-% simple math formulas (without greek letters).
-
-\font\tenrm=pagk8z at 10pt
-\font\tenbf=pagd8z at 10pt
-\font\tenit=pagko8z at 10pt
-\font\tentt=pcrr8u at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm pagk8z at7pt
- \font\fiverm pagk8z at5pt
- \font\sevenit pagko8z at7pt
- \font\fiveit pagko8z at5pt
- \font\sevenbf pagd8z at7pt
- \font\fivebf pagd8z at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
-
-
-
-
diff --git a/Master/texmf-dist/tex/csplain/base/cbookman.tex b/Master/texmf-dist/tex/csplain/base/cbookman.tex
deleted file mode 100644
index 08b34af5df9..00000000000
--- a/Master/texmf-dist/tex/csplain/base/cbookman.tex
+++ /dev/null
@@ -1,39 +0,0 @@
-% The file cbookman.tex (C) Petr Olsak, 1996, 1999
-% Use "\input cbookman" to set the Bookman fonts family in text mode
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set Bookman fonts family in very
-% simple math formulas (without greek letters).
-
-\font\tenrm=pbkl8z at 10pt
-\font\tenbf=pbkd8z at 10pt
-\font\tenit=pbkli8z at 10pt
-\font\tentt=pcrr8u at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm pbkl8z at7pt
- \font\fiverm pbkl8z at5pt
- \font\sevenit pbkli8z at7pt
- \font\fiveit pbkli8z at5pt
- \font\sevenbf pbkd8z at7pt
- \font\fivebf pbkd8z at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
-
-
diff --git a/Master/texmf-dist/tex/csplain/base/chelvet.tex b/Master/texmf-dist/tex/csplain/base/chelvet.tex
deleted file mode 100644
index 43aeaba70d1..00000000000
--- a/Master/texmf-dist/tex/csplain/base/chelvet.tex
+++ /dev/null
@@ -1,39 +0,0 @@
-% The file chelvet.tex (C) Petr Olsak, 1996, 1999
-% Use "\input chelvet" to set the Helvetica fonts family in text mode
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set Helvetica fonts family in very
-% simple math formulas (without greek letters).
-
-\font\tenrm=phvr8z at 10pt
-\font\tenbf=phvb8z at 10pt
-\font\tenit=phvro8z at 10pt
-\font\tentt=pcrr8u at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm phvr8z at7pt
- \font\fiverm phvr8z at5pt
- \font\sevenit phvro8z at7pt
- \font\fiveit phvro8z at5pt
- \font\sevenbf phvb8z at7pt
- \font\fivebf phvb8z at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
-
-
diff --git a/Master/texmf-dist/tex/csplain/base/cncent.tex b/Master/texmf-dist/tex/csplain/base/cncent.tex
deleted file mode 100644
index ded5b013d2f..00000000000
--- a/Master/texmf-dist/tex/csplain/base/cncent.tex
+++ /dev/null
@@ -1,38 +0,0 @@
-% The file cncent.tex (C) Petr Olsak, 1996, 1999
-% Use "\input cncent" to set the NewCentury fonts family in text mode
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set NewCentury fonts family in very
-% simple math formulas (without greek letters).
-
-\font\tenrm=pncr8z at 10pt
-\font\tenbf=pncb8z at 10pt
-\font\tenit=pncri8z at 10pt
-\font\tentt=pcrr8u at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm pncr8z at7pt
- \font\fiverm pncr8z at5pt
- \font\sevenit pncri8z at7pt
- \font\fiveit pncri8z at5pt
- \font\sevenbf pncb8z at7pt
- \font\fivebf pncb8z at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
-
diff --git a/Master/texmf-dist/tex/csplain/base/cpalatin.tex b/Master/texmf-dist/tex/csplain/base/cpalatin.tex
deleted file mode 100644
index 4818b51749d..00000000000
--- a/Master/texmf-dist/tex/csplain/base/cpalatin.tex
+++ /dev/null
@@ -1,37 +0,0 @@
-% The file cpalatin.tex (C) Petr Olsak, 1996, 1999
-% Use "\input cpalatin" to set the Palatino fonts family in text mode
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set Palatino fonts family in very
-% simple math formulas (without greek letters).
-
-\font\tenrm=pplr8z at 10pt
-\font\tenbf=pplb8z at 10pt
-\font\tenit=pplri8z at 10pt
-\font\tentt=pcrr8u at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm pplr8z at7pt
- \font\fiverm pplr8z at5pt
- \font\sevenit pplri8z at7pt
- \font\fiveit pplri8z at5pt
- \font\sevenbf pplb8z at7pt
- \font\fivebf pplb8z at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
diff --git a/Master/texmf-dist/tex/csplain/base/csenc-u.tex b/Master/texmf-dist/tex/csplain/base/csenc-u.tex
index da8b8d58139..0a6794d0091 100644
--- a/Master/texmf-dist/tex/csplain/base/csenc-u.tex
+++ b/Master/texmf-dist/tex/csplain/base/csenc-u.tex
@@ -5,10 +5,8 @@
%%% example: tex -ini -enc \let\enc=u \input csplain.ini
% This is very simple setting of Czech and Slovak alphabet only.
-% No special characters (such as dash, quotes etc.) used in UTF8 are
-% declared here. No "UTF8 unknown code checking" is implemented here.
-% The force is in the simplicity. The \mubyteout is set to 1 only.
% User can reset this value and add his own declaration.
+% For more information see cstexman.pdf.
\ifx\mubyte\undefined
\errhelp={You has specified \let\enc=u but this works only with encTeX
@@ -62,10 +60,56 @@
\mubyte ^^c0 ^^c5^^94\endmubyte % \' R
\mubyte ^^e0 ^^c5^^95\endmubyte % \' r
+\def\setcsucode #1 #2 #3 #4 #5{} % to skip the data form utf8lat1.tex
+ % and utf8lata.tex
+
+% There exist some character-like control sequences defined in plainTeX.
+% It seems to be usable to interpret their corresponding UTF-8 codes:
+
+\mubyte \S ^^c2^^a7\endmubyte % section sign
+\mubyte \P ^^c2^^b6\endmubyte % paragraph (pilcrow) sign
+\mubyte \ss ^^c3^^9f\endmubyte % german sharp s
+\mubyte \l ^^c5^^82\endmubyte % l slashed
+\mubyte \L ^^c5^^81\endmubyte % L slashed
+\mubyte \ae ^^c3^^a6\endmubyte % ae ligature
+\mubyte \oe ^^c5^^93\endmubyte % oe ligature
+\mubyte \o ^^c3^^b8\endmubyte % o slash
+\mubyte \AE ^^c3^^86\endmubyte % AE ligature
+\mubyte \OE ^^c5^^92\endmubyte % OE ligature
+\mubyte \O ^^c3^^98\endmubyte % O slash
+\mubyte \i ^^c4^^b1\endmubyte % dotless i
+\mubyte \j ^^c8^^b7\endmubyte % dotless j
+\mubyte \aa ^^c3^^a5\endmubyte % a with ring
+\mubyte \AA ^^c3^^85\endmubyte % A with ring
+\mubyte \copyright ^^c2^^a9\endmubyte % copyright
+\mubyte \dots ^^e2^^80^^a6\endmubyte % ellipsis
+\mubyte \dag ^^e2^^80^^a0\endmubyte % single dagger
+\mubyte \ddag ^^e2^^80^^a1\endmubyte % double dagger
+
+% The character-like control sequences defined in csplain:
+
+\mubyte \clqq ^^e2^^80^^9e\endmubyte % czech left double quote
+\mubyte \crqq ^^e2^^80^^9c\endmubyte % czech right double quote
+\mubyte \flqq ^^c2^^ab\endmubyte % french left (czech right) double guillquote
+\mubyte \frqq ^^c2^^bb\endmubyte % french right (czech left) double quillquote
+\mubyte \promile ^^e2^^80^^b0\endmubyte % per mille sign
+
+% everyjob message:
+
+\ifx\baseutfencoding\undefined \else \expandafter\endinput\fi
+
+\let\baseutfencoding\relax
+
\global\everyjob=\expandafter{\the\everyjob
- \message{The UTF8->ISO-8859-2 re-encoding of Czech+Slovak alphabet activated by encTeX}}
+ \message{The utf8->iso8859-2 re-encoding of Czech+Slovak alphabet activated by encTeX}}
+
+% Warnings about UTF-8 unknown codes are set by default:
+
+\input utf8unkn
+
+% UTF-8 input / output is active by default:
-\mubytein=1 \mubyteout=1 \mubytelog=1
+\mubytein=1 \mubyteout=3 \mubytelog=1 \xprncodes=0
\endinput
diff --git a/Master/texmf-dist/tex/csplain/base/csfontsm.tex b/Master/texmf-dist/tex/csplain/base/csfontsm.tex
new file mode 100644
index 00000000000..fcbc5e40108
--- /dev/null
+++ b/Master/texmf-dist/tex/csplain/base/csfontsm.tex
@@ -0,0 +1,67 @@
+
+% csfontsm.tex, October 2012, Petr Olsak (Ol\v s\'ak)
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file is a part of csplain used during format generation.
+%
+% Usage: \def\sizespec{at14pt}\resizefont\tenrm
+% after this, the \tenrm font selector switches to csr10 at14pt
+%
+% The \resizefont macro takes the font selector declared by \font, uses the
+% same font but re-sets this selector to (probably) new font size declared
+% in the \sizespec macro. You can \def\sizespec{at<dimen>} or
+% \def\sizespec{magstep<number>}. The \resizefont's setting is done
+% locally, it means that you can do (for instance):
+%
+% {\def\sizespec{scaled\magstep3}\resizefont\tenbf \tenbf Title text}
+%
+% The \resizeall macro resizes the \tentt, \tenrm, \tenit, \tenbf, \tenbi
+% font selectors by currently defined \sizespec.
+% The \regfont adds a new `registered' font-selector to the \resizeall macro
+% The font-loading macros can register their fonts by \regfont.
+
+\def\sizespec{} % by default: fonts are loaded in their implicit sizes
+
+\def\resizefont #1{\expandafter
+ \font\expandafter#1\expandafter\resizefontskipat\fontname#1 \relax}
+\def\resizefontskipat#1 #2\relax{#1 \sizespec\relax}
+
+\font\tenbi=csbxti10 % it may be usable to have
+ % the quartet \rm \it \bf \bi preloaded
+\def\bi{\tenbi} % math \fam\bifam is not preloaded now
+
+\def\regfont#1{\expandafter\def\expandafter\resizeall\expandafter{%
+ \resizeall \resizefont#1}}
+
+\def\resizeall{}
+
+\regfont\tenrm \regfont\tenit \regfont\tenbf \regfont\tenbi
+\regfont\tentt
+
+
+\endinput %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+The notice about resizing the current font.
+
+You can't use \expandafer \resizefont \the\font because \the\font expands to
+the token with internal meaning: ``current font'' and with external
+representation \fontselector where \fontselector is the control sequence
+used by primitive \font as a parameter. The internal meaning has a
+precedence and the token \the\font is inaccesible. You can make an accesible
+control sequence by re-packing it by \csname...\endcsname. Thus the macro
+\currsize{<size>} which sets the typesetting of the current font to the
+desired <size> may be:
+
+\def\currsize#1{%
+ {\escapechar=-1\xdef\tmp{\csname\expandafter\string\the\font\endcsname}}%
+ \def\sizespec{at#1}\expandafter\resizefont\tmp \tmp}
+
+or:
+
+\def\currsize#1{%
+ \expandafter\let \expandafter\tmp \the\font
+ \def\sizespec{at#1}\resizefont\tmp \tmp}
+
+
+% end of csfontsm.tex
+
diff --git a/Master/texmf-dist/tex/csplain/base/csplain.ini b/Master/texmf-dist/tex/csplain/base/csplain.ini
index 2acab859a48..2472a530617 100644
--- a/Master/texmf-dist/tex/csplain/base/csplain.ini
+++ b/Master/texmf-dist/tex/csplain/base/csplain.ini
@@ -1,18 +1,22 @@
\input csfonts % re-defines primitive \font
\input plain % format Plain
\restorefont % original meaning of primitive \font
+\input csfontsm % macros: \sizespec, \resizefont, \resizeall, \tenbi, \bi
\input il2code % extra codes for czech / slovak letters in ISO-8859-2 encoding
\input hyphen.lan % czech / slovak hyphenation pattern (may be others too)
\input plaina4 % \hsize and \vsize for A4
\everyjob=\expandafter{\the\everyjob
- \message{The format: csplain <Sep. 2005>.}
+ \message{The format: csplain <Nov. 2012>.}
\message{The cs-fonts are preloaded and A4 size implicitly defined.}}
-\ifx\enc\undefined \else \input csenc-\enc.tex \fi % re-encoding using encTeX
\ifx\xprncode\undefined \else %% The encTeX is detected
\count255=128 % All codes > 128 are printable:
\loop \xprncode\count255=1 \advance\count255 by 1
\ifnum \count255<256 \repeat
\fi
+\ifx\enc\undefined \else \input csenc-\enc.tex \fi % re-encoding using encTeX
+
+\ifx\directlua\undefined \else\input luatexiniconfig.tex \fi % LuaTeX specific
+\ifx\XeTeXuseglyphmetrics\undefined \else\XeTeXuseglyphmetrics=1 \fi % XeTeX specific
\ifx\pdfoutput\undefined \else % added in Feb. 2005
\def\tmpa{\pdfcsplain}
@@ -98,13 +102,31 @@ file extcode.tex renamed to il2code.tex (suggested by Jan Kasprzak)
* I didn't do any changes in macro code. Thus the \message still says:
The format: csplain <Sep. 2005>.
+** 8 ** <Oct. 2012>
+* File csfontsm.tex included: (\sizespec, \resizefont, \resizeall,
+ \tenbi, \bi). This file is read during format generation.
+* Little changes of the files ctimes.tex, cavantga.tex etc.
+* More changes in t1code.tex file.
+* New files tx-math.tex, ttimes.tex, tavanga.tex, etc.
+* UTF-8 input encoded by encTeX is recommended.
+* The page http://petr.olsak.net/csplain.html introduced.
+
+** 9 ** <Nov. 2012>
+* The \regfont macro added in csfontsm.tex.
+* In plaina4.tex: \pdfpagewidth (etc.) = 210 *true* mm added
+* ucode.tex introduced (for unicode setting).
+* hyphen.lan totally rewritten for possibility of loading
+ hyphen-patterns based on http://tug.org/tex-hyphen/.
+* \ifx\directlua\undefined\else \input ... \fi added
+* \ifx\XeTeXuseglyphmetrics ... added
+
COPYRIGHT
=========
-This macro package (csplain.ini, il2code.tex, csfonts.tex, hyphen.lan,
-plaina4.tex) is free software; you can use it without any restriction.
-You can redistribute it under the following condition:
+This macro package (csplain.ini, il2code.tex, csfonts.tex, csfontm.tex,
+hyphen.lan, plaina4.tex) is free software; you can use it without any
+restriction. You can redistribute it under the following condition:
You can do any changes in this software for your own usage. However,
you cannot distribute the changed software under the same name
diff --git a/Master/texmf-dist/tex/csplain/base/ctimes.tex b/Master/texmf-dist/tex/csplain/base/ctimes.tex
deleted file mode 100644
index 8411f7703c8..00000000000
--- a/Master/texmf-dist/tex/csplain/base/ctimes.tex
+++ /dev/null
@@ -1,38 +0,0 @@
-% The file ctimes.tex (C) Petr Olsak, 1996, 1999
-% Use "\input ctimes" to set the Times fonts family in text mode
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set Times fonts family in very
-% simple math formulas (without greek letters).
-
-\font\tenrm=ptmr8z at 10pt
-\font\tenbf=ptmb8z at 10pt
-\font\tenit=ptmri8z at 10pt
-\font\tentt=pcrr8u at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm ptmr8z at7pt
- \font\fiverm ptmr8z at5pt
- \font\sevenit ptmri8z at7pt
- \font\fiveit ptmri8z at5pt
- \font\sevenbf ptmb8z at7pt
- \font\fivebf ptmb8z at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
-
diff --git a/Master/texmf-dist/tex/csplain/base/czech.sty b/Master/texmf-dist/tex/csplain/base/czech.sty
deleted file mode 100644
index 48736608f5a..00000000000
--- a/Master/texmf-dist/tex/csplain/base/czech.sty
+++ /dev/null
@@ -1,259 +0,0 @@
-%%
-%% This is file `czech.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% cslatex.dtx (with options: `czech')
-%%
-%% Tento soubor je soucasti baliku CsLaTeX a je vygenerovan z
-%% distribucniho souboru cslatex.dtx.
-%%
-%% Copyright (c) 1994--98, 2002
-%% Jaroslav Snajdr, Zdenek Wagner, Jiri Zlatuska a The LaTeX3 Project
-%%
-%% Tento soubor NENI soucasti systemu LaTeX2e
-%% ------------------------------------------
-%%
-%% Dalsi informace naleznete na www.cstug.cz/cslatex.
-%%
-\ifx\dateczech\undefined\else\endinput\fi
-\ifx\addlanguage\undefined\else
- \ifx\LdfInit\@undefined
- \def\LdfInit{%
- \chardef\atcatcode=\catcode`\@
- \catcode`\@=11\relax
- \input babel.def\relax
- \catcode`\@=\atcatcode \let\atcatcode\relax
- \LdfInit}
- \fi
-\input czech.ldf
-\endinput\fi
-\newif\iflte
-\ifx\documentclass\undefined\else\ltetrue\fi
-\iflte
- \NeedsTeXFormat{LaTeX2e}
- \ProvidesPackage{czech}[2002/07/19 v2.4 CSTeX czech style]
-\else
- \message{Document Style Option `czech' ver. 2.4 <July 2002>.}
- \edef\origcatcodeat{\the\catcode`\@}\catcode`\@=11
- \let\providecommand=\def
- \let\protect=\relax
-\fi
-\iflte
- \def\defaultcsoption{IL2}
- \DeclareOption{IL2}{\def\encodingdefault{IL2}}
- \DeclareOption {T1}{\def\encodingdefault {T1}}
- \DeclareOption{OT1}{\def\encodingdefault{OT1}}
- \DeclareOption{nosplit}{\standardhyphens}
- \DeclareOption{split}{\splithyphens}
- \DeclareOption{nocaptions}{\let\cap@unchgd=\relax}
- \DeclareOption{olduv}{\let\cs@olduv=\relax}
- \DeclareOption{cstex}{\relax} % Removed, lasts for compatibility
- \ExecuteOptions{IL2}
- \ProcessOptions
- \def\dms#1#2{\DeclareMathSymbol{#1}{\mathalpha}{letters}{#2}}
- \ifx\encodingdefault\defaultcsoption
- \let\cs@warn=\@font@warning \let\@font@warning=\@gobble
- \let\cs@info=\@font@info \let\@font@info=\@gobble
- \SetSymbolFont{operators}{normal}{IL2}{cmr}{m}{n}
- \SetSymbolFont{operators}{bold}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathbf{normal}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathit{normal}{IL2}{cmr}{m}{it}
- \SetMathAlphabet\mathrm{normal}{IL2}{cmr}{m}{n}
- \SetMathAlphabet\mathsf{normal}{IL2}{cmss}{m}{n}
- \SetMathAlphabet\mathtt{normal}{IL2}{cmtt}{m}{n}
- \SetMathAlphabet\mathbf{bold}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathit{bold}{IL2}{cmr}{bx}{it}
- \SetMathAlphabet\mathrm{bold}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathsf{bold}{IL2}{cmss}{bx}{n}
- \SetMathAlphabet\mathtt{bold}{IL2}{cmtt}{m}{n}
- \let\@font@warning=\cs@warn \let\cs@warn=\undefined
- \let\@font@info=\cs@info \let\cs@info=\undefined
- \dms{^^e1}{"E1}\dms{^^c1}{"C1}\dms{^^e8}{"E8}\dms{^^c8}{"C8}
- \dms{^^ef}{"EF}\dms{^^cf}{"CF}\dms{^^e9}{"E9}\dms{^^c9}{"C9}
- \dms{^^ec}{"EC}\dms{^^cc}{"CC}\dms{^^ed}{"ED}\dms{^^cd}{"CD}
- \dms{^^b5}{"B5}\dms{^^a5}{"A5}\dms{^^f2}{"F2}\dms{^^d2}{"D2}
- \dms{^^f3}{"F3}\dms{^^d3}{"D3}\dms{^^f8}{"F8}\dms{^^d8}{"D8}
- \dms{^^b9}{"B9}\dms{^^a9}{"A9}\dms{^^bb}{"BB}\dms{^^ab}{"AB}
- \dms{^^fa}{"FA}\dms{^^da}{"DA}\dms{^^f9}{"F9}\dms{^^d9}{"D9}
- \dms{^^fd}{"FD}\dms{^^dd}{"DD}\dms{^^be}{"BE}\dms{^^ae}{"AE}
- \fi
-\else
- \def\gobble#1{}
- \def\DeclareRobustCommand#1#2{\expandafter\def
- \csname @\expandafter\gobble\string#1\endcsname{#2}
- \edef#1{\noexpand\protect\expandafter\noexpand
- \csname @\expandafter\gobble\string#1\endcsname}}
- \ifx\ou\undefined \def\ou{\accent23u} \fi
- \def\temp#1#2#3:{#1#2}
- \edef\tempa{\string c\string s}
- \edef\tempb{\expandafter\temp\fontname\tenrm:}
- \ifx\tempa\tempb
- \chardef\clqq=254 \sfcode254=0 \lccode254=0
- \chardef\crqq=255 \sfcode255=0 \lccode255=0
- \chardef\flqq=158 \sfcode158=0 \lccode158=0
- \chardef\frqq=159 \sfcode159=0 \lccode159=0
- \def\ogonek #1{\setbox0\hbox{#1}\ifdim\ht0=1ex\accent157 #1%
- \else{\ooalign{\unhbox0\crcr\hss\char157}}\fi}
- \chardef\promile=141
- \def\DeclareTextCommandDefault#1#2{}
- \else
- \let\DeclareTextCommandDefault=\DeclareRobustCommand
- \fi
-\fi
-\def\captionsczech{%
- \def\abstractname{Abstrakt}%
- \def\appendixname{P\v{r}\'{\i}loha}%
- \def\bibname{Literatura}%
- \def\ccname{Na v\v{e}dom\'{\i}}
- \def\chaptername{Kapitola}%
- \def\contentsname{Obsah}%
- \def\enclname{P\v{r}\'{\i}loha}%
- \def\figurename{Obr\'azek}%
- \def\headpagename{Strana}%
- \def\headtoname{Komu}%
- \def\indexname{Rejst\v{r}\'{\i}k}%
- \def\listfigurename{Seznam obr\'azk\r{u}}%
- \def\listtablename{Seznam tabulek}%
- \def\partname{\v{C}\'ast}%
- \def\prefacename{P\v{r}edmluva}%
- \def\proofname{D\r{u}kaz}%
- \def\seename{viz}%
- \def\alsoseename{viz tak\'e}%
- \def\refname{Reference}%
- \def\tablename{Tabulka}}
-\providecommand\captionsenglish{%
- \def\prefacename{Preface}%
- \def\refname{References}%
- \def\abstractname{Abstract}%
- \def\bibname{Bibliography}%
- \def\chaptername{Chapter}%
- \def\appendixname{Appendix}%
- \def\contentsname{Contents}%
- \def\listfigurename{List of Figures}%
- \def\listtablename{List of Tables}%
- \def\indexname{Index}%
- \def\figurename{Figure}%
- \def\tablename{Table}%
- \def\partname{Part}%
- \def\enclname{encl}%
- \def\ccname{cc}%
- \def\headtoname{To}%
- \def\pagename{Page}%
- \def\headpagename{Page}%
- \def\prefacename{Preface}%
- \def\seename{see}%
- \def\alsoname{see also}}
-\def\dateczech{%
- \def\today{\number\day. \ifcase\month\or ledna\or \'unora\or
- b\v{r}ezna\or dubna\or kv\v{e}tna\or \v{c}ervna\or \v{c}ervence\or
- srpna\or z\'a\v{r}\'\i\or \v{r}\'{\i}jna\or listopadu\or
- prosince\fi \space\number\year}}
-\iflte\ifx\cap@unchgd\undefined\captionsczech\dateczech\fi\fi
-\providecommand\dateUSenglish{\def\today{\ifcase\month\or
- January\or February\or March\or April\or May\or June\or July\or
- August\or September\or October\or November\or December\fi
- \space\number\day, \number\year}}
-\providecommand\dateenglish{\def\today{\ifcase\day\or 1st\or 2nd\or
- 3rd\or 4th\or 5th\or 6th\or 7th\or 8th\or 9th\or 10th\or 11th\or
- 12th\or 13th\or 14th\or 15th\or 16th\or 17th\or 18th\or 19th\or
- 20th\or 21st\or 22nd\or 23rd\or 24th\or 25th\or 26th\or 27th\or
- 28th\or 29th\or 30th\or 31st\fi ~\ifcase\month\or January\or
- February\or March\or April\or May\or June\or July\or August\or
- September\or October\or November\or December\fi \space
- \number\year}}
-\DeclareTextCommandDefault\clqq{\leavevmode
- \set@low@box{''}%
- \setbox1=\hbox{l\/}\dimen1=\wd1
- \setbox1=\hbox{l}\advance\dimen1 by -\wd1
- \ifdim\dimen1>0pt\kern-.1em\box0\kern.1em
- \else\kern.1em\box0\kern-.1em\fi\nobreak\hskip0pt}
-\DeclareTextCommandDefault\crqq{\edef\@SF{\spacefactor\the\spacefactor}%
- \nobreak\kern-.07em\hbox{``}\kern.07em\@SF\relax}
-\def\set@low@box#1{\setbox2=\hbox{,}\setbox0=\hbox{#1}%
- \dimen0=\ht0 \advance\dimen0 by -\ht2
- \setbox0=\hbox{\lower\dimen0 \box0}\ht0=\ht2\dp0=\dp2}
-\DeclareRobustCommand\clq{\leavevmode\set@low@box{\char'047 }%
- \box0 \kern.04em\nobreak\hskip0pt\relax}
-\DeclareRobustCommand\crq{{\edef\@SF{\spacefactor\the\spacefactor}%
- \nobreak\char'140 \kern.17em\@SF\relax}}
-\iflte
- \DeclareTextCommand{\clqq}{T1}{\leavevmode\kern.1em
- \char18 \kern-.0158em\nobreak\hskip0pt}
- \DeclareTextCommand{\crqq}{T1}
- {{\edef\@SF{\spacefactor\the\spacefactor}%
- \nobreak\kern.06em \char16 \kern.024em \@SF\relax}}
-\fi
-\iflte\else\let\if@compatibility=\iffalse{\let\fi=\fi}\fi
-\ifx\cs@olduv\undefined
- \iflte
- \if@compatibility
- \DeclareRobustCommand\uv{\bgroup\aftergroup\closequotes
- \leavevmode\clqq\let\next=}
- \else
- \DeclareRobustCommand\uv[1]{{\leavevmode\clqq#1\crqq}}
- \fi
- \else
- \ifx\uv\undefined
- \def\uv{\bgroup\aftergroup\closequotes
- \leavevmode\clqq\let\next=}
- \fi
- \fi
-\else
- \DeclareRobustCommand\uv{\bgroup\aftergroup\closequotes
- \leavevmode\clqq\let\next=}
-\fi
-\def\closequotes{\unskip\crqq\relax}
-\def\prim@s{\prime\futurelet\next\pr@m@s}
-{\catcode`\'=\active
-\gdef\csprimeson{\catcode96=\active \catcode39=\active
- \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else\ifx^\next\let\nxt\pr@@@t
- \else\let\nxt\egroup\fi\fi \nxt}}}
-\def\csprimesoff{\catcode96=12 \catcode39=12
- \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else\ifx^\next\let\nxt\pr@@@t
- \else\let\nxt\egroup\fi\fi \nxt}}
-{\csprimeson
- \gdef'{\ifmmode\let\n@xt=\mathprim@\else\let\n@xt=\textprim@\fi\n@xt}%
- \gdef\mathprim@{^\bgroup\prim@s}%
- \gdef\textprim@{\futurelet\nxt\rightprim@}%
- \gdef\rightprim@{\ifx'\nxt\let\next=\douvr@
- \else\let\next\crq\fi\next}%
- \gdef`{\futurelet\nxt\leftprim@}%
- \gdef\leftprim@{\ifx`\nxt\let\next=\douvl@
- \else\let\next=\clq\fi\next}}
-\def\douvr@{\crqq\let\next= }%
-\def\douvl@{\clqq\let\next= }%
-\csprimesoff
-\def\cstieon{\def~{\ifmmode\else\penalty\@M\ \fi}}
-\def\cstieoff{\def~{\penalty\@M \ }}
-\iflte
-\AtBeginDocument{\czech}
- \frenchspacing
-\else
- \def\setthisl@nguage#1#2#3#4{%
- \ifx#2\undefined \immediate\write\sixt@@n
- {Warning: I do not speak #1, (the style is not inputted)}
- \else
- \ifx#4\undefined \immediate\write\sixt@@n
- {Warning: I do not speak #1,
- (the hyphenation patterns are not included)}
- \else#2#3#4\fi\fi}
-\def\selectlanguage#1{\language #1\relax
- \ifcase #1\relax \dateUSenglish\captionsenglish\ehyph\or
- \setthisl@nguage{german} \dategerman \captionsgerman \ghyph\or
- \setthisl@nguage{austrian}\dateaustrian \captionsgerman \ahyph\or
- \setthisl@nguage{french} \datefrench \captionsfrench \fhyph\or
- \setthisl@nguage{english} \dateenglish \captionsenglish\ehyph\or
- \setthisl@nguage{czech} \dateczech \captionsczech \chyph\or
- \setthisl@nguage{slovak} \dateslovak \captionsslovak \shyph\fi}
-\def\originalTeX{\selectlanguage{\USenglish}
- \csname cmaccents\endcsname}
-\def\czechTeX{\selectlanguage{\czech}\csname csaccents\endcsname}
-\def\slovakTeX{\selectlanguage{\slovak}\csname csaccents\endcsname}
-\catcode`\@=\origcatcodeat
-\czechTeX
-\fi
-\endinput
-%%
-%% End of file `czech.sty'.
diff --git a/Master/texmf-dist/tex/csplain/base/dcfonts.tex b/Master/texmf-dist/tex/csplain/base/dcfonts.tex
deleted file mode 100644
index 55a3c9288cc..00000000000
--- a/Master/texmf-dist/tex/csplain/base/dcfonts.tex
+++ /dev/null
@@ -1,23 +0,0 @@
-% The file dcfonts.tex (C) Petr Olsak, 2000
-% This file allows to use DC fonts in csplain format.
-% Use (for example): %&csplain -translate-file=il2-t1
-% \input dcfonts
-% \chyph
-% at first three lines in your document.
-
-% Warning1: This works only in web2c implementations of TeX and derivatives.
-% Warning2: Use DC fonts only for experimental or special reason. The
-% typographics quality of CSfonts (in csplain default) is better.
-
-\input t1code
-
-\font\tenrm=dcr10
-\font\tenbf=dcbx10
-\font\tenit=dcti10
-\font\tentt=dctt10
-\font\tensl=dcsl10
-\tenrm
-
-\let\setsimplemath=\undefined % The math CS/CM fonts can be mixed with
- % DC fonts
-
diff --git a/Master/texmf-dist/tex/csplain/base/ecfonts.tex b/Master/texmf-dist/tex/csplain/base/ecfonts.tex
deleted file mode 100644
index 4e784ca4bff..00000000000
--- a/Master/texmf-dist/tex/csplain/base/ecfonts.tex
+++ /dev/null
@@ -1,23 +0,0 @@
-% The file ecfonts.tex (C) Petr Olsak, 2000
-% This file allows to use EC fonts in csplain format.
-% Use (for example): %&csplain -translate-file=il2-t1
-% \input ecfonts
-% \chyph
-% at the first three lines in your document.
-
-% Warning1: This works only in web2c implementations of TeX and derivatives.
-% Warning2: Use EC fonts only for experimental or special reason. The
-% typographics quality of CSfonts (in csplain default) is better.
-
-\input t1code
-
-\font\tenrm=ecrm1000
-\font\tenbf=ecbx1000
-\font\tenit=ecti1000
-\font\tentt=ectt1000
-\font\tensl=ecsl1000
-\tenrm
-
-\let\setsimplemath=\undefined % The math CS/CM fonts can be mixed with
- % EC fonts
-
diff --git a/Master/texmf-dist/tex/csplain/base/hyphen.lan b/Master/texmf-dist/tex/csplain/base/hyphen.lan
index 8565bf4546e..c8749b90a23 100644
--- a/Master/texmf-dist/tex/csplain/base/hyphen.lan
+++ b/Master/texmf-dist/tex/csplain/base/hyphen.lan
@@ -1,143 +1,524 @@
-% File HYPHEN.LAN does:
-% (1) defines new languages
-% (2) incorporates their hyphenation tables (except of US english)
-% during the \csaccents is active (see il2code.tex file).
-% (3) incorporates their exceptions of hyphenation rules.
+% File hyphen.lan
%
% Created by Oldrich Ulrych, January 5, 1993
-% Some changes by Petr Olsak April 1995, February 2000
+% General changes by Petr Olsak November 2012
%
-% The TeX version >= 3.0 is required.
+% See the end of this file for more inforamtion
+
+\def\loadpatterns #1#2 #3 #4#5#6#7#8#9{\ifx#1\undefined \else \chardef#1=#2
+ \begingroup \language=#2 \def\doaccents{\def\csaccentsmessage{}\csaccents}
+ \let\global=\relax
+ \message{Loading #4 encoding, \string#1=#2 (#3).} #5
+ \endgroup
+ \expandafter \def \csname lan:#2\endcsname {#3}
+ \expandafter \def \csname #3lang\endcsname {%
+ \language=#9\relax \initlanguage{#3}\frenchspacing
+ \lefthyphenmin=#6\righthyphenmin=#7%
+ \message{#3 hyphenation used (\string\language=\the\language).
+ \string\frenchspacing\space is set on.}}
+ \ifx#8\relax \else
+ \expandafter\def\expandafter#8\expandafter{#8\let#9#1}\fi
+ \edef\pattlist{\pattlist #1=#2 }
+ \fi
+}
+\def\pattlist{} \def\initlanguage#1{}
+
+\def\robustpatterns{\let\oripatterns=\patterns \def\patterns##1{\scanpatterns##1{}{##1}}}
+\def\scanpatterns#1{\if$#1$\expandafter\oripatterns\else
+ \ifnum`#1<128 \else \lccode`#1=`#1 \fi \expandafter\scanpatterns\fi}
+
+\def\tmp#1#2\relax{\def\tmp{#2}}\tmp ^^^^abcd\relax % 16bit TeX engine?
+\ifx\allpatterns\undefined \catcode`\:=14 \else \catcode`\:=9 \fi % comment or ignored
+
+\def\iltwolangs{} \def\corklangs{} \def\unicodelangs{}
+
+%% \corklangs (etc.) cummulates the commands
+%% \let\czPatt=\czCork \let\skPatt=\skCork (etc.)
+%% You can run \corklangs before \language=\czPatt or \language=\skPatt
+%% if you want to work in T1 encoding.
+
+%% You can remove the colon character if you want to use
+%% the language mentioned below. Or you can say:
+%% pdftex -ini "\let\deCork=\patterns \input csplain.ini"
+%% or
+%% pdftex -ini "\let\allpaterns=y \input csplain.ini"
+
+%% ASCII (these patterns work independently on choosen encoding):
+
+\let\USenglish=\patterns % Default plainTeX US English
+:\let\enusPatt=\patterns % US English extended
+:\let\engbPatt=\patterns % UK English
+:\let\itPatt=\patterns % Italian
+:\let\iaPatt=\patterns % Interlingua
+:\let\idPatt=\patterns % Indonesian
+
+%% ISO-8859-2 (default patterns in csplain):
+
+\let\czILtwo=\patterns
+\let\skILtwo=\patterns
+
+%% You can say
+%% pdftex -ini "\let\Cork=\relax \input csplain.ini"
+%% if you want to suppress the Cork (alias T1) encoded hyphenation patterns.
+
+\ifx\Cork\undefined
+
+\let\czCork=\patterns % Czech
+\let\skCork=\patterns % Slovak
+
+\ifx\tmp\empty\else
+
+:\let\deCork=\patterns % German
+:\let\frCork=\patterns % French
+:\let\plCork=\patterns % Polish
+:\let\cyCork=\patterns % Welsh
+:\let\daCork=\patterns % Danish
+:\let\esCork=\patterns % Spanish
+:\let\slCork=\patterns % Slovenian
+:\let\svCork=\patterns % Swedish
+:\let\fiCork=\patterns % Finnish
+:\let\huCork=\patterns % Hungarian
+:\let\trCork=\patterns % Turkish
+:\let\etCork=\patterns % Estonian
+:\let\euCork=\patterns % Basque
+:\let\gaCork=\patterns % Irish
+:\let\nbCork=\patterns % Norwegian Bokmal
+:\let\nnCork=\patterns % Norwegian Nynorsk
+:\let\nlCork=\patterns % Dutch
+:\let\huCork=\patterns % Hungarian
+:\let\ptCork=\patterns % Portuguese
+:\let\roCork=\patterns % Romanian
+:\let\hrCork=\patterns % Croatian
+:\let\zhCork=\patterns % Unaccented Pinyin Syllables
+:\let\isCork=\patterns % Icelandic
+:\let\hsbCork=\patterns % EC Upper Sorbian
+:\let\afCork=\patterns % Afrikaans
+:\let\glCork=\patterns % Galician
+:\let\kmrCork=\patterns % Kurmanji
+:\let\tkCork=\patterns % Turkmen
+:\let\laCork=\patterns % Latin
+
+\fi\fi
+
+%% test of Unicoded TeX engine
+
+\ifx\tmp\empty
+
+\let\czUnicode=\patterns % Czech
+\let\skUnicode=\patterns % Slovak
+:\let\deUnicode=\patterns % German
+:\let\frUnicode=\patterns % French
+:\let\plUnicode=\patterns % Polish
+:\let\cyUnicode=\patterns % Welsh
+:\let\daUnicode=\patterns % Danish
+:\let\esUnicode=\patterns % Spanish
+:\let\eoUnicode=\patterns % Esperanto
+:\let\slUnicode=\patterns % Slovenian
+:\let\svUnicode=\patterns % Swedish
+:\let\fiUnicode=\patterns % Finnish
+:\let\huUnicode=\patterns % Hungarian
+:\let\trUnicode=\patterns % Turkish
+:\let\etUnicode=\patterns % Estonian
+:\let\euUnicode=\patterns % Basque
+:\let\gaUnicode=\patterns % Irish
+:\let\nbUnicode=\patterns % Norwegian Bokmal
+:\let\nnUnicode=\patterns % Norwegian Nynorsk
+:\let\nlUnicode=\patterns % Dutch
+:\let\huUnicode=\patterns % Hungarian
+:\let\ptUnicode=\patterns % Portuguese
+:\let\roUnicode=\patterns % Romanian
+:\let\hrUnicode=\patterns % Croatian
+:\let\zhUnicode=\patterns % Unaccented Pinyin Syllables
+:\let\isUnicode=\patterns % Icelandic
+:\let\hsbUnicode=\patterns % EC Upper Sorbian
+:\let\afUnicode=\patterns % Afrikaans
+:\let\glUnicode=\patterns % Galician
+:\let\kmrUnicode=\patterns % Kurmanji
+:\let\tkUnicode=\patterns % Turkmen
+:\let\laUnicode=\patterns % Latin
+:\let\elmUnicode=\patterns % Modern Monotonic Greek
+:\let\elpUnicode=\patterns % Modern Polytonic Greek
+:\let\grcUnicode=\patterns % Ancient Greek
+:\let\caUnicode=\patterns % Catalan
+:\let\copUnicode=\patterns % Coptic
+:\let\mnUnicode=\patterns % Mongolian
+:\let\saUnicode=\patterns % Sanskrit
+:\let\ruUnicode=\patterns % Russian
+:\let\ukUnicode=\patterns % Ukrainian
+:\let\hyUnicode=\patterns % Armenian
+:\let\asUnicode=\patterns % Assamese
+:\let\hiUnicode=\patterns % Hindi
+:\let\knUnicode=\patterns % Kannada
+:\let\loUnicode=\patterns % Lao
+:\let\lvUnicode=\patterns % Latvian
+:\let\ltUnicode=\patterns % Lithuanian
+:\let\mlUnicode=\patterns % Malayalam
+:\let\mrUnicode=\patterns % Marathi
+:\let\orUnicode=\patterns % Oriya
+:\let\paUnicode=\patterns % Panjabi
+:\let\taUnicode=\patterns % Tamil
+:\let\teUnicode=\patterns % Telugu
+
+\fi
+
+\catcode58=12 % colon has normal meaning now
+\def\patt{hyphenation patterns }
+
+\loadpatterns \USenglish 0 us {US English \patt in ASCII}
+ {\input hyphen.ex }23 \relax \USenglish
+
+\loadpatterns \enusPatt 100 enus {US English extended \patt in ASCII}
+ {\input hyph-en-us }23 \relax \enusPatt
+
+\loadpatterns \engbPatt 101 engb {UK English \patt in ASCII}
+ {\input hyph-en-gb }23 \relax \engbPatt
+
+\loadpatterns \itPatt 102 it {Italian \patt in ASCII}
+ {\lccode`\'=`\' \input hyph-it }22 \relax \itPatt
+
+\loadpatterns \iaPatt 103 ia {Interlingua \patt in ASCII}
+ {\input hyph-ia }22 \relax \iaPatt
+
+\loadpatterns \idPatt 104 id {Indonesian \patt in ASCII}
+ {\input hyph-id }23 \relax \idPatt
+
+\loadpatterns \czILtwo 5 cz {Czech \patt in ISO-8859-2}
+ {\doaccents \input czhyphen.tex \input czhyphen.ex }23 \iltwolangs \czPatt
+
+\loadpatterns \skILtwo 6 sk {Slovak \patt in ISO-8859-2}
+ {\doaccents \input skhyphen.tex \input skhyphen.ex }23 \iltwolangs \skPatt
+
+\loadpatterns \czCork 15 cz {Czech \patt in Cork}
+ {\input t1code \doaccents \input czhyphen.tex \input czhyphen.ex }23
+ \corklangs \czPatt
+
+\loadpatterns \skCork 16 sk {Slovak \patt in Cork}
+ {\input t1code \doaccents \input skhyphen.tex \input skhyphen.ex }23
+ \corklangs \skPatt
+
+\loadpatterns \deCork 21 de {German \patt in Cork}
+ {\input conv-utf8-ec \input hyph-de-1996 }22 \corklangs \dePatt
+
+\loadpatterns \frCork 22 fr {French \patt in Cork}
+ {\lccode`\'=`\' \input conv-utf8-ec \input hyph-fr }23 \corklangs \frPatt
+
+\loadpatterns \plCork 23 pl {Polish \patt in Cork}
+ {\input conv-utf8-ec \input hyph-pl }22 \corklangs \plPatt
+
+\loadpatterns \cyCork 24 cy {Welsh \patt in Cork}
+ {\input conv-utf8-ec \input hyph-cy }23 \corklangs \cyPatt
+
+\loadpatterns \daCork 25 da {Danish \patt in Cork}
+ {\input conv-utf8-ec \input hyph-da }22 \corklangs \daPatt
-% ======== Pattern Input / English, Czech, Slovakian (French, German) ======
+\loadpatterns \esCork 26 es {Spanish \patt in Cork}
+ {\input conv-utf8-ec \input hyph-es }22 \corklangs \esPatt
-% USenglish hyphenation patterns and hyphenation exceptions
+\loadpatterns \slCork 28 sl {Slovenian \patt in Cork}
+ {\input conv-utf8-ec \input hyph-sl }22 \corklangs \slPatt
-\newcount\USenglish \USenglish=0
+\loadpatterns \fiCork 29 fi {Finnish \patt in Cork}
+ {\input conv-utf8-ec \input hyph-fi }22 \corklangs \fiPatt
-\begingroup \language=\USenglish
-%\input hyphen.tex \relax % read by plain.tex
-\input hyphen.ex \relax
-\endgroup
+\loadpatterns \huCork 30 hu {Hungarian \patt in Cork}
+ {\input conv-utf8-ec \input hyph-hu }22 \corklangs \huPatt
-% german hyphenation patterns and hyphenation exceptions
+\loadpatterns \trCork 31 tr {Turkish \patt in Cork}
+ {\input conv-utf8-ec \input hyph-tr }22 \corklangs \trPatt
-\newcount\german \german=1
+\loadpatterns \etCork 32 et {Estonian \patt in Cork}
+ {\input conv-utf8-ec \input hyph-et }23 \corklangs \etPatt
-% \begingroup \language=\german
-% \input gehyphen.tex \relax
-% \input gehyphen.ex \relax
-% \endgroup
+\loadpatterns \euCork 33 eu {Basque \patt in Cork}
+ {\input conv-utf8-ec \input hyph-eu }22 \corklangs \euPatt
-% austrian hyphenation patterns and hyphenation exceptions
+\loadpatterns \gaCork 34 ga {Irish \patt in Cork}
+ {\input conv-utf8-ec \input hyph-ga }23 \corklangs \gaPatt
-\newcount\austrian \austrian=2
+\loadpatterns \nbCork 35 nb {Norwegian Bokmal \patt in Cork}
+ {\input conv-utf8-ec \input hyph-nb }22 \corklangs \nbPatt
-% \begingroup \language=\german
-% \input auhyphen.tex \relax
-% \input auhyphen.ex \relax
-% \endgroup
+\loadpatterns \nnCork 36 nn {Norwegian Nynorsk \patt in Cork}
+ {\input conv-utf8-ec \input hyph-nn }22 \corklangs \nnPatt
-\newcount\french \french=3
+\loadpatterns \nlCork 37 nl {Dutch \patt in Cork}
+ {\input conv-utf8-ec \input hyph-nl }22 \corklangs \nlPatt
-%% french hyphenation patterns
-% \begingroup \language=\french
-% \input frhyphen.tex \relax
-% \input frhyphen.ex \relax
-% \endgroup
+\loadpatterns \ptCork 38 pt {Portugesse \patt in Cork}
+ {\lccode`\-=`\- \input conv-utf8-ec \input hyph-pt }23 \corklangs \ptPatt
-% USenglish hyphenation patterns and hyphenation exceptions
+\loadpatterns \roCork 39 ro {Romanian \patt in Cork}
+ {\input conv-utf8-ec \input hyph-ro }22 \corklangs \roPatt
-\newcount\english \english=4
+\loadpatterns \hrCork 40 hr {Croatian \patt in Cork}
+ {\input conv-utf8-ec \input hyph-hr }22 \corklangs \hrPatt
-%\begingroup \language=\english
-%\input enhyphen.tex \relax
-%\input enhyphen.ex \relax
-%\endgroup
+\loadpatterns \zhCork 41 zh {Unaccented Pinyin Syllables \patt in Cork}
+ {\lccode`\'=`\' \input hyph-zh-latn-pinyin.ec }11 \corklangs \zhPatt
-% Czech hyphenation patterns and hyphenation exceptions in ISO-8859-2
+\loadpatterns \isCork 42 is {Icelandic \patt in Cork}
+ {\input conv-utf8-ec \input hyph-is }22 \corklangs \isPatt
-\chardef\iltwoczech=5
-\newcount\czech \czech=\iltwoczech
+\loadpatterns \hsbCork 43 hsb {EC Upper Sorbian \patt in Cork}
+ {\input conv-utf8-ec \input hyph-hsb }22 \corklangs \hsbPatt
-\begingroup \language=\czech
-\csaccents
-\message{Loading Czech patterns in ISO-8859-2 encoding,
- \string\language=\the\language.}
-\let\global=\relax
-\input czhyphen.tex \relax
-\input czhyphen.ex \relax
-\endgroup
+\loadpatterns \afCork 44 af {Afrikaans \patt in Cork}
+ {\lccode`\-=`\- \lccode`\'=`\'
+ \input conv-utf8-ec \input hyph-af }22 \corklangs \afPatt
-% Slovak hyphenation patterns and hyphenation exceptions in ISO-8859-2
+\loadpatterns \glCork 45 gl {Galician \patt in Cork}
+ {\input conv-utf8-ec \input hyph-gl }22 \corklangs \glPatt
-\chardef\iltwoslovak=6
-\newcount\slovak \slovak=\iltwoslovak
+\loadpatterns \kmrCork 46 kmr {Kurmanji \patt in Cork}
+ {\input conv-utf8-ec \input hyph-kmr }22 \corklangs \kmrPatt
-\begingroup \language=\slovak
-\csaccents
-\message{Loading Slovak patterns in ISO-8859-2 encoding,
- \string\language=\the\language.}
-\let\global=\relax
-\input skhyphen.tex \relax
-\input skhyphen.ex \relax
-\endgroup
+\loadpatterns \tkCork 47 tk {Turkmen \patt in Cork}
+ {\lccode`\-=`\- \input conv-utf8-ec \input hyph-tk }22 \corklangs \tkPatt
-\ifx\Cork\undefined % You can suppress the T1 encoded hyphen patterns by:
- % tex -ini \let\Cork=\relax \input csplain.ini
+\loadpatterns \laCork 48 la {Latin \patt in Cork}
+ {\lccode`\'=`\' \input conv-utf8-ec \input hyph-la }22 \corklangs \laPatt
-\chardef\toneczech=15
-\chardef\toneslovak=16
+\loadpatterns \czUnicode 115 cz {Czech \patt in Unicode}
+ {\input ucode \doaccents \input czhyphen.tex \input czhyphen.ex }23
+ \unicodelangs \czPatt
-% Czech hyphenation patterns and hyphenation exceptions in Cork
+\loadpatterns \skUnicode 116 sk {Slovak \patt in Unicode}
+ {\input ucode \doaccents \input skhyphen.tex \input skhyphen.ex }23
+ \unicodelangs \skPatt
-\begingroup
-\input t1code \language=\toneczech
-\csaccents
-\message{Loading Czech patterns in Cork encoding,
- \string\language=\the\language.}
-\let\global=\relax
-\input czhyphen.tex \relax
-\input czhyphen.ex \relax
-\endgroup
+\loadpatterns \deUnicode 121 de {German \patt in Unicode}
+ {\robustpatterns \input hyph-de-1996 }22 \unicodelangs \dePatt
-% Slovak hyphenation patterns and hyphenation exceptions in Cork
+\loadpatterns \frUnicode 122 fr {French \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \input hyph-fr }23 \unicodelangs \frPatt
-\begingroup
-\input t1code \language=\toneslovak
-\csaccents
-\message{Loading Slovak patterns in Cork encoding,
- \string\language=\the\language.}
-\let\global=\relax
-\input skhyphen.tex \relax
-\input skhyphen.ex \relax
-\endgroup
+\loadpatterns \plUnicode 123 pl {Polish \patt in Unicode}
+ {\robustpatterns \input hyph-pl }22 \unicodelangs \plPatt
-\fi %% of \ifx\Cork\undefined
+\loadpatterns \cyUnicode 124 cy {Welsh \patt in Unicode}
+ {\robustpatterns \input hyph-cy }23 \unicodelangs \cyPatt
-% ======= definitions for fast hyphenations =====
+\loadpatterns \daUnicode 125 da {Danish \patt in Unicode}
+ {\robustpatterns \input hyph-da }22 \unicodelangs \daPatt
-\def\ehyph{\language=\USenglish \lccode`\'=0 \nonfrenchspacing
- \lefthyphenmin=2 \righthyphenmin=3
- \message{English hyphenation used (\string\language=\the\language).
- \string\nonfrenchspacing\space is set on.}}
-%\def\ahyph{\language=\german \lccode`\'=`\' \frenchspacing
-% \lefthyphenmin=2 \righthyphenmin=2 }
-%\def\ghyph{\language=\german \lccode`\'=`\' \frenchspacing
-% \lefthyphenmin=2 \righthyphenmin=2 }
-%\def\fhyph{\language=\french \lccode`\'=`\' \frenchspacing
-% \lefthyphenmin=2 \righthyphenmin=2 }
-
-\def\chyph{\language=\czech \lccode`\'=`\' \frenchspacing
- \lefthyphenmin=2 \righthyphenmin=3
- \message{Czech hyphenation used (\string\language=\the\language).
- \string\frenchspacing\space is set on.}}
-\def\shyph{\language=\slovak \lccode`\'=`\' \frenchspacing
- \lefthyphenmin=2 \righthyphenmin=3
- \message{Slovakian hyphenation used (\string\language=\the\language).
- \string\frenchspacing\space is set on.}}
+\loadpatterns \esUnicode 126 es {Spanish \patt in Unicode}
+ {\robustpatterns \input hyph-es }22 \unicodelangs \esPatt
+
+\loadpatterns \slUnicode 128 sl {Slovenian \patt in Unicode}
+ {\robustpatterns \input hyph-sl }22 \unicodelangs \slPatt
+
+\loadpatterns \fiUnicode 129 fi {Finnish \patt in Unicode}
+ {\robustpatterns \input hyph-fi }22 \unicodelangs \fiPatt
+
+\loadpatterns \huUnicode 130 hu {Hungarian \patt in Unicode}
+ {\robustpatterns input hyph-hu }22 \unicodelangs \huPatt
+
+\loadpatterns \trUnicode 131 tr {Turkish \patt in Unicode}
+ {\robustpatterns \input hyph-tr }22 \unicodelangs \trPatt
+
+\loadpatterns \etUnicode 132 et {Estonian \patt in Unicode}
+ {\robustpatterns \input hyph-et }23 \unicodelangs \etPatt
+
+\loadpatterns \euUnicode 133 eu {Basque \patt in Unicode}
+ {\robustpatterns \input hyph-eu }22 \unicodelangs \euPatt
+
+\loadpatterns \gaUnicode 134 ga {Irish \patt in Unicode}
+ {\robustpatterns \input hyph-ga }23 \unicodelangs \gaPatt
+
+\loadpatterns \nbUnicode 135 nb {Norwegian Bokmal \patt in Unicode}
+ {\robustpatterns \input hyph-nb }22 \unicodelangs \nbPatt
+
+\loadpatterns \nnUnicode 136 nn {Norwegian Nynorsk \patt in Unicode}
+ {\robustpatterns \input hyph-nn }22 \unicodelangs \nnPatt
+
+\loadpatterns \nlUnicode 137 nl {Dutch \patt in Unicode}
+ {\robustpatterns \input hyph-nl }22 \unicodelangs \nlPatt
+
+\loadpatterns \ptUnicode 138 pt {Portugesse \patt in Unicode}
+ {\robustpatterns \lccode`\-=`\- \input hyph-pt }23 \unicodelangs \ptPatt
+
+\loadpatterns \roUnicode 139 ro {Romanian \patt in Unicode}
+ {\robustpatterns \input hyph-ro }22 \unicodelangs \roPatt
+
+\loadpatterns \hrUnicode 140 hr {Croatian \patt in Unicode}
+ {\robustpatterns \input hyph-hr }22 \unicodelangs \hrPatt
+
+\loadpatterns \zhUnicode 141 zh {Unaccented Pinyin Syllables \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \input hyph-zh-latn-pinyin }11 \unicodelangs \zhPatt
+
+\loadpatterns \isUnicode 142 is {Icelandic \patt in Unicode}
+ {\robustpatterns \input hyph-is }22 \unicodelangs \isPatt
+
+\loadpatterns \hsbUnicode 143 hsb {EC Upper Sorbian \patt in Unicode}
+ {\robustpatterns \input hyph-hsb }22 \unicodelangs \hsbPatt
+
+\loadpatterns \afUnicode 144 af {Afrikaans \patt in Unicode}
+ {\robustpatterns \lccode`\-=`\- \lccode`\'=`\'
+ \input hyph-af }22 \corklangs \afPatt
+
+\loadpatterns \glUnicode 145 gl {Galician \patt in Unicode}
+ {\robustpatterns \input hyph-gl }22 \corklangs \glPatt
+
+\loadpatterns \kmrUnicode 146 kmr {Kurmanji \patt in Unicode}
+ {\robustpatterns \input hyph-kmr }22 \corklangs \kmrPatt
+
+\loadpatterns \tkUnicode 147 tk {Turkmen \patt in Unicode}
+ {\robustpatterns \lccode`\-=`\- \input hyph-tk }22 \corklangs \tkPatt
+
+\loadpatterns \laUnicode 148 la {Latin \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \input hyph-la }22 \unicodelangs \laPatt
+
+\loadpatterns \elmUnicode 201 elm {Modern Monotonic Greek \patt in Unicode}
+ {\lccode`\'=`\' \lccode"2019="2019 \lccode"02BC="02BC \lccode"1FBF="1FBF
+ \robustpatterns \input hyph-el-monoton }11 \unicodelangs \elmPatt
+
+\loadpatterns \elpUnicode 202 elp {Modern Polytonic Greek \patt in Unicode}
+ {\lccode`\'=`\' \lccode"2019="2019 \lccode"02BC="02BC \lccode"1FBF="1FBF
+ \robustpatterns \input hyph-el-polyton }11 \unicodelangs \elpPatt
+
+\loadpatterns \grcUnicode 203 grc {Ancient Greek \patt in Unicode}
+ {\lccode`\'=`\' \lccode"2019="2019 \lccode"02BC="02BC \lccode"1FBF="1FBF
+ \robustpatterns \input hyph-grc }11 \unicodelangs \grcPatt
+
+\loadpatterns \caUnicode 204 ca {Catalan \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \input hyph-ca }22 \unicodelangs \caPatt
+
+\loadpatterns \copUnicode 205 cop {Coptic \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \input hyph-cop }11 \unicodelangs \copPatt
+
+\loadpatterns \mnUnicode 206 mn {Mongolian \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \input hyph-mn-cyrl }22 \unicodelangs \mnPatt
+
+\loadpatterns \saUnicode 207 sa {Sanskrit \patt in Unicode}
+ {\robustpatterns \lccode"200C="200C \lccode"200D="200D
+ \input hyph-sa }15 \unicodelangs \saPatt
+
+\loadpatterns \ruUnicode 208 ru {Russian \patt in Unicode}
+ {\robustpatterns \lccode`\-=`\- \input hyph-ru }22 \unicodelangs \ruPatt
+
+\loadpatterns \ukUnicode 209 uk {Ukrainian \patt in Unicode}
+ {\robustpatterns \lccode`\'=`\' \lccode`\-=`\-
+ \input hyph-uk }22 \unicodelangs \ukPatt
+\loadpatterns \hyUnicode 210 hy {Armenian \patt in Unicode}
+ {\robustpatterns \input hyph-hy }12 \unicodelangs \hyPatt
+
+\loadpatterns \asUnicode 211 as {Assamesse \patt in Unicode}
+ {\robustpatterns \input hyph-as }11 \unicodelangs \asPatt
+
+\loadpatterns \hiUnicode 212 hi {Hindi \patt in Unicode}
+ {\robustpatterns \input hyph-hi }11 \unicodelangs \hiPatt
+
+\loadpatterns \knUnicode 213 kn {Kannada \patt in Unicode}
+ {\robustpatterns \input hyph-kn }11 \unicodelangs \knPatt
+
+\loadpatterns \loUnicode 214 lo {Lao \patt in Unicode}
+ {\robustpatterns \input hyph-lo }11 \unicodelangs \loPatt
+
+\loadpatterns \lvUnicode 215 lv {Latvian \patt in Unicode}
+ {\robustpatterns \input hyph-lv }22 \unicodelangs \lvPatt
+
+\loadpatterns \ltUnicode 216 lt {Lithuanian \patt in Unicode}
+ {\robustpatterns \input hyph-lt }22 \unicodelangs \ltPatt
+
+\loadpatterns \mlUnicode 217 ml {Malayalam \patt in Unicode}
+ {\robustpatterns \input hyph-ml }11 \unicodelangs \mlPatt
+
+\loadpatterns \mrUnicode 218 mr {Marathi \patt in Unicode}
+ {\robustpatterns \input hyph-mr }11 \unicodelangs \mrPatt
+
+\loadpatterns \orUnicode 219 or {Oriya \patt in Unicode}
+ {\robustpatterns \input hyph-or }11 \unicodelangs \orPatt
+
+\loadpatterns \paUnicode 220 pa {Panjabi \patt in Unicode}
+ {\robustpatterns \input hyph-pa }11 \unicodelangs \paPatt
+
+\loadpatterns \taUnicode 221 ta {Tamil \patt in Unicode}
+ {\robustpatterns \input hyph-ta }11 \unicodelangs \taPatt
+
+\loadpatterns \teUnicode 222 te {Telgu \patt in Unicode}
+ {\robustpatterns \input hyph-te }11 \unicodelangs \tePatt
+
+
+\message{Patterns: \pattlist}
\message{Defaults: \string\language=\the\language,
\string\cmaccents, \string\nofrenchspacing,
ISO-8859-2 font encoding}
+% ========= for backward compatibility ========
+
+\newcount\czech \newcount\slovak
+
+\let\iltwoczech=\czILtwo \let\iltwoslovak=\skILtwo
+\let\toneczech=\czCork \let\toneslovak=\skCork
+
+\expandafter \def\expandafter\iltwolangs \expandafter {\iltwolangs
+ \czech\czILtwo \slovak\skILtwo}
+
+\ifx\czCork\undefined \else
+\expandafter \def\expandafter\corklangs \expandafter {\corklangs
+ \czech\czCork \slovak\skCork}
+\fi
+
+\ifx\czUnicode\undefined \else
+\expandafter \def\expandafter\unicodelangs \expandafter {\unicodelangs
+ \czech\czUnicode \slovak\skUnicode}
+\fi
+
+\def\uslang{\language=\USenglish \initlanguage{us}\nonfrenchspacing
+ \lefthyphenmin=2 \righthyphenmin=3
+ \message{English hyphenation used (\string\language=\the\language).
+ \string\nonfrenchspacing\space is set on.}}
+
+\let\ehyph=\uslang \let\chyph=\czlang \let\shyph=\sklang
+
+\iltwolangs % csplain default is ISO-8859-2 encoding
+
+\endinput
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+If \<lang>Code (for example \czUnicode, \deCork) is undefined, the patterns
+are not loaded. If user sets \<lang>Code=\patterns before this file is
+loaded, then the patterns are loaded.
+
+You can remove colons in this file at lines 48-160 or you can say, for
+example:
+
+ pdftex -ini "\let\plCork=\patterns \input csplain.ini"
+or
+ pdftex -ini "\let\allpatterns=y \input csplain.ini"
+
+in order to load the additional patterns.
+
+By default, only \USenglish=0 \czILtwo=5, \skILtwo=6, \czCork=15, \skCork=16
+are loaded in 8bit TeX. The additional \czUnicode=115, \skUnicode=116 are
+loaded in 16bit TeX.
+
+The macro \loadpatterns \langCode <num> <lang> {note}
+ {action}<lhm><rhm> \codelist \switch
+does following:
+- If \langCode is undefined, does nothing.
+- Declares \chadref\langCode=<num>.
+- Loads new pattern with the number <num> by {action} in the group,
+- Defines \"<lang>lang" macro (for example \czlang), which sets
+ \language=\switch \lefthyphenmin=<lhm> \righthypgenmin=<rhm>
+ and runs \initlanguage{<lang>}. The \initlanguage is dumy by default
+ but macro programmer can define it.
+- Adds \let\switch=\langCode" to \codelist. The codelist includes
+ such commands dependent on the encoding. If user switches to
+ another encoding, the \codelist have to be run and then
+ the command \language=\switch works properly.
+- Defines \csname lan:<num>\endcsname as <lang>. This may be usable
+ for macro programes.
+- Adds info \langCode=<num> to \pattlist. User can expand this
+ macro in order to see which languages are preloaded.
+
+The \robustpatterns macro performs two steps of \patterns reading:
+Fisrt step: \lccodes of all characters in the patterns are set to code.
+Second step: the \patterns are read.
+
+
+% ======= end of hyphen.lan
+
+
diff --git a/Master/texmf-dist/tex/csplain/base/il2code.tex b/Master/texmf-dist/tex/csplain/base/il2code.tex
index e2df224e440..9a655d1d6ee 100644
--- a/Master/texmf-dist/tex/csplain/base/il2code.tex
+++ b/Master/texmf-dist/tex/csplain/base/il2code.tex
@@ -11,9 +11,7 @@
\message{Font encoding set to ISO-8859-2.}
%% (0) \czech, \slovak. You can use \chyph, \shyph after this file is loaded.
-\ifx\iltwoczech\undefined \else
- \czech=\iltwoczech \slovak=\iltwoslovak
-\fi
+\csname iltwolangs\endcsname
%% (1) \catcode, \lccode, \uccode.
\catcode225=11 \lccode225=225 \uccode225=193 % a-acute
diff --git a/Master/texmf-dist/tex/csplain/base/plaina4.tex b/Master/texmf-dist/tex/csplain/base/plaina4.tex
index 39262806975..de7966476da 100644
--- a/Master/texmf-dist/tex/csplain/base/plaina4.tex
+++ b/Master/texmf-dist/tex/csplain/base/plaina4.tex
@@ -12,6 +12,13 @@
{\catcode64=11 % \catcode`\@=11
\gdef\m@g{\mag\count@
- \hsize=159.2truemm \vsize=239.2truemm \dimen\footins8truein}
+ \hsize=159.2truemm \vsize=239.2truemm \dimen\footins8truein
+ \ifx\pdfpagewidth\undefined\else % added by P. O. Nov 2012
+ \pdfpagewidth=210truemm
+ \pdfpageheight=297truemm
+ \pdfhorigin=1truein
+ \pdfvorigin=1truein
+ \fi
+}
}
diff --git a/Master/texmf-dist/tex/csplain/base/slovak.sty b/Master/texmf-dist/tex/csplain/base/slovak.sty
deleted file mode 100644
index a8fc6db3d40..00000000000
--- a/Master/texmf-dist/tex/csplain/base/slovak.sty
+++ /dev/null
@@ -1,258 +0,0 @@
-%%
-%% This is file `slovak.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% cslatex.dtx (with options: `slovak')
-%%
-%% Tento soubor je soucasti baliku CsLaTeX a je vygenerovan z
-%% distribucniho souboru cslatex.dtx.
-%%
-%% Copyright (c) 1994--98, 2002
-%% Jaroslav Snajdr, Zdenek Wagner, Jiri Zlatuska a The LaTeX3 Project
-%%
-%% Tento soubor NENI soucasti systemu LaTeX2e
-%% ------------------------------------------
-%%
-%% Dalsi informace naleznete na www.cstug.cz/cslatex.
-%%
-\ifx\dateslovak\undefined\else\endinput\fi
-\ifx\addlanguage\undefined\else
- \ifx\LdfInit\@undefined
- \def\LdfInit{%
- \chardef\atcatcode=\catcode`\@
- \catcode`\@=11\relax
- \input babel.def\relax
- \catcode`\@=\atcatcode \let\atcatcode\relax
- \LdfInit}
- \fi
-\input slovak.ldf
-\endinput\fi
-\newif\iflte
-\ifx\documentclass\undefined\else\ltetrue\fi
-\iflte
- \NeedsTeXFormat{LaTeX2e}
- \ProvidesPackage{slovak}[2002/07/19 v2.4 CSTeX slovak style]
-\else
- \message{Document Style Option `slovak' ver. 2.4 <July 2002>.}
- \edef\origcatcodeat{\the\catcode`\@}\catcode`\@=11
- \let\providecommand=\def
- \let\protect=\relax
-\fi
-\iflte
- \def\defaultcsoption{IL2}
- \DeclareOption{IL2}{\def\encodingdefault{IL2}}
- \DeclareOption {T1}{\def\encodingdefault {T1}}
- \DeclareOption{OT1}{\def\encodingdefault{OT1}}
- \DeclareOption{nosplit}{\standardhyphens}
- \DeclareOption{split}{\splithyphens}
- \DeclareOption{nocaptions}{\let\cap@unchgd=\relax}
- \DeclareOption{olduv}{\let\cs@olduv=\relax}
- \DeclareOption{cstex}{\relax} % Removed, lasts for compatibility
- \ExecuteOptions{IL2}
- \ProcessOptions
- \def\dms#1#2{\DeclareMathSymbol{#1}{\mathalpha}{letters}{#2}}
- \ifx\encodingdefault\defaultcsoption
- \let\cs@warn=\@font@warning \let\@font@warning=\@gobble
- \let\cs@info=\@font@info \let\@font@info=\@gobble
- \SetSymbolFont{operators}{normal}{IL2}{cmr}{m}{n}
- \SetSymbolFont{operators}{bold}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathbf{normal}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathit{normal}{IL2}{cmr}{m}{it}
- \SetMathAlphabet\mathrm{normal}{IL2}{cmr}{m}{n}
- \SetMathAlphabet\mathsf{normal}{IL2}{cmss}{m}{n}
- \SetMathAlphabet\mathtt{normal}{IL2}{cmtt}{m}{n}
- \SetMathAlphabet\mathbf{bold}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathit{bold}{IL2}{cmr}{bx}{it}
- \SetMathAlphabet\mathrm{bold}{IL2}{cmr}{bx}{n}
- \SetMathAlphabet\mathsf{bold}{IL2}{cmss}{bx}{n}
- \SetMathAlphabet\mathtt{bold}{IL2}{cmtt}{m}{n}
- \let\@font@warning=\cs@warn \let\cs@warn=\undefined
- \let\@font@info=\cs@info \let\cs@info=\undefined
- \dms{^^e1}{"E1}\dms{^^c1}{"C1}\dms{^^e8}{"E8}\dms{^^c8}{"C8}
- \dms{^^ef}{"EF}\dms{^^cf}{"CF}\dms{^^e9}{"E9}\dms{^^c9}{"C9}
- \dms{^^ec}{"EC}\dms{^^cc}{"CC}\dms{^^ed}{"ED}\dms{^^cd}{"CD}
- \dms{^^b5}{"B5}\dms{^^a5}{"A5}\dms{^^f2}{"F2}\dms{^^d2}{"D2}
- \dms{^^f3}{"F3}\dms{^^d3}{"D3}\dms{^^f8}{"F8}\dms{^^d8}{"D8}
- \dms{^^b9}{"B9}\dms{^^a9}{"A9}\dms{^^bb}{"BB}\dms{^^ab}{"AB}
- \dms{^^fa}{"FA}\dms{^^da}{"DA}\dms{^^f9}{"F9}\dms{^^d9}{"D9}
- \dms{^^fd}{"FD}\dms{^^dd}{"DD}\dms{^^be}{"BE}\dms{^^ae}{"AE}
- \fi
-\else
- \def\gobble#1{}
- \def\DeclareRobustCommand#1#2{\expandafter\def
- \csname @\expandafter\gobble\string#1\endcsname{#2}
- \edef#1{\noexpand\protect\expandafter\noexpand
- \csname @\expandafter\gobble\string#1\endcsname}}
- \ifx\ou\undefined \def\ou{\accent23u} \fi
- \def\temp#1#2#3:{#1#2}
- \edef\tempa{\string c\string s}
- \edef\tempb{\expandafter\temp\fontname\tenrm:}
- \ifx\tempa\tempb
- \chardef\clqq=254 \sfcode254=0 \lccode254=0
- \chardef\crqq=255 \sfcode255=0 \lccode255=0
- \chardef\flqq=158 \sfcode158=0 \lccode158=0
- \chardef\frqq=159 \sfcode159=0 \lccode159=0
- \def\ogonek #1{\setbox0\hbox{#1}\ifdim\ht0=1ex\accent157 #1%
- \else{\ooalign{\unhbox0\crcr\hss\char157}}\fi}
- \chardef\promile=141
- \def\DeclareTextCommandDefault#1#2{}
- \else
- \let\DeclareTextCommandDefault=\DeclareRobustCommand
- \fi
-\fi
-\def\captionsslovak{%
-\def\prefacename{Predhovor}%
-\def\refname{Literat\'ura}%
-\def\appendixname{Dodatok}%
-\def\listfigurename{Zoznam obr\'azkov}%
-\def\listtablename {Zoznam tabuliek}%
-\def\indexname{Register}%
-\def\tablename{Tabu\v{l}ka}%
-\def\partname{\v{C}as\v{t}}%
-\def\enclname{Pr\'{\i}loha}%
-\def\headtoname{Pre}%
-\def\alsoname{vi\v{d} tie\v{z}}%
-\def\abstractname{Abstrakt}%
-\let\bibname\refname
-\def\chaptername{Kapitola}%
-\def\contentsname{Obsah}%
-\def\figurename{Obr.}%
-\def\ccname{cc.}%
-\def\pagename{Str.}%
-\def\seename{vi\v{d}}}
-\providecommand\captionsenglish{%
- \def\prefacename{Preface}%
- \def\refname{References}%
- \def\abstractname{Abstract}%
- \def\bibname{Bibliography}%
- \def\chaptername{Chapter}%
- \def\appendixname{Appendix}%
- \def\contentsname{Contents}%
- \def\listfigurename{List of Figures}%
- \def\listtablename{List of Tables}%
- \def\indexname{Index}%
- \def\figurename{Figure}%
- \def\tablename{Table}%
- \def\partname{Part}%
- \def\enclname{encl}%
- \def\ccname{cc}%
- \def\headtoname{To}%
- \def\pagename{Page}%
- \def\headpagename{Page}%
- \def\prefacename{Preface}%
- \def\seename{see}%
- \def\alsoname{see also}}
-\def\dateslovak{\def\today{\number\day.~\ifcase\month\or
- janu\'ara\or febru\'ara\or marca\or apr\'{\i}la\or m\'aja\or j\'una\or
- j\'ula\or augusta\or septembra\or okt\'obra\or
- novembra\or decembra\fi
- \space\number\year}}
-\iflte\ifx\cap@unchgd\undefined\captionsslovak\dateslovak\fi\fi
-\providecommand\dateUSenglish{\def\today{\ifcase\month\or
- January\or February\or March\or April\or May\or June\or July\or
- August\or September\or October\or November\or December\fi
- \space\number\day, \number\year}}
-\providecommand\dateenglish{\def\today{\ifcase\day\or 1st\or 2nd\or
- 3rd\or 4th\or 5th\or 6th\or 7th\or 8th\or 9th\or 10th\or 11th\or
- 12th\or 13th\or 14th\or 15th\or 16th\or 17th\or 18th\or 19th\or
- 20th\or 21st\or 22nd\or 23rd\or 24th\or 25th\or 26th\or 27th\or
- 28th\or 29th\or 30th\or 31st\fi ~\ifcase\month\or January\or
- February\or March\or April\or May\or June\or July\or August\or
- September\or October\or November\or December\fi \space
- \number\year}}
-\DeclareTextCommandDefault\clqq{\leavevmode
- \set@low@box{''}%
- \setbox1=\hbox{l\/}\dimen1=\wd1
- \setbox1=\hbox{l}\advance\dimen1 by -\wd1
- \ifdim\dimen1>0pt\kern-.1em\box0\kern.1em
- \else\kern.1em\box0\kern-.1em\fi\nobreak\hskip0pt}
-\DeclareTextCommandDefault\crqq{\edef\@SF{\spacefactor\the\spacefactor}%
- \nobreak\kern-.07em\hbox{``}\kern.07em\@SF\relax}
-\def\set@low@box#1{\setbox2=\hbox{,}\setbox0=\hbox{#1}%
- \dimen0=\ht0 \advance\dimen0 by -\ht2
- \setbox0=\hbox{\lower\dimen0 \box0}\ht0=\ht2\dp0=\dp2}
-\DeclareRobustCommand\clq{\leavevmode\set@low@box{\char'047 }%
- \box0 \kern.04em\nobreak\hskip0pt\relax}
-\DeclareRobustCommand\crq{{\edef\@SF{\spacefactor\the\spacefactor}%
- \nobreak\char'140 \kern.17em\@SF\relax}}
-\iflte
- \DeclareTextCommand{\clqq}{T1}{\leavevmode\kern.1em
- \char18 \kern-.0158em\nobreak\hskip0pt}
- \DeclareTextCommand{\crqq}{T1}
- {{\edef\@SF{\spacefactor\the\spacefactor}%
- \nobreak\kern.06em \char16 \kern.024em \@SF\relax}}
-\fi
-\iflte\else\let\if@compatibility=\iffalse{\let\fi=\fi}\fi
-\ifx\cs@olduv\undefined
- \iflte
- \if@compatibility
- \DeclareRobustCommand\uv{\bgroup\aftergroup\closequotes
- \leavevmode\clqq\let\next=}
- \else
- \DeclareRobustCommand\uv[1]{{\leavevmode\clqq#1\crqq}}
- \fi
- \else
- \ifx\uv\undefined
- \def\uv{\bgroup\aftergroup\closequotes
- \leavevmode\clqq\let\next=}
- \fi
- \fi
-\else
- \DeclareRobustCommand\uv{\bgroup\aftergroup\closequotes
- \leavevmode\clqq\let\next=}
-\fi
-\def\closequotes{\unskip\crqq\relax}
-\def\prim@s{\prime\futurelet\next\pr@m@s}
-{\catcode`\'=\active
-\gdef\csprimeson{\catcode96=\active \catcode39=\active
- \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else\ifx^\next\let\nxt\pr@@@t
- \else\let\nxt\egroup\fi\fi \nxt}}}
-\def\csprimesoff{\catcode96=12 \catcode39=12
- \def\pr@m@s{\ifx'\next\let\nxt\pr@@@s \else\ifx^\next\let\nxt\pr@@@t
- \else\let\nxt\egroup\fi\fi \nxt}}
-{\csprimeson
- \gdef'{\ifmmode\let\n@xt=\mathprim@\else\let\n@xt=\textprim@\fi\n@xt}%
- \gdef\mathprim@{^\bgroup\prim@s}%
- \gdef\textprim@{\futurelet\nxt\rightprim@}%
- \gdef\rightprim@{\ifx'\nxt\let\next=\douvr@
- \else\let\next\crq\fi\next}%
- \gdef`{\futurelet\nxt\leftprim@}%
- \gdef\leftprim@{\ifx`\nxt\let\next=\douvl@
- \else\let\next=\clq\fi\next}}
-\def\douvr@{\crqq\let\next= }%
-\def\douvl@{\clqq\let\next= }%
-\csprimesoff
-\def\cstieon{\def~{\ifmmode\else\penalty\@M\ \fi}}
-\def\cstieoff{\def~{\penalty\@M \ }}
-\iflte
-\AtBeginDocument{\slovak}
- \frenchspacing
-\else
- \def\setthisl@nguage#1#2#3#4{%
- \ifx#2\undefined \immediate\write\sixt@@n
- {Warning: I do not speak #1, (the style is not inputted)}
- \else
- \ifx#4\undefined \immediate\write\sixt@@n
- {Warning: I do not speak #1,
- (the hyphenation patterns are not included)}
- \else#2#3#4\fi\fi}
-\def\selectlanguage#1{\language #1\relax
- \ifcase #1\relax \dateUSenglish\captionsenglish\ehyph\or
- \setthisl@nguage{german} \dategerman \captionsgerman \ghyph\or
- \setthisl@nguage{austrian}\dateaustrian \captionsgerman \ahyph\or
- \setthisl@nguage{french} \datefrench \captionsfrench \fhyph\or
- \setthisl@nguage{english} \dateenglish \captionsenglish\ehyph\or
- \setthisl@nguage{czech} \dateczech \captionsczech \chyph\or
- \setthisl@nguage{slovak} \dateslovak \captionsslovak \shyph\fi}
-\def\originalTeX{\selectlanguage{\USenglish}
- \csname cmaccents\endcsname}
-\def\czechTeX{\selectlanguage{\czech}\csname csaccents\endcsname}
-\def\slovakTeX{\selectlanguage{\slovak}\csname csaccents\endcsname}
-\catcode`\@=\origcatcodeat
-\slovakTeX
-\fi
-\endinput
-%%
-%% End of file `slovak.sty'.
diff --git a/Master/texmf-dist/tex/csplain/base/t1code.tex b/Master/texmf-dist/tex/csplain/base/t1code.tex
index eb3d02ecb04..896c5a4d8fc 100644
--- a/Master/texmf-dist/tex/csplain/base/t1code.tex
+++ b/Master/texmf-dist/tex/csplain/base/t1code.tex
@@ -3,15 +3,20 @@
% (1) sets \catcode, \l/uccode for characters (code by Cork),
% (2) defines \csaccents for new behavior of \v, \', etc (code by Cork),
% (3) defines some \sequences for special cs-fonts characters.
+% (4) redefines character-like macros from plainTeX as \chardef
+% (5) if encTeX with \mubytein>0 is activated reads t1enc-u.tex file
%
% Created by Petr Olsak <olsak@math.feld.cvut.cz>, February 2000
% Inspired by Jan Kasprzak
% February 2005: bug in \uccodes removed, thanks to Marek Pomp
+% October 2012: new \lc/\uccode declaration, new parts (4) (5)
\message{Font encoding set to Cork.}
+\let\corkencoded\font % macros can do \ifx\font\corkencoded ...\else...\fi
+
%% (0) \czech, \slovak. You can use \chyph, \shyph after this file is loaded.
-\ifx\toneczech\undefined
+\ifx\czCork\undefined
{\newlinechar=`^^J
\errhelp={The hyphen patterns are not loaded in Cork encoding in csplain.^^J
Hyphen patterns are supported only in ISO-8859-2.^^J
@@ -23,69 +28,105 @@
{The Cork encoding is not supported in this format} % Press h for more help.
}
\else
- \czech=\toneczech \slovak=\toneslovak
+ \csname corklangs\endcsname
\fi
-%% (1) \catcode, \lccode, \uccode.
-\catcode225=11 \lccode225=225 \uccode225=193 % a-acute
-\catcode193=11 \lccode193=225 \uccode193=193 % A-acute
-\catcode228=11 \lccode228=228 \uccode228=196 % a-diaeresis
-\catcode196=11 \lccode196=228 \uccode196=196 % A-diaeresis
-\catcode163=11 \lccode163=163 \uccode163=131 % c-caron
-\catcode131=11 \lccode131=163 \uccode131=131 % C-caron
-\catcode164=11 \lccode164=164 \uccode164=132 % d-caron
-\catcode132=11 \lccode132=164 \uccode132=132 % D-caron
-\catcode233=11 \lccode233=233 \uccode233=201 % e-acute
-\catcode201=11 \lccode201=233 \uccode201=201 % E-acute
-\catcode165=11 \lccode165=165 \uccode165=133 % e-caron
-\catcode133=11 \lccode133=165 \uccode133=133 % E-caron
-\catcode237=11 \lccode237=237 \uccode237=205 % i-acute
-\catcode205=11 \lccode205=237 \uccode205=205 % I-acute
-\catcode168=11 \lccode168=168 \uccode168=136 % l-acute
-\catcode136=11 \lccode136=168 \uccode136=136 % L-acute
-\catcode169=11 \lccode169=169 \uccode169=137 % l-caron
-\catcode137=11 \lccode137=169 \uccode137=137 % L-caron
-\catcode172=11 \lccode172=172 \uccode172=140 % n-caron
-\catcode140=11 \lccode140=172 \uccode140=140 % N-caron
-\catcode243=11 \lccode243=243 \uccode243=211 % o-acute
-\catcode211=11 \lccode211=243 \uccode211=211 % O-acute
-\catcode244=11 \lccode244=244 \uccode244=212 % o-circumflex
-\catcode212=11 \lccode212=244 \uccode212=212 % O-circumflex
-\catcode246=11 \lccode246=246 \uccode246=214 % o-diaeresis
-\catcode214=11 \lccode214=246 \uccode214=214 % O-diaeresis
-\catcode175=11 \lccode175=175 \uccode175=143 % r-acute
-\catcode143=11 \lccode143=175 \uccode143=143 % R-acute
-\catcode176=11 \lccode176=176 \uccode176=144 % r-caron
-\catcode144=11 \lccode144=176 \uccode144=144 % R-caron
-\catcode178=11 \lccode178=178 \uccode178=146 % s-caron
-\catcode146=11 \lccode146=178 \uccode146=146 % S-caron
-\catcode180=11 \lccode180=180 \uccode180=148 % t-caron
-\catcode148=11 \lccode148=180 \uccode148=148 % T-caron
-\catcode250=11 \lccode250=250 \uccode250=218 % u-acute
-\catcode218=11 \lccode218=250 \uccode218=218 % U-acute
-\catcode183=11 \lccode183=183 \uccode183=151 % u-ring
-\catcode151=11 \lccode151=183 \uccode151=151 % U-ring
-\catcode252=11 \lccode252=252 \uccode252=220 % u-diaeresis
-\catcode220=11 \lccode220=252 \uccode220=220 % U-diaeresis
-\catcode253=11 \lccode253=253 \uccode253=221 % y-acute
-\catcode221=11 \lccode221=253 \uccode221=221 % Y-acute
-\catcode186=11 \lccode186=186 \uccode186=154 % z-caron
-\catcode154=11 \lccode154=186 \uccode154=154 % Z-caron
-
+%% (1a) \catcodes:
+\catcode225=11 % a-acute
+\catcode193=11 % A-acute
+\catcode228=11 % a-diaeresis
+\catcode196=11 % A-diaeresis
+\catcode163=11 % c-caron
+\catcode131=11 % C-caron
+\catcode164=11 % d-caron
+\catcode132=11 % D-caron
+\catcode233=11 % e-acute
+\catcode201=11 % E-acute
+\catcode165=11 % e-caron
+\catcode133=11 % E-caron
+\catcode237=11 % i-acute
+\catcode205=11 % I-acute
+\catcode168=11 % l-acute
+\catcode136=11 % L-acute
+\catcode169=11 % l-caron
+\catcode137=11 % L-caron
+\catcode172=11 % n-caron
+\catcode140=11 % N-caron
+\catcode243=11 % o-acute
+\catcode211=11 % O-acute
+\catcode244=11 % o-circumflex
+\catcode212=11 % O-circumflex
+\catcode246=11 % o-diaeresis
+\catcode214=11 % O-diaeresis
+\catcode175=11 % r-acute
+\catcode143=11 % R-acute
+\catcode176=11 % r-caron
+\catcode144=11 % R-caron
+\catcode178=11 % s-caron
+\catcode146=11 % S-caron
+\catcode180=11 % t-caron
+\catcode148=11 % T-caron
+\catcode250=11 % u-acute
+\catcode218=11 % U-acute
+\catcode183=11 % u-ring
+\catcode151=11 % U-ring
+\catcode252=11 % u-diaeresis
+\catcode220=11 % U-diaeresis
+\catcode253=11 % y-acute
+\catcode221=11 % Y-acute
+\catcode186=11 % z-caron
+\catcode154=11 % Z-caron
+
+%% (1b) \lccodes, \uccodes:
+\def\tmp #1 {\loop
+ \lccode\count100=\count200 \uccode\count100=\count100
+ \lccode\count200=\count200 \uccode\count200=\count100
+ \ifnum\count100<#1 \advance\count100 by1 \advance\count200 by1
+ \repeat}
+\count100=128 \count200=160 \tmp 156
+\count100=192 \count200=224 \tmp 223
+\lccode 157=105 \uccode 157=157 % dotted I
+\lccode 25=25 \uccode 25=73 % dotless i
+\lccode 26=26 \uccode 26=74 % dotless j
+\lccode 158=158 \uccode 158=158
+\lccode 159=159 \uccode 159=159
+\lccode 189=189 \uccode 189=189
+\lccode 190=190 \uccode 189=190
+\lccode 191=191 \uccode 189=191
+
%% (2) \csaccents, \cmaccents
-\def\accentscommands{\string\^, \string\`, \string\', \string\v,
- \string\" and \string\r}
+\def\accentscommands{\string\^,\string\`,\string\',\string\v,\string\",%
+ \string\r,\string\c,\string\~,\string\H,\string\u,%
+ \string\. and \string\k}
\def\csaccentsmessage{%
- \message{The \accentscommands\space expands to characters by Cork.}}
-\def\cmaccentsmessage{%
- \message{The \accentscommands\space have original plainTeX meaning.}}
+ \message{The \accentscommands\space expands to characters by Cork.}}
+\ifx\cmaccentsmessage\undefined
+ \def\cmaccentsmessage{%
+ \message{The \accentscommands\space are defined similar as plainTeX.}}
+\fi
\def\csaccents{\csaccentsmessage
\def\^##1{\ifx o##1^^f4\else
\ifx O##1^^d4\else
- {\accent94 ##1}\fi\fi}\let\^^D=\^%
- \def\`##1{\ifx a##1^^b8\else
- \ifx A##1^^98\else
- {\accent18 ##1}\fi\fi}%
+ \ifx a##1^^e2\else
+ \ifx A##1^^c2\else
+ \ifx e##1^^ea\else
+ \ifx E##1^^ca\else
+ \ifx i##1^^ee\else
+ \ifx I##1^^ce\else
+ \ifx u##1^^fb\else
+ \ifx U##1^^db\else
+ {\accent94 ##1}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}\let\^^D=\^%
+ \def\`##1{\ifx a##1^^e0\else
+ \ifx A##1^^c0\else
+ \ifx e##1^^e8\else
+ \ifx E##1^^c8\else
+ \ifx i##1^^ec\else
+ \ifx I##1^^cc\else
+ \ifx o##1^^f2\else
+ \ifx O##1^^d2\else
+ \ifx u##1^^f9\else
+ \ifx U##1^^d9\else
+ {\accent18 ##1}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
\def\'##1{\ifx a##1^^e1\else
\ifx e##1^^e9\else
\ifx\i##1^^ed\else
@@ -103,8 +144,17 @@
\ifx Y##1^^dd\else
\ifx R##1^^8f\else
\ifx L##1^^88\else
- {\accent19 ##1}%
- \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
+ \ifx C##1^^82\else
+ \ifx N##1^^8b\else
+ \ifx S##1^^91\else
+ \ifx Z##1^^99\else
+ \ifx c##1^^a2\else
+ \ifx n##1^^ab\else
+ \ifx s##1^^b1\else
+ \ifx z##1^^b9\else
+ {\accent19 ##1}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
\def\v##1{\ifx e##1^^a5\else
\ifx s##1^^b2\else
\ifx c##1^^a3\else
@@ -124,17 +174,62 @@
\ifx L##1^^89\else
\ifx N##1^^8c\else
{\accent20 ##1}%
- \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}\let\^^_=\v%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \fi\fi\fi\fi\fi\fi}\let\^^_=\v%
\def\"##1{\ifx a##1^^e4\else
\ifx o##1^^f6\else
\ifx u##1^^fc\else
\ifx A##1^^c4\else
\ifx O##1^^d6\else
\ifx U##1^^dc\else
- {\accent"7F ##1}\fi\fi\fi\fi\fi\fi}%
+ \ifx Y##1^^98\else
+ \ifx E##1^^cb\else
+ \ifx I##1^^cf\else
+ \ifx y##1^^b8\else
+ \ifx e##1^^eb\else
+ \ifx i##1^^ef\else
+ {\accent"7F ##1}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
\def\r##1{\ifx u##1^^b7\else
\ifx U##1^^97\else
- {\accent23 ##1}\fi\fi}%
+ \ifx A##1^^c5\else
+ \ifx a##1^^e5\else
+ {\accent23 ##1}\fi\fi\fi\fi}%
+ \def\c##1{\ifx C##1^^c7\else
+ \ifx c##1^^e7\else
+ \ifx S##1^^93\else
+ \ifx s##1^^b3\else
+ \ifx T##1^^95\else
+ \ifx t##1^^b5\else
+ {\char11 ##1}\fi\fi\fi\fi\fi\fi}%
+ \def\~##1{\ifx A##1^^c3\else
+ \ifx N##1^^d1\else
+ \ifx O##1^^d5\else
+ \ifx a##1^^e3\else
+ \ifx n##1^^f1\else
+ \ifx o##1^^f5\else
+ {\accent3 ##1}\fi\fi\fi\fi\fi\fi}%
+ \def\H##1{\ifx O##1^^8e\else
+ \ifx U##1^^96\else
+ \ifx o##1^^ae\else
+ \ifx u##1^^b6\else
+ {\accent5 ##1}\fi\fi\fi\fi}%
+ \def\u##1{\ifx A##1^^80\else
+ \ifx G##1^^87\else
+ \ifx a##1^^a0\else
+ \ifx g##1^^a7\else
+ {\accent8 ##1}\fi\fi\fi\fi}%
+ \def\=##1{\ifx d##1^^9e\else
+ {\accent9 ##1}\fi}%
+ \def\.##1{\ifx i##1^^69\else
+ \ifx z##1^^bb\else
+ \ifx I##1^^9d\else
+ \ifx Z##1^^9b\else
+ {\accent10 ##1}\fi\fi\fi\fi}%
+ \def\k##1{\ifx A##1^^81\else
+ \ifx E##1^^86\else
+ \ifx a##1^^a1\else
+ \ifx e##1^^a6\else
+ {\char12 ##1}\fi\fi\fi\fi}%
%% for backward compatibility:
\def\softd{\v{d}}\def\softt{\v{t}}\def\ou{\r{u}}%
\def\softl{\v{l}}\def\softL{\v{L}}}
@@ -146,13 +241,15 @@
\def\"##1{{\accent"7F ##1}}%
\let\r=\undefined\def\ou{{\accent6u}}}
+\ifx\r\undefined \else \csaccents \fi %% re-set \csaccents
+
%% (3) special \sequences for T1 encoded fonts.
%% Czech left a right double qoutes
\chardef\clqq=18 \sfcode18=0
\chardef\crqq=16 \sfcode16=0
%% French double quotes
-\chardef\flqq=14 \sfcode14=0
-\chardef\frqq=13 \sfcode13=0
+\chardef\flqq=19 \sfcode19=0
+\chardef\frqq=20 \sfcode20=0
%% Other characters
\def\ogonek #1{\setbox0\hbox{#1}\ifdim\ht0=1ex\accent12 #1%
\else{\ooalign{\unhbox0\crcr\hss\char12}}\fi}
@@ -165,7 +262,48 @@
\afterassignment\clqq\let\next=}
\def\closequotes{\unskip\crqq\relax}
-\chardef\i=25
+%% (4) re-definition character-like macros from plainTeX:
+
+\chardef \S 159
+\chardef \P 182
+\chardef \ss 255
+\chardef \L 138
+\chardef \l 170
+\chardef \ae 230
+\chardef \oe 247
+\chardef \o 248
+\chardef \AE 198
+\chardef \OE 215
+\chardef \O 216
+\chardef \i 25
+\chardef \j 26
+\chardef \aa 229
+\chardef \AA 197
+
+% new characters in T1 encoding:
+
+\chardef \Eth 208
+\chardef \NG 141
+\chardef \Thorn 222
+\chardef \eth 240
+\chardef \ng 173
+\chardef \thorn 254
+\chardef \flq 14
+\chardef \frq 15
+\chardef \clq 13
+\chardef \crq 60
+\chardef \elqq 16
+\chardef \erqq 17
+\chardef \sterling 191
+\let\pound=\sterling
+
+%% (5) reading UTF-8 input encoding from t1enc-u.tex file
+
+\ifx\mubytein\undefined \expandafter \endinput \fi
+\ifnum\mubytein=0 \expandafter \endinput \fi
+
+\input t1enc-u
+
\endinput
diff --git a/Master/texmf-dist/tex/csplain/base/t1enc-u.tex b/Master/texmf-dist/tex/csplain/base/t1enc-u.tex
new file mode 100644
index 00000000000..a827ab3b83f
--- /dev/null
+++ b/Master/texmf-dist/tex/csplain/base/t1enc-u.tex
@@ -0,0 +1,130 @@
+%%% The re-encoding table for Czech/Slovak alphabet using encTeX,
+%%% v.Sep.2005 (C) Petr Ol\v s\'ak
+%%% input: UTF8, internal TeX: T1Encoding
+%%% Oct.2012 added plainTeX csnames mapping and \setucode definition.
+
+% This is very simple setting of Czech and Slovak alphabet only.
+% User can reset this value and add his own declaration.
+% For more information see cstexman.pdf.
+
+\ifx\mubyte\undefined
+ \errhelp={You has specified \let\enc=u but this works only with encTeX
+ extension of TeX binary. See ftp://math.feld.cvut.cz/pub/olsak/enctex.}
+ \errmessage{The encTeX Feb2003 or later is not detected -- re-encoding is impossible}
+ \endinput \fi
+
+%% TeX input
+\mubyte ^^c1 ^^c3^^81\endmubyte % \'A
+\mubyte ^^e1 ^^c3^^a1\endmubyte % \'a
+\mubyte ^^c9 ^^c3^^89\endmubyte % \'E
+\mubyte ^^e9 ^^c3^^a9\endmubyte % \'e
+\mubyte ^^cd ^^c3^^8d\endmubyte % \'I
+\mubyte ^^ed ^^c3^^ad\endmubyte % \'i
+\mubyte ^^d3 ^^c3^^93\endmubyte % \'O
+\mubyte ^^f3 ^^c3^^b3\endmubyte % \'o
+\mubyte ^^da ^^c3^^9a\endmubyte % \'U
+\mubyte ^^fa ^^c3^^ba\endmubyte % \'u
+\mubyte ^^dd ^^c3^^9d\endmubyte % \'Y
+\mubyte ^^fd ^^c3^^bd\endmubyte % \'y
+\mubyte ^^d4 ^^c3^^94\endmubyte % \^O
+\mubyte ^^f4 ^^c3^^b4\endmubyte % \^o
+\mubyte ^^c4 ^^c3^^84\endmubyte % \"A
+\mubyte ^^e4 ^^c3^^a4\endmubyte % \"a
+\mubyte ^^d6 ^^c3^^96\endmubyte % \"O
+\mubyte ^^f6 ^^c3^^b6\endmubyte % \"o
+\mubyte ^^dc ^^c3^^9c\endmubyte % \"U
+\mubyte ^^fc ^^c3^^bc\endmubyte % \"u
+\mubyte ^^83 ^^c4^^8c\endmubyte % \v C
+\mubyte ^^a3 ^^c4^^8d\endmubyte % \v c
+\mubyte ^^84 ^^c4^^8e\endmubyte % \v D
+\mubyte ^^a4 ^^c4^^8f\endmubyte % \v d
+\mubyte ^^85 ^^c4^^9a\endmubyte % \v E
+\mubyte ^^a5 ^^c4^^9b\endmubyte % \v e
+\mubyte ^^88 ^^c4^^b9\endmubyte % \' L
+\mubyte ^^a8 ^^c4^^ba\endmubyte % \' l
+\mubyte ^^89 ^^c4^^bd\endmubyte % \v L
+\mubyte ^^a9 ^^c4^^be\endmubyte % \v l
+\mubyte ^^8c ^^c5^^87\endmubyte % \v N
+\mubyte ^^ac ^^c5^^88\endmubyte % \v n
+\mubyte ^^90 ^^c5^^98\endmubyte % \v R
+\mubyte ^^b0 ^^c5^^99\endmubyte % \v r
+\mubyte ^^92 ^^c5^^a0\endmubyte % \v S
+\mubyte ^^b2 ^^c5^^a1\endmubyte % \v s
+\mubyte ^^94 ^^c5^^a4\endmubyte % \v T
+\mubyte ^^b4 ^^c5^^a5\endmubyte % \v t
+\mubyte ^^97 ^^c5^^ae\endmubyte % \r U
+\mubyte ^^b7 ^^c5^^af\endmubyte % \r u
+\mubyte ^^9a ^^c5^^bd\endmubyte % \v Z
+\mubyte ^^ba ^^c5^^be\endmubyte % \v z
+\mubyte ^^8f ^^c5^^94\endmubyte % \' R
+\mubyte ^^af ^^c5^^95\endmubyte % \' r
+
+\def\setcsucode #1 #2 #3 #4 #5{} % to skip the data from utf8lat1.tex
+ % and utf8lata.tex
+
+% \setucode re-definition on order to map all T1 slots rawly during \input
+% utf8lat1.tex or utf8lata.tex. This is usable if the text occurres in
+% \upercase and \lowercase arguments.
+
+\def\setucode #1 #2 #3 #4 #5{%
+ \ifx*#4% The character is not provided by T1 encoding, we need to use csname:
+ \expandafter \mubyte \csname#1\endcsname #3\endmubyte
+ \expandafter \ifx \csname#1\endcsname \relax
+ \expandafter \def\csname#1\endcsname{#5}%
+ \fi
+ \else % raw UTF-8 to T1 mapping is possible:
+ \mubyte #4 #3\endmubyte
+ \fi
+}
+
+% There exist some character-like control sequences defined in plainTeX.
+% It seems to be usable to interpret their corresponding UTF-8 codes:
+
+\mubyte \S ^^c2^^a7\endmubyte % section sign
+\mubyte \P ^^c2^^b6\endmubyte % paragraph (pilcrow) sign
+\mubyte \ss ^^c3^^9f\endmubyte % german sharp s
+\mubyte \l ^^c5^^82\endmubyte % l slashed
+\mubyte \L ^^c5^^81\endmubyte % L slashed
+\mubyte \ae ^^c3^^a6\endmubyte % ae ligature
+\mubyte \oe ^^c5^^93\endmubyte % oe ligature
+\mubyte \o ^^c3^^b8\endmubyte % o slash
+\mubyte \AE ^^c3^^86\endmubyte % AE ligature
+\mubyte \OE ^^c5^^92\endmubyte % OE ligature
+\mubyte \O ^^c3^^98\endmubyte % O slash
+\mubyte \i ^^c4^^b1\endmubyte % dotless i
+\mubyte \j ^^c8^^b7\endmubyte % dotless j
+\mubyte \aa ^^c3^^a5\endmubyte % a with ring
+\mubyte \AA ^^c3^^85\endmubyte % A with ring
+\mubyte \copyright ^^c2^^a9\endmubyte % copyright
+\mubyte \dots ^^e2^^80^^a6\endmubyte % ellipsis
+\mubyte \dag ^^e2^^80^^a0\endmubyte % single dagger
+\mubyte \ddag ^^e2^^80^^a1\endmubyte % double dagger
+
+% The character-like control sequences defined in csplain:
+
+\mubyte \clqq ^^e2^^80^^9e\endmubyte % czech left double quote
+\mubyte \crqq ^^e2^^80^^9c\endmubyte % czech right double quote
+\mubyte \flqq ^^c2^^ab\endmubyte % french left (czech right) double guillquote
+\mubyte \frqq ^^c2^^bb\endmubyte % french right (czech left) double quillquote
+\mubyte \promile ^^e2^^80^^b0\endmubyte % per mille sign
+
+\ifx\baseutfencoding\undefined \else \expandafter\endinput\fi
+
+% if the csplain is used, we cannot process this part of the file. May be
+% somebody used it from iniTeX...
+
+\let\baseutfencoding\relax
+
+\global\everyjob=\expandafter{\the\everyjob
+ \message{The utf8->T1 re-encoding of Czech+Slovak alphabet activated by encTeX}}
+
+% Warnings about UTF-8 unknown codes are set by default:
+
+\input utf8unkn
+
+% UTF-8 input / output is active by default:
+
+\mubytein=1 \mubyteout=3 \mubytelog=1
+
+\endinput
+
diff --git a/Master/texmf-dist/tex/csplain/base/ttimes.tex b/Master/texmf-dist/tex/csplain/base/ttimes.tex
deleted file mode 100644
index 009b80f792c..00000000000
--- a/Master/texmf-dist/tex/csplain/base/ttimes.tex
+++ /dev/null
@@ -1,50 +0,0 @@
-% The file ttimes.tex (C) Petr Olsak, 2000
-% This file allows to use the Times fonts family in T1 encoding (*8t).
-% Use (for example): %&csplain -translate-file=il2-t1
-% \input ttimes
-% \chyph
-% at first three lines in your document.
-
-% Warning1: This works only in web2c implementations of TeX and derivatives.
-% Warning2: Use this file fonts only for experimental or special reason. The
-% "\input ctimes" is more natural for csplain.
-% Warning3: The \v t and \v d letters are horrible implemented in 8t metrics!
-
-% The "\rm", "\it", "\tt" and "\bf" will work with the new fonts.
-% Use "\setsimplemath" command to set Times fonts family in very
-% simple math formulas (without greek letters).
-
-\input t1code
-
-\font\tenrm=ptmr8t at 10pt
-\font\tenbf=ptmb8t at 10pt
-\font\tenit=ptmri8t at 10pt
-\font\tentt=pcrr8t at 10pt
-\let\tensl=\tenit
-\tenrm
-\def\setsimplemath{%
- \font\sevenrm ptmr8t at7pt
- \font\fiverm ptmr8t at5pt
- \font\sevenit ptmri8t at7pt
- \font\fiveit ptmri8t at5pt
- \font\sevenbf ptmb8t at7pt
- \font\fivebf ptmb8t at5pt
- \message{\string\setsimplemath\space WARNING:
- Greek symbols may be loss, see Missing char in .log!}
- \textfont0=\tenrm \scriptfont0=\sevenrm \scriptscriptfont0=\fiverm
- \textfont1=\tenit \scriptfont1=\sevenit \scriptscriptfont1=\fiveit
- \textfont\itfam=\tenit \scriptfont\itfam=\sevenit
- \scriptscriptfont\itfam=\fiveit
- \textfont\slfam=\tensl
- \textfont\bffam=\tenbf \scriptfont\bffam=\sevenbf
- \scriptscriptfont\bffam=\fivebf
- \textfont\ttfam=\tentt }
-
-% The \setsimplemath command sets the new family of fonts for math
-% formulas. Cf. the usage of "2" (digit in text mode is in a new font)
-% but $-2$ is in Computer Modern if \setsimplemath is not used.
-% WARNING: The \setsimplemath is usable for very siple math
-% formulas only! It may crash some more complicated formulas because
-% math symbols are still used from Computer Modern and all greek
-% symbols are missing in new fonts.
-
diff --git a/Master/texmf-dist/tex/csplain/base/ucode.tex b/Master/texmf-dist/tex/csplain/base/ucode.tex
new file mode 100644
index 00000000000..c252230528b
--- /dev/null
+++ b/Master/texmf-dist/tex/csplain/base/ucode.tex
@@ -0,0 +1,314 @@
+% File ucode.tex:
+% (0) sets \czech, \slovak to Cork encoded hyphen-pattern numbers,
+% (1) sets \catcode, \l/uccode for characters (code by Cork),
+% (2) defines \csaccents for new behavior of \v, \', etc (code by Cork),
+% (3) defines some \sequences for special cs-fonts characters.
+% (4) redefines character-like macros from plainTeX as \chardef
+% (5) if encTeX with \mubytein>0 is activated reads t1enc-u.tex file
+%
+% Created by Petr Olsak <olsak@math.feld.cvut.cz>, November 2012
+
+\def\tmp#1#2\relax{\def\tmp{#2}}\tmp ^^^^abcd\relax
+\ifx\tmp\empty \else
+ \errhelp={The ucode.tex file expects the TeX engine which work in Unicode
+ internally.}
+ \errmessage{Sorry, the Unicoded TeX engine (like luatex, xetex) is not detected}
+ \endinput \fi
+
+\message{Font encoding set to Unicode.}
+
+\let\unicoded\font % macros can do \ifx\font\unicoded ...\else...\fi
+
+%% (0) \czech, \slovak. You can use \chyph, \shyph after this file is loaded.
+\ifx\czUnicode\undefined
+ \message{WARNING: czech+slovak hyphenation patterns are not loaded in Unicode.}
+\else
+ \csname unicodelangs\endcsname
+\fi
+
+%% (1a) \catcodes:
+\catcode225=11 % a-acute
+\catcode193=11 % A-acute
+\catcode228=11 % a-diaeresis
+\catcode196=11 % A-diaeresis
+\catcode269=11 % c-caron
+\catcode268=11 % C-caron
+\catcode271=11 % d-caron
+\catcode270=11 % D-caron
+\catcode233=11 % e-acute
+\catcode201=11 % E-acute
+\catcode283=11 % e-caron
+\catcode282=11 % E-caron
+\catcode237=11 % i-acute
+\catcode205=11 % I-acute
+\catcode314=11 % l-acute
+\catcode313=11 % L-acute
+\catcode318=11 % l-caron
+\catcode317=11 % L-caron
+\catcode328=11 % n-caron
+\catcode327=11 % N-caron
+\catcode243=11 % o-acute
+\catcode211=11 % O-acute
+\catcode244=11 % o-circumflex
+\catcode212=11 % O-circumflex
+\catcode246=11 % o-diaeresis
+\catcode214=11 % O-diaeresis
+\catcode341=11 % r-acute
+\catcode340=11 % R-acute
+\catcode345=11 % r-caron
+\catcode344=11 % R-caron
+\catcode353=11 % s-caron
+\catcode352=11 % S-caron
+\catcode357=11 % t-caron
+\catcode356=11 % T-caron
+\catcode250=11 % u-acute
+\catcode218=11 % U-acute
+\catcode367=11 % u-ring
+\catcode366=11 % U-ring
+\catcode252=11 % u-diaeresis
+\catcode220=11 % U-diaeresis
+\catcode253=11 % y-acute
+\catcode221=11 % Y-acute
+\catcode382=11 % z-caron
+\catcode381=11 % Z-caron
+
+%% (1b) \lccodes, \uccodes
+\def\tmp #1 #2 {\lccode#1=#1 \lccode#2=#1 \uccode#1=#2 \uccode#2=#2 }
+\tmp 225 193
+\tmp 228 196
+\tmp 269 268
+\tmp 271 270
+\tmp 233 201
+\tmp 283 282
+\tmp 237 205
+\tmp 314 313
+\tmp 318 317
+\tmp 328 327
+\tmp 243 211
+\tmp 244 212
+\tmp 246 214
+\tmp 341 340
+\tmp 345 344
+\tmp 353 352
+\tmp 357 356
+\tmp 250 218
+\tmp 367 366
+\tmp 252 220
+\tmp 253 221
+\tmp 382 381
+
+
+%% (2) \csaccents, \cmaccents
+\def\accentscommands{\string\^,\string\`,\string\',\string\v,\string\",%
+ \string\r,\string\c,\string\~,\string\H,\string\u,%
+ \string\. and \string\k}
+\def\csaccentsmessage{%
+ \message{The \accentscommands\space expands to characters by Unicode.}}
+\ifx\cmaccentsmessage\undefined
+ \def\cmaccentsmessage{%
+ \message{The \accentscommands\space are defined similar as plainTeX.}}
+\fi
+\def\csaccents{\csaccentsmessage
+ \def\^##1{\ifx o##1^^f4\else
+ \ifx O##1^^d4\else
+ \ifx a##1^^e2\else
+ \ifx A##1^^c2\else
+ \ifx e##1^^ea\else
+ \ifx E##1^^ca\else
+ \ifx i##1^^ee\else
+ \ifx I##1^^ce\else
+ \ifx u##1^^fb\else
+ \ifx U##1^^db\else
+ {\accent"005E ##1}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}\let\^^D=\^%
+ \def\`##1{\ifx a##1^^e0\else
+ \ifx A##1^^c0\else
+ \ifx e##1^^e8\else
+ \ifx E##1^^c8\else
+ \ifx i##1^^ec\else
+ \ifx I##1^^cc\else
+ \ifx o##1^^f2\else
+ \ifx O##1^^d2\else
+ \ifx u##1^^f9\else
+ \ifx U##1^^d9\else
+ {\accent"0060 ##1}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
+ \def\'##1{\ifx a##1^^e1\else
+ \ifx e##1^^e9\else
+ \ifx\i##1^^ed\else
+ \ifx i##1^^ed\else
+ \ifx o##1^^f3\else
+ \ifx u##1^^fa\else
+ \ifx y##1^^fd\else
+ \ifx r##1^^^^0155\else
+ \ifx l##1^^^^013a\else
+ \ifx A##1^^c1\else
+ \ifx E##1^^c9\else
+ \ifx I##1^^cd\else
+ \ifx O##1^^d3\else
+ \ifx U##1^^da\else
+ \ifx Y##1^^dd\else
+ \ifx R##1^^^^0154\else
+ \ifx L##1^^^^0139\else
+ \ifx C##1^^^^0106\else
+ \ifx N##1^^^^0143\else
+ \ifx S##1^^^^015a\else
+ \ifx Z##1^^^^0179\else
+ \ifx c##1^^^^0107\else
+ \ifx n##1^^^^0144\else
+ \ifx s##1^^^^015b\else
+ \ifx z##1^^^^017a\else
+ {\accent"00B4 ##1}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
+ \def\v##1{\ifx e##1^^^^011b\else
+ \ifx s##1^^^^0161\else
+ \ifx c##1^^^^010d\else
+ \ifx r##1^^^^0159\else
+ \ifx z##1^^^^017e\else
+ \ifx d##1^^^^010f\else
+ \ifx t##1^^^^0165\else
+ \ifx l##1^^^^013e\else
+ \ifx n##1^^^^0148\else
+ \ifx E##1^^^^011a\else
+ \ifx S##1^^^^0160\else
+ \ifx C##1^^^^010c\else
+ \ifx R##1^^^^0158\else
+ \ifx Z##1^^^^017d\else
+ \ifx D##1^^^^010e\else
+ \ifx T##1^^^^0164\else
+ \ifx L##1^^^^013d\else
+ \ifx N##1^^^^0147\else
+ {\accent"02C7 ##1}%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \fi\fi\fi\fi\fi\fi}\let\^^_=\v%
+ \def\"##1{\ifx a##1^^e4\else
+ \ifx o##1^^f6\else
+ \ifx u##1^^fc\else
+ \ifx A##1^^c4\else
+ \ifx O##1^^d6\else
+ \ifx U##1^^dc\else
+ \ifx Y##1^^^^0178\else
+ \ifx E##1^^cb\else
+ \ifx I##1^^cf\else
+ \ifx y##1^^b8\else
+ \ifx e##1^^eb\else
+ \ifx i##1^^ef\else
+ {\accent"00A8 ##1}\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}%
+ \def\r##1{\ifx u##1^^^^016f\else
+ \ifx U##1^^^^016e\else
+ \ifx A##1^^c5\else
+ \ifx a##1^^e5\else
+ {\accent"00B0 ##1}\fi\fi\fi\fi}%
+ \def\c##1{\ifx C##1^^c7\else
+ \ifx c##1^^e7\else
+ \ifx S##1^^^^015e\else
+ \ifx s##1^^^^015f\else
+ \ifx T##1^^^^0162\else
+ \ifx t##1^^^^0163\else
+ {\char"00B8 ##1}\fi\fi\fi\fi\fi\fi}%
+ \def\~##1{\ifx A##1^^c3\else
+ \ifx N##1^^d1\else
+ \ifx O##1^^d5\else
+ \ifx a##1^^e3\else
+ \ifx n##1^^f1\else
+ \ifx o##1^^f5\else
+ {\accent"007E ##1}\fi\fi\fi\fi\fi\fi}%
+ \def\H##1{\ifx O##1^^^^0150\else
+ \ifx U##1^^^^0170\else
+ \ifx o##1^^^^0151\else
+ \ifx u##1^^^^0171\else
+ {\accent"02DD ##1}\fi\fi\fi\fi}%
+ \def\u##1{\ifx A##1^^^^0102\else
+ \ifx G##1^^^^011e\else
+ \ifx a##1^^^^0103\else
+ \ifx g##1^^^^011f\else
+ {\accent"02D8 ##1}\fi\fi\fi\fi}%
+ \def\=##1{\ifx d##1^^^^0111\else
+ {\accent"00AF ##1}\fi}%
+ \def\.##1{\ifx i##1^^69\else
+ \ifx z##1^^^^017c\else
+ \ifx I##1^^^^0130\else
+ \ifx Z##1^^^^017b\else
+ {\accent"02D9 ##1}\fi\fi\fi\fi}%
+ \def\k##1{\ifx A##1^^^^0104\else
+ \ifx E##1^^^^0118\else
+ \ifx a##1^^^^0105\else
+ \ifx e##1^^^^0119\else
+ {\char"02DB ##1}\fi\fi\fi\fi}%
+ %% for backward compatibility:
+ \def\softd{\v{d}}\def\softt{\v{t}}\def\ou{\r{u}}%
+ \def\softl{\v{l}}\def\softL{\v{L}}}
+\def\cmaccents{\cmaccentsmessage
+ \def\^##1{{\accent94 ##1}}\let\^^D=\^%
+ \def\`##1{{\accent18 ##1}}%
+ \def\'##1{{\accent19 ##1}}%
+ \def\v##1{{\accent20 ##1}}\let\^^_=\v%
+ \def\"##1{{\accent"7F ##1}}%
+ \let\r=\undefined\def\ou{{\accent6u}}}
+
+\ifx\r\undefined \else \csaccents \fi %% re-set \csaccents
+
+%% (3) special \sequences for UNICODEd fonts.
+ %% Czech left a right double qoutes
+\chardef\clqq="201E \sfcode"201E=0
+\chardef\crqq="201C \sfcode"201C=0
+ %% French double quotes
+\chardef\flqq="00AB \sfcode"00AB=0
+\chardef\frqq="00BB \sfcode"00BB=0
+ %% Other characters
+\def\ogonek #1{\setbox0\hbox{#1}\ifdim\ht0=1ex\accent"02DB #1%
+ \else{\ooalign{\unhbox0\crcr\hss\char"02DB}}\fi}
+\chardef\promile="2030
+ %% Alternative \hyphenchar ("je-li" is no "je\hyphenchar li").
+\let\extrahyphenchar=\undefined
+\let\extrahyphens=\undefined
+ %% The czech quotes:
+\def\uv{\bgroup\aftergroup\closequotes\leavevmode
+ \afterassignment\clqq\let\next=}
+\def\closequotes{\unskip\crqq\relax}
+
+%% (4) re-definition character-like macros from plainTeX:
+
+\chardef \S 167
+\chardef \P 182
+\chardef \ss 223
+\chardef \L 321
+\chardef \l 322
+\chardef \ae 230
+\chardef \oe 339
+\chardef \o 248
+\chardef \AE 198
+\chardef \OE 338
+\chardef \O 216
+\chardef \i 305
+\chardef \j 567
+\chardef \aa 229
+\chardef \AA 197
+
+% new characters in T1 encoding:
+
+\chardef \Eth 272
+\chardef \NG 330
+\chardef \Thorn 222
+\chardef \eth 273
+\chardef \ng 331
+\chardef \thorn 254
+\chardef \flq 8249
+\chardef \frq 8250
+\chardef \clq 8218
+\chardef \crq 8219
+\chardef \elqq 8220
+\chardef \erqq 8221
+\chardef \sterling 163
+\let\pound=\sterling
+
+%% (5) reading UTF-8 input encoding from t1enc-u.tex file
+
+\ifx\mubytein\undefined \expandafter \endinput \fi
+\ifnum\mubytein=0 \expandafter \endinput \fi
+
+\input t1enc-u
+
+
+\endinput
+
+