diff options
author | Karl Berry <karl@freefriends.org> | 2013-04-08 00:43:40 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-04-08 00:43:40 +0000 |
commit | 824f7b0903de8ad7f6ee3d7656005e4c59155e06 (patch) | |
tree | abfc8673ef9916f3ab7074e811207384c301492b /Master/texmf-dist/tex/context/base/lang-ini.mkiv | |
parent | 689aefb0727676ed3cddf331337b4be226495e72 (diff) |
context import for TL13, from www.pragma-ade.com/context/beta/cont-tmf.zip
git-svn-id: svn://tug.org/texlive/trunk@29731 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/context/base/lang-ini.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/lang-ini.mkiv | 93 |
1 files changed, 73 insertions, 20 deletions
diff --git a/Master/texmf-dist/tex/context/base/lang-ini.mkiv b/Master/texmf-dist/tex/context/base/lang-ini.mkiv index 150b68f702f..3226c1255ce 100644 --- a/Master/texmf-dist/tex/context/base/lang-ini.mkiv +++ b/Master/texmf-dist/tex/context/base/lang-ini.mkiv @@ -174,7 +174,7 @@ \newtoks \everysetuplanguage -\def\installedlanguages{\ctxlua{languages.installed()}} +\def\installedlanguages{\ctxcommand{installedlanguages()}} \unexpanded\def\doiflanguageelse#1% {\ifcsname\??language#1\c!state\endcsname @@ -199,10 +199,10 @@ \lang_basics_install_indeed{#1}{#1}% \getparameters[\??language#1][\c!state=\v!start,#2]}% \edef\currentsetuplanguage{#1}% - \ctxlua{languages.define("#1","\specificlanguageparameter{#1}\s!default")}% + \ctxcommand{definelanguage("#1","\specificlanguageparameter{#1}\s!default")}% \the\everysetuplanguage} {\setvalue{\??languagelinked#1}{#2}% - \ctxlua{languages.synonym("#1","#2")}% + \ctxcommand{setlanguagesynonym("#1","#2")}% \lang_basics_install_indeed{#1}{#2}}} \def\lang_basics_install_indeed#1#2% @@ -215,7 +215,7 @@ \unexpanded\def\doifpatternselse#1% {\begingroup % will change - \language[#1]% + \lang_basics_set_current[#1]% \ifnum\normallanguage>\zerocount \endgroup\expandafter\firstoftwoarguments \else @@ -254,7 +254,7 @@ \lang_basics_synchronize} \appendtoks - \ctxlua{languages.setdirty("\currentsetuplanguage")}% + \ctxcommand{unloadlanguage("\currentsetuplanguage")}% \to \everysetuplanguage \setuplanguage @@ -286,7 +286,8 @@ \c!rightspeech=\languageparameter\c!rightquotation, \c!limittext=\unknown, \c!date={\v!year,\ ,\v!month,\ ,\v!day}, - \c!text=Ag] + \c!text=Ag, + \s!font=] % \v!auto : experimental ! % to be tested: % @@ -361,13 +362,40 @@ )}\relax \the\everylanguage\relax} +\newcount\hyphenminoffset + +\unexpanded\def\lesshyphens + {\advance\hyphenminoffset\plusone + \lang_basics_synchronize_min_max} + +\unexpanded\def\morehyphens + {\ifcase\hyphenminoffset \else + \advance\hyphenminoffset\minusone + \fi + \lang_basics_synchronize_min_max} + +\unexpanded\def\nohyphens % % % % % not clever, we still hyphenate but supress application + {\ifx\dohyphens\relax + \unexpanded\edef\dohyphens + {\hyphenpenalty \the\hyphenpenalty + \exhyphenpenalty\the\exhyphenpenalty + \relax}% + \fi + \hyphenpenalty \plustenthousand + \exhyphenpenalty\plustenthousand} + +\let\dohyphens\relax + +\unexpanded\def\lang_basics_synchronize_min_max + {% these values are stored along with glyph nodes + \lefthyphenmin \numexpr0\languageparameter\s!lefthyphenmin +\hyphenminoffset\relax + \righthyphenmin\numexpr0\languageparameter\s!righthyphenmin+\hyphenminoffset\relax + % these values are stored with the language (global!) + \prehyphenchar \languageparameter\s!righthyphenchar\relax + \posthyphenchar\languageparameter\s!lefthyphenchar \relax} + \appendtoks - % these values are stored along with glyph nodes - \lefthyphenmin \numexpr0\languageparameter\s!lefthyphenmin +\hyphenminoffset\relax - \righthyphenmin\numexpr0\languageparameter\s!righthyphenmin+\hyphenminoffset\relax - % these values are stored with the language (global!) - \prehyphenchar \languageparameter\s!righthyphenchar\relax - \posthyphenchar\languageparameter\s!lefthyphenchar \relax + \lang_basics_synchronize_min_max \to \everylanguage % \appendtoks @@ -394,25 +422,50 @@ % \dorecurse{100}{dit is toch wel een heel\normalhyphendiscretionary lang\normalhyphendiscretionary woord \recurselevel\ } % \dorecurse{100}{dit is toch wel een heellangwoord \recurselevel\ } +% new experimental feature + +\unexpanded\def\setuplanguages + {\setuplanguage[\s!default]} + +% \setuplanguages[\s!font=\v!auto] +% \setuplanguage[\s!default][\s!font=\v!auto] +% \setuplanguage[nl][\s!font=\v!auto] + +\ifdefined\feature \else \let\feature\gobbleoneargument \fi + +\appendtoks + \edef\p_language_font{\languageparameter\s!font}% + \ifx\p_language_font\v!auto + \feature\currentlanguage + \fi +\to \everylanguage + % The following may be a solution for the fact that one cannot % change catcodes of characters like : and ; inside an environment. % we will also permit access by the other names -\unexpanded\def\lang_basics_set_current[#1]% - {\edef\askedlanguage{#1}% - \ifx\askedlanguage\empty \else +%D Fast switcher + +\def\lang_basics_switch_asked + {\ifx\askedlanguage\empty \else \ifcsname\??languagelinked\askedlanguage\endcsname \edef\askedlanguage{\csname\??languagelinked\askedlanguage\endcsname}% \ifx\currentlanguage\askedlanguage \else \setcurrentlanguage\currentmainlanguage\askedlanguage \lang_basics_synchronize \fi - \else - \showmessage\m!languages6{#1}% \fi \fi} +\unexpanded\def\uselanguageparameter#1% + {\edef\askedlanguage{#1\c!language}% + \lang_basics_switch_asked} + +\unexpanded\def\lang_basics_set_current[#1]% + {\edef\askedlanguage{#1}% + \lang_basics_switch_asked} + \unexpanded\def\language {\doifnextoptionalelse\lang_basics_set_current\normallanguage} @@ -570,15 +623,15 @@ \let\stopexceptions\relax \unexpanded\def\startexceptions - {\dosingleempty\dostartexceptions} + {\dosingleempty\lang_basics_start_exceptions} -\def\dostartexceptions[#1]#2\stopexceptions % multilingual or not? +\def\lang_basics_start_exceptions[#1]#2\stopexceptions % multilingual or not? {\begingroup \edef\askedlanguage{\reallanguagetag{#1}}% \ifx\askedlanguage\empty \let\askedlanguage\currentlanguage \fi - \ctxlua{languages.exceptions("\askedlanguage",\!!bs#2\!!es)}% + \ctxcommand{setlanguageexceptions("\askedlanguage",\!!bs#2\!!es)}% \endgroup} %D For the moment here: |