diff options
Diffstat (limited to 'Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf')
-rw-r--r-- | Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf | 158 |
1 files changed, 76 insertions, 82 deletions
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf index e541aa9e4a9..3aee5b7f359 100644 --- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf +++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf @@ -1,65 +1,65 @@ \ProvidesFile{gloss-english.ldf}[polyglossia: module for english] \makeatletter -%TODO change to \selectnormalfontlatin in all ldfs -\def\english@font{\selectfontfamilylatin} +\PolyglossiaSetup{english}{ + hyphennames={english,american,usenglish,USenglish}, + hyphenmins={2,3}, + fontsetup=true, +} -\ifx\l@english\@undefined% - \ifx\l@USenglish\@undefined% - \ifx\l@american\@undefined% - \xpg@nopatterns{English}% - \adddialect\l@english\l@nohyphenation% - \else% - \let\l@english\l@american% - \fi% - \else% - \let\l@english\l@USenglish% - \fi% -\fi -\ifx\l@american\@undefined% - \let\l@american\l@english% -\fi -\ifx\l@british\@undefined% - \ifx\l@UKenglish\@undefined% - \adddialect\l@british\l@english% - \else% - \let\l@british\l@UKenglish% - \fi% -\fi +\newif\if@british@locale +\@british@localefalse +\providebool{@british@hyphen} +\providebool{english@ordinalmonthday} -\def\tmp@us{us} -\def\tmp@usmax{usmax} -\def\tmp@uk{uk} -\def\tmp@british{british} -\def\tmp@american{american} -\def\tmp@australian{australian} -\def\tmp@newzealand{newzealand} -\def\en@variant{english} -\def\english@language{\expandafter\protect\expandafter\language=\csname l@\en@variant\endcsname} +\define@boolkey{english}[english@]{ordinalmonthday}[true]{} -\newif\if@ordinalmonthday - -\define@key{english}{variant}[american]{% - \def\@tmpa{#1}% - \ifx\@tmpa\tmp@uk\def\en@variant{british}\@ordinalmonthdaytrue% - \xpg@info{Option: english variant=british}% - \else\ifx\@tmpa\tmp@british\def\en@variant{british}\@ordinalmonthdaytrue% - \xpg@info{Option: english variant=british}% - \else\ifx\@tmpa\tmp@us\def\en@variant{american}\@ordinalmonthdayfalse% - \xpg@info{Option: english variant=american}% - \else\ifx\@tmpa\tmp@usmax\def\en@variant{usenglishmax}\@ordinalmonthdayfalse% - \xpg@info{Option: english variant=american (with additional patterns)}% - \else\ifx\@tmpa\tmp@australian\def\en@variant{british}\@ordinalmonthdayfalse% - \xpg@info{Option: english variant=australian}% - \else\ifx\@tmpa\tmp@newzealand\def\en@variant{british}\@ordinalmonthdayfalse% - \xpg@info{Option: english variant=newzealand}% - \fi\fi\fi\fi\fi\fi} - -\def\tmp@true{true} -\define@key{english}{ordinalmonthday}[false]{% - \def\@tmpa{#1}% - \ifx\@tmpa\tmp@true\@ordinalmonthdaytrue% - \else\@ordinalmonthdayfalse% - \fi} +%% English is a special case in that \l@english is reserved for US English, so +%% we need to handle it differently +\define@key{english}{variant}{% + %needs to be reset for loop over hyphennames below: + \renewcommand*{\do}[1]{% + \ifcsdef{l@#1}% + {\csletcs{l@english}{l@#1}\listbreak}% + {}% + }% + \ifstrequal{#1}{uk}% + {\@british@localetrue + \xpg@info{Option: english variant=british}}% + {\ifstrequal{#1}{british}% + {\@british@localetrue + \xpg@info{Option: english variant=british}}% + {\ifstrequal{#1}{us}% these patterns are the default so we don't need to reset them + {\@british@hyphenfalse\english@ordinalmonthdayfalse + \xpg@info{Option: english variant=american}}% + {\ifstrequal{#1}{usmax}% + {\@british@hyphenfalse\english@ordinalmonthdayfalse + \setkeys[xpg@setup]{english}{hyphennames={usenglishmax}}% + \xpg@info{Option: english variant=american (with additional patterns)}}% + \ifcsundef{l@usenglishmax}% + {\xpg@warning{No hyphenation patterns were loaded for "US English Max"\MessageBreak + I will use the standard patterns for US English instead}% + \adddialect\l@usenglishmax\l@english\relax}{}% + \gdef\english@language{\language=\l@usenglishmax}}% + {\ifstrequal{#1}{australian}% + {\@british@hyphentrue\english@ordinalmonthdayfalse + \xpg@info{Option: english variant=australian}}% + {\ifstrequal{#1}{newzealand}% + {\@british@hyphentrue\english@ordinalmonthdayfalse + \xpg@info{Option: english variant=newzealand}}% + {\xpg@warning{Unknown English variant `#1'}}% + }}}}% + \if@british@locale\@british@hyphentrue\english@ordinalmonthdaytrue\fi + \if@british@hyphen + \setkeys[xpg@setup]{english}{hyphennames={ukenglish,british,UKenglish}}% + \ifcsundef{l@ukenglish}% + {\xpg@warning{No hyphenation patterns were loaded for British English\MessageBreak + I will use the patterns for US English instead}% + \adddialect\l@ukenglish\l@english\relax}{}% + \gdef\english@language{\language=\l@ukenglish}% + \fi + % and we reset \do to its previous definition here: + \renewcommand*{\do}[1]{\setotherlanguage{#1}}% +} \def\captionsenglish{% \def\prefacename{Preface}% @@ -82,34 +82,28 @@ \def\seename{see}% \def\alsoname{see also}% \def\proofname{Proof}% - } +} \def\dateenglish{% \def\english@day{% - \if@ordinalmonthday% - \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% + \ifenglish@ordinalmonthday + \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 \else\number\day\fi}% + \def\english@month{\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}% \def\today{% - \ifx\en@variant\tmp@british% - \english@day\space% - \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% - \else% - \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\english@day, \number\year% - \fi}% - } - -%\setlocalhyphenmins{english}{2}{3}% this is the default in babel + \if@british@locale + \english@day\space\english@month\space\number\year + \else + \english@month\space\english@day, \number\year + \fi} +} \endinput |