diff options
Diffstat (limited to 'Master/texmf-dist/tex/csplain/base/hyphen.lan')
-rw-r--r-- | Master/texmf-dist/tex/csplain/base/hyphen.lan | 591 |
1 files changed, 486 insertions, 105 deletions
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 + + |