summaryrefslogtreecommitdiff
path: root/tex/context/base/lang-ini.tex
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2004-01-02 00:00:00 +0100
committerHans Hagen <pragma@wxs.nl>2004-01-02 00:00:00 +0100
commit722c56251cf3c197a4a8474aa7024265ba284ec0 (patch)
treef3d28e979790959bc6f2c8ffaa6f2321fabc8bb8 /tex/context/base/lang-ini.tex
parent70b6b86404ca9e9de782a577d1dfda3b15f0544d (diff)
downloadcontext-722c56251cf3c197a4a8474aa7024265ba284ec0.tar.gz
stable 2004.01.02
Diffstat (limited to 'tex/context/base/lang-ini.tex')
-rw-r--r--tex/context/base/lang-ini.tex44
1 files changed, 31 insertions, 13 deletions
diff --git a/tex/context/base/lang-ini.tex b/tex/context/base/lang-ini.tex
index caf6229d7..223531299 100644
--- a/tex/context/base/lang-ini.tex
+++ b/tex/context/base/lang-ini.tex
@@ -206,6 +206,7 @@
%D values are set.
\let\preloadedpatterns\empty
+\let\preloadedpmessage\empty
\def\showpatterns#1%
{\getvalue{\??la#1\s!lefthyphenmin}%
@@ -213,8 +214,8 @@
\getvalue{\??la#1\s!righthyphenmin} }
\def\preloadlanguages
- {\doifsomething\preloadedpatterns
- {\showmessage\m!linguals{10}\preloadedpatterns}}
+ {\doifsomething\preloadedpmessage
+ {\showmessage\m!linguals{10}\preloadedpmessage}}
\let\installedlanguages\empty
@@ -349,13 +350,15 @@
%\def\patterns##1{\message{#1/#2/#3/#4/##1}\normalpatterns{##1}}%
\readsysfile{\truefilename{\f!languageprefix#2.\f!patternsextension}}
{\setxvalue{\??la#1\s!patterns}{#2}%
- \xdef\preloadedpatterns
- {\preloadedpatterns
+ \xdef\preloadedpmessage
+ {\preloadedpmessage
\number\normallanguage:\showpatterns{#2}}%
+ \doglobal\addtocommalist{#2}\preloadedpatterns
\showmessage\m!linguals1{#2,#1,\loadedlanguage}}
{\readsysfile{\f!languageprefix#2.\f!patternsextension}
{\setxvalue{\??la#1\s!patterns}{#2}%
- \xdef\preloadedpatterns{\preloadedpatterns\showpatterns{#2}}%
+ \xdef\preloadedpmessage{\preloadedpmessage\showpatterns{#2}}%
+ \doglobal\addtocommalist{#2}\preloadedpatterns
\showmessage\m!linguals1{#2,#1,\loadedlanguage}}
{\showmessage\m!linguals2{#2,#1,\loadedlanguage}}}%
\readsysfile{\truefilename{\f!languageprefix#2.\f!hyphensextension}}
@@ -370,6 +373,9 @@
\egroup
\increment\loadedlanguage}
+\def\doifpatternselse#1%
+ {\expanded{\doifinsetelse{#1}{\preloadedpatterns}}}
+
%D Since we can only load patterns in ini\TeX, we nil the
%D loading before dumping (which saves a bit of memory, but
%D strangely enough not in the format).
@@ -386,12 +392,24 @@
%D
%D \showsetup{\y!setuplanguage}
-\def\setuplanguage
- {\dodoubleargument\dosetuplanguage}
+% \def\setuplanguage
+% {\dodoubleargument\dosetuplanguage}
+
+% \def\dosetuplanguage[#1][#2]%
+% {\getparameters[\??la#1][#2]%
+% \doif{#1}\currentlanguage\docomplexlanguage}
+
+\unprotected \def\setuplanguage
+ {\dodoubleempty\dosetuplanguage}
-\def\dosetuplanguage[#1][#2]%
- {\getparameters[\??la#1][#2]%
- \doif{#1}\currentlanguage\docomplexlanguage}
+\def\dosetuplanguage[#1][#2]% handy patch for testing
+ {\ifsecondargument
+ \getparameters[\??la#1][#2]%
+ \doif{#1}\currentlanguage\docomplexlanguage
+ \else
+ \getparameters[\??la\currentlanguage][#1]%
+ \docomplexlanguage
+ \fi}
%D The values \type {\c!leftsentence} and \type
%D {\c!rightsentence} can be (and are) used to implement
@@ -464,7 +482,7 @@
\@EAEAEA\firstofoneargument
\else
\donetrue
- \global\@EA\xdef\csname\??la\currentlanguage\s!patterns\endcsname{#2}%
+ \@EA\xdef\csname\??la\currentlanguage\s!patterns\endcsname{#2}%
\normallanguage\csname\??la\??la#1#2\endcsname\relax % \relax is needed for lookahead problems
\@EAEAEA\gobbleoneargument
\fi\fi}
@@ -480,7 +498,7 @@
\@EAEAEA\firstofoneargument
\else
\donetrue
- \global\@EA\xdef\csname\??la\currentlanguage\s!patterns\endcsname{#2}%
+ \@EA\xdef\csname\??la\currentlanguage\s!patterns\endcsname{#2}%
\normallanguage\thenormallanguage\relax % \relax is needed for lookahead problems
\@EAEAEA\gobbleoneargument
\fi
@@ -845,4 +863,4 @@
\appendtoks\showmessage\m!linguals9\currentlanguage\to\everyjob
-\protect \endinput
+\protect \endinput \ No newline at end of file