blob: fab2b200e995d038564c62ae80c1f2aed9e27b4c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
% hyconfig.tex
% Hyphenation configuration code
% Updates:
% 02/28/92 language number setting was wrong.
% 03/20/92 allow hyphenation exceptions file (in language.dat) loading.
% 06/23/92 call the appropriate hymltex* file when using MlTeX
% 07/03/92 add \accenthypencodes
% 08/24/92 introduce \l@<language> being the language number
% 08/26/92 suppress absolute font character references normally unneeded
% 03/03/93 add dialect feature via ``='' sign.
% 04/02/93 add \input compatible.tex when \csubinverse undefined.
% 08/19/93 apply \c mods from MJF -- July 14, 92
% 08/20/93 insert space after \input X for NFSS2 (H. Soulard)
% 01/13/94 add \j def for non french languages (noted by R. Lemieux).
% 03/22/94 \LANGUAGESinFORMAT now contains all languages names (proposed
% by Michel Lavaud).
% \input hyphen replaced by \input ushyphen (sugg. of M.Lavaud).
% 05/05/94 \patterns@loaded replace \LANGUAGESinFORMAT as in Babel.
% 08/10/94 \input replaced by \@@input if already defined.
% 10/18/94 Load compatible.tex only outside MlTeX.
% 12/13/94 Allow nothing else than =name in language.dat
% 12/17/94 Let language counter progress when equal sign after first language.
% 12/22/94 Don't load compatible.tex whith 2e any way.
% 03/02/95 " " " " any other format not OT1, this
% was clearly pointed by Thierry Bouche.
% 03/22/95 \encodingdefault may be undefined (as pointed by Loic Prylli).
% 96/09/10 Allow exception file to be blank in language.dat.
% 96/10/29 Messages numbered.
% 96/12/31 TeX 2 no more supported. taking in acount new frhyph.tex, no more
% usage of compatible.tex.
%
\message{languages: patterns and exceptions,}
%%
%% checksum = "05842 98 440 4335"
%%
\ifx\@@input\undefined\let\@@input\input\fi%
\def\@temp{}%
%\let\charsubdef\undefined% for testing purposes only
\ifx\charsubdef\undefined\else\def\@temp{\@@input hymltex3.tex \endinput}\fi
\@temp
%%%%%%%%%%%%%% pure TeX usage
\language=0
% ======== Load Patterns as described in language.dat ======
% (language.dat was introduced by Johannes Braams)
{\newcount\l@nguage\newcount\initl@\newcount\workl@%
% Compatibility with TeX 2: \language count
\ifx\language\let\language\l@nguage\fi
\initl@=\language\l@nguage=\initl@\workl@=\l@nguage
\xdef\patterns@loaded{}% will contain all languages names
\def\@newlanguage[#1]#2{\language=#1%
\workl@=#1\advance\workl@ by -\initl@
\message{-38- The #2 language is used as language number \the\workl@}%
\expandafter\xdef\csname l@#2\endcsname{\the\workl@}% 08/24/92
\xdef\patterns@loaded{\patterns@loaded\space #2}
\expandafter\xdef\csname#2\endcsname{\language=\the\workl@\relax}%2/28/92
\ifx\undefined\defaultlanguage\gdef\defaultlanguage{\csname#2\endcsname}\fi}%
% test if #1 equal ``='' that means same language hyphenation but a dialect.
\edef\test{=}%
\def\@language#1#2 #3 #4/#5{\def\@tempa{=}\def\@tempb{#1}%
\ifx\@tempa\@tempb%
\ifnum\l@nguage > \initl@ \advance\l@nguage by -1\fi%
\@newlanguage[\the\l@nguage]{#2}%
\ifnum\l@nguage \test \initl@ \advance\l@nguage by -1\fi%
\else\edef\test{<}\@l@ngu@ge#1#2 #3 #4/{#5}%
\fi}%
\def\@l@ngu@ge#1 #2 #3/#4{\begingroup\@newlanguage[#4]{#1}%20/3/92 mods
\def\@tempa{#2}
\ifx\@tempa\empty\else\expandafter\@@input#2 \relax\fi%% loading of patterns
\edef\@tempa{#3}\edef\@tempb{\space\space}
\ifx\@tempa\space\else
\ifx\@tempb\@tempa\else\expandafter%
\@@input#3 \relax\fi%% loading of exceptions
\fi%
\ifx\@tempb\@tempa\else\expandafter\@@input#3 \relax\fi%% loading of exceptions
\endgroup}
\newif\if@more\@moretrue
\openin1 = language.dat
\ifeof1\message{-39- Error: file language.dat not found, trying to load %
US-english hyphenation file}\language=0\input ushyphen
\else\advance\l@nguage by -1
\loop \endlinechar=-1 \read1 to \@lineD \endlinechar`\^^M
\ifx\@lineD\empty \else \advance\l@nguage by 1%
\edef\@lineD{\@lineD\space\space/{\the\l@nguage}}%
\expandafter\@language\@lineD
\fi
\ifeof1 \@morefalse \fi
\if@more\repeat
\fi\closein1
}\defaultlanguage% go to the default language (first defined in language.dat)
\endinput
|