summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-07-17 23:23:18 +0000
committerKarl Berry <karl@freefriends.org>2010-07-17 23:23:18 +0000
commit306b4622046e852e3a6d1a44b180adc65d5b2bdf (patch)
tree5629332acdda731ff35d5d94593e737b0f95cc20 /Master/texmf-dist/tex
parent59346cd52c590f5aea686f78841e398040656feb (diff)
polyglossia update (17jul10)
git-svn-id: svn://tug.org/texlive/trunk@19504 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/devanagaridigits.sty13
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-albanian.ldf22
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-amharic.ldf45
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-arabic.ldf124
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-armenian.ldf53
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-asturian.ldf35
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasai.ldf38
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasam.ldf64
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-basque.ldf16
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-bengali.ldf78
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-brazil.ldf21
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-breton.ldf25
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-bulgarian.ldf55
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-catalan.ldf20
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-coptic.ldf39
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-croatian.ldf18
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-czech.ldf28
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-danish.ldf29
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-divehi.ldf42
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-dutch.ldf25
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-english.ldf158
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-esperanto.ldf20
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-estonian.ldf28
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-farsi.ldf76
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-finnish.ldf32
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-french.ldf21
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-galician.ldf16
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-german.ldf74
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-greek.ldf433
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-hebrew.ldf67
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-hindi.ldf107
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-icelandic.ldf18
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-interlingua.ldf16
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-irish.ldf15
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-italian.ldf25
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-lao.ldf91
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-latin.ldf28
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-latvian.ldf15
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-lithuanian.ldf111
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-lsorbian.ldf22
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-magyar.ldf472
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-malayalam.ldf54
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-marathi.ldf79
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-norsk.ldf29
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-nynorsk.ldf29
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-occitan.ldf58
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-polish.ldf42
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-portuges.ldf76
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-romanian.ldf21
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-russian.ldf180
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-samin.ldf20
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-sanskrit.ldf156
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-scottish.ldf15
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-serbian.ldf92
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovak.ldf19
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovenian.ldf21
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-spanish.ldf78
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-swedish.ldf77
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-syriac.ldf39
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-tamil.ldf54
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-telugu.ldf57
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-thai.ldf61
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkish.ldf35
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkmen.ldf43
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-ukrainian.ldf54
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-urdu.ldf165
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-usorbian.ldf29
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-vietnamese.ldf84
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/gloss-welsh.ldf74
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/hijrical.sty11
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/polyglossia.sty703
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.aux37
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.log268
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.pdfbin64706 -> 0 bytes
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.tex58
-rw-r--r--Master/texmf-dist/tex/xelatex/polyglossia/xgreek-fixes.def308
76 files changed, 2537 insertions, 3224 deletions
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/devanagaridigits.sty b/Master/texmf-dist/tex/xelatex/polyglossia/devanagaridigits.sty
new file mode 100644
index 00000000000..bbd83f2314c
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/devanagaridigits.sty
@@ -0,0 +1,13 @@
+\ProvidesPackage{devanagaridigits}
+ [2010/04/01 v0.1 %
+ Formatting of Devanagari digits]
+
+\def\devanagaridigits#1{\expandafter\@devanagari@digits #1@}
+\def\@devanagari@digits#1{%
+ \ifx @#1% then terminate
+ \else
+ \ifx0#1०\else\ifx1#1१\else\ifx2#1२\else\ifx3#1३\else\ifx4#1४\else\ifx5#1५\else\ifx6#1६\else\ifx7#1७\else\ifx8#1८\else\ifx9#1९\else#1\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \expandafter\@devanagari@digits
+ \fi
+}
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-albanian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-albanian.ldf
index f77b5ee0417..6185764c00c 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-albanian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-albanian.ldf
@@ -1,10 +1,12 @@
\ProvidesFile{gloss-albanian.ldf}[polyglossia: module for albanian]
\makeatletter
-\def\albanian@font{\selectfontfamilylatin}
-\ifx\l@albanian\@undefined
- \xpg@nopatterns{Albanian}
- \adddialect\l@albanian\l@nohyphenation\fi
+\PolyglossiaSetup{albanian}{
+ hyphennames={albanian},
+ hyphenmins={2,2},
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsalbanian{%
\def\refname{Referencat}%
@@ -36,18 +38,6 @@
Qershor\or Korrik\or Gusht\or Shtator\or Tetor\or Nëntor\or
Dhjetor\fi \space \number\year}}}
-\def\albanian@language{\language=\l@albanian}
-
-\setlocalhyphenmins{albanian}{2}{2}
-
-\def\noextras@albanian{%
- \nofrench@indent%
- }
-
-\def\blockextras@albanian{%
- \french@indent%
- }
-
\endinput
%\def\sh{\mathop{\operator@font sh}\nolimits} % same as \sinh
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-amharic.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-amharic.ldf
index a3939892f1d..7dbc124d9bb 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-amharic.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-amharic.ldf
@@ -1,11 +1,14 @@
-%% RENAME TO gloss-amharic.ldf
\ProvidesFile{gloss-amharic.ldf}[polyglossia: module for amharic]
\makeatletter
-
-\ifx\l@amharic\@undefined%
- %\xpg@nopatterns{Amharic}%
- \adddialect\l@amharic\l@nohyphenation%
-\fi
+\PolyglossiaSetup{amharic}{
+ script=Ethiopic,
+ scripttag=ethi,
+ langtag=AMH,
+ hyphennames={amharic,nohyphenation},
+ %hyphenmins={2,2},
+ fontsetup=true,
+ %TODO localalph=ethnum
+}
\def\captionsamharic{%
\def\refname{የነሥ ጹሁፍ ምንጭ}%
@@ -199,33 +202,3 @@
\ethnum@five%
}
-\def\amharic@font{%
- \@ifundefined{amharicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \@ifundefined{ethiopicfont}{%
- \zf@check@ot@script{ethi}%
- \if@tempswa
- \addfontfeature{Script=Ethiopic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Ethiopic script!^^J
- Please define \string\ethiopicfont\space or \string\amharicfont\space with \string\newfontfamily}%
- \fi
- \zf@check@ot@lang{AMH}%
- \if@tempswa\addfontfeature{Language=Amharic}\fi
- }%
- {\ethiopicfont%
- \zf@check@ot@lang{AMH}%
- \if@tempswa\addfontfeature{Language=Amharic}\fi
- }}%
- {\amharicfont}%
-}
-
-\def\selectnormalfontamharic{%
- \let\normalfont=\amharic@font%
- \def\reset@font{\normalfont}}
-
-\def\amharic@language{\language=\l@amharic}
-
-
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-arabic.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-arabic.ldf
index 71342bb9512..33d849c8e71 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-arabic.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-arabic.ldf
@@ -4,12 +4,16 @@
\RequirePackage{hijrical}
\makeatletter
-\ifx\l@arabic\@undefined
- %\xpg@nopatterns{arabic}%
- \adddialect\l@arabic\l@nohyphenation
-\fi
-
-\def\arabic@RL{\relax}
+\PolyglossiaSetup{arabic}{
+ script=Arabic,
+ direction=RL,
+ langtag=ARA,
+ scripttag=arab,
+ hyphennames={nohyphenation},
+ fontsetup=true
+ %TODO localalph={abjad,abjad}
+ %TODO localnumber=arabicnumber
+}
\newif\ifeastern@numerals
\def\tmp@mashriq{mashriq}
@@ -85,32 +89,32 @@
\arabicgregmonth@default}}
%\Hijritoday is now locale-aware and will format the date with this macro:
-\DefineFormatHijriDate{arabic}{\@ensure@RTL{%
-\arabicnumber{\value{Hijriday}}\space\HijriMonthArabic{\value{Hijrimonth}}\space\arabicnumber{\value{Hijriyear}}}}
+\DefineFormatHijriDate{arabic}{\@ensure@RTL{\arabicnumber{\value{Hijriday}}%
+ \space\HijriMonthArabic{\value{Hijrimonth}}\space\arabicnumber{\value{Hijriyear}}}}
\def\captionsarabic{%
-\def\prefacename{\@ensure@RTL{مدخل}}%
-\def\refname{\@ensure@RTL{المراجع}}
-\def\abstractname{\@ensure@RTL{ملخص}}%
-\def\bibname{\@ensure@RTL{المصادر}}%
-\def\chaptername{\@ensure@RTL{باب}}%
-\def\appendixname{\@ensure@RTL{الملاحق}}%
-\def\contentsname{\@ensure@RTL{المحتويات}}
-%\def\contentsname{\@ensure@RTL{الفهرس}}%
-\def\listfigurename{\@ensure@RTL{قائمة الأشكال}}%
-\def\listtablename{\@ensure@RTL{قائمة الجداول}}%
-\def\indexname{\@ensure@RTL{الفهرس}}%
-\def\figurename{\@ensure@RTL{شكل}}%
-\def\tablename{\@ensure@RTL{جدول}}%
-\def\partname{\@ensure@RTL{القسم}}%
-\def\enclname{\@ensure@RTL{المرفقات}}%<-- Needs translation
-\def\ccname{\@ensure@RTL{نسخة ل‬}}% <<
-\def\headtoname{\@ensure@RTL{إلى}}%<-- Needs translation
-\def\pagename{\@ensure@RTL{صفحة}}%
-\def\seename{\@ensure@RTL{راجع}}%\alefhamza\nun\za\ra
-\def\alsoname{\@ensure@RTL{راجع أيضًا}}%<<\alefhamza\nun\za\ra
-\def\proofname{\@ensure@RTL{برهان}}%
-\def\glossaryname{\@ensure@RTL{قاموس}}%<<
+ \def\prefacename{\@ensure@RTL{مدخل}}%
+ \def\refname{\@ensure@RTL{المراجع}}
+ \def\abstractname{\@ensure@RTL{ملخص}}%
+ \def\bibname{\@ensure@RTL{المصادر}}%
+ \def\chaptername{\@ensure@RTL{باب}}%
+ \def\appendixname{\@ensure@RTL{الملاحق}}%
+ \def\contentsname{\@ensure@RTL{المحتويات}}
+ %\def\contentsname{\@ensure@RTL{الفهرس}}%
+ \def\listfigurename{\@ensure@RTL{قائمة الأشكال}}%
+ \def\listtablename{\@ensure@RTL{قائمة الجداول}}%
+ \def\indexname{\@ensure@RTL{الفهرس}}%
+ \def\figurename{\@ensure@RTL{شكل}}%
+ \def\tablename{\@ensure@RTL{جدول}}%
+ \def\partname{\@ensure@RTL{القسم}}%
+ \def\enclname{\@ensure@RTL{المرفقات}}%<-- Needs translation
+ \def\ccname{\@ensure@RTL{نسخة ل‬}}% <<
+ \def\headtoname{\@ensure@RTL{إلى}}%<-- Needs translation
+ \def\pagename{\@ensure@RTL{صفحة}}%
+ \def\seename{\@ensure@RTL{راجع}}%\alefhamza\nun\za\ra
+ \def\alsoname{\@ensure@RTL{راجع أيضًا}}%<<\alefhamza\nun\za\ra
+ \def\proofname{\@ensure@RTL{برهان}}%
+ \def\glossaryname{\@ensure@RTL{قاموس}}%<<
}
\def\datearabic{%
\def\today{%
@@ -120,7 +124,7 @@
\if@RTL%
\arabicnumber\day\space\@@arabic@month{\month}%
\space\arabicnumber\year%
- \else% in LR environment we format the gregorian date within \textenglish
+ \else% in LR environment we format the gregorian date within \textenglish
\ifcsdef{english@loaded}{\textenglish{\today}}%else US format
{\normalfontlatin\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%
@@ -128,7 +132,6 @@
\fi%
\fi}}
-
\def\arabicnumber#1{%
\ifeastern@numerals
\arabicdigits{\number#1}%
@@ -163,7 +166,7 @@
%maghribi س -> ص ص -> ض ش -> س ض -> ظ ظ -> غ غ -> ش
\def\abj@maghribi@num@ii#1{%
\ifcase#1\or ي\or ك\or ل\or م\or ن%
- \or ص\or ع\or ف\or ض\fi
+ \or ص\or ع\or ف\or ض\fi
\ifnum#1=\z@\abjad@zero\fi\abj@num@i}
\def\abj@maghribi@num@iii#1{%
\ifcase#1\or ق\or ر\or س\or ت\or ث%
@@ -195,61 +198,6 @@
\renewcommand\thefootnote{\protect\number{\c@footnote}}%
}
-\def\arabic@language{\language=\l@arabic}
-
-\def\arabic@font{%
- \@ifundefined{arabicfont}{%
- \rmfamilylatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{arab}%
- \if@tempswa
- \addfontfeature{Script=Arabic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Arabic script!^^J
- Please define \string\arabicfont\space with \string\newfontfamily}%
- \fi}%
- {\arabicfont}%
-}
-\def\arabic@font@sf{%
- \@ifundefined{arabicfontsf}{%
-% \sffamilylatin%
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa%
-% \addfontfeature{Script=Arabic}%
-% \else%
- \arabic@font%
-% \fi%
- }%
- {\arabicfontsf}%
-}
-\def\arabic@font@tt{%
- \@ifundefined{arabicfonttt}{%
-% \ttfamilylatin%
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa%
-% \addfontfeature{Script=Arabic}%
-% \else%
- \arabic@font%
-% \fi%
- }%
- {\arabicfonttt}%
-}
-
-\def\selectnormalfontarabic{%
- %\edef\@tempa{\if\normalfont\sffamily\noexpand\arabic@font@sf\else
- % \if\normalfont\ttfamily\noexpand\arabic@font@tt\else
- % \noexpand\arabic@font\fi\fi}%
- \let\normalfont=\arabic@font%
- \let\rmfamily=\arabic@font%
- \let\sffamily=\arabic@font@sf%
- \let\ttfamily=\arabic@font@tt%
- \def\reset@font{\normalfont}%
- %\expand\@tempa%
- }
-
\def\blockextras@arabic{%
\let\orig@MakeUppercase\MakeUppercase%
\def\MakeUppercase##1{##1}%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-armenian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-armenian.ldf
new file mode 100644
index 00000000000..cde838bcbc6
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-armenian.ldf
@@ -0,0 +1,53 @@
+\ProvidesFile{gloss-armenian.ldf}[polyglossia: module for armenian]
+\makeatletter
+
+\PolyglossiaSetup{armenian}{
+ script=Armenian,
+ scripttag=armn,
+ langtag=HYE,
+ hyphennames={armenian},
+ hyphenmins={2,2},
+ fontsetup=true
+}
+
+%\def\captionsarmenian{%
+% \def\refname{}%
+% \def\abstractname{}%
+% \def\bibname{}%
+% \def\prefacename{}%
+% \def\chaptername{}%
+% \def\appendixname{}%
+% \def\contentsname{}%
+% \def\listfigurename{}%
+% \def\listtablename{}%
+% \def\indexname{}%
+% \def\authorname{}%
+% \def\figurename{}%
+% \def\tablename{}%
+% %\def\thepart{}%
+% \def\partname{}%
+% \def\pagename{}%
+% \def\seename{}%
+% \def\alsoname{}%
+% \def\enclname{}%
+% \def\ccname{}%
+% \def\headtoname{}%
+% \def\proofname{}%
+% \def\glossaryname{}%
+%}
+\def\datearmenian{%
+ \def\today{\ifcase\month\or
+ Յունուար\or
+ Փետրուար\or
+ Մարտ\or
+ Ապրիլ\or
+ Մայիս\or
+ Յունիս\or
+ Յուլիս\or
+ Օգոստոս\or
+ Սեպտեմբեր\or
+ Հոկտեմբեր\or
+ Նոյեմբեր\or
+ Դեկտեմբեր\fi
+ \number\day,\space\number\year}}
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-asturian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-asturian.ldf
index 64e80a042e3..66f543482f8 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-asturian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-asturian.ldf
@@ -3,18 +3,13 @@
%
\ProvidesFile{gloss-asturian.ldf}[polyglossia: module for asturian]
\makeatletter
-\def\asturian@font{\selectfontfamilylatin}
-
-\ifx\l@asturian\@undefined
- \ifx\l@catalan\@undefined%
- \xpg@nopatterns{asturian}
- \adddialect\l@asturian\l@nohyphenation
- \else
- \xpg@warning{No hyphenation patterns were loaded for `asturian'\MessageBreak
- I will use \string\language=\string\l@catalan\space instead}
- \adddialect\l@asturian\l@catalan
- \fi
-\fi
+\PolyglossiaSetup{asturian}{
+ hyphennames={asturian,catalan},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsasturian{%
\def\prefacename{Entamu}%
@@ -46,20 +41,4 @@
d'avientu\fi\space de~\number\year}%
}
-\def\asturian@language{\language=\l@asturian}
-
-\setlocalhyphenmins{asturian}{2}{2}%
-
-\def\noextras@asturian{%
- \nonfrenchspacing%
-}
-
-\def\blockextras@asturian{%
- \frenchspacing%
-}
-
-\def\inlineextras@asturian{%
- \frenchspacing%
-}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasai.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasai.ldf
index da185458156..c49a5a838cc 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasai.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasai.ldf
@@ -1,36 +1,12 @@
\ProvidesFile{gloss-bahasai.ldf}[polyglossia: module for bahasa indonesia]
\RequirePackage{hijrical}
\makeatletter
-\def\bahasai@font{\selectfontfamilylatin}
-\ifx\l@bahasai\@undefined
- \ifx\l@bahasa\@undefined
- \ifx\l@indon\@undefined
- \ifx\l@indonesian\@undefined
- \ifx\l@bahasam\@undefined
- \ifx\l@malay\@undefined
- \ifx\l@meyalu\@undefined
- \xpg@nopatterns{Bahasa Indonesia}
- \adddialect\l@bahasai\l@nohyphenation\relax
- \else
- \let\l@bahasai\l@meyalu
- \fi
- \else
- \let\l@bahasai\l@malay
- \fi
- \else
- \let\l@bahasai\l@bahasam
- \fi
- \else
- \let\l@bahasai\l@indonesian
- \fi
- \else
- \let\l@bahasai\l@indon
- \fi
- \else
- \let\l@bahasai\l@bahasa
- \fi
-\fi
+\PolyglossiaSetup{bahasai}{%
+ language=Bahasa Indonesia,
+ hyphennames={indonesian,indon,bahasai,bahasa,bahasam,malay,melayu},
+ hyphenmins={2,2},
+ fontsetup=true}
\def\captionsbahasai{%
\def\refname{Pustaka}%
@@ -68,8 +44,4 @@
\DefineFormatHijriDate{bahasai}{%
\number\value{Hijriday}\space\hijrimonthbahasai{\value{Hijrimonth}}\space\number\value{Hijriyear}}
-\def\bahasai@language{\language=\l@bahasai}
-
-\setlocalhyphenmins{bahasai}{2}{2}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasam.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasam.ldf
index 678907a74ca..cd816eb24cd 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasam.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bahasam.ldf
@@ -1,49 +1,24 @@
\ProvidesFile{gloss-bahasam.ldf}[polyglossia: module for bahasa melayu]
\RequirePackage{hijrical}
\makeatletter
-\def\bahasam@font{\selectfontfamilylatin}
-
-\ifx\l@malay\@undefined
- \ifx\l@meyalu\@undefined
- \ifx\l@bahasam\@undefined
- \ifx\l@bahasa\@undefined
- \ifx\l@bahasai\@undefined
- \ifx\l@indon\@undefined
- \ifx\l@indonesian\@undefined
- \xpg@nopatterns{Bahasa Melayu}%
- \adddialect\l@malay\l@nohyphenation\relax
- \else
- \let\l@malay\l@indonesian
- \fi
- \else
- \let\l@malay\l@indon
- \fi
- \else
- \let\l@malay\l@bahasai
- \fi
- \else
- \let\l@malay\l@bahasa
- \fi
- \else
- \let\l@malay\l@bahasam
- \fi
- \else
- \let\l@malay\l@meyalu
- \fi
-\fi
+\PolyglossiaSetup{bahasam}{%
+ language=Bahasa Melayu,
+ hyphennames={malay,melayu,bahasam,bahasa,bahasai,indonesian,indon},
+ hyphenmins={2,2},
+ fontsetup=true}
\def\captionsbahasam{%
- \def\refname{Pustaka}%
- \def\abstractname{Ringkasan}%
+ \def\refname{Rujukan}%
+ \def\abstractname{Abstrak}%
\def\bibname{Bibliografi}%
\def\prefacename{Pendahuluan}%
\def\chaptername{Bab}%
\def\appendixname{Lampiran}%
\def\contentsname{Kandungan}%
- \def\listfigurename{Senarai Gambar}%
+ \def\listfigurename{Senarai Rajah}%
\def\listtablename{Senarai Jadual}%
\def\indexname{Indeks}%
- \def\figurename{Gambar}%
+ \def\figurename{Rajah}%
\def\tablename{Jadual}%
\def\thepart{}%
\def\partname{Bahagian}%
@@ -51,14 +26,23 @@
\def\seename{lihat}%
\def\alsoname{lihat juga}%
\def\enclname{Lampiran}%
- \def\ccname{cc}%
+ \def\ccname{salinan kpd}%
\def\headtoname{Kepada}%
\def\proofname{Bukti}%
- \def\glossaryname{Istilah}%
+ \def\glossaryname{Senarai Istilah}%
}
\def\datebahasam{%
- \def\today{\number\day~\ifcase\month\or
- Januari\or Pebruari\or Mac\or April\or Mei\or Jun\or
+ \def\bahasam@day{%
+ \ifcase\day\or%
+ 1hb\or 2hb\or 3hb\or 4hb\or 5hb\or%
+ 6hb\or 7hb\or 8hb\or 9hb\or 10hb\or%
+ 11hb\or 12hb\or 13hb\or 14hb\or 15hb\or%
+ 16hb\or 17hb\or 18hb\or 19hb\or 20hb\or%
+ 21hb\or 22hb\or 23hb\or 24hb\or 25hb\or%
+ 26hb\or 27hb\or 28hb\or 29hb\or 30hb\or%
+ 31hb\fi}%
+ \def\today{\bahasam@day~\ifcase\month\or
+ Januari\or Februari\or Mac\or April\or Mei\or Jun\or
Julai\or Ogos\or September\or Oktober\or November\or Disember\fi
\space \number\year}}
@@ -68,8 +52,4 @@
\DefineFormatHijriDate{bahasam}{%
\number\value{Hijriday}\space\hijrimonthbahasam{\value{Hijrimonth}}\space\number\value{Hijriyear}}
-\def\bahasam@language{\language=\l@malay}
-
-\setlocalhyphenmins{bahasam}{2}{2}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-basque.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-basque.ldf
index 79bd0a0d6d6..67376b9e588 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-basque.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-basque.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-basque.ldf}[polyglossia: module for basque]
\makeatletter
-\def\basque@font{\selectfontfamilylatin}
-
-\ifx\l@basque\@undefined%
- \xpg@nopatterns{Basque}%
- \adddialect\l@basque\l@nohyphenation%
-\fi
+\PolyglossiaSetup{basque}{
+ hyphennames={basque},
+ hyphenmins={2,2},
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsbasque{%
\def\refname{Erreferentziak}%
@@ -38,8 +38,4 @@
irailaren\or urriaren\or azaroaren\or
abenduaren\fi~\number\day}}
-\def\basque@language{\language=\l@basque}
-
-\setlocalhyphenmins{basque}{2}{2}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bengali.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bengali.ldf
new file mode 100644
index 00000000000..6257c56c005
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bengali.ldf
@@ -0,0 +1,78 @@
+% Translations provided by সাজেদুর রহিম জোয়ারদার <toshazed@gmail.com>
+% TODO implement Bengali calendar
+
+\ProvidesFile{gloss-bengali.ldf}[polyglossia: module for bengali]
+\RequirePackage{devanagaridigits}
+\makeatletter
+
+\PolyglossiaSetup{bengali}{
+ script=Bengali,
+ scripttag=beng,
+ langtag=BEN,
+ hyphennames={bengali},
+ hyphenmins={2,2},%CHECK
+ fontsetup=true,
+ %TODO nouppercase=true,
+ %TODO localnumber=bengalinumber
+}
+
+\def\tmp@western{Western}
+\newif\ifbengali@devanagari@numerals
+\bengali@devanagari@numeralstrue
+
+\define@key{bengali}{numerals}[Devanagari]{%
+ \def\@tmpa{#1}%
+ \ifx\@tmpa\tmp@western
+ \bengali@devanagari@numeralsfalse
+ \fi}
+
+\def\captionsbengali{%
+ \def\refname{তথ্যসুত্রসমূহ}%
+ \def\abstractname{সারসংক্ষেপ}%
+ \def\bibname{তথ্যবিবরণ}%
+ \def\prefacename{পূর্বকথা}%
+ \def\chaptername{অধ্যায়}%
+ \def\appendixname{পরিশিষ্ট}%
+ \def\contentsname{সূচীপত্র}%
+ \def\listfigurename{ছবি/নকশা সমূহের তালিকা}%
+ \def\listtablename{তালিকাসারণী}%
+ \def\indexname{সূচক/নির্দেশক}%
+ \def\figurename{ছবি/নকশা}%
+ \def\tablename{সারনী}%
+ %\def\thepart{}% TODO
+ \def\partname{খন্ড}%
+ \def\pagename{পৃষ্ঠা}%
+ \def\seename{দেখুন}%
+ \def\alsoname{আরও দেখুন}%
+ \def\enclname{সংযুক্তি}%
+ \def\ccname{অনুলিপি}%
+ \def\headtoname{প্রতি}%
+ \def\proofname{প্রমাণ}%
+ \def\glossaryname{পরিভাষার শব্দসম্ভার}%
+}
+\def\datebengali{%
+ \def\bengalimonth{%
+ \ifcase\month\or
+ জানুয়ারী\or
+ ফেব্রুয়ারী\or
+ মার্চ\or
+ এপ্রিল\or
+ মে\or
+ জুন\or
+ জুলাই\or
+ আগষ্ট\or
+ সেপ্টেম্বর\or
+ অক্টোবর\or
+ নভেম্বর\or
+ ডিসেম্বর\fi}%
+ \def\today{\bengalinumber\day\space\bengalimonth\space\bengalinumber\year}%
+}
+
+\def\bengalinumber#1{%
+ \ifbengali@devanagari@numerals
+ \devanagaridigits{\number#1}%
+ \else
+ \number#1%
+ \fi}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-brazil.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-brazil.ldf
index db169da6bbc..7d83a441d7c 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-brazil.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-brazil.ldf
@@ -1,16 +1,11 @@
\ProvidesFile{gloss-brazil.ldf}[polyglossia: module for portuguese]
\makeatletter
-\def\brazil@font{\selectfontfamilylatin}
-
-%FIXME check this:
-\ifx\l@brazil\@undefined
- \ifx\l@portuguese\@undefined
- \xpg@nopatterns{Brazilian Portuguese}
- \adddialect\l@brazil\l@nohyphenation
- \else
- \let\l@brazil\l@portuguese
- \fi
-\fi
+\PolyglossiaSetup{brazil}{
+ language=Brazilian Portuguese,
+ hyphennames={brazil,portuguese,portuges},
+ hyphenmins={2,3},
+ fontsetup=true,
+}
\def\captionsbrazil{%
\def\refname{Referências}%
@@ -43,8 +38,4 @@
\fi\space de\space\number\year}%
}
-\def\brazil@language{\language=\l@brazil}
-
-\setlocalhyphenmins{brazil}{2}{3}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-breton.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-breton.ldf
index 9a7c507ce60..de8c7b4822d 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-breton.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-breton.ldf
@@ -1,11 +1,12 @@
\ProvidesFile{gloss-breton.ldf}[polyglossia: module for breton]
\makeatletter
-\def\breton@font{\selectfontfamilylatin}
-
-\ifx\l@breton\@undefined%
- \xpg@nopatterns{Breton}%
- \adddialect\l@breton\l@nohyphenation%
-\fi
+\PolyglossiaSetup{breton}{
+ hyphennames={breton},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
\newXeTeXintercharclass\breton@punctthin % ! ? ;
\newXeTeXintercharclass\breton@punctthick % :
@@ -14,7 +15,6 @@
\def\breton@punctthickspace{{\unskip\nobreakspace}}
\def\breton@punctuation{%
- \frenchspacing%
\XeTeXinterchartokenstate=1%
\XeTeXcharclass `\! \breton@punctthin
\XeTeXcharclass `\? \breton@punctthin
@@ -22,10 +22,13 @@
\XeTeXcharclass `\: \breton@punctthick
\XeTeXinterchartoks \z@ \breton@punctthin = \breton@punctthinspace
\XeTeXinterchartoks \z@ \breton@punctthick = \breton@punctthickspace
- }
+}
\def\nobreton@punctuation{%
- \nonfrenchspacing%
+ \XeTeXcharclass `\! \z@
+ \XeTeXcharclass `\? \z@
+ \XeTeXcharclass `\; \z@
+ \XeTeXcharclass `\: \z@
\XeTeXinterchartokenstate=0%
}
@@ -61,10 +64,6 @@
Gouere\or Eost\or Gwengolo\or Here\or Du\or Kerzu\fi
\space\number\year}}
-\def\breton@language{\language=\l@breton}
-
-\setlocalhyphenmins{breton}{2}{2}
-
\def\noextras@breton{%
\nobreton@punctuation%
}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bulgarian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bulgarian.ldf
index 5d7a8d9fc2d..af105ba28c8 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bulgarian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-bulgarian.ldf
@@ -1,10 +1,15 @@
\ProvidesFile{gloss-bulgarian.ldf}[polyglossia: module for bulgarian]
\makeatletter
-
-\ifx\l@bulgarian\@undefined%
- \xpg@nopatterns{Bulgarian}%
- \adddialect\l@bulgarian\l@nohyphenation%
-\fi
+\PolyglossiaSetup{bulgarian}{
+ script=Cyrillic,
+ scripttag=cyrl,
+ langtag=BGR,
+ hyphennames={bulgarian},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup
+ %TODO localalph=bulgarian@alph
+}
\def\bulgarian@Alph#1{%
\ifcase#1\or
@@ -79,46 +84,6 @@
\def\todayRoman{\number\day.\,\month@Roman.\,\number\year~г.}%
}
-\def\bulgarian@language{\language=\l@bulgarian}
-
-\def\bulgarian@font{%
- \@ifundefined{bulgarianfont}{%
- \@ifundefined{cyrillicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{cyrl}%
- \if@tempswa
- \addfontfeature{Script=Cyrillic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Cyrillic script!^^J
- Please define \string\cyrillicfont\space or \string\bulgarianfont\space with \string\newfontfamily}%
- \fi
- \zf@check@ot@lang{BGR}%
- \if@tempswa\addfontfeature{Language=Bulgarian}\fi
- }%
- {\cyrillicfont%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{BGR}%
- \if@tempswa\addfontfeature{Language=Bulgarian}\fi
- }}%
- {\bulgarianfont}%
-}
-
-\setlocalhyphenmins{bulgarian}{2}{2}%
-
-\def\noextras@bulgarian{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@bulgarian{%
- \frenchspacing%
- }
-
-\def\inlineextras@bulgarian{%
- \frenchspacing%
- }
-
\endinput
%% TODO?
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-catalan.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-catalan.ldf
index acc0c27e759..12403863d84 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-catalan.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-catalan.ldf
@@ -1,11 +1,12 @@
\ProvidesFile{gloss-catalan.ldf}[polyglossia: module for catalan]
\makeatletter
-\def\catalan@font{\selectfontfamilylatin}
-
-\ifx\l@catalan\@undefined%
- \xpg@nopatterns{Catalan}%
- \adddialect\l@catalan\l@nohyphenation%
-\fi
+\PolyglossiaSetup{catalan}{
+ hyphennames={catalan},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
\define@boolkey{catalan}[catalan@]{babelshorthands}[true]{}
\ifsystem@babelshorthands
@@ -114,22 +115,15 @@
de novembre\or de desembre\fi
\space de~\number\year}}
-\def\catalan@language{\language=\l@catalan}
-
-\setlocalhyphenmins{catalan}{2}{2}
-
\def\noextras@catalan{%
- \nonfrenchspacing%
\nocatalan@shorthands%
}
\def\blockextras@catalan{%
- \frenchspacing%
\ifcatalan@babelshorthands\catalan@shorthands\fi%
}
\def\inlineextras@catalan{%
- \frenchspacing%
\ifcatalan@babelshorthands\catalan@shorthands\fi%
}
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-coptic.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-coptic.ldf
index b7432608fe3..5b548011860 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-coptic.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-coptic.ldf
@@ -1,10 +1,14 @@
\ProvidesFile{gloss-coptic.ldf}[polyglossia: module for coptic]
\makeatletter
-
-\ifx\l@coptic\@undefined%
- \xpg@nopatterns{Coptic}%
- \adddialect\l@coptic\l@nohyphenation%
-\fi
+\PolyglossiaSetup{coptic}{
+ script=Coptic,
+ direction=RL,
+ scripttag=copt,
+ langtag=COP,
+ hyphennames={coptic},
+ hyphenmins={2,2},
+ fontsetup=true
+}
%\def\captionscoptic{%
% \def\refname{<++>}%
@@ -34,29 +38,4 @@
% \def\today{<++>}%
% }
-\def\coptic@language{\language=\l@coptic}
-
-\def\coptic@font{%
- \@ifundefined{copticfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{copt}%
- \if@tempswa
- \addfontfeature{Script=Coptic}%
- \zf@check@ot@lang{COP}%
- \if@tempswa\addfontfeature{Language=Coptic}\fi
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Coptic script!^^J
- Please define \string\copticfont\space with \string\newfontfamily}%
- \fi}%
- {\copticfont}%
-}
-
-\def\selectnormalfontcoptic{%
- \let\normalfont=\coptic@font%
- \def\reset@font{\normalfont}}
-
-\setlocalhyphenmins{coptic}{2}{2}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-croatian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-croatian.ldf
index 7aa548ee6e6..f875f7475dd 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-croatian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-croatian.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-croatian.ldf}[polyglossia: module for croatian]
\makeatletter
-\def\croatian@font{\selectfontfamilylatin}
-
-\ifx\l@croatian\@undefined%
- \xpg@nopatterns{Croatian}%
- \adddialect\l@croatian\l@nohyphenation%
-\fi
+\PolyglossiaSetup{croatian}{
+ hyphennames={croatian},
+ hyphenmins={2,2},
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionscroatian{%
\def\refname{Literatura}%
@@ -20,7 +20,7 @@
\def\indexname{Indeks}%
\def\figurename{Slika}%
\def\tablename{Tablica}%
- \def\partname{Deo}% <<< CHECK (taken from Serbian)
+ \def\partname{Dio}%
\def\pagename{Stranica}%
\def\seename{Vidjeti}%
\def\alsoname{Vidjeti i}%
@@ -36,8 +36,4 @@
lipnja\or srpnja\or kolovoza\or rujna\or listopada\or studenog\or
prosinca\fi \space \number\year.}}
-\def\croatian@language{\language=\l@croatian}
-
-\setlocalhyphenmins{croatian}{2}{2}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-czech.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-czech.ldf
index a0556a180b5..d7921eee35a 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-czech.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-czech.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-czech.ldf}[polyglossia: module for czech]
\makeatletter
-\def\czech@font{\selectfontfamilylatin}
-
-\ifx\l@czech\@undefined%
- \xpg@nopatterns{Czech}%
- \adddialect\l@czech\l@nohyphenation%
-\fi
+\PolyglossiaSetup{czech}{
+ hyphennames={czech},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsczech{%
\def\refname{Reference}%
@@ -38,20 +38,4 @@
října\or listopadu\or prosince\fi
\space \number\year}}
-\def\czech@language{\language=\l@czech}
-
-\setlocalhyphenmins{czech}{2}{2}%
-
-\def\noextras@czech{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@czech{%
- \frenchspacing%
- }
-
-\def\inlineextras@czech{%
- \frenchspacing%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-danish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-danish.ldf
index 9808698580d..e730b4e1566 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-danish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-danish.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-danish.ldf}[polyglossia: module for danish]
\makeatletter
-\def\danish@font{\selectfontfamilylatin}
-
-\ifx\l@danish\@undefined
- \xpg@nopatterns{Danish}
- \adddialect\l@danish\l@nohyphenation
-\fi
+\PolyglossiaSetup{danish}{
+ hyphennames={danish},
+ hyphenmins={2,3},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsdanish{%
\def\prefacename{Forord}%
@@ -34,21 +34,4 @@
juli\or august\or september\or oktober\or november\or december\fi
\space\number\year}
-\def\danish@language{%
- \language=\l@danish}
-
-\setlocalhyphenmins{danish}{2}{3}%
-
-\def\noextras@danish{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@danish{%
- \frenchspacing%
- }
-
-\def\inlineextras@danish{%
- \frenchspacing%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-divehi.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-divehi.ldf
index e9baf9ca961..c8441b30f9b 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-divehi.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-divehi.ldf
@@ -1,13 +1,13 @@
\ProvidesFile{gloss-divehi.ldf}[polyglossia: module for divehi]
\RequirePackage{bidi}
\makeatletter
-
-\ifx\l@divehi\@undefined%
- %\xpg@nopatterns{Divehi}%
- \adddialect\l@divehi\l@nohyphenation%
-\fi
-
-\def\divehi@RL{\relax}
+\PolyglossiaSetup{divehi}{
+ script=Thaana,
+ scripttag=thaa,
+ direction=RL,
+ hyphennames={nohyphenation},
+ fontsetup=true
+}
%\def\captionsdivehi{%
% \def\refname{<++>}%
@@ -35,34 +35,6 @@
% }
%\def\datedivehi{\def\today{<++>}}
-\def\divehi@language{\language=\l@divehi}
-
-\def\divehi@font{%
- \@ifundefined{divehifont}{%
- \@ifundefined{thaanafont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{thaa}%
- \if@tempswa
- \addfontfeature{Script=Thaana}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Thaana script!^^J
- Please define \string\thaanafont\space or \string\divehifont\space with \string\newfontfamily}%
- \fi
- }%
- {\thaanafont}}%
- {\divehifont}%
-}
-
-\def\selectnormalfontdivehi{%
- \let\normalfont=\divehi@font%
- \let\rmfamily=\divehi@font%
- % TODO add setup to define Sans and Mono fonts if desired
- \let\sffamily=\divehi@font%
- \let\ttfamily=\divehi@font%
- \def\reset@font{\normalfont}}
-
\def\blockextras@divehi{%
\let\@@MakeUppercase\MakeUppercase%
\def\MakeUppercase##1{##1}%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-dutch.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-dutch.ldf
index b7f6e37650b..64a29f2b0a8 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-dutch.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-dutch.ldf
@@ -1,18 +1,10 @@
\ProvidesFile{gloss-dutch.ldf}[polyglossia: module for dutch]
\makeatletter
-\def\dutch@font{\selectfontfamilylatin}
-
-\ifx\l@dutch\@undefined
- \xpg@nopatterns{Dutch}
- \adddialect\l@dutch\l@nohyphenation
-\fi
-
-\def\dutch@punctuation{%
- \frenchspacing%
-}
-
-\def\nodutch@punctuation{%
- \nonfrenchspacing%
+\PolyglossiaSetup{dutch}{
+ hyphennames={dutch},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
}
\define@boolkey{dutch}[dutch@]{babelshorthands}[true]{}
@@ -74,22 +66,15 @@
december\fi
\space \number\year}}
-\def\dutch@language{\language=\l@dutch}
-
-\setlocalhyphenmins{dutch}{2}{2}%
-
\def\noextras@dutch{%
- \nodutch@punctuation%
\nodutch@shorthands%
}
\def\blockextras@dutch{%
- \dutch@punctuation%
\ifdutch@babelshorthands\dutch@shorthands\fi%
}
\def\inlineextras@dutch{%
- \dutch@punctuation%
\ifdutch@babelshorthands\dutch@shorthands\fi%
}
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
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-esperanto.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-esperanto.ldf
index c95f6029e49..5f4bac7ee32 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-esperanto.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-esperanto.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-esperanto.ldf}[polyglossia: module for esperanto]
\makeatletter
-\def\esperanto@font{\selectfontfamilylatin}
-
-\ifx\l@esperanto\@undefined%
- \xpg@nopatterns{Esperanto}%
- \adddialect\l@esperanto\l@nohyphenation%
-\fi
+\PolyglossiaSetup{esperanto}{
+ hyphennames={esperanto},
+ hyphenmins={2,2},
+ fontsetup=true,
+ %TODO localalph={esperanto@alph,esperanto@Alph}
+}
\def\captionsesperanto{%
\def\refname{Citaĵoj}%
@@ -52,8 +52,8 @@
P\or R\or S\or Ŝ\or T\or U\or Ŭ\or V\or Z\else\xpg@ill@value{#1}{esperanto@Alph}\fi}%
\def\esperanto@numbers{%
- \let\latin@Alph\@Alph%
- \let\latin@alph\@alph%
+ \let\latin@Alph\@Alph%
+ \let\latin@alph\@alph%
\let\@Alph\esperanto@Alph%
\let\@alph\esperanto@alph%
}
@@ -63,8 +63,4 @@
\let\@alph\latin@alph%
}
-\def\esperanto@language{\language=\l@esperanto}
-
-\setlocalhyphenmins{esperanto}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-estonian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-estonian.ldf
index daf6acf9f5f..eb053d13eb7 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-estonian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-estonian.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-estonian.ldf}[polyglossia: module for estonian]
\makeatletter
-\def\estonian@font{\selectfontfamilylatin}
-
-\ifx\l@estonian\@undefined%
- \xpg@nopatterns{Estonian}%
- \adddialect\l@estonian\l@nohyphenation%
-\fi
+\PolyglossiaSetup{estonian}{
+ hyphennames={estonian},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsestonian{%
\def\refname{Viited}%
@@ -37,20 +37,4 @@
juuli\or august\or september\or oktoober\or november\or
detsember\fi\space\number\year.\space a.}}
-\def\estonian@language{\language=\l@estonian}
-
-\setlocalhyphenmins{estonian}{2}{2}%
-
-\def\noextras@estonian{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@estonian{%
- \frenchspacing%
- }
-
-\def\inlineextras@estonian{%
- \frenchspacing%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-farsi.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-farsi.ldf
index 6ef01edb1df..d8c69f947fe 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-farsi.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-farsi.ldf
@@ -4,13 +4,14 @@
\RequirePackage{farsical}
\RequirePackage{hijrical}
\makeatletter
-
-\ifx\l@farsi\@undefined
- %\xpg@nopatterns{Farsi}%
- \adddialect\l@farsi\l@nohyphenation
-\fi
-
-\def\farsi@RL{\relax}
+\PolyglossiaSetup{farsi}{
+ script=Arabic,
+ direction=RL,
+ scripttag=arab,
+ langtag=FAR,
+ hyphennames={nohyphenation},
+ fontsetup=true
+}
\newif\if@western@numerals
\def\tmp@western{western}
@@ -115,66 +116,6 @@
\renewcommand\thefootnote{\protect\number{\c@footnote}}%
}
-\def\farsi@language{\language=\l@farsi}
-
-\def\farsi@font{%
- \@ifundefined{farsifont}{%
- \@ifundefined{arabicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{arab}%
- \if@tempswa
- \addfontfeature{Script=Arabic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Arabic script!^^J
- Please define \string\arabicfont\space or \string\farsifont\space with \newfontfamily}%
- \fi
- \zf@check@ot@lang{FAR}%
- \if@tempswa\addfontfeature{Language=Farsi}\fi}%
- {\arabicfont%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{FAR}%
- \if@tempswa\addfontfeature{Language=Farsi}\fi}%
- }%
- {\farsifont}%
-}
-
-% TODO add setup to define Sans and Mono Arabic fonts if desired
-\def\farsi@font@sf{%
- \@ifundefined{farsifontsf}{%
-% \sffamily% FIXME
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa
-% \addfontfeature{Script=Arabic}%
-% \else
- \farsi@font%
-% \fi
- }%
- {\farsifontsf}%
-}
-\def\farsi@font@tt{%
- \@ifundefined{farsifonttt}{%
-% \ttfamily% FIXME
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa
-% \addfontfeature{Script=Arabic}%
-% \else
- \farsi@font%
-% \fi
- }%
- {\farsifonttt}%
-}
-
-\def\selectnormalfontfarsi{%
- \let\normalfont=\farsi@font%
- \let\rmfamily=\farsi@font%
- \let\sffamily=\farsi@font@sf%
- \let\ttfamily=\farsi@font@tt%
- \def\reset@font{\normalfont}}
-
\def\blockextras@farsi{%
\let\@@MakeUppercase\MakeUppercase%
\def\MakeUppercase##1{##1}%
@@ -183,4 +124,3 @@
\let\MakeUppercase\@@MakeUppercase%
}
\endinput
-
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-finnish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-finnish.ldf
index 5da03045ae7..b2f0ec57f0f 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-finnish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-finnish.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-finnish.ldf}[polyglossia: module for finnish]
\makeatletter
-\def\finnish@font{\selectfontfamilylatin}
-
-\ifx\l@finnish\@undefined%
- \xpg@nopatterns{Finnish}%
- \adddialect\l@finnish\l@nohyphenation%
-\fi
+\PolyglossiaSetup{finnish}{
+ hyphennames={finnish},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsfinnish{%
\def\refname{Viitteet}%
@@ -38,26 +38,10 @@
syyskuuta\or lokakuuta\or marraskuuta\or joulukuuta\fi
\space\number\year}}
-\def\finnish@language{\language=\l@finnish}
-
-\setlocalhyphenmins{finnish}{2}{2}%
-
-\def\noextras@finnish{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@finnish{%
- \frenchspacing%
- }
-
-\def\inlineextras@finnish{%
- \frenchspacing%
- }
-
\endinput
-% TODO ?
-\addto\extrasfinnish{%
+% TODO ? this is set in babel:
+\gappto\blockextrasfinnish{%
\babel@savevariable\hyphenpenalty\hyphenpenalty=30%
\babel@savevariable\exhyphenpenalty\exhyphenpenalty=30%
\babel@savevariable\doublehyphendemerits\doublehyphendemerits=5000%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-french.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-french.ldf
index 9f5aef3c8a7..c734a066ca8 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-french.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-french.ldf
@@ -1,11 +1,14 @@
\ProvidesFile{gloss-french.ldf}[polyglossia: module for french]
\makeatletter
-\def\french@font{\selectfontfamilylatin}
-\ifx\l@french\@undefined%
- \xpg@nopatterns{French}%
- \adddialect\l@french\l@nohyphenation%
-\fi
+\PolyglossiaSetup{french}{%
+ language=French,
+ script=Latin,
+ hyphennames={french,francais},
+ frenchspacing=true,
+ indentfirst=true,
+ hyphenmins={2,2},
+ fontsetup=true}
\newXeTeXintercharclass\french@punctthin % ! ? ; et autres
\newXeTeXintercharclass\french@punctthick % :
@@ -16,7 +19,6 @@
\def\xpg@nospace#1{#1}
\def\french@punctuation{%
- \frenchspacing
\lccode"2019="2019
\XeTeXinterchartokenstate=1
\XeTeXcharclass `\! \french@punctthin
@@ -47,7 +49,6 @@
}
\def\nofrench@punctuation{%
- \nonfrenchspacing
\lccode"2019=\z@
\XeTeXcharclass `\! \z@
\XeTeXcharclass `\? \z@
@@ -103,18 +104,12 @@
décembre\fi
\space \number\year}}
-\def\french@language{\language=\l@french}
-
-\setlocalhyphenmins{french}{2}{2}%
-
\def\noextras@french{%
\nofrench@punctuation%
- \nofrench@indent%
}
\def\blockextras@french{%
\french@punctuation%
- \french@indent%
}
\def\inlineextras@french{%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-galician.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-galician.ldf
index 38c921c1a4f..3a26e926672 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-galician.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-galician.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-galician.ldf}[polyglossia: module for galician]
\makeatletter
-\def\galician@font{\selectfontfamilylatin}
-
-\ifx\l@galician\@undefined%
- \xpg@nopatterns{Galician}%
- \adddialect\l@galician\l@nohyphenation%
-\fi
+\PolyglossiaSetup{galician}{
+ hyphennames={galician},
+ hyphenmins={2,2},
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsgalician{%
\def\refname{Referencias}%
@@ -37,8 +37,4 @@
xullo\or agosto\or setembro\or outubro\or novembro\or decembro\fi
\space de~\number\year}}
-\def\galician@language{\language=\l@galician}
-
-\setlocalhyphenmins{galician}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-german.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-german.ldf
index 49c7abc4e7c..2cf2d673791 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-german.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-german.ldf
@@ -1,47 +1,44 @@
\ProvidesFile{gloss-german.ldf}[polyglossia: module for german]
\makeatletter
-\def\german@font{\selectfontfamilylatin}
+\PolyglossiaSetup{german}{
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\tmp@old{old}
\def\tmp@oldyr{1901}
\newif\if@german@oldspelling
\@german@oldspellingfalse
\define@key{german}{spelling}[new]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@old%
- \ifx\l@german\@undefined%
- \xpg@nopatterns{german}%
- \adddialect\l@german\l@nohyphenation%
- \fi%
- \@german@oldspellingtrue%
- \else%
- \ifx\@tmpa\tmp@oldyr%
- \ifx\l@german\@undefined%
- \xpg@nopatterns{german}%
- \adddialect\l@german\l@nohyphenation%
- \fi%
- \@german@oldspellingtrue%
- \else%
- \ifx\l@ngerman\@undefined%
- \ifx\l@german\@undefined%
- \xpg@nopatterns{ngerman}%
- \adddialect\l@ngerman\l@nohyphenation%
- \else%
- \xpg@warning{You asked for `ngerman' but only `german' hyphenation is available!}%
- \@german@oldspellingtrue%
- \fi%
- \else%
- \@german@oldspellingfalse
- \fi%
- \fi%
- \fi%
+ \def\@tmpa{#1}%
+ \ifx\@tmpa\tmp@oldyr\def\@tmpa{old}\fi
+ \ifx\@tmpa\tmp@old
+ \ifx\l@german\@undefined
+ \xpg@nopatterns{german}%
+ \adddialect\l@german\l@nohyphenation
+ \fi
+ \@german@oldspellingtrue
+ \else %try ngerman
+ \ifx\l@ngerman\@undefined
+ \ifx\l@german\@undefined
+ \xpg@nopatterns{ngerman}%
+ \adddialect\l@ngerman\l@nohyphenation
+ \else
+ \xpg@warning{You asked for `ngerman' but only `german' hyphenation is available!}%
+ \@german@oldspellingtrue
+ \fi
+ \else %we use ngerman
+ \@german@oldspellingfalse
+ \fi
+ \fi
}
\newif\if@german@fraktur
\def\tmp@fraktur{fraktur}
\define@key{german}{script}[latin]{%
\def\@tmpa{#1}%
- \ifx\@tmpa\tmp@fraktur\@german@frakturtrue\else%
+ \ifx\@tmpa\tmp@fraktur\@german@frakturtrue\else
\@german@frakturfalse%
\fi}
@@ -132,7 +129,7 @@
\space \ifcase\month%TODO add option for Austrian forms (Jänner etc)
\or Januar\or Februar\or März\or April\or Mai\or Juni\or%
Juli\or August\or September\or Oktober\or November\or%
- Dezember\fi%
+ Dezember\fi
\space \number\year}%
}
@@ -150,36 +147,31 @@
\space \ifcase\month%TODO add option for Austrian forms (Jänner etc)
\or Januar\or Februar\or März\or April\or Mai\or Juni\or%
Juli\or Auguſt\or September\or Oktober\or November\or%
- Dezember\fi%
+ Dezember\fi
\space \number\year}%
}
\def\captionsgerman{%
- \if@german@fraktur\captions@german@fraktur\else\captions@german\fi%
+ \if@german@fraktur\captions@german@fraktur\else\captions@german\fi
}
\def\dategerman{%
- \if@german@fraktur\date@german@fraktur\else\date@german\fi%
+ \if@german@fraktur\date@german@fraktur\else\date@german\fi
}
\def\german@language{\language=%
\csname l@\if@german@oldspelling\else n\fi german\ifgerman@latesthyphen -x-latest\fi\endcsname}
-\setlocalhyphenmins{german}{2}{2}%
-
\def\noextras@german{%
- \nonfrenchspacing%
\nogerman@shorthands%
}
\def\blockextras@german{%
- \frenchspacing%
- \ifgerman@babelshorthands\german@shorthands\fi%
+ \ifgerman@babelshorthands\german@shorthands\fi
}
\def\inlineextras@german{%
- \frenchspacing%
- \ifgerman@babelshorthands\german@shorthands\fi%
+ \ifgerman@babelshorthands\german@shorthands\fi
}
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-greek.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-greek.ldf
index a305e0fc21a..96c4803530e 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-greek.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-greek.ldf
@@ -1,335 +1,40 @@
\ProvidesFile{gloss-greek.ldf}[polyglossia: module for greek]
\makeatletter
+\PolyglossiaSetup{greek}{
+ script=Greek,
+ scripttag=grek,
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+ %TODO localalph={greek@alph,greek@Alph}
+}
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% The code in this file was initially adapted from the antomega
%% module for greek. Currently large parts of it derive from the
%% package xgreek.sty (c) Apostolos Syropoulos
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% the following fixes are taken verbatim from xgreek.sty:
-\global\lccode"0386="03AC \global\uccode"0386="0391
-\global\lccode"0388="03AD \global\uccode"0388="0395
-\global\lccode"0389="03AC \global\uccode"0389="0397
-\global\lccode"038A="03AF \global\uccode"038A="0399
-\global\lccode"038C="03CC \global\uccode"038C="039F
-\global\lccode"038E="03CD \global\uccode"038E="03A5
-\global\lccode"038F="03CE \global\uccode"038F="03A9
-\global\lccode"0390="0390 \global\uccode"0390="03AA
-\global\lccode"0391="03B1 \global\uccode"0391="0391
-\global\lccode"0392="03B2 \global\uccode"0392="0392
-\global\lccode"0393="03B3 \global\uccode"0393="0393
-\global\lccode"0394="03B4 \global\uccode"0394="0394
-\global\lccode"0395="03B5 \global\uccode"0395="0395
-\global\lccode"0396="03B6 \global\uccode"0396="0396
-\global\lccode"0397="03B7 \global\uccode"0397="0397
-\global\lccode"0398="03B8 \global\uccode"0398="0398
-\global\lccode"0399="03B9 \global\uccode"0399="0399
-\global\lccode"039A="03BA \global\uccode"039A="039A
-\global\lccode"039B="03BB \global\uccode"039B="039B
-\global\lccode"039C="03BC \global\uccode"039C="039C
-\global\lccode"039D="03BD \global\uccode"039D="039D
-\global\lccode"039E="03BE \global\uccode"039E="039E
-\global\lccode"039F="03BF \global\uccode"039F="039F
-\global\lccode"03A0="03C0 \global\uccode"03A0="03A0
-\global\lccode"03A1="03C1 \global\uccode"03A1="03A1
-\global\lccode"03A3="03C3 \global\uccode"03A3="03A3
-\global\lccode"03A4="03C4 \global\uccode"03A4="03A4
-\global\lccode"03A5="03C5 \global\uccode"03A5="03A5
-\global\lccode"03A6="03C6 \global\uccode"03A6="03A6
-\global\lccode"03A7="03C7 \global\uccode"03A7="03A7
-\global\lccode"03A8="03C8 \global\uccode"03A8="03A8
-\global\lccode"03A9="03C9 \global\uccode"03A9="03A9
-\global\lccode"03AA="03CA \global\uccode"03AA="03AA
-\global\lccode"03AB="03CB \global\uccode"03AB="03AB
-\global\lccode"03AC="03AC \global\uccode"03AC="0391
-\global\lccode"03AD="03AD \global\uccode"03AD="0395
-\global\lccode"03AE="03AE \global\uccode"03AE="0397
-\global\lccode"03AF="03AF \global\uccode"03AF="0399
-\global\lccode"03B0="03B0 \global\uccode"03B0="03AB
-\global\lccode"03B1="03B1 \global\uccode"03B1="0391
-\global\lccode"03B2="03B2 \global\uccode"03B2="0392
-\global\lccode"03B3="03B3 \global\uccode"03B3="0393
-\global\lccode"03B4="03B4 \global\uccode"03B4="0394
-\global\lccode"03B5="03B5 \global\uccode"03B5="0395
-\global\lccode"03B6="03B6 \global\uccode"03B6="0396
-\global\lccode"03B7="03B7 \global\uccode"03B7="0397
-\global\lccode"03B8="03B8 \global\uccode"03B8="0398
-\global\lccode"03B9="03B9 \global\uccode"03B9="0399
-\global\lccode"03BA="03BA \global\uccode"03BA="039A
-\global\lccode"03BB="03BB \global\uccode"03BB="039B
-\global\lccode"03BC="03BC \global\uccode"03BC="039C
-\global\lccode"03BD="03BD \global\uccode"03BD="039D
-\global\lccode"03BE="03BE \global\uccode"03BE="039E
-\global\lccode"03BF="03BF \global\uccode"03BF="039F
-\global\lccode"03C0="03C0 \global\uccode"03C0="03A0
-\global\lccode"03C1="03C1 \global\uccode"03C1="03A1
-\global\lccode"03C2="03C2 \global\uccode"03C2="03A3
-\global\lccode"03C3="03C3 \global\uccode"03C3="03A3
-\global\lccode"03C4="03C4 \global\uccode"03C4="03A4
-\global\lccode"03C5="03C5 \global\uccode"03C5="03A5
-\global\lccode"03C6="03C6 \global\uccode"03C6="03A6
-\global\lccode"03C7="03C7 \global\uccode"03C7="03A7
-\global\lccode"03C8="03C8 \global\uccode"03C8="03A8
-\global\lccode"03C9="03C9 \global\uccode"03C9="03A9
-\global\lccode"03CA="03CA \global\uccode"03CA="03AA
-\global\lccode"03CB="03CB \global\uccode"03CB="03AB
-\global\lccode"03CC="03CC \global\uccode"03CC="039F
-\global\lccode"03CD="03CD \global\uccode"03CD="03A5
-\global\lccode"03CE="03CE \global\uccode"03CE="03A9
-\global\lccode"03D0="03D0 \global\uccode"03D0="0392
-\global\lccode"03D1="03D1 \global\uccode"03D1="0398
-\global\lccode"03D2="03C5 \global\uccode"03D2="03A5
-\global\lccode"03D3="03CD \global\uccode"03D3="03A5
-\global\lccode"03D4="03CB \global\uccode"03D4="03AB
-\global\lccode"03D5="03C6 \global\uccode"03D5="03A6
-\global\lccode"03D6="03C0 \global\uccode"03D6="03A0
-\global\lccode"03DA="03DB \global\uccode"03DA="03DA
-\global\lccode"03DB="03DB \global\uccode"03DB="03DA
-\global\lccode"03DC="03DD \global\uccode"03DC="03DC
-\global\lccode"03DD="03DD \global\uccode"03DD="03DC
-\global\lccode"03DE="03DF \global\uccode"03DE="03DE
-\global\lccode"03DF="03DF \global\uccode"03DF="03DE
-\global\lccode"03E0="03E1 \global\uccode"03E0="039A
-\global\lccode"03E0="03E1 \global\uccode"03E1="03A1
-\global\lccode"03F0="03BA \global\uccode"03F0="039A
-\global\lccode"03F1="03C1 \global\uccode"03F1="03A1
-\global\lccode"03F2="03F2 \global\uccode"03F2="03F9
-\global\lccode"03F9="03F2 \global\uccode"03F9="03F9
-\global\lccode"1F00="1F00 \global\uccode"1F00="0391
-\global\lccode"1F01="1F01 \global\uccode"1F01="0391
-\global\lccode"1F02="1F02 \global\uccode"1F02="0391
-\global\lccode"1F03="1F03 \global\uccode"1F03="0391
-\global\lccode"1F04="1F04 \global\uccode"1F04="0391
-\global\lccode"1F05="1F05 \global\uccode"1F05="0391
-\global\lccode"1F06="1F06 \global\uccode"1F06="0391
-\global\lccode"1F07="1F07 \global\uccode"1F07="0391
-\global\lccode"1F08="1F00 \global\uccode"1F08="0391
-\global\lccode"1F09="1F01 \global\uccode"1F09="0391
-\global\lccode"1F0A="1F02 \global\uccode"1F0A="0391
-\global\lccode"1F0B="1F03 \global\uccode"1F0B="0391
-\global\lccode"1F0C="1F04 \global\uccode"1F0C="0391
-\global\lccode"1F0D="1F05 \global\uccode"1F0D="0391
-\global\lccode"1F0E="1F06 \global\uccode"1F0E="0391
-\global\lccode"1F0F="1F07 \global\uccode"1F0F="0391
-\global\lccode"1F10="1F10 \global\uccode"1F10="0395
-\global\lccode"1F11="1F11 \global\uccode"1F11="0395
-\global\lccode"1F12="1F12 \global\uccode"1F12="0395
-\global\lccode"1F13="1F13 \global\uccode"1F13="0395
-\global\lccode"1F14="1F14 \global\uccode"1F14="0395
-\global\lccode"1F15="1F15 \global\uccode"1F15="0395
-\global\lccode"1F18="1F10 \global\uccode"1F18="0395
-\global\lccode"1F19="1F11 \global\uccode"1F19="0395
-\global\lccode"1F1A="1F12 \global\uccode"1F1A="0395
-\global\lccode"1F1B="1F13 \global\uccode"1F1B="0395
-\global\lccode"1F1C="1F14 \global\uccode"1F1C="0395
-\global\lccode"1F1D="1F15 \global\uccode"1F1D="0395
-\global\lccode"1F20="1F20 \global\uccode"1F20="0397
-\global\lccode"1F21="1F21 \global\uccode"1F21="0397
-\global\lccode"1F22="1F22 \global\uccode"1F22="0397
-\global\lccode"1F23="1F23 \global\uccode"1F23="0397
-\global\lccode"1F24="1F24 \global\uccode"1F24="0397
-\global\lccode"1F25="1F25 \global\uccode"1F25="0397
-\global\lccode"1F26="1F26 \global\uccode"1F26="0397
-\global\lccode"1F27="1F27 \global\uccode"1F27="0397
-\global\lccode"1F28="1F20 \global\uccode"1F28="0397
-\global\lccode"1F29="1F21 \global\uccode"1F29="0397
-\global\lccode"1F2A="1F22 \global\uccode"1F2A="0397
-\global\lccode"1F2B="1F23 \global\uccode"1F2B="0397
-\global\lccode"1F2C="1F24 \global\uccode"1F2C="0397
-\global\lccode"1F2D="1F25 \global\uccode"1F2D="0397
-\global\lccode"1F2E="1F26 \global\uccode"1F2E="0397
-\global\lccode"1F2F="1F27 \global\uccode"1F2F="0397
-\global\lccode"1F30="1F30 \global\uccode"1F30="0399
-\global\lccode"1F31="1F31 \global\uccode"1F31="0399
-\global\lccode"1F32="1F32 \global\uccode"1F32="0399
-\global\lccode"1F33="1F33 \global\uccode"1F33="0399
-\global\lccode"1F34="1F34 \global\uccode"1F34="0399
-\global\lccode"1F35="1F35 \global\uccode"1F35="0399
-\global\lccode"1F36="1F36 \global\uccode"1F36="0399
-\global\lccode"1F37="1F37 \global\uccode"1F37="0399
-\global\lccode"1F38="1F30 \global\uccode"1F38="0399
-\global\lccode"1F39="1F31 \global\uccode"1F39="0399
-\global\lccode"1F3A="1F32 \global\uccode"1F3A="0399
-\global\lccode"1F3B="1F33 \global\uccode"1F3B="0399
-\global\lccode"1F3C="1F34 \global\uccode"1F3C="0399
-\global\lccode"1F3D="1F35 \global\uccode"1F3D="0399
-\global\lccode"1F3E="1F36 \global\uccode"1F3E="0399
-\global\lccode"1F3F="1F37 \global\uccode"1F3F="0399
-\global\lccode"1F40="1F40 \global\uccode"1F40="039F
-\global\lccode"1F41="1F41 \global\uccode"1F41="039F
-\global\lccode"1F42="1F42 \global\uccode"1F42="039F
-\global\lccode"1F43="1F43 \global\uccode"1F43="039F
-\global\lccode"1F44="1F44 \global\uccode"1F44="039F
-\global\lccode"1F45="1F45 \global\uccode"1F45="039F
-\global\lccode"1F48="1F40 \global\uccode"1F48="039F
-\global\lccode"1F49="1F41 \global\uccode"1F49="039F
-\global\lccode"1F4A="1F42 \global\uccode"1F4A="039F
-\global\lccode"1F4B="1F43 \global\uccode"1F4B="039F
-\global\lccode"1F4C="1F44 \global\uccode"1F4C="039F
-\global\lccode"1F4D="1F45 \global\uccode"1F4D="039F
-\global\lccode"1F50="1F50 \global\uccode"1F50="03A5
-\global\lccode"1F51="1F51 \global\uccode"1F51="03A5
-\global\lccode"1F52="1F52 \global\uccode"1F52="03A5
-\global\lccode"1F53="1F53 \global\uccode"1F53="03A5
-\global\lccode"1F54="1F54 \global\uccode"1F54="03A5
-\global\lccode"1F55="1F55 \global\uccode"1F55="03A5
-\global\lccode"1F56="1F56 \global\uccode"1F56="03A5
-\global\lccode"1F57="1F57 \global\uccode"1F57="03A5
-\global\lccode"1F59="1F51 \global\uccode"1F59="03A5
-\global\lccode"1F5B="1F53 \global\uccode"1F5B="03A5
-\global\lccode"1F5D="1F55 \global\uccode"1F5D="03A5
-\global\lccode"1F5F="1F57 \global\uccode"1F5F="03A5
-\global\lccode"1F60="1F60 \global\uccode"1F60="03A9
-\global\lccode"1F61="1F61 \global\uccode"1F61="03A9
-\global\lccode"1F62="1F62 \global\uccode"1F62="03A9
-\global\lccode"1F63="1F63 \global\uccode"1F63="03A9
-\global\lccode"1F64="1F64 \global\uccode"1F64="03A9
-\global\lccode"1F65="1F65 \global\uccode"1F65="03A9
-\global\lccode"1F66="1F66 \global\uccode"1F66="03A9
-\global\lccode"1F67="1F67 \global\uccode"1F67="03A9
-\global\lccode"1F68="1F60 \global\uccode"1F68="03A9
-\global\lccode"1F69="1F61 \global\uccode"1F69="03A9
-\global\lccode"1F6A="1F62 \global\uccode"1F6A="03A9
-\global\lccode"1F6B="1F63 \global\uccode"1F6B="03A9
-\global\lccode"1F6C="1F64 \global\uccode"1F6C="03A9
-\global\lccode"1F6D="1F65 \global\uccode"1F6D="03A9
-\global\lccode"1F6E="1F66 \global\uccode"1F6E="03A9
-\global\lccode"1F6F="1F67 \global\uccode"1F6F="03A9
-\global\lccode"1F70="1F70 \global\uccode"1F70="0391
-\global\lccode"1F71="1F71 \global\uccode"1F71="0391
-\global\lccode"1F72="1F72 \global\uccode"1F72="0395
-\global\lccode"1F73="1F73 \global\uccode"1F73="0395
-\global\lccode"1F74="1F74 \global\uccode"1F74="0397
-\global\lccode"1F75="1F75 \global\uccode"1F75="0397
-\global\lccode"1F76="1F76 \global\uccode"1F76="0399
-\global\lccode"1F77="1F77 \global\uccode"1F77="0399
-\global\lccode"1F78="1F78 \global\uccode"1F78="039F
-\global\lccode"1F79="1F79 \global\uccode"1F79="039F
-\global\lccode"1F7A="1F7A \global\uccode"1F7A="03A5
-\global\lccode"1F7B="1F7B \global\uccode"1F7B="03A5
-\global\lccode"1F7C="1F7C \global\uccode"1F7C="03A9
-\global\lccode"1F7D="1F7D \global\uccode"1F7D="03A9
-\global\lccode"1F80="1F80 \global\uccode"1F80="1FBC
-\global\lccode"1F81="1F81 \global\uccode"1F81="1FBC
-\global\lccode"1F82="1F82 \global\uccode"1F82="1FBC
-\global\lccode"1F83="1F83 \global\uccode"1F83="1FBC
-\global\lccode"1F84="1F84 \global\uccode"1F84="1FBC
-\global\lccode"1F85="1F85 \global\uccode"1F85="1FBC
-\global\lccode"1F86="1F86 \global\uccode"1F86="1FBC
-\global\lccode"1F87="1F87 \global\uccode"1F87="1FBC
-\global\lccode"1F88="1F80 \global\uccode"1F88="1FBC
-\global\lccode"1F89="1F81 \global\uccode"1F89="1FBC
-\global\lccode"1F8A="1F82 \global\uccode"1F8A="1FBC
-\global\lccode"1F8B="1F83 \global\uccode"1F8B="1FBC
-\global\lccode"1F8C="1F84 \global\uccode"1F8C="1FBC
-\global\lccode"1F8D="1F85 \global\uccode"1F8D="1FBC
-\global\lccode"1F8E="1F86 \global\uccode"1F8E="1FBC
-\global\lccode"1F8F="1F87 \global\uccode"1F8F="1FBC
-\global\lccode"1F90="1F90 \global\uccode"1F90="1FCC
-\global\lccode"1F91="1F91 \global\uccode"1F91="1FCC
-\global\lccode"1F92="1F92 \global\uccode"1F92="1FCC
-\global\lccode"1F93="1F93 \global\uccode"1F93="1FCC
-\global\lccode"1F94="1F94 \global\uccode"1F94="1FCC
-\global\lccode"1F95="1F95 \global\uccode"1F95="1FCC
-\global\lccode"1F96="1F96 \global\uccode"1F96="1FCC
-\global\lccode"1F97="1F97 \global\uccode"1F97="1FCC
-\global\lccode"1F98="1F90 \global\uccode"1F98="1FCC
-\global\lccode"1F99="1F91 \global\uccode"1F99="1FCC
-\global\lccode"1F9A="1F92 \global\uccode"1F9A="1FCC
-\global\lccode"1F9B="1F93 \global\uccode"1F9B="1FCC
-\global\lccode"1F9C="1F94 \global\uccode"1F9C="1FCC
-\global\lccode"1F9D="1F95 \global\uccode"1F9D="1FCC
-\global\lccode"1F9E="1F96 \global\uccode"1F9E="1FCC
-\global\lccode"1F9F="1F97 \global\uccode"1F9F="1FCC
-\global\lccode"1FA0="1FA0 \global\uccode"1FA0="1FFC
-\global\lccode"1FA1="1FA1 \global\uccode"1FA1="1FFC
-\global\lccode"1FA2="1FA2 \global\uccode"1FA2="1FFC
-\global\lccode"1FA3="1FA3 \global\uccode"1FA3="1FFC
-\global\lccode"1FA4="1FA4 \global\uccode"1FA4="1FFC
-\global\lccode"1FA5="1FA5 \global\uccode"1FA5="1FFC
-\global\lccode"1FA6="1FA6 \global\uccode"1FA6="1FFC
-\global\lccode"1FA7="1FA7 \global\uccode"1FA7="1FFC
-\global\lccode"1FA8="1FA0 \global\uccode"1FA8="1FFC
-\global\lccode"1FA9="1FA1 \global\uccode"1FA9="1FFC
-\global\lccode"1FAA="1FA2 \global\uccode"1FAA="1FFC
-\global\lccode"1FAB="1FA3 \global\uccode"1FAB="1FFC
-\global\lccode"1FAC="1FA4 \global\uccode"1FAC="1FFC
-\global\lccode"1FAD="1FA5 \global\uccode"1FAD="1FFC
-\global\lccode"1FAE="1FA6 \global\uccode"1FAE="1FFC
-\global\lccode"1FAF="1FA7 \global\uccode"1FAF="1FFC
-\global\lccode"1FB0="1FB0 \global\uccode"1FB0="1FB8
-\global\lccode"1FB1="1FB1 \global\uccode"1FB1="1FB9
-\global\lccode"1FB2="1FB2 \global\uccode"1FB2="1FBC
-\global\lccode"1FB3="1FB3 \global\uccode"1FB3="1FBC
-\global\lccode"1FB4="1FB4 \global\uccode"1FB4="1FBC
-\global\lccode"1FB6="1FB6 \global\uccode"1FB6="0391
-\global\lccode"1FB7="1FB7 \global\uccode"1FB7="1FBC
-\global\lccode"1FB8="1FB0 \global\uccode"1FB8="1FB8
-\global\lccode"1FB9="1FB1 \global\uccode"1FB9="1FB9
-\global\lccode"1FBA="1F70 \global\uccode"1FBA="0391
-\global\lccode"1FBB="1F71 \global\uccode"1FBB="0391
-\global\lccode"1FBC="1FB3 \global\uccode"1FBC="1FBC
-\global\lccode"1FBD="1FBD \global\uccode"1FBD="1FBD
-\global\lccode"1FC2="1FC2 \global\uccode"1FC2="1FCC
-\global\lccode"1FC3="1FC3 \global\uccode"1FC3="1FCC
-\global\lccode"1FC4="1FC4 \global\uccode"1FC4="1FCC
-\global\lccode"1FC6="1FC6 \global\uccode"1FC6="0397
-\global\lccode"1FC7="1FC7 \global\uccode"1FC7="1FCC
-\global\lccode"1FC8="1F72 \global\uccode"1FC8="0395
-\global\lccode"1FC9="1F73 \global\uccode"1FC9="0395
-\global\lccode"1FCA="1F74 \global\uccode"1FCA="0397
-\global\lccode"1FCB="1F75 \global\uccode"1FCB="0397
-\global\lccode"1FCC="1FC3 \global\uccode"1FCC="1FCC
-\global\lccode"1FD0="1FD0 \global\uccode"1FD0="1FD8
-\global\lccode"1FD1="1FD1 \global\uccode"1FD1="1FD9
-\global\lccode"1FD2="1FD2 \global\uccode"1FD2="03AA
-\global\lccode"1FD3="1FD3 \global\uccode"1FD3="03AA
-\global\lccode"1FD6="1FD6 \global\uccode"1FD6="0399
-\global\lccode"1FD7="1FD7 \global\uccode"1FD7="03AA
-\global\lccode"1FD8="1FD0 \global\uccode"1FD8="1FD8
-\global\lccode"1FD9="1FD1 \global\uccode"1FD9="1FD9
-\global\lccode"1FDA="1F76 \global\uccode"1FDA="0399
-\global\lccode"1FDB="1F77 \global\uccode"1FDB="0399
-\global\lccode"1FE0="1FE0 \global\uccode"1FE0="1FE8
-\global\lccode"1FE1="1FE1 \global\uccode"1FE1="1FE9
-\global\lccode"1FE2="1FE2 \global\uccode"1FE2="03AB
-\global\lccode"1FE3="1FE3 \global\uccode"1FE3="03AB
-\global\lccode"1FE4="1FE4 \global\uccode"1FE4="03A1
-\global\lccode"1FE5="1FE5 \global\uccode"1FE5="1FEC
-\global\lccode"1FE6="1FE6 \global\uccode"1FE6="03A5
-\global\lccode"1FE7="1FE7 \global\uccode"1FE7="03AB
-\global\lccode"1FE8="1FE0 \global\uccode"1FE8="1FE8
-\global\lccode"1FE9="1FE1 \global\uccode"1FE9="1FE9
-\global\lccode"1FEA="1F7A \global\uccode"1FEA="03A5
-\global\lccode"1FEB="1F7B \global\uccode"1FEB="03A5
-\global\lccode"1FEC="1FE5 \global\uccode"1FEC="1FEC
-\global\lccode"1FF2="1FF2 \global\uccode"1FF2="1FFC
-\global\lccode"1FF3="1FF3 \global\uccode"1FF3="1FFC
-\global\lccode"1FF4="1FF4 \global\uccode"1FF4="1FFC
-\global\lccode"1FF6="1FF6 \global\uccode"1FF6="03A9
-\global\lccode"1FF7="1FF7 \global\uccode"1FF7="1FFC
-\global\lccode"1FF8="1F78 \global\uccode"1FF8="039F
-\global\lccode"1FF9="1F79 \global\uccode"1FF9="039F
-\global\lccode"1FFA="1F7C \global\uccode"1FFA="03A9
-\global\lccode"1FFB="1F7D \global\uccode"1FFB="03A9
-\global\lccode"1FFC="1FF3 \global\uccode"1FFC="1FFC
+% this file imported from xgreek fixes the \lccode and \uccode of Greek letters:
+\input{xgreek-fixes.def}
+%TODO: set these in \define@key instead:
\ifx\l@greek\@undefined
- \ifx\l@polygreek\@undefined
- \xpg@nopatterns{Greek}
- \adddialect\l@greek\l@nohyphenation
- \else
- \let\l@greek\l@polygreek
- \fi
+ \ifx\l@polygreek\@undefined
+ \xpg@nopatterns{Greek}%
+ \adddialect\l@greek\l@nohyphenation
+ \else
+ \let\l@greek\l@polygreek
+ \fi
\fi
\ifx\l@monogreek\@undefined
- \xpg@warning{No hyphenation patterns were loaded for Monotonic Greek\MessageBreak
+ \xpg@warning{No hyphenation patterns were loaded for Monotonic Greek\MessageBreak
I will use the patterns loaded for \string\l@greek instead}
- \adddialect\l@monogreek\l@greek
+ \adddialect\l@monogreek\l@greek
\fi
\ifx\l@ancientgreek\@undefined
- \xpg@warning{No hyphenation patterns were loaded for Ancient Greek\MessageBreak
+ \xpg@warning{No hyphenation patterns were loaded for Ancient Greek\MessageBreak
I will use the patterns loaded for \string\l@greek instead}
- \adddialect\l@ancientgreek\l@greek
+ \adddialect\l@ancientgreek\l@greek
\fi
%set monotonic as default
@@ -345,40 +50,29 @@
\def\tmp@ancientgreek{ancientgreek}
\define@key{greek}{variant}[monotonic]{%
-\def\@tmpa{#1}%
-\def\captionsgreek{\polygreekcaptions}%
-\ifx\@tmpa\tmp@polytonic%
- \def\greek@variant{\l@polygreek}%
- \def\captionsgreek{\polygreekcaptions}%
- \def\dategreek{\datepolygreek}%
- \xpg@info{Option: Polytonic Greek}%
-\else%
- \ifx\@tmpa\tmp@poly%
- \def\greek@variant{\l@polygreek}%
- \def\captionsgreek{\polygreekcaptions}%
- \def\dategreek{\datepolygreek}%
- \xpg@info{Option: Polytonic Greek}%
- \else%
- \ifx\@tmpa\tmp@ancient%
- \def\greek@variant{\l@ancientgreek}%
- \def\captionsgreek{\ancientgreekcaptions}%
- \def\dategreek{\dateancientgreek}%
- \xpg@info{Option: Ancient Greek}%
- \else%
- \ifx\@tmpa\tmp@ancientgreek%
- \def\greek@variant{\l@ancientgreek}%
- \def\captionsgreek{\ancientgreekcaptions}%
- \def\dategreek{\dateancientgreek}%
- \xpg@info{Option: Ancient Greek}%
- \else%
- \def\greek@variant{\l@monogreek}% monotonic
- \def\captionsgreek{\monogreekcaptions}%
- \def\dategreek{\datemonogreek}%
- \xpg@info{Option: Monotonic Greek}%
- \fi%
- \fi%
- \fi%
-\fi}
+ \def\@tmpa{#1}%
+ \ifx\@tmpa\tmp@poly\def\@tmpa{polytonic}\fi
+ \ifx\@tmpa\tmp@ancientgreek\def\@tmpa{ancient}\fi
+ \ifx\@tmpa\tmp@polytonic%
+ \def\greek@variant{\l@polygreek}%
+ \def\captionsgreek{\polygreekcaptions}%
+ \def\dategreek{\datepolygreek}%
+ \xpg@info{Option: Polytonic Greek}%
+ \else
+ \ifx\@tmpa\tmp@ancient
+ \def\greek@variant{\l@ancientgreek}%
+ \def\captionsgreek{\ancientgreekcaptions}%
+ \def\dategreek{\dateancientgreek}%
+ \xpg@info{Option: Ancient Greek}%
+ \else %monotonic
+ \def\greek@variant{\l@monogreek}% monotonic
+ \def\captionsgreek{\monogreekcaptions}%
+ \def\dategreek{\datemonogreek}%
+ \xpg@info{Option: Monotonic Greek}%
+ \fi
+ \fi}
+
+\def\greek@language{\language=\greek@variant}
\def\tmp@arabic{arabic}
\newif\if@greek@numerals
@@ -417,6 +111,7 @@
\def\headtoname{Προς}%
\def\proofname{Απόδειξη}%
\def\glossaryname{Γλωσσάρι}}%
+
\def\datemonogreek{%
\def\today{\number\day\space%
\greek@month%
@@ -440,6 +135,7 @@
Οκτωβρίου\or
Νοεμβρίου\or
Δεκεμβρίου\fi}}%
+
\def\polygreekcaptions{%
\def\refname{Ἀναφορές}%
\def\abstractname{Περίληψη}%
@@ -461,6 +157,7 @@
\def\ccname{Κοινοποίηση}%
\def\headtoname{Πρὸς}%
\def\proofname{Ἀπόδειξη}}%
+
\def\datepolygreek{%
\def\today{\number\day\space%
\greek@month%
@@ -484,6 +181,7 @@
Ὀκτωβρίου\or
Νοεμβρίου\or
Δεκεμβρίου\fi}}%
+
% this is copied verbatim from xgreek.sty:
\def\ancientgreekcaptions{%
\def\prefacename{Προοίμιον}%
@@ -511,6 +209,7 @@
\def\indexname{Εὑρετήριο}%
\def\figurename{Σχῆμα}%
\def\headtoname{Πρὸς}}%
+
\def\dateancientgreek{%
\def\today{\number\day\space%
\greek@month%
@@ -653,37 +352,5 @@
\let\greek@Alph\@undefined%
}
-\def\greek@language{\language=\greek@variant}
-
-\def\greek@font{%
- \@ifundefined{greekfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{grek}%
- \if@tempswa%
- \addfontfeature{Script=Greek}%
- \else%
- \PackageError{polyglossia}{^^J
- The current font does not contain the Greek script!^^J
- Please define \string\greekfont\space with \string\newfontfamily}%
- \fi%
- }%
- {\greekfont}}
-
-\def\selectnormalfontgreek{%
- \let\normalfont=\greek@font%
- \def\reset@font{\normalfont}}
-
-\setlocalhyphenmins{greek}{2}{2}%
-
-\def\noextras@greek{%
- \nofrench@indent%
- }
-
-\def\blockextras@greek{%
- \frenchspacing%
- \french@indent%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hebrew.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hebrew.ldf
index bcf860ad2ee..b5766d59060 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hebrew.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hebrew.ldf
@@ -3,12 +3,15 @@
\RequirePackage{hebrewcal}
\makeatletter
-\ifx\l@hebrew\@undefined
- %\xpg@nopatterns{Hebrew}%
- \adddialect\l@hebrew\l@nohyphenation
-\fi
-
-\def\hebrew@RL{\relax}
+\PolyglossiaSetup{hebrew}{
+ script=Hebrew,
+ direction=RL,
+ scripttag=hebr,
+ hyphennames={nohyphenation},
+ fontsetup=true,
+ %TODO localalph={hebrewnumeral,Hebrewnumeral}
+ %digits = hebrewnumber
+}
\newif\if@calendar@hebrew
\def\tmp@hebrew{hebrew}
@@ -82,7 +85,6 @@
\if@hebrew@numerals
\protect\hebrewnumeral{#1}%
\else
- %%\RL{\protect\reset@font\protect\number#1}%
\number#1%
\fi
}
@@ -108,57 +110,6 @@
\renewcommand\thefootnote{\protect\number{\c@footnote}}%
}
-\def\hebrew@language{\language=\l@hebrew}
-
-\def\hebrew@font{%
- \@ifundefined{hebrewfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{hebr}%
- \if@tempswa
- \addfontfeature{Script=Hebrew}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Hebrew script!^^J
- Please define \string\hebrewfont\space with \string\newfontfamily}%
- \fi}%
- {\hebrewfont}%
-}
-
-% TODO add setup to define Sans and Mono Hebrew fonts if desired
-\def\hebrew@font@sf{%
- \@ifundefined{hebrewfontsf}{%
-% \sffamilylatin% FIXME
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa%
-% \addfontfeature{Script=Hebrew}%
-% \else%
- \hebrew@font%
-% \fi%
- }%
- {\hebrewfontsf}%
-}
-\def\hebrew@font@tt{%
- \@ifundefined{hebrewfonttt}{%
-% \ttfamilylatin% FIXME
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa%
-% \addfontfeature{Script=Hebrew}%
-% \else%
- \hebrew@font%
-% \fi%
- }%
- {\hebrewfonttt}%
-}
-\def\selectnormalfonthebrew{%
- \let\normalfont=\hebrew@font%
- \let\rmfamily=\hebrew@font%
- \let\sffamily=\hebrew@font@sf%
- \let\ttfamily=\hebrew@font@tt%
- \def\reset@font{\normalfont}}
-
\def\blockextras@hebrew{%
\let\@@MakeUppercase\MakeUppercase%
\def\MakeUppercase##1{##1}%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hindi.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hindi.ldf
index 8f3772591a1..2ad5716ba0c 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hindi.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-hindi.ldf
@@ -1,18 +1,50 @@
-\ProvidesFile{gloss-hindi.ldf}[polyglossia: module for hindi]
% UTF-8 strings kindly provided by Zdenek Wagner, 10-03-2008
% TODO: add option for velthuis transliteration with link to
% Velthuis Devanagari project: http://devnag.sarovar.org.
+
+\ProvidesFile{gloss-hindi.ldf}[polyglossia: module for hindi]
+\RequirePackage{devanagaridigits}
\makeatletter
+\PolyglossiaSetup{hindi}{
+ script=Devanagari,
+ scripttag=deva,
+ langtag=HIN,
+%% hyphennames={hindi,!sanskrit}, TODO: implement fallback patterns (with ! prefix)
+ fontsetup=true
+ %TODO nouppercase=true,
+ %TODO localnumber=hindinumber
+}
\ifx\l@hindi\@undefined%
\ifx\l@sanskrit\@undefined%
\xpg@nopatterns{Hindi}%
\adddialect\l@hindi\l@nohyphenation%
\else
- \let\l@hindi\l@sanskrit%
+ \xpg@warning{No hyphenation patterns were loaded for Hindi\MessageBreak
+ I will use the patterns for Sanskrit instead}
+ \adddialect\l@hindi\l@sanskrit%
\fi
\fi
+\def\hindi@language{\language=\l@hindi}
+
+\def\tmp@western{Western}
+\newif\ifhindi@devanagari@numerals
+\hindi@devanagari@numeralstrue
+
+\define@key{hindi}{numerals}[Devanagari]{%
+ \def\@tmpa{#1}%
+ \ifx\@tmpa\tmp@western
+ \hindi@devanagari@numeralsfalse
+ \fi}
+
+\def\hindinumber#1{%
+ \ifhindi@devanagari@numerals
+ \devanagaridigits{\number#1}%
+ \else
+ \number#1%
+ \fi}
+
\def\captionshindi{%
\def\abstractname{सारांश}%
\def\appendixname{परिशिष्ट}%
@@ -40,61 +72,28 @@
\def\alsoseename{और देखिए}%
}
\def\datehindi{%
- \def\today{\number\day\space\ifcase\month\or
- जनवरी\or
- फ़रवरी\or
- मार्च\or
- अपरैल\or
- मई\or
- जून\or
- जलाई\or
- अगस्त\or
- सितम्बर\or
- अक्तूबर\or
- नवम्बर\or
- दिसम्बर\fi
- \space\number\year}%
-}
-
-\def\hindi@language{\language=\l@hindi}
-
-\def\hindi@font{%
- \@ifundefined{hindifont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \@ifundefined{devanagarifont}{%
- \zf@check@ot@script{deva}%
- \if@tempswa%
- \addfontfeature{Script=Devanagari}%
- \else%
- \PackageError{polyglossia}{^^J
- The current font does not contain the Devanagari script!^^J
- Please define \string\devanagarifont\space or \string\hindifont\space with \string\newfontfamily}%
- \fi%
- \zf@check@ot@lang{HIN}%
- \if@tempswa\addfontfeature{Language=Hindi}\fi%
- }%
- {\devanagarifont%
- \zf@check@ot@lang{HIN}%
- \if@tempswa\addfontfeature{Language=Hindi}\fi%
- }}%
- {\hindifont}%
+ \def\today{\hindinumber\day\space\ifcase\month\or
+ जनवरी\or
+ फ़रवरी\or
+ मार्च\or
+ अपरैल\or
+ मई\or
+ जून\or
+ जलाई\or
+ अगस्त\or
+ सितम्बर\or
+ अक्तूबर\or
+ नवम्बर\or
+ दिसम्बर\fi
+ \space\hindinumber\year}%
}
-\def\selectnormalfonthindi{%
- \let\normalfont=\hindi@font%
- \let\rmfamily=\hindi@font%
- % TODO add setup to define Sans and Mono fonts if desired
- \let\sffamily=\hindi@font%
- \let\ttfamily=\hindi@font%
- \def\reset@font{\normalfont}}
-
\def\blockextras@hindi{%
- \let\@@MakeUppercase\MakeUppercase%
- \def\MakeUppercase##1{##1}%
- }
+ \let\@@MakeUppercase\MakeUppercase%
+ \def\MakeUppercase##1{##1}%
+}
\def\noextras@hindi{%
- \let\MakeUppercase\@@MakeUppercase%
- }
+ \let\MakeUppercase\@@MakeUppercase%
+}
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-icelandic.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-icelandic.ldf
index 09b8f31d586..488ee06dd13 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-icelandic.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-icelandic.ldf
@@ -1,11 +1,10 @@
\ProvidesFile{gloss-icelandic.ldf}[polyglossia: module for icelandic]
\makeatletter
-\def\icelandic@font{\selectfontfamilylatin}
-
-\ifx\l@icelandic\@undefined%
- \xpg@nopatterns{Icelandic}%
- \adddialect\l@icelandic\l@nohyphenation%
-\fi
+\PolyglossiaSetup{icelandic}{
+ hyphennames={icelandic},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsicelandic{%
\def\refname{Heimildir}%
@@ -31,6 +30,7 @@
\def\proofname{Sönnun}%
\def\glossaryname{Orðalisti}%
}
+
\def\dateicelandic{%
\def\today{\number\day.~\ifcase\month\or
janúar\or febrúar\or mars\or apríl\or maí\or
@@ -39,14 +39,10 @@
\space\number\year}%
}
-\def\icelandic@language{\language=\l@icelandic}
-
-\setlocalhyphenmins{icelandic}{2}{2}%
-
\endinput
-%% implement this as a separate module ?
+%%TODO: implement this as a separate module ?
%\mathchardef\m@comma="013B
%\def\@comma@{\ifmmode\m@comma\else,\fi}
%\def\f@thousandsep{\ifmmode\mskip5.5mu\else\penalty\@M\kern.3em\fi}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-interlingua.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-interlingua.ldf
index 4a209593adc..082d4ae3304 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-interlingua.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-interlingua.ldf
@@ -1,10 +1,12 @@
\ProvidesFile{gloss-interlingua.ldf}[polyglossia: module for interlingua]
\makeatletter
-
-\ifx\l@interlingua\@undefined%
- \xpg@nopatterns{Interlingua}%
- \adddialect\l@interlingua\l@nohyphenation%
-\fi
+\PolyglossiaSetup{interlingua}{
+ hyphennames={interlingua},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsinterlingua{%
\def\refname{Referentias}%
@@ -37,8 +39,4 @@
decembre\fi
\space \number\year}}
-\def\interlingua@language{\language=\l@interlingua}
-
-\setlocalhyphenmins{interlingua}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-irish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-irish.ldf
index cbe5ec9e851..16c52abe34e 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-irish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-irish.ldf
@@ -1,11 +1,10 @@
\ProvidesFile{gloss-irish.ldf}[polyglossia: module for irish]
\makeatletter
-\def\irish@font{\selectfontfamilylatin}
-
-\ifx\l@irish\@undefined%
- \xpg@nopatterns{Irish}%
- \adddialect\l@irish\l@nohyphenation%
-\fi
+\PolyglossiaSetup{irish}{
+ hyphennames={irish},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsirish{%
\def\refname{Tagairtí}%
@@ -41,8 +40,4 @@
Mí na Samhna\or Mí na Nollag\fi
\space \number\year}}
-\def\irish@language{\language=\l@irish}
-
-\setlocalhyphenmins{irish}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-italian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-italian.ldf
index f8620e655d1..8063478b452 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-italian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-italian.ldf
@@ -1,11 +1,12 @@
\ProvidesFile{gloss-italian.ldf}[polyglossia: module for italian]
\makeatletter
-\def\italian@font{\selectfontfamilylatin}
-
-\ifx\l@italian\@undefined
- \xpg@nopatterns{Italian}
- \adddialect\l@italian\l@nohyphenation
-\fi
+\PolyglossiaSetup{italian}{
+ hyphennames={italian},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsitalian{%
\def\prefacename{Prefazione}%
@@ -34,21 +35,15 @@
\def\today{\number\day~\ifcase\month\or
gennaio\or febbraio\or marzo\or aprile\or maggio\or giugno\or
luglio\or agosto\or settembre\or ottobre\or novembre\or
- dicembre\fi\space \number\year}
-}
-
-\def\italian@language{\language=\l@italian}
-
-\setlocalhyphenmins{italian}{2}{2}%
+ dicembre\fi\space \number\year}}
\def\noextras@italian{%
- \lccode"2019=0%
- \nofrench@indent}
+ \lccode"2019=\z@
+ }
\def\blockextras@italian{%
\lccode"2019="2019
%TODO ? \clubpenalty3000\widowpenalty3000\finalhyphendemerits50000000 << in Babel
- \french@indent%
}
\def\inlineextras@italian{%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lao.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lao.ldf
new file mode 100644
index 00000000000..fb1baf4b9e5
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lao.ldf
@@ -0,0 +1,91 @@
+\ProvidesFile{gloss-lao.ldf}[polyglossia: module for Lao]
+\makeatletter
+\PolyglossiaSetup{lao}{
+ script=Lao,
+ scripttag=lao,
+ hyphennames={lao},
+ hyphenmins={1,1},
+ fontsetup=true,
+ %TODO localalph={xxx@alph,xxx@Alph}
+ %TODO localdigits=laonumber
+}
+
+\newif\if@lao@numerals
+\def\tmp@lao{lao}
+\define@key{lao}{numerals}[arabic]{%
+ \def\@tmpa{#1}%
+ \ifx\@tmpa\tmp@lao\@lao@numeralstrue\else
+ \@lao@numeralsfalse\fi
+}
+
+\setkeys{lao}{numerals}
+
+% Translations provided by Brian Wilson <bountonw at gmail.com>
+\def\captionslao{%
+ \def\prefacename{ຄໍານໍາ}%
+ \def\refname{ໜັງສືອ້າງອີງ}%
+ \def\abstractname{ບົດຫຍໍ້ຄວາມ}%
+ \def\bibname{ເອກະສານອ້າງອີງ}%
+ \def\chaptername{ບົດທີ}%
+ \def\appendixname{ພາກຄັດຕິດ}%
+ \def\contentsname{ສາລະບານ}%
+ \def\listfigurename{ສາລະບານຮູບ}%
+ \def\listtablename{ສາລະບານຕາຕະລາງ}%
+ \def\indexname{ດັດຊະນີ}%
+ \def\figurename{ຮູບທີ}%
+ \def\tablename{ຕາຕະລາງທີ}%
+ \def\partname{ພາກ}%
+ \def\pagename{ໜ້າ}%
+ \def\seename{ອ່ານ}%
+ \def\alsoname{ອ່ານເພີ່ມ}%
+ \def\enclname{ເອກະສານປະກອບ}%
+ \def\ccname{ສໍາເນົາເຖິງ}%
+ \def\headtoname{ຮຽນ}%
+ \def\proofname{ຂໍ້ພິສູດ}%
+ \def\glossaryname{ປະມວນສັບ}%
+}
+\def\datelao{%
+ \def\lao@month{%
+ \ifcase\month\or
+ ມັງກອນ\or
+ ກຸມພາ\or
+ ມີນາ\or
+ ເມສາ\or
+ ພຶດສະພາ\or
+ ມິຖຸນາ\or
+ ກໍລະກົດ\or
+ ສິງຫາ\or
+ ກັນຍາ\or
+ ຕຸລາ\or
+ ພະຈິກ\or
+ ທັນວາ\fi}%
+ \def\today{\laonumber\day \space \lao@month \space \laonumber\year}%
+}
+
+\def\laodigits#1{\expandafter\@lao@digits #1@}
+\def\@lao@digits#1{%
+ \ifx @#1% then terminate
+ \else
+ \ifx0#1໐\else\ifx1#1໑\else\ifx2#1໒\else\ifx3#1໓\else\ifx4#1໔\else\ifx5#1໕\else\ifx6#1໖\else\ifx7#1໗\else\ifx8#1໘\else\ifx9#1໙\else#1\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \expandafter\@lao@digits
+ \fi
+}
+
+\def\laonumber#1{%
+ \if@lao@numerals
+ \laodigits{\number#1}%
+ \else
+ \number#1%
+ \fi}
+
+\def\lao@globalnumbers{%
+ \let\orig@arabic\@arabic%
+ \let\@arabic\laonumber%
+ \renewcommand{\thefootnote}{\protect\laonumber{\c@footnote}}%
+}
+\def\nolao@globalnumbers{%
+ \let\@arabic\orig@arabic%
+ \renewcommand\thefootnote{\protect\number{\c@footnote}}%
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latin.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latin.ldf
index 871af43e1c7..d2f8dfaad41 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latin.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latin.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-latin.ldf}[polyglossia: module for latin]
\makeatletter
-\def\latin@font{\selectfontfamilylatin}
-
-\ifx\l@latin\@undefined
- \xpg@nopatterns{latin}
- \adddialect\l@latin\l@nohyphenation
-\fi
+\PolyglossiaSetup{latin}{
+ hyphennames={latin},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionslatin{%
\def\prefacename{Praefatio}%
@@ -38,20 +38,4 @@
Decembris\fi%
\space \uppercase\expandafter{\romannumeral\year}}}
-\def\latin@language{\language=\l@latin}
-
-\setlocalhyphenmins{latin}{2}{2}%
-
-\def\noextras@latin{%
- \nonfrenchspacing%
-}
-
-\def\blockextras@latin{%
- \frenchspacing%
-}
-
-\def\inlineextras@latin{%
- \frenchspacing%
-}
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latvian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latvian.ldf
index beeba264ca5..6f0bd0f345f 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latvian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-latvian.ldf
@@ -1,11 +1,10 @@
\ProvidesFile{gloss-latvian.ldf}[polyglossia: module for latvian]
\makeatletter
-\def\latvian@font{\selectfontfamilylatin}
-
-\ifx\l@latvian\@undefined
- \xpg@nopatterns{Latvian}
- \adddialect\l@latvian\l@nohyphenation\relax
-\fi
+\PolyglossiaSetup{latvian}{
+ hyphennames={latvian},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionslatvian{%
\def\prefacename{Priekšvārds}%
@@ -39,8 +38,4 @@
jūlijā\or augustā\or septembrī\or%
oktobrī\or novembrī\or decembrī\fi}}
-\def\latvian@language{\language=\l@latvian}
-
-\setlocalhyphenmins{latvian}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lithuanian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lithuanian.ldf
index ecfb61d68b3..f1bc9344610 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lithuanian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lithuanian.ldf
@@ -1,67 +1,64 @@
% Translated by Paulius Sladkevičius <komsas@gmail.com>
+% See also http://github.com/fc7/polyglossia/issues#issue/6
\ProvidesFile{gloss-lithuanian.ldf}[polyglossia: module for lithuanian]
-\makeatletter
-
-\ifx\l@lithuanian\@undefined%
- \xpg@nopatterns{Lithuanian}%
- \adddialect\l@lithuanian\l@nohyphenation\relax
-\fi
+\PolyglossiaSetup{lithuanian}{
+ hyphennames={lithuanian},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionslithuanian{%
- \def\refname{\textlithuanian{Literatūra}}%
- \def\abstractname{\textlithuanian{Santrauka}}%
- \def\bibname{\textlithuanian{Literatūra}}%
- \def\prefacename{\textlithuanian{Pratarmė}}%
- \def\chaptername{\textlithuanian{Skyrius}}%
- \def\appendixname{\textlithuanian{Priedas}}%
- \def\contentsname{\textlithuanian{Turinys}}%
- \def\listfigurename{\textlithuanian{Iliustracijų sąrašas}}%
- \def\listtablename{\textlithuanian{Lentelių sąrašas}}%
- \def\indexname{\textlithuanian{Rodyklė}}%
- \def\figurename{\textlithuanian{Pav.}}%
- \def\tablename{\textlithuanian{Lentelė}}%
- %\def\thepart{\textlithuanian{}}% Roman numerals are fine
- \def\partname{\textlithuanian{Dalis}}%
- \def\pagename{\textlithuanian{Puslapis}}%
- \def\seename{\textlithuanian{žiūrėk}}%
- \def\alsoname{\textlithuanian{tai pat}}%
- \def\enclname{\textlithuanian{Įdėta}}%
- \def\ccname{\textlithuanian{Kopijos}}%
- \def\headtoname{\textlithuanian{Kam}}%
- \def\proofname{\textlithuanian{Įrodymas}}%
- \def\glossaryname{\textlithuanian{Terminų žodynas}}%
- }
+ \def\refname{Literatūra}%
+ \def\abstractname{Santrauka}%
+ \def\bibname{Literatūra}%
+ \def\prefacename{Pratarmė}%
+ \def\chaptername{skyrius}%
+ \def\appendixname{Priedas}%
+ \def\contentsname{Turinys}%
+ \def\listfigurename{Iliustracijų sąrašas}%
+ \def\listtablename{Lentelių sąrašas}%
+ \def\indexname{Rodyklė}%
+ \def\figurename{pav.}%
+ \def\tablename{lentelė}%
+ %\def\thepart{}% Roman numerals are fine
+ \def\partname{Dalis}%
+ \def\pagename{puslapis}%
+ \def\seename{žiūrėk}%
+ \def\alsoname{taip pat}%
+ \def\enclname{Įdėta}%
+ \def\ccname{Kopijos}%
+ \def\headtoname{Kam}%
+ \def\proofname{Įrodymas}%
+ \def\glossaryname{Terminų žodynas}%
+}
\def\datelithuanian{%
- \def\lithuanianmonth{\ifcase\month\or%
- sausio\or% Jan
- vasario\or% Feb
- kovo\or% Mar
- balandžio\or% Apr
- gegužės\or% May
- birželio\or% Jun
- liepos\or% Jul
- rugpjūčio\or% Aug
- rugsėjo\or% Sep
- spalio\or% Oct
- lapkričio\or% Nov
- gruodžio% Dec
- \fi}
- \def\today{\textlithuanian{\number\year~m.~\lithuanianmonth~\number\day~d.}}%
- }
-
-\def\lithuanian@font{\selectfontfamilylatin} % <== if the script is Latin
-
-\def\lithuanian@language{\protect\language=\l@lithuanian}
-
-\setlocalhyphenmins{lithuanian}{2}{2}%
-
-\def\noextras@lithuanian{%
- }
+ \def\lithuanianmonth{\ifcase\month\or
+ sausio\or
+ vasario\or
+ kovo\or
+ balandžio\or
+ gegužės\or
+ birželio\or
+ liepos\or
+ rugpjūčio\or
+ rugsėjo\or
+ spalio\or
+ lapkričio\or
+ gruodžio\fi}
+ \def\today{\number\year~m.~\lithuanianmonth~\number\day~d.}%
+}
\def\blockextras@lithuanian{%
- }
+ \let\fnum@figure@orig\fnum@figure
+ \let\fnum@table@orig\fnum@table
+ \def\fnum@figure{\thefigure\nobreakspace\figurename}%
+ \def\fnum@table{\thetable\nobreakspace\tablename}%
+}
-\def\inlineextras@lithuanian{%
- }
+\def\noblockextras@lithuanian{%
+ \let\fnum@figure\fnum@figure@orig
+ \let\fnum@table\fnum@table@orig
+}
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lsorbian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lsorbian.ldf
index 8b530ae855c..b0796a26020 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lsorbian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-lsorbian.ldf
@@ -1,18 +1,10 @@
\ProvidesFile{gloss-lsorbian.ldf}[polyglossia: module for lower sorbian]
\makeatletter
-\def\lsorbian@font{\selectfontfamilylatin}
-
-\ifx\l@lowersorbian\@undefined
- \ifx\l@lsorbian\@undefined
- \xpg@nopatterns{Lsorbian}
- \adddialect\l@lsorbian\z@
- \let\l@lowersorbian\l@lsorbian
- \else
- \let\l@lowersorbian\l@lsorbian
- \fi
-\else
- \let\l@lsorbian\l@lowersorbian
-\fi
+\PolyglossiaSetup{lsorbian}{
+ hyphennames={lsorbian,lowersorbian,Lsorbian},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionslsorbian{%
\def\refname{Referency}%
@@ -51,8 +43,4 @@
godownika\fi\space \number\year}}%
}
-\def\lsorbian@language{\language=\l@lsorbian}
-
-\setlocalhyphenmins{lsorbian}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-magyar.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-magyar.ldf
index d74b545e439..22fdc5fae8e 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-magyar.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-magyar.ldf
@@ -1,18 +1,10 @@
\ProvidesFile{gloss-magyar.ldf}[polyglossia: module for magyar]
\makeatletter
-\def\magyar@font{\selectfontfamilylatin}
-
-\ifx\l@magyar\@undefined
- \ifx\l@hungarian\@undefined
- \xpg@nopatterns{Magyar}
- \adddialect\l@magyar\l@nohyphenation
- \else
- \let\l@magyar\l@hungarian
- \fi
-\fi
-\ifx\l@hungarian\@undefined
- \let\l@hungarian\l@magyar
-\fi
+\PolyglossiaSetup{magyar}{
+ hyphennames={magyar,hungarian},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsmagyar{%
\def\refname{Hivatkozások}%
@@ -46,7 +38,7 @@
július\or augusztus\or szeptember\or
október\or november\or december\fi
\space\number\day.}%
- \def\ondatemagyar{\textmagyar{%
+ \def\ondatemagyar{%
\number\year.\nobreakspace\ifcase\month\or
január\or február\or március\or
április\or május\or június\or
@@ -59,459 +51,11 @@
16-án\or 17-én\or 18-án\or 19-én\or 20-án\or
21-én\or 22-én\or 23-án\or 24-én\or 25-én\or
26-án\or 27-én\or 28-án\or 29-én\or 30-án\or
- 31-én\fi}}%
+ 31-én\fi}%
\let\ontoday\ondatemagyar}
-\def\magyar@language{\language=\l@magyar}
-
\def\noextras@magyar{%
\let\ontoday\@undefined
- }
-
-\setlocalhyphenmins{magyar}{2}{2}%
+}
\endinput
-
-%IN BABEL these are also redefined
-%
-%\def\fnum@figure{\thefigure.\nobreakspace\figurename}
-%\def\fnum@table{\thetable.\nobreakspace\tablename}
-%\def\@makecaption#1#2{%
-% \vskip\abovecaptionskip
-% \sbox\@tempboxa{#1. #2}%
-% \ifdim \wd\@tempboxa >\hsize
-% {#1. #2\csname par\endcsname}
-% \else
-% \global \@minipagefalse
-% \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
-% \fi
-% \vskip\belowcaptionskip}
-%\long\def\@caption#1[#2]#3{%
-% \csname par\endcsname
-% \addcontentsline{\csname ext@#1\endcsname}{#1}%
-% {\protect\numberline{\csname the#1\endcsname.}{\ignorespaces #2}}%
-% \begingroup
-% \@parboxrestore
-% \if@minipage
-% \@setminipage
-% \fi
-% \normalsize
-% \@makecaption{\csname fnum@#1\endcsname}%
-% {\ignorespaces #3}\csname par\endcsname
-% \endgroup}
-%\def\@seccntformat#1{\csname the#1\endcsname.\quad}
-%\def\@sect#1#2#3#4#5#6[#7]#8{%
-% \ifnum #2>\c@secnumdepth
-% \let\@svsec\@empty
-% \else
-% \refstepcounter{#1}%
-% \protected@edef\@svsec{\@seccntformat{#1}\relax}%
-% \fi
-% \@tempskipa #5\relax
-% \ifdim \@tempskipa>\z@
-% \begingroup
-% #6{%
-% \@hangfrom{\hskip #3\relax\@svsec}%
-% \interlinepenalty \@M #8\@@par}%
-% \endgroup
-% \csname #1mark\endcsname{#7}%
-% \addcontentsline{toc}{#1}{%
-% \ifnum #2>\c@secnumdepth \else
-% \protect\numberline{\csname the#1\endcsname.}%
-% \fi
-% #7}%
-% \else
-% \def\@svsechd{%
-% #6{\hskip #3\relax
-% \@svsec #8.}%
-% \csname #1mark\endcsname{#7}%
-% \addcontentsline{toc}{#1}{%
-% \ifnum #2>\c@secnumdepth \else
-% \protect\numberline{\csname the#1\endcsname.}%
-% \fi
-% #7}}%
-% \fi
-% \@xsect{#5}}
-%\def\@ssect#1#2#3#4#5{%
-% \@tempskipa #3\relax
-% \ifdim \@tempskipa>\z@
-% \begingroup
-% #4{%
-% \@hangfrom{\hskip #1}%
-% \interlinepenalty \@M #5\@@par}%
-% \endgroup
-% \else
-% \def\@svsechd{#4{\hskip #1\relax #5.}}%
-% \fi
-% \@xsect{#3}}
-%\def\@begintheorem#1#2{\trivlist
-% \item[\hskip \labelsep{\bfseries #2.\ #1.}]\itshape}%
-%\def\@opargbegintheorem#1#2#3{\trivlist
-% \item[\hskip \labelsep{\bfseries #2.\ #1\ (#3).}]\itshape}
-%\@ifclassloaded{book}{%
-% \if@twoside
-% \def\ps@headings{%
-% \let\@oddfoot\@empty\let\@evenfoot\@empty
-% \def\@evenhead{\thepage\hfil\slshape\leftmark}%
-% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
-% \let\@mkboth\markboth
-% \def\chaptermark##1{%
-% \markboth {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\m@ne
-% \if@mainmatter
-% \thechapter. \@chapapp. \ %
-% \fi
-% \fi
-% ##1}}{}}%
-% \def\sectionmark##1{%
-% \markright {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\z@
-% \thesection. \ %
-% \fi
-% ##1}}}}%
-% \else
-% \def\ps@headings{%
-% \let\@oddfoot\@empty
-% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
-% \let\@mkboth\markboth
-% \def\chaptermark##1{%
-% \markright {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\m@ne
-% \if@mainmatter
-% \thechapter. \@chapapp. \ %
-% \fi
-% \fi
-% ##1}}}}%
-% \fi
-% \def\@part[#1]#2{%
-% \ifnum \c@secnumdepth >-2\relax
-% \refstepcounter{part}%
-% \addcontentsline{toc}{part}{\thepart.\hspace{1em}#1}%
-% \else
-% \addcontentsline{toc}{part}{#1}%
-% \fi
-% \markboth{}{}%
-% {\centering
-% \interlinepenalty \@M
-% \normalfont
-% \ifnum \c@secnumdepth >-2\relax
-% \huge\bfseries \thepart.\nobreakspace\partname
-% \csname par\endcsname
-% \vskip 20\p@
-% \fi
-% \Huge \bfseries #2\csname par\endcsname}%
-% \@endpart}
-% \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
-% \if@mainmatter
-% \refstepcounter{chapter}%
-% \typeout{\thechapter.\space\@chapapp.}%
-% \addcontentsline{toc}{chapter}%
-% {\protect\numberline{\thechapter.}#1}%
-% \else
-% \addcontentsline{toc}{chapter}{#1}%
-% \fi
-% \else
-% \addcontentsline{toc}{chapter}{#1}%
-% \fi
-% \chaptermark{#1}%
-% \addtocontents{lof}{\protect\addvspace{10\p@}}%
-% \addtocontents{lot}{\protect\addvspace{10\p@}}%
-% \if@twocolumn
-% \@topnewpage[\@makechapterhead{#2}]%
-% \else
-% \@makechapterhead{#2}%
-% \@afterheading
-% \fi}
-% \def\@makechapterhead#1{%
-% \vspace*{50\p@}%
-% {\parindent \z@ \raggedright \normalfont
-% \ifnum \c@secnumdepth >\m@ne
-% \if@mainmatter
-% \huge\bfseries \thechapter.\nobreakspace\@chapapp{}
-% \csname par\endcsname\nobreak
-% \vskip 20\p@
-% \fi
-% \fi
-% \interlinepenalty\@M
-% \Huge \bfseries #1\csname par\endcsname\nobreak
-% \vskip 40\p@
-% }}%
-%}{}
-%\@ifclassloaded{report}{%
-% \if@twoside
-% \def\ps@headings{%
-% \let\@oddfoot\@empty\let\@evenfoot\@empty
-% \def\@evenhead{\thepage\hfil\slshape\leftmark}%
-% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
-% \let\@mkboth\markboth
-% \def\chaptermark##1{%
-% \markboth {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\m@ne
-% \thechapter. \@chapapp. \ %
-% \fi
-% ##1}}{}}%
-% \def\sectionmark##1{%
-% \markright {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\z@
-% \thesection. \ %
-% \fi
-% ##1}}}}%
-% \else
-% \def\ps@headings{%
-% \let\@oddfoot\@empty
-% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
-% \let\@mkboth\markboth
-% \def\chaptermark##1{%
-% \markright {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\m@ne
-% \thechapter. \@chapapp. \ %
-% \fi
-% ##1}}}}%
-% \fi
-% \def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
-% \refstepcounter{chapter}%
-% \typeout{\thechapter.\space\@chapapp.}%
-% \addcontentsline{toc}{chapter}%
-% {\protect\numberline{\thechapter.}#1}%
-% \else
-% \addcontentsline{toc}{chapter}{#1}%
-% \fi
-% \chaptermark{#1}%
-% \addtocontents{lof}{\protect\addvspace{10\p@}}%
-% \addtocontents{lot}{\protect\addvspace{10\p@}}%
-% \if@twocolumn
-% \@topnewpage[\@makechapterhead{#2}]%
-% \else
-% \@makechapterhead{#2}%
-% \@afterheading
-% \fi}
-% \def\@makechapterhead#1{%
-% \vspace*{50\p@}%
-% {\parindent \z@ \raggedright \normalfont
-% \ifnum \c@secnumdepth >\m@ne
-% \huge\bfseries \thechapter.\nobreakspace\@chapapp{}
-% \csname par\endcsname\nobreak
-% \vskip 20\p@
-% \fi
-% \interlinepenalty\@M
-% \Huge \bfseries #1\csname par\endcsname\nobreak
-% \vskip 40\p@
-% }}%
-%}{}
-%\@ifclassloaded{article}{%
-% \if@twoside
-% \def\ps@headings{%
-% \let\@oddfoot\@empty\let\@evenfoot\@empty
-% \def\@evenhead{\thepage\hfil\slshape\leftmark}%
-% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
-% \let\@mkboth\markboth
-% \def\sectionmark##1{%
-% \markboth {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\z@
-% \thesection.\quad
-% \fi
-% ##1}}{}}%
-% \def\subsectionmark##1{%
-% \markright {%
-% \ifnum \c@secnumdepth >\@ne
-% \thesubsection.\quad
-% \fi
-% ##1}}}%
-% \else
-% \def\ps@headings{%
-% \let\@oddfoot\@empty
-% \def\@oddhead{{\slshape\rightmark}\hfil\thepage}%
-% \let\@mkboth\markboth
-% \def\sectionmark##1{%
-% \markright {\MakeUppercase{%
-% \ifnum \c@secnumdepth >\m@ne
-% \thesection.\quad
-% \fi
-% ##1}}}}%
-% \fi%
-%}{}
-%\@ifclassloaded{letter}{%
-% \if@twoside
-% \def\ps@headings{%
-% \let\@oddfoot\@empty\let\@evenfoot\@empty
-% \def\@oddhead{\slshape\headtoname{:} \ignorespaces\toname
-% \hfil \@date
-% \hfil \thepage.\nobreakspace\pagename}%
-% \let\@evenhead\@oddhead}
-% \else
-% \def\ps@headings{%
-% \let\@oddfoot\@empty
-% \def\@oddhead{\slshape\headtoname{:} \ignorespaces\toname
-% \hfil \@date
-% \hfil \thepage.\nobreakspace\pagename}}
-% \fi%
-%}{}
-%\def\az{a\@ifstar{\@az}{\az@}}
-%\def\Az{A\@ifstar{\@az}{\az@}}
-%\def\az@#1{\@az{#1}\nobreakspace#1}
-%\def\@az#1{%
-% \hun@tempadef{relax}{relax}{#1}%
-% \edef\@tempb{\noexpand\@@az\@tempa\hbox!}%
-% \@tempb}
-%\def\hun@tempadef#1#2#3{%
-% \begingroup
-%% \def\@safe@activesfalse{}%
-%% \def\setbox ##1{}% to get rid of accents and special letters
-%% \def\hbox ##1{}%
-%% \def\accent ##1 ##2{##2}%
-%% \def\add@accent ##1##2{##2}%
-%% \def\@text@composite@x ##1##2{##2}%
-%% \def\i{i}\def\j{j}%
-%% \def\ae{a}\def\AE{A}\def\oe{o}\def\OE{O}%
-%% \def\ss{s}\def\L{L}%
-%% \def\d{}\def\b{}\def¸\def\t{}%
-% \expandafter\ifx\csname #1\endcsname\relax
-% \expandafter\ifx\csname #2\endcsname\relax
-% \xdef\@tempa{#3}%
-% \else
-% \xdef\@tempa{\csname #2\endcsname}%
-% \fi
-% \else
-% \xdef\@tempa{\csname #1\endcsname}%
-% \fi
-% \endgroup}
-%\def\aref{\azr}
-%\def\Aref{\Azr}
-%\def\azr{a\@ifstar{\@azr}{\azr@}}
-%\def\Azr{A\@ifstar{\@azr}{\azr@}}
-%\def\azr@{\@ifnextchar ({\azr@@@}{\azr@@}}
-%\def\azr@@#1{\@azr{#1}\nobreakspace\ref{#1}}
-%\def\azr@@@(#1{\@azr{#1}\nobreakspace(\ref{#1}}
-%\def\@azr#1{%
-% \hun@tempadef{hun@r@#1}{r@#1}{}%
-% \ifx\@tempa\empty
-% \else
-% \edef\@tempb{\noexpand\@@az\expandafter\@firstoftwo\@tempa\hbox!}%
-% \@tempb
-% \fi
-%}
-%\def\apageref{\azp}
-%\def\Apageref{\Azp}
-%\def\azp{a\@ifstar{\@azp}{\azp@}}
-%\def\Azp{A\@ifstar{\@azp}{\azp@}}
-%\def\azp@#1{\@azp{#1}\nobreakspace\pageref{#1}}
-%\def\@azp#1{%
-% \hun@tempadef{hun@r@#1}{r@#1}{}%
-% \ifx\@tempa\empty
-% \else
-% \edef\@tempb{\noexpand\@@az\expandafter\@secondoftwo\@tempa\hbox!}%
-% \@tempb
-% \fi
-%}
-%\def\acite{\azc}
-%\def\Acite{\Azc}
-%\def\azc{a\@ifstar{\@azc}{\azc@}}
-%\def\Azc{A\@ifstar{\@azc}{\azc@}}
-%\def\azc@{\@ifnextchar [{\azc@@}{\azc@@[]}}
-%\def\azc@@[#1]#2{%
-% \@azc{#2}\nobreakspace\def\@tempa{#1}%
-% \ifx\@tempa\@empty\cite{#2}\else\cite[#1]{#2}\fi}
-%\def\@azc#1{\@@azc#1,\hbox!}
-%\def\@@azc#1,#2\hbox#3!{%
-% \hun@tempadef{hun@b@#1}{b@#1}{}%
-% \ifx\@tempa\empty
-% \else
-% \edef\@tempb{\noexpand\@@az\@tempa\hbox!}%
-% \@tempb
-% \fi}
-%\def\hun@number@lehgth#1#2\hbox#3!{%
-% \ifcat\noexpand#11%
-% \ifnum\expandafter`\csname#1\endcsname>47
-% \ifnum\expandafter`\csname#1\endcsname<58
-% \advance\count@ by \@ne
-% \hun@number@lehgth#2\hbox\hbox!\fi\fi\fi}
-%\def\hun@alph@lehgth#1#2\hbox#3!{%
-% \ifcat\noexpand#1A%
-% \advance\count@ by \@ne
-% \hun@alph@lehgth#2\hbox\hbox!\fi}
-%\def\@@az@string#1#2{%
-% \ifx#1A%
-% \let\@tempa\@tempb
-% \else\ifx#1E%
-% \let\@tempa\@tempb
-% \else\ifx#1I%
-% \let\@tempa\@tempb
-% \else\ifx#1O%
-% \let\@tempa\@tempb
-% \else\ifx#1U%
-% \let\@tempa\@tempb
-% \fi\fi\fi\fi\fi
-% \ifx\@tempa\@tempb
-% \else
-% \count@\z@
-% \hun@alph@lehgth#1#2\hbox\hbox!%
-% \ifnum\count@=\@ne
-% \ifx#1F%
-% \let\@tempa\@tempb
-% \else\ifx#1L%
-% \let\@tempa\@tempb
-% \else\ifx#1M%
-% \let\@tempa\@tempb
-% \else\ifx#1N%
-% \let\@tempa\@tempb
-% \else\ifx#1R%
-% \let\@tempa\@tempb
-% \else\ifx#1S%
-% \let\@tempa\@tempb
-% \else\ifx#1X%
-% \let\@tempa\@tempb
-% \else\ifx#1Y%
-% \let\@tempa\@tempb
-% \fi\fi\fi\fi\fi\fi\fi\fi
-% \fi
-% \fi}
-%\def\@@az#1#2\hbox#3!{%
-% \let\@tempa\@empty
-% \def\@tempb{z}%
-% \uppercase{%
-% \ifx5#1%
-% \let\@tempa\@tempb
-% \else\ifx1#1%
-% \count@\@ne
-% \hun@number@lehgth#2\hbox\hbox!%
-% \loop
-% \ifnum\count@>\thr@@
-% \advance\count@-\thr@@
-% \repeat
-% \ifnum\count@=\@ne
-% \let\@tempa\@tempb
-% \fi
-% \else
-% \@@az@string{#1}{#2}%
-% \fi\fi
-% }%
-% \@tempa}
-%\def\refstepcounter#1{\stepcounter{#1}%
-% \def\@currentlabel{\csname p@#1\endcsname\csname the#1\endcsname}}%
-%\let\old@label\label
-%\def\label#1{\@bsphack
-% \old@label{#1}%
-% \begingroup
-% \let\romannumeral\number
-% \def\@roman##1{\number ##1}%
-% \def\@Roman##1{\number ##1}%
-% {\toks0={\noexpand\noexpand\noexpand\number}%
-% \def\number##1{\the\toks0 ##1}\xdef\tempb@{\thepage}}%
-% \edef\@tempa##1{\noexpand\protected@write\@auxout{}%
-% {\noexpand\string\noexpand\hunnewlabel
-% {##1}{{\@currentlabel}{\tempb@}}}}%
-% \@tempa{#1}%
-% \endgroup
-% \@esphack}%
-%
-%%% noextras :
-%%% \let\label\old@label
-%
-%\def\hunnewlabel#1#2{%
-% \def\@tempa{#2}%
-% \expandafter\ifx\csname r@#1\endcsname\@tempa
-% \relax% \message{No need for def: #1}%
-% \else
-% \global\expandafter\let\csname hun@r@#1\endcsname\@tempa%
-% \fi
-%}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-malayalam.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-malayalam.ldf
new file mode 100644
index 00000000000..38b3d10d458
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-malayalam.ldf
@@ -0,0 +1,54 @@
+\ProvidesFile{gloss-malayalam.ldf}[polyglossia: module for malayalam]
+% Translations provided by Kevin & Siji, 01-11-2009
+\makeatletter
+
+\PolyglossiaSetup{malayalam}{
+ script=Malayalam,
+ scripttag=mlym,
+ langtag=MAL, %FIXME there is also MLR for "Malayalam Reformed"
+ hyphennames={malayalam},
+ hyphenmins={2,2}, %FIXME
+ fontsetup=true,
+}
+
+\def\captionsmalayalam{%
+ \def\abstractname{സാരാംശം}%
+ \def\appendixname{ശിഷ്ടം}%
+ \def\bibname{}% (?)
+ \def\ccname{}%
+ \def\chaptername{അദ്ധ്യായം}%
+ \def\contentsname{ഉള്ളടക്കം}%
+ \def\enclname{}%
+ \def\figurename{ചിത്രം}% रेखाचित्र
+ \def\headpagename{}%
+ \def\headtoname{}%
+ \def\indexname{സൂചിക}%
+ \def\listfigurename{ചിത്രസൂചിക}%
+ \def\listtablename{പട്ടികകളുടെ സൂചിക}%
+ \def\pagename{}%
+ \def\partname{ഭാഗം}%
+ \def\prefacename{}%
+ \def\refname{}%
+ \def\tablename{പട്ടിക}%
+ \def\seename{കാണുക}%
+ \def\alsoname{ഇതും കാണുക}%
+ \def\alsoseename{ഇതും കാണുക}%
+}
+\def\datemalayalam{%
+ \def\today{\number\year\space\ifcase\month\or
+ ജനുവരി\or
+ ഫിബ്രുവരി\or
+ മാർച്ച്\or
+ ഏപ്രിൽ\or
+ മെയ്\or
+ ജൂൺ\or
+ ജൂലായ്\or
+ ആഗസ്ത്\or
+ സെപ്തംബർ\or
+ ഒക്ടോബർ\or
+ നവംബർ\or
+ ഡിസംബർ\fi
+ \space\number\day}%
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-marathi.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-marathi.ldf
new file mode 100644
index 00000000000..5556dd10a2e
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-marathi.ldf
@@ -0,0 +1,79 @@
+% Translations provided by Abhijit Navale <abhi_navale@live.in>
+% TODO implement Hindu calendar (not used in day-to-day practice)
+
+\ProvidesFile{gloss-marathi.ldf}[polyglossia: module for marathi]
+\RequirePackage{devanagaridigits}
+\makeatletter
+
+\PolyglossiaSetup{marathi}{
+ script=Devaganari,
+ scripttag=deva,
+ langtag=MAR,
+ hyphennames={marathi},
+ hyphenmins={2,2},%CHECK
+ fontsetup=true,
+ %TODO nouppercase=true,
+ %TODO localnumber=marathinumber
+}
+
+\def\tmp@western{Western}
+\newif\ifmarathi@devanagari@numerals
+\marathi@devanagari@numeralstrue
+
+\define@key{marathi}{numerals}[Devanagari]{%
+ \def\@tmpa{#1}%
+ \ifx\@tmpa\tmp@western
+ \marathi@devanagari@numeralsfalse
+ \fi}
+
+\def\marathinumber#1{%
+ \ifmarathi@devanagari@numerals
+ \devanagaridigits{\number#1}%
+ \else
+ \number#1%
+ \fi}
+
+\def\captionsmarathi{%
+ \def\refname{संदर्भ}%
+ \def\abstractname{सारांश}%
+ \def\bibname{संदर्भ ग्रंथांची यादी}%
+ \def\prefacename{प्रस्तावना}%
+ \def\chaptername{प्रकरण}%
+ \def\appendixname{परिशिष्ट}%
+ \def\contentsname{अनुक्रमणिका}%
+ \def\listfigurename{आक्रुत्यांची यादी}%
+ \def\listtablename{कॊष्टकांची यादी}%
+ \def\indexname{सुची}%
+ \def\figurename{आक्रुती}%
+ \def\tablename{कोष्टक}%
+ %\def\thepart{}% TODO
+ \def\partname{भाग}%
+ \def\pagename{पान}%
+ \def\seename{पहा}%
+ \def\alsoname{हे सुध्दा पहा}%
+ \def\enclname{समाविष्ट}%
+ \def\ccname{सि.सि.}%
+ \def\headtoname{प्रति}%
+ \def\proofname{कसोटी}%
+ \def\glossaryname{स्पष्टीकरणकोश}%
+}
+\def\datemarathi{%
+ \def\marathimonth{%
+ \ifcase\month\or
+ जानेवारी\or
+ फेब्रुवारी\or
+ मार्च\or
+ एप्रिल\or
+ मे\or
+ जुन\or
+ जुलॆ\or
+ ओगस्ट\or
+ सप्टेंबर\or
+ ओक्टोबर\or
+ नोव्हेंबर\or
+ डिसेंबर\fi
+ }%
+ \def\today{\marathinumber\day\space\marathimonth\space\marathinumber\year}%
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-norsk.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-norsk.ldf
index 46f81bf143c..46a7c36bece 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-norsk.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-norsk.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-norsk.ldf}[polyglossia: module for norwegian]
\makeatletter
-\def\norsk@font{\selectfontfamilylatin}
-
-\ifx\l@norsk\@undefined%
- \xpg@nopatterns{Norsk}%
- \adddialect\l@norsk\l@nohyphenation%
-\fi
+\PolyglossiaSetup{norsk}{
+ hyphennames={norsk},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsnorsk{%
\def\refname{Referanser}%
@@ -31,6 +31,7 @@
\def\proofname{Bevis}%
\def\glossaryname{Ordliste}%
}
+
\def\datenorsk{%
\def\today{\number\day.~\ifcase\month\or
januar\or februar\or mars\or april\or mai\or juni\or
@@ -38,21 +39,5 @@
\fi\space\number\year}%
}
-\def\norsk@language{\language=\l@norsk}
-
-\setlocalhyphenmins{norsk}{2}{2}%
-
-\def\noextras@norsk{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@norsk{%
- \frenchspacing%
- }
-
-\def\inlineextras@norsk{%
- \frenchspacing%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-nynorsk.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-nynorsk.ldf
index 276a1410116..cd66aea3998 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-nynorsk.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-nynorsk.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-nynorsk.ldf}[polyglossia: module for norwegian (Nynorsk)]
\makeatletter
-\def\nynorsk@font{\selectfontfamilylatin}
-
-\ifx\l@nynorsk\@undefined%
- \xpg@nopatterns{Nynorsk}%
- \adddialect\l@nynorsk\l@nohyphenation%
-\fi
+\PolyglossiaSetup{nynorsk}{
+ hyphennames={nynorsk},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsnynorsk{%
\def\refname{Referansar}%
@@ -31,6 +31,7 @@
\def\proofname{Bevis}%
\def\glossaryname{Ordliste}%
}
+
\def\datenynorsk{%
\def\today{\number\day.~\ifcase\month\or
januar\or februar\or mars\or april\or mai\or juni\or
@@ -38,21 +39,5 @@
\fi\space\number\year}%
}
-\def\norsk@language{\language=\l@nynorsk}
-
-\setlocalhyphenmins{nynorsk}{2}{2}%
-
-\def\noextras@nynorsk{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@nynorsk{%
- \frenchspacing%
- }
-
-\def\inlineextras@nynorsk{%
- \frenchspacing%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-occitan.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-occitan.ldf
new file mode 100644
index 00000000000..40669d18275
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-occitan.ldf
@@ -0,0 +1,58 @@
+% Translated by Cédric Valmary <cvalmary@yahoo.fr> of Tot en òc <http://www.totenoc.org/>
+\ProvidesFile{gloss-occitan.ldf}[polyglossia: module for occitan]
+
+\PolyglossiaSetup{occitan}{
+ hyphennames={occitan},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
+
+\def\captionsoccitan{%
+ \def\refname{Referéncias}%
+ \def\abstractname{Resumit}%
+ \def\bibname{Bibliografia}%
+ \def\prefacename{Prefàcia}%
+ \def\chaptername{Capítol}%
+ \def\appendixname{Annèx}%
+ \def\contentsname{Ensenhador}%
+ \def\listfigurename{Taula de las figuras}%
+ \def\listtablename{Taula dels tablèus}%
+ \def\indexname{Indèx}%
+ \def\figurename{Figura}%
+ \def\tablename{Tablèu}%
+ %\def\thepart{\textoccitan{}}%
+ \def\partname{Partida}%
+ \def\pagename{Pagina}%
+ \def\seename{vejatz}%
+ \def\alsoname{vejatz tanben}%
+ \def\enclname{Pèça junta}%
+ \def\ccname{còpia a}%
+ \def\headtoname{A}%
+ \def\proofname{Demostracion}%
+ \def\glossaryname{Glossari}%
+}
+\def\dateoccitan{%
+ \def\occitanmonth{\ifcase\month\or
+ de~genièr\or
+ de~febrièr\or
+ de~març\or
+ d'abril\or
+ de~mai\or
+ de~junh\or
+ de~julhet\or
+ d'agost\or
+ de~setembre\or
+ d'octobre\or
+ de~novembre\or
+ de~decembre\fi
+ }%
+ \def\occitanday{\ifcase\day\or
+ 1èr\else% primièr
+ \number\day\fi% all other numbers
+ }%
+ \def\today{\occitanday \occitanmonth\space de~\number\year}%
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-polish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-polish.ldf
index d3519b9562d..f49b881c83c 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-polish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-polish.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-polish.ldf}[polyglossia: module for polish]
\makeatletter
-\def\polish@font{\selectfontfamilylatin}
-
-\ifx\l@polish\@undefined
- \xpg@nopatterns{polish}
- \adddialect\l@polish\l@nohyphenation
-\fi
+\PolyglossiaSetup{polish}{
+ hyphennames={polish},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionspolish{%
\def\prefacename{Przedmowa}%
@@ -29,28 +29,14 @@
\def\alsoname{Porównaj także}%
\def\proofname{Dowód}%
\def\glossaryname{Glossary}% <-- Needs translation
- }
-\def\datepolish{%
- \def\today{\ifcase\month\or%
- stycznia\or lutego\or marca\or kwietnia\or maja\or czerwca\or%
- lipca\or sierpnia\or września\or października\or%
- listopada\or grudnia\fi%
- \space\number\day, \number\year}}
+ }
-\def\polish@language{\language=\l@polish}
-
-\setlocalhyphenmins{polish}{2}{2}%
-
-\def\noextras@polish{%
- \nonfrenchspacing%
-}
-
-\def\blockextras@polish{%
- \frenchspacing%
-}
-
-\def\inlineextras@polish{%
- \frenchspacing%
-}
+\def\datepolish{%
+ \def\today{\ifcase\month\or
+ stycznia\or lutego\or marca\or kwietnia\or maja\or czerwca\or
+ lipca\or sierpnia\or września\or października\or
+ listopada\or grudnia\fi
+ \space\number\day, \number\year}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-portuges.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-portuges.ldf
index dbc6f9922d4..6b25313974b 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-portuges.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-portuges.ldf
@@ -1,49 +1,41 @@
\ProvidesFile{gloss-portuges.ldf}[polyglossia: module for portuguese]
\makeatletter
-\def\portuges@font{\selectfontfamilylatin}
-
-\ifx\l@portuges\@undefined
- \ifx\l@portuguese\@undefined
- \xpg@nopatterns{Portuguese}
- \adddialect\l@portuges\l@nohyphenation
- \else
- \let\l@portuges\l@portuguese
- \fi
-\fi
+\PolyglossiaSetup{portuges}{
+ hyphennames={portuges,portuguese},
+ hyphenmins={2,3},
+ fontsetup=true,
+}
\def\captionsportuges{%
- \def\refname{Referências}%
- \def\abstractname{Resumo}%
- \def\bibname{Bibliografia}%
- \def\prefacename{Prefácio}%
- \def\chaptername{Capítulo}%
- \def\appendixname{Apêndice}%
- \def\contentsname{Conteúdo}%
- \def\listfigurename{Lista de Figuras}%
- \def\listtablename{Lista de Tabelas}%
- \def\indexname{Índice}%
- \def\figurename{Figura}%
- \def\tablename{Tabela}%
- %\def\thepart{}%
- \def\partname{Parte}%
- \def\pagename{Página}%
- \def\seename{ver}%
- \def\alsoname{ver também}%
- \def\enclname{Anexo}%
- \def\ccname{Com cópia a}%
- \def\headtoname{Para}%
- \def\proofname{Demonstração}%
- \def\glossaryname{Glossário}%
- }
+ \def\refname{Referências}%
+ \def\abstractname{Resumo}%
+ \def\bibname{Bibliografia}%
+ \def\prefacename{Prefácio}%
+ \def\chaptername{Capítulo}%
+ \def\appendixname{Apêndice}%
+ \def\contentsname{Conteúdo}%
+ \def\listfigurename{Lista de Figuras}%
+ \def\listtablename{Lista de Tabelas}%
+ \def\indexname{Índice}%
+ \def\figurename{Figura}%
+ \def\tablename{Tabela}%
+ %\def\thepart{}%
+ \def\partname{Parte}%
+ \def\pagename{Página}%
+ \def\seename{ver}%
+ \def\alsoname{ver também}%
+ \def\enclname{Anexo}%
+ \def\ccname{Com cópia a}%
+ \def\headtoname{Para}%
+ \def\proofname{Demonstração}%
+ \def\glossaryname{Glossário}%
+ }
+
\def\dateportuges{%
- \def\today{\number\day\space de\space\ifcase\month\or
- Janeiro\or Fevereiro\or Março\or Abril\or Maio\or Junho\or
- Julho\or Agosto\or Setembro\or Outubro\or Novembro\or Dezembro%
- \fi\space de\space\number\year}%
- }
+ \def\today{\number\day\space de\space\ifcase\month\or
+ Janeiro\or Fevereiro\or Março\or Abril\or Maio\or Junho\or
+ Julho\or Agosto\or Setembro\or Outubro\or Novembro\or Dezembro\fi
+ \space de\space\number\year}%
+ }
-\def\portuges@language{\language=\l@portuges}
-
-%\setlocalhyphenmins{portuges}{2}{3}% this is the default
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-romanian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-romanian.ldf
index 0be15d42dde..efe1b9d672b 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-romanian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-romanian.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-romanian.ldf}[polyglossia: module for romanian]
\makeatletter
-\def\romanian@font{\selectfontfamilylatin}%TODO\addfontfeature{Language=Romanian}
-\ifx\l@romanian\@undefined%
- \xpg@nopatterns{Romanian}%
- \adddialect\l@romanian\l@nohyphenation%
-\fi
+\PolyglossiaSetup{romanian}{
+ hyphennames={romanian},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsromanian{%
\def\refname{Bibliografie}%
@@ -31,16 +31,13 @@
\def\proofname{Demonstrație}%
\def\glossaryname{Glosar}%
}
-\def\dateromanian{%
- \def\today{\number\day~\ifcase\month\or
+
+\def\dateromanian{%
+ \def\today{\number\day~\ifcase\month\or
ianuarie\or februarie\or martie\or aprilie\or mai\or
iunie\or iulie\or august\or septembrie\or octombrie\or
noiembrie\or decembrie\fi
\space \number\year}%
- }
-
-\def\romanian@language{\language=\l@romanian}
-
-\setlocalhyphenmins{romanian}{2}{2}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-russian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-russian.ldf
index 4e7684f3d50..194b40d5892 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-russian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-russian.ldf
@@ -1,59 +1,88 @@
\ProvidesFile{gloss-russian.ldf}[polyglossia: module for russian]
\makeatletter
+\PolyglossiaSetup{russian}{
+ script=Cyrillic,
+ scripttag=cyrl,
+ langtag=RUS,
+ hyphennames={russian},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup
+ %TODO localalph={russian@alph,russian@Alph}
+}
+
+\define@key{russian}{spelling}[modern]{%
+ \ifstrequal{#1}{old}%
+ {\def\captionsrussian{\captionsrussian@old}%
+ \def\daterussian{\daterussian@old}}%
+ {\def\captionsrussian{\captionsrussian@modern}%
+ \def\daterussian{\daterussian@modern}}%
+}
+
+\newif\ifcyrillic@numerals
+\define@key{russian}{numerals}[latin]{%
+ \ifstrequal{#1}{cyrillic}%
+ {\cyrillic@numeralstrue}
+ {\cyrillic@numeralsfalse}
+}
+
+\define@boolkey{russian}[russian@]{babelshorthands}[false]{}
-\ifx\l@russian\@undefined
- \xpg@nopatterns{Russian}
- \adddialect\l@russian\l@nohyphenation
+\setkeys{russian}{spelling,numerals}
+
+\ifsystem@babelshorthands
+ \setkeys{russian}{babelshorthands=true}
+\else
+ \setkeys{russian}{babelshorthands=false}
\fi
-\def\russian@font{%
- \@ifundefined{russianfont}{%
- \@ifundefined{cyrillicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{cyrl}%
- \if@tempswa
- \addfontfeature{Script=Cyrillic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Cyrillic script!^^J
- Please define \string\cyrillicfont\space or \string\russianfont\space with \string\newfontfamily}%
- \fi
- \zf@check@ot@lang{RUS}%
- \if@tempswa\addfontfeature{Language=Russian}\fi
+\ifcsundef{initiate@active@char}{%
+ \input{babelsh.def}%
+ \initiate@active@char{"}%
+}{}
+
+\def\russian@shorthands{%
+ \bbl@activate{"}%
+ \def\language@group{russian}%
+% \declare@shorthand{russian}{"`}{„}%
+% \declare@shorthand{russian}{"'}{“}%
+% \declare@shorthand{russian}{"<}{«}%
+% \declare@shorthand{russian}{">}{»}%
+ \declare@shorthand{russian}{""}{\hskip\z@skip}%
+ \declare@shorthand{russian}{"~}{\textormath{\leavevmode\hbox{-}}{-}}%
+ \declare@shorthand{russian}{"=}{\nobreak\-\hskip\z@skip}%
+ \declare@shorthand{russian}{"|}{\textormath{\nobreak\discretionary{-}{}{\kern.03em}\allowhyphens}{}}%
+ \declare@shorthand{russian}{"-}{%
+ \def\russian@sh@tmp{%
+ \if\russian@sh@next-\expandafter\russian@sh@emdash
+ \else\expandafter\russian@sh@hyphen\fi
}%
- {\cyrillicfont%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{RUS}%
- \if@tempswa\addfontfeature{Language=Russian}\fi}%
- }%
- {\russianfont}%
+ \futurelet\russian@sh@next\russian@sh@tmp}%
+ \def\russian@sh@hyphen{%
+ \nobreak\-\bbl@allowhyphens}%
+ \def\russian@sh@emdash##1##2{\cdash-##1##2}%
+ \def\cdash##1##2##3{\def\tempx@{##3}%
+ \def\tempa@{-}\def\tempb@{~}\def\tempc@{*}%
+ \ifx\tempx@\tempa@\@Acdash\else
+ \ifx\tempx@\tempb@\@Bcdash\else
+ \ifx\tempx@\tempc@\@Ccdash\else
+ \errmessage{Wrong usage of cdash}\fi\fi\fi}
+ \def\@Acdash{\ifdim\lastskip>\z@\unskip\nobreak\hskip.2em\fi
+ \cyrdash\hskip.2em\ignorespaces}%
+ \def\@Bcdash{\leavevmode\ifdim\lastskip>\z@\unskip\fi
+ \nobreak\cyrdash\penalty\exhyphenpenalty\hskip\z@skip\ignorespaces}%
+ \def\@Ccdash{\leavevmode
+ \nobreak\cyrdash\nobreak\hskip.35em\ignorespaces}%
+ \ifx\cyrdash\undefined
+ \def\cyrdash{\hbox to.8em{--\hss--}}
+ \fi
+ \declare@shorthand{russian}{",}{\nobreak\hskip.2em\ignorespaces}%
}
-\def\tmp@old{old}
-\define@key{russian}{spelling}[modern]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@old
- \def\captionsrussian{\captionsrussian@old}
- \def\daterussian{\daterussian@old}%
- \else%
- \def\captionsrussian{\captionsrussian@modern}
- \def\daterussian{\daterussian@modern}%
- \fi}
-
-%TODO: enable key to switch between latin and cyrillic \alph
-\def\tmp@latin{latin}
-\newif\iflatin@numerals
-\define@key{russian}{numerals}[russian]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@latin
- \latin@numeralstrue
- \else
- \latin@numeralsfalse
- \fi
+\def\norussian@shorthands{%
+ \@ifundefined{initiate@active@char}{}{\bbl@deactivate{"}}%
}
-\setkeys{russian}{spelling,numerals}
\def\captionsrussian@modern{%
\def\prefacename{Предисловие}%
@@ -122,7 +151,7 @@
\def\alsoname{см.~также}%
\def\proofname{Доказательство}%
}
-\def\daterussian@old{
+\def\daterussian@old{%
\def\today{\number\day%
\space\ifcase\month\or%
января\or
@@ -158,47 +187,68 @@
\def\preparagraph{}%
\def\presubparagraph{}}
+\def\Asbuk#1{\expandafter\russian@Alph\csname c@#1\endcsname}
\def\russian@Alph#1{\ifcase#1\or
А\or Б\or В\or Г\or Д\or Е\or Ж\or
З\or И\or К\or Л\or М\or Н\or О\or
П\or Р\or С\or Т\or У\or Ф\or Х\or
Ц\or Ч\or Ш\or Щ\or Э\or Ю\or Я\else\xpg@ill@value{#1}{russian@Alph}\fi}
-\def\russian@alph#1{\ifcase#1\or
+\def\asbuk#1{\expandafter\russian@alph\csname c@#1\endcsname}
+\def\russian@alph#1{\ifcase#1\or
а\or б\or в\or г\or д\or е\or ж\or
з\or и\or к\or л\or м\or н\or о\or
п\or р\or с\or т\or у\or ф\or х\or
ц\or ч\or ш\or щ\or э\or ю\or я\else\xpg@ill@value{#1}{russian@alph}\fi}
\def\russian@numbers{%
- \let\latin@Alph\@Alph%
- \let\latin@alph\@alph%
- \let\@Alph\russian@Alph%
- \let\@alph\russian@alph%
+ \let\latin@alph\@alph%
+ \let\latin@Alph\@Alph%
+ \ifcyrillic@numerals
+ \let\@alph\russian@alph%
+ \let\@Alph\russian@Alph%
+ \fi
}
\def\norussian@numbers{%
- \let\@Alph\latin@Alph%
\let\@alph\latin@alph%
+ \let\@Alph\latin@Alph%
}
-\def\russian@language{\language=\l@russian}
-
-\setlocalhyphenmins{russian}{2}{2}%
-
\def\noextras@russian{%
- \nonfrenchspacing%
\def\@seccntformat##1{\csname the##1\endcsname\quad}% = LaTeX kernel
- \iflatin@numerals\else\norussian@numbers\fi
- }
+ \ifcyrillic@numerals\norussian@numbers\fi
+ \norussian@shorthands%
+}
\def\blockextras@russian{%
- \frenchspacing%
\russian@capsformat%
- \iflatin@numerals\else\russian@numbers\fi
- }
+ \ifcyrillic@numerals\russian@numbers\fi
+ \ifrussian@babelshorthands\russian@shorthands\fi
+}
\def\inlineextras@russian{%
- \frenchspacing%
- }
+ \ifrussian@babelshorthands\russian@shorthands\fi%
+}
+
+%%% These lines taken from russianb.ldf, part of babel package.
+% make it optional?
+\def\sh {\mathop{\operator@font sh}\nolimits}
+\def\ch {\mathop{\operator@font ch}\nolimits}
+\def\tg {\mathop{\operator@font tg}\nolimits}
+\def\arctg {\mathop{\operator@font arctg}\nolimits}
+\def\arcctg{\mathop{\operator@font arcctg}\nolimits}
+\def\th {\mathop{\operator@font th}\nolimits}
+\def\ctg {\mathop{\operator@font ctg}\nolimits}
+\def\cth {\mathop{\operator@font cth}\nolimits}
+\def\cosec {\mathop{\operator@font cosec}\nolimits}
+\def\Prob {\mathop{\kern\z@\mathsf{P}}\nolimits}
+\def\Variance{\mathop{\kern\z@\mathsf{D}}\nolimits}
+\def\nod {\mathop{\mathrm{н.о.д.}}\nolimits}
+\def\nok {\mathop{\mathrm{н.о.к.}}\nolimits}
+\def\NOD {\mathop{\mathrm{НОД}}\nolimits}
+\def\NOK {\mathop{\mathrm{НОК}}\nolimits}
+\def\Proj {\mathop{\mathrm{Пр}}\nolimits}
+%\DeclareRobustCommand{\No}{№}
\endinput
+
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-samin.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-samin.ldf
index 3d21b6ea6e7..0baa2b38607 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-samin.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-samin.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-samin.ldf}[polyglossia: module for samin]
\makeatletter
-\def\samin@font{\selectfontfamilylatin}
-\ifx\l@samin\@undefined%
- \xpg@nopatterns{Samin}%
- \adddialect\l@samin\l@nohyphenation%
-\fi
+\PolyglossiaSetup{samin}{
+ hyphennames={samin},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionssamin{%
\def\refname{Čujuhusat}%
@@ -31,8 +31,8 @@
\def\proofname{Duođaštus}%
\def\glossaryname{Sátnelistu}%
}
-\def\datesamin{%
- \def\today{\ifcase\month\or
+\def\datesamin{%
+ \def\today{\ifcase\month\or
ođđajagemánu\or
guovvamánu\or
njukčamánu\or
@@ -46,10 +46,6 @@
skábmamánu\or
juovlamánu\fi
\space\number\day.~b.\space\number\year}%
- }
-
-\def\samin@language{\language=\l@samin}
-
-\setlocalhyphenmins{samin}{2}{2}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-sanskrit.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-sanskrit.ldf
index d548d8a5570..03547800adf 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-sanskrit.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-sanskrit.ldf
@@ -1,111 +1,87 @@
\ProvidesFile{gloss-sanskrit.ldf}[polyglossia: module for sanskrit]
+\RequirePackage{devanagaridigits}
\makeatletter
-\ifx\l@sanskrit\@undefined%
- \ifx\l@prakrit\@undefined%
- \xpg@nopatterns{Sanskrit}%
- \adddialect\l@sanskrit\l@nohyphenation%
- \else%
- \let\l@sanskrit=\l@prakrit%
- \fi%
-\fi
+\PolyglossiaSetup{sanskrit}{
+ langtag=SAN,
+ hyphennames={sanskrit,prakrit},
+ hyphenmins={1,3},
+ frenchspacing=true,
+ fontsetup=false, % will be done below
+ %TODO localnumber=sanskritnumber
+}
-\def\tmp@deva{Devanagari}
\define@key{sanskrit}{Script}[Devanagari]{%
- \gdef\sanskrit@script{#1}}
+ \setkeys[xpg@setup]{sanskrit}{script=#1}%
+ \ifcsdef{fontsetup@sanskrit@#1}%
+ {\csname fontsetup@sanskrit@#1\endcsname}%
+ {\xpg@error{`#1' is not a valid script for Sanskrit}%
+ }%
+}
+
+\def\fontsetup@sanskrit@Devanagari{%
+ \def\xpg@scripttag@sanskrit{deva}%
+ \xpg@fontsetup@nonlatin{sanskrit}}
+\def\fontsetup@sanskrit@Gujarati{%
+ \def\xpg@scripttag@sanskrit{gujr}%
+ \xpg@fontsetup@nonlatin{sanskrit}}
+\def\fontsetup@sanskrit@Malayalam{%
+ \def\xpg@scripttag@sanskrit{mlym}%
+ \xpg@fontsetup@nonlatin{sanskrit}}
+\def\fontsetup@sanskrit@Bengali{%
+ \def\xpg@scripttag@sanskrit{beng}%
+ \xpg@fontsetup@nonlatin{sanskrit}}
+\def\fontsetup@sanskrit@Kannada{%
+ \def\xpg@scripttag@sanskrit{knda}%
+ \xpg@fontsetup@nonlatin{sanskrit}}
+\def\fontsetup@sanskrit@Telugu{%
+ \def\xpg@scripttag@sanskrit{telu}%
+ \xpg@fontsetup@nonlatin{sanskrit}}
+
+\setkeys{sanskrit}{Script} %sets the default for Devanagari
-\setkeys{sanskrit}{Script}
+%% TODO option for numerals (Devanagari or Western)
+%\def\tmp@western{Western}
+%\newif\ifsanskrit@devanagari@numerals
+%\sanskrit@devanagari@numeralstrue
+%
+%\define@key{sanskrit}{numerals}[Devanagari]{%
+% \def\@tmpa{#1}%
+% \ifx\@tmpa\tmp@western
+% \sanskrit@devanagari@numeralsfalse
+% \fi}
\newXeTeXintercharclass\sanskrit@punctthin % ! ? ; : danda double_danda
+
\def\sanskrit@punctthinspace{{\unskip\thinspace}}
\def\sanskrit@punctuation{%
- \frenchspacing%
- \XeTeXinterchartokenstate=1%
- \XeTeXcharclass `\! \sanskrit@punctthin
- \XeTeXcharclass `\? \sanskrit@punctthin
- \XeTeXcharclass `\; \sanskrit@punctthin
- \XeTeXcharclass `\: \sanskrit@punctthin
- \XeTeXcharclass `\। \sanskrit@punctthin
- \XeTeXcharclass `\॥ \sanskrit@punctthin
- \XeTeXinterchartoks \z@ \sanskrit@punctthin = \sanskrit@punctthinspace
+ \XeTeXinterchartokenstate=1%
+ \XeTeXcharclass `\! \sanskrit@punctthin
+ \XeTeXcharclass `\? \sanskrit@punctthin
+ \XeTeXcharclass `\; \sanskrit@punctthin
+ \XeTeXcharclass `\: \sanskrit@punctthin
+ \XeTeXcharclass `\। \sanskrit@punctthin
+ \XeTeXcharclass `\॥ \sanskrit@punctthin
+ \XeTeXinterchartoks \z@ \sanskrit@punctthin = \sanskrit@punctthinspace
}
\def\nosanskrit@punctuation{%
- \nonfrenchspacing%
- \XeTeXinterchartokenstate=0%
+ \XeTeXcharclass `\! \z@
+ \XeTeXcharclass `\? \z@
+ \XeTeXcharclass `\; \z@
+ \XeTeXcharclass `\: \z@
+ \XeTeXcharclass `\। \z@
+ \XeTeXcharclass `\॥ \z@
+ \XeTeXinterchartokenstate=0%
}
-%\def\captionssanskrit{%
-% \def\refname{<++>}%
-% \def\abstractname{<++>}%
-% \def\bibname{<++>}%
-% \def\prefacename{<++>}%
-% \def\chaptername{<++>}%
-% \def\appendixname{<++>}%
-% \def\contentsname{<++>}%
-% \def\listfigurename{<++>}%
-% \def\listtablename{<++>}%
-% \def\indexname{<++>}%
-% \def\figurename{<++>}%
-% \def\tablename{<++>}%
-% \def\thepart{}%
-% \def\partname{<++>}%
-% \def\pagename{<++>}%
-% \def\seename{<++>}%
-% \def\alsoname{<++>}%
-% \def\enclname{<++>}%
-% \def\ccname{<++>}%
-% \def\headtoname{<++>}%
-% \def\proofname{<++>}%
-% \def\glossaryname{<++>}%
-% \def\today{<++>}}
-
-\def\sanskrit@font{%
-\@ifundefined{sanskritfont}{%
- \@ifundefined{devanagarifont}{%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{deva}%
- \ifx\sanskrit@script\tmp@deva%
- \if@tempswa%
- \addfontfeature{Script=Devanagari}%
- \else%
- \PackageError{polyglossia}{^^J
- The current font does not contain the devanagari script!^^J
- Please define \string\devanagarifont\space or \string\sanskritfont\space with \string\newfontfamily}%
- \fi%
- \else%
- \addfontfeature{Script=\sanskrit@script}%
- \fi%
- \zf@check@ot@lang{SAN}%
- \if@tempswa\addfontfeature{Language=Sanskrit}\fi%
- }%
- {\devanagarifont%
- \zf@check@ot@lang{SAN}%
- \if@tempswa\addfontfeature{Language=Sanskrit}\fi%
- }%
- }%
- {\sanskritfont}%
-}
-
-\def\selectnormalfontsanskrit{%
- \let\normalfont=\sanskrit@font%
- \let\rmfamily=\sanskrit@font%
- % TODO add setup to define Sans and Mono Sanskrit fonts if desired
- \let\sffamily=\sanskrit@font%
- \let\ttfamily=\sanskrit@font%
- \def\reset@font{\normalfont}}
-
-\def\sanskrit@language{\language=\l@sanskrit}
-
-\setlocalhyphenmins{sanskrit}{1}{3}%
-
\def\noextras@sanskrit{%
- \nosanskrit@punctuation%
- }
+ \nosanskrit@punctuation%
+}
\def\blockextras@sanskrit{%
- \sanskrit@punctuation%
- }
+ \sanskrit@punctuation%
+}
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-scottish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-scottish.ldf
index c9a7ef45924..29f8948c4ad 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-scottish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-scottish.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-scottish.ldf}[polyglossia: module for scottish]
\makeatletter
-\def\scottish@font{\selectfontfamilylatin}
-\ifx\l@scottish\@undefined%
- \xpg@nopatterns{Scottish}%
- \adddialect\l@scottish\l@nohyphenation%
-\fi
+\PolyglossiaSetup{scottish}{
+ hyphennames={scottish},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsscottish{%
\def\refname{Iomraidh}%
@@ -31,6 +31,7 @@
\def\proofname{Proof}% <-- needs translation
\def\glossaryname{Glossary}% <-- needs translation
}
+
\def\datescottish{%
\def\today{%
\number\day\space \ifcase\month\or
@@ -41,8 +42,4 @@
\space \number\year}%
}
-\def\scottish@language{\language=\l@scottish}
-
-\setlocalhyphenmins{scottish}{2}{2}%
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-serbian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-serbian.ldf
index d98e8c39e3d..df704094e42 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-serbian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-serbian.ldf
@@ -1,21 +1,40 @@
\ProvidesFile{gloss-serbian.ldf}[polyglossia: module for serbian]
\makeatletter
-
-%TODO eventually there will be patterns for Serbian-Latin as well as Serbian-Cyrillic
-\ifx\l@serbian\@undefined%
- \xpg@nopatterns{Serbian}%
- \adddialect\l@serbian\l@nohyphenation%
-\fi
+%TODO split into gloss-serbiancyr.ldf and gloss-serbianlat.ldf
+%% load these automatically from polyglossia.sty according to the script option ??
+%% same thing for all languages that have a "script" key !
+%% BETTER APPROACH: see gloss-sanskrit!
+
+\PolyglossiaSetup{serbian}{
+ langtag=SRB,
+ hyphennames={serbian},
+ hyphenmins={2,2},
+ indentfirst=true,
+ fontsetup=false
+ %TODO localalph
+}
\newif\if@serbian@cyr
-\def\tmp@cyrillic{cyrillic}
-\define@key{serbian}{script}[cyrillic]{%
- \def\@tmpa{#1}%
- \ifx\@tmpa\tmp@cyrillic\@serbian@cyrtrue\else%
- \@serbian@cyrfalse
- \fi}
-\setkeys{serbian}{script}
+\define@key{serbian}{Script}[Cyrillic]{% TODO FIXDOC: keyname is CHANGED: script -> Script !!!
+ \ifstrequal{#1}{Cyrillic}%
+ {\@serbian@cyrtrue
+ \setkeys[xpg@setup]{serbian}{script=Cyrillic}%
+ \def\xpg@scripttag@serbian{cyrl}%
+ \xpg@fontsetup@nonlatin{serbian}%
+ }%
+ {\ifstrequal{#1}{Latin}%
+ {\@serbian@cyrfalse
+ \xpg@fontsetup@latin{serbian}%
+ %TODO \def\serbian@language{\language=\l@serbianlat}%
+ % or should we use Croatian patterns as a fallback for the time being???
+ }%
+ {\xpg@error{Unknown script `#1' for Serbian language\MessageBreak
+ Valid values are "Cyrillic" and "Latin"}}%
+ }
+}
+
+\setkeys{serbian}{Script}
\def\captionsserbian{%
\if@serbian@cyr\captionsserbian@cyr\else\captionsserbian@lat\fi%
@@ -87,53 +106,6 @@
децембар\fi \space \number\year}%
}
-\def\serbian@font@cyr{%
- \@ifundefined{serbianfont}{%
- \@ifundefined{cyrillicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{cyrl}%
- \if@tempswa
- \addfontfeature{Script=Cyrillic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Cyrillic script!^^J
- Please define \string\cyrillicfont\space or \string\serbianfont\space with \string\newfontfamily}%
- \fi%
- \zf@check@ot@lang{SRB}%
- \if@tempswa\addfontfeature{Language=Serbian}\fi}%
- {\cyrillicfont%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{SRB}%
- \if@tempswa\addfontfeature{Language=Serbian}\fi}%
- }%
- {\serbianfont}%
-}
-
-\def\serbian@font@lat{%
- \@ifundefined{serbianfontlatin}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{SRB}%
- \if@tempswa\addfontfeature{Language=Serbian}\fi}%
- {\serbianfontlatin}%
-}
-
-\def\serbian@font{%
- \if@serbian@cyr\serbian@font@cyr\else\serbian@font@lat\fi}
-
-%TODO when available load latin hyphenation patterns as well!
-\def\serbian@language{\language=\l@serbian}
-
-\setlocalhyphenmins{serbian}{2}{2}%
-
-\def\noextras@serbian{%
- \nofrench@indent%
- }
-
-\def\blockextras@serbian{%
- \french@indent%
- }
\endinput
% TODO ? stuff from babel
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovak.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovak.ldf
index 0b13231f3b7..260912f26ab 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovak.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovak.ldf
@@ -1,11 +1,11 @@
\ProvidesFile{gloss-slovak.ldf}[polyglossia: module for slovak]
\makeatletter
-\def\slovak@font{\selectfontfamilylatin}
-\ifx\l@slovak\@undefined%
- \xpg@nopatterns{Slovak}%
- \adddialect\l@slovak\l@nohyphenation%
-\fi
+\PolyglossiaSetup{slovak}{
+ hyphennames={slovak},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsslovak{%
\def\refname{Referencie}%
@@ -31,16 +31,13 @@
\def\proofname{Dôkaz}%
\def\glossaryname{Slovník}%
}
+
\def\dateslovak{%
- \def\today{\number\day.~\ifcase\month\or
+ \def\today{\number\day.~\ifcase\month\or
januára\or februára\or marca\or apríla\or mája\or
júna\or júla\or augusta\or septembra\or októbra\or
novembra\or decembra\fi
\space \number\year}%
- }
-
-\def\slovak@language{\language=\l@slovak}
-
-\setlocalhyphenmins{slovak}{2}{2}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovenian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovenian.ldf
index d60fa5b1e5f..7ef4203ce0a 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovenian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-slovenian.ldf
@@ -1,12 +1,10 @@
\ProvidesFile{gloss-slovenian.ldf}[polyglossia: module for slovenian]
-\makeatletter
-\def\slovenian@font{\selectfontfamilylatin}
-\ifx\l@slovenian\@undefined%
- \ifx\l@slovene\@undefined%
- \xpg@nopatterns{Slovenian}%
- \adddialect\l@slovenian\l@nohyphenation%
-\fi\fi
+\PolyglossiaSetup{slovenian}{
+ hyphennames={slovenian,slovene},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsslovenian{%
\def\refname{Literatura}%
@@ -32,15 +30,12 @@
\def\proofname{Dokaz}%
\def\glossaryname{Glosar}% <-- CHECK!
}
+
\def\dateslovenian{%
- \def\today{\number\day.~\ifcase\month\or
+ \def\today{\number\day.~\ifcase\month\or
januar\or februar\or marec\or april\or maj\or junij\or
julij\or avgust\or september\or oktober\or november\or december\fi
\space \number\year}%
- }
-
-\def\slovenian@language{\language=\l@slovenian}
-
-\setlocalhyphenmins{slovenian}{2}{2}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-spanish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-spanish.ldf
index 05ed105e8c2..e46bde96987 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-spanish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-spanish.ldf
@@ -1,56 +1,42 @@
\ProvidesFile{gloss-spanish.ldf}[polyglossia: module for spanish]
\makeatletter
-\def\spanish@font{\selectfontfamilylatin}
-
-\ifx\l@spanish\@undefined
- \xpg@nopatterns{spanish}
- \adddialect\l@spanish\l@nohyphenation
-\fi
+\PolyglossiaSetup{spanish}{
+ hyphennames={spanish},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ indentfirst=true,
+ fontsetup=true,
+}
\def\captionsspanish{%
- \def\prefacename{Prefacio}%
- \def\refname{Referencias}%
- \def\abstractname{Resumen}%
- \def\bibname{Bibliografía}%
- \def\chaptername{Capítulo}%
- \def\appendixname{Apéndice}%
- \def\contentsname{Índice general}%
- \def\listfigurename{Índice de figuras}%
- \def\listtablename{Índice de cuadros}%
- \def\indexname{Índice alfabético}%
- \def\figurename{Figura}%
- \def\tablename{Cuadro}%
- \def\partname{Parte}%
- \def\enclname{Adjunto(s)}%
- \def\ccname{Copia a}%
- \def\headtoname{A}%
- \def\pagename{Página}%
- \def\seename{véase}%
- \def\alsoname{véase también}%
- \def\proofname{Prueba}%
- \def\glossaryname{Glosario}%
- }
+ \def\prefacename{Prefacio}%
+ \def\refname{Referencias}%
+ \def\abstractname{Resumen}%
+ \def\bibname{Bibliografía}%
+ \def\chaptername{Capítulo}%
+ \def\appendixname{Apéndice}%
+ \def\contentsname{Índice general}%
+ \def\listfigurename{Índice de figuras}%
+ \def\listtablename{Índice de cuadros}%
+ \def\indexname{Índice alfabético}%
+ \def\figurename{Figura}%
+ \def\tablename{Cuadro}%
+ \def\partname{Parte}%
+ \def\enclname{Adjunto(s)}%
+ \def\ccname{Copia a}%
+ \def\headtoname{A}%
+ \def\pagename{Página}%
+ \def\seename{véase}%
+ \def\alsoname{véase también}%
+ \def\proofname{Prueba}%
+ \def\glossaryname{Glosario}%
+ }
+
\def\datespanish{%
- \def\today{\number\day~de~\ifcase\month\or
+ \def\today{\number\day~de~\ifcase\month\or
enero\or febrero\or marzo\or abril\or mayo\or junio\or
julio\or agosto\or septiembre\or octubre\or noviembre\or
diciembre\fi\space \number\year}%
-}
-
-\def\spanish@language{\language=\l@spanish}
-
-\setlocalhyphenmins{spanish}{2}{2}%
-
-\def\noextras@spanish{%
- \nonfrenchspacing%
-}
-
-\def\blockextras@spanish{%
- \frenchspacing%
-}
-
-\def\inlineextras@spanish{%
- \frenchspacing%
-}
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-swedish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-swedish.ldf
index 5efa82e1ec1..748353488bf 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-swedish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-swedish.ldf
@@ -1,38 +1,39 @@
\ProvidesFile{gloss-swedish.ldf}[polyglossia: module for swedish]
-\makeatletter
-\def\swedish@font{\selectfontfamilylatin}
-\ifx\l@swedish\@undefined%
- \xpg@nopatterns{Swedish}%
- \adddialect\l@swedish\l@nohyphenation%
-\fi
+\PolyglossiaSetup{swedish}{
+ hyphennames={swedish},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsswedish{%
- \def\refname{Referenser}%
- \def\abstractname{Sammanfattning}%
- \def\bibname{Litteraturförteckning}%
- \def\prefacename{Förord}%
- \def\chaptername{Kapitel}%
- \def\appendixname{Bilaga}%
- \def\contentsname{Innehåll}%
- \def\listfigurename{Figurer}%
- \def\listtablename{Tabeller}%
- \def\indexname{Sakregister}%
- \def\figurename{Figur}%
- \def\tablename{Tabell}%
- %\def\thepart{}%
- \def\partname{Del}%
- \def\pagename{Sida}%
- \def\seename{se}%
- \def\alsoname{se även}%
- \def\enclname{Bil.}%
- \def\ccname{Kopia för kännedom}%
- \def\headtoname{Till}%
- \def\proofname{Bevis}%
- \def\glossaryname{Ordlista}%
- }
+ \def\refname{Referenser}%
+ \def\abstractname{Sammanfattning}%
+ \def\bibname{Litteraturförteckning}%
+ \def\prefacename{Förord}%
+ \def\chaptername{Kapitel}%
+ \def\appendixname{Bilaga}%
+ \def\contentsname{Innehåll}%
+ \def\listfigurename{Figurer}%
+ \def\listtablename{Tabeller}%
+ \def\indexname{Sakregister}%
+ \def\figurename{Figur}%
+ \def\tablename{Tabell}%
+ %\def\thepart{}%
+ \def\partname{Del}%
+ \def\pagename{Sida}%
+ \def\seename{se}%
+ \def\alsoname{se även}%
+ \def\enclname{Bil.}%
+ \def\ccname{Kopia för kännedom}%
+ \def\headtoname{Till}%
+ \def\proofname{Bevis}%
+ \def\glossaryname{Ordlista}%
+ }
+
\def\dateswedish{%
- \def\today{%
+ \def\today{%
\number\day~\ifcase\month\or
januari\or februari\or mars\or april\or maj\or juni\or
juli\or augusti\or september\or oktober\or november\or
@@ -44,20 +45,4 @@
\def\today{\number\day/\number\month\space\number\year}}%
}
-\def\swedish@language{\language=\l@swedish}
-
-\setlocalhyphenmins{swedish}{2}{2}%
-
-\def\noextras@swedish{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@swedish{%
- \frenchspacing%
- }
-
-\def\inlineextras@swedish{%
- \frenchspacing%
- }
-
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-syriac.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-syriac.ldf
index e4bc22a8404..1140b5adaca 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-syriac.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-syriac.ldf
@@ -3,12 +3,14 @@
\RequirePackage{arabicnumbers}
\makeatletter
-\ifx\l@syriac\@undefined
- %\xpg@nopatterns{Syriac}%
- \adddialect\l@syriac\l@nohyphenation
-\fi
-
-\def\syriac@RL{\relax}
+\PolyglossiaSetup{syriac}{
+ script=Syriac,
+ scripttag=syrc,
+ direction=RL,
+ hyphennames={syriac,nohyphenation},
+ fontsetup=true,
+ %TODO localalph
+}
\def\syriacnumber#1{\@syriacnumber{#1}}%
@@ -29,29 +31,6 @@
\setkeys{syriac}{numerals}
-\def\syriac@font{%
- \@ifundefined{syriacfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{syrc}%
- \if@tempswa
- \addfontfeature{Script=Syriac}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Syriac script!^^J
- Please define \string\syriacfont\space with \string\newfontfamily}%
- \fi}%
- {\syriacfont}%
-}
-
-\def\selectnormalfontsyriac{%
- \let\normalfont=\syriac@font%
- \let\rmfamily=\syriac@font%
- % TODO add setup to define Sans and Mono Syriac fonts if desired
- \let\sffamily=\syriac@font%
- \let\ttfamily=\syriac@font%
- \def\reset@font{\normalfont}}
-
%\define@key{polyglossia}{syriaclocale}[default]{%
% \def\@syriac@locale{#1}}
%
@@ -169,8 +148,6 @@
\renewcommand\thefootnote{\protect\number{\c@footnote}}%
}
-\def\syriac@language{\language=\l@syriac}
-
\def\blockextras@syriac{%
\let\@@MakeUppercase\MakeUppercase%
\def\MakeUppercase##1{##1}%
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-tamil.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-tamil.ldf
new file mode 100644
index 00000000000..ea738e306a8
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-tamil.ldf
@@ -0,0 +1,54 @@
+\ProvidesFile{gloss-tamil.ldf}[polyglossia: module for tamil]
+% Translations provided by Kevin & Siji, 01-11-2009
+\makeatletter
+
+\PolyglossiaSetup{tamil}{
+ script=Tamil,
+ scripttag=taml,
+ langtag=TAM,
+ hyphennames={tamil},
+ hyphenmins={2,2}, %FIXME?
+ fontsetup=true,
+}
+
+\def\captionstamil{%
+ \def\abstractname{சாராம்சம்}%
+ \def\appendixname{பிற்சேர்க்கை}%பின்னிணைப்பு
+ %\def\bibname{}%
+ %\def\ccname{}%
+ \def\chaptername{அத்தியாயம்}%
+ \def\contentsname{உள்ளே}%
+ %\def\enclname{}%
+ \def\figurename{படம்}%
+ %\def\headpagename{}%
+ %\def\headtoname{}%
+ \def\indexname{சுட்டி}%பொருளடக்க அட்டவணை
+ \def\listfigurename{படங்களின் பட்டியல்}%
+ \def\listtablename{அட்டவணை பட்டியல்}%
+ %\def\pagename{}%
+ \def\partname{பகுதி}%
+ %\def\prefacename{}%
+ %\def\refname{}%
+ \def\tablename{அட்டவணை}%
+ \def\seename{பார்க்க}%
+ %\def\alsoname{}%
+ %\def\alsoseename{}%
+}
+\def\datetamil{%
+ \def\today{\number\year\space\ifcase\month\or
+ ஜனவரி\or
+ பிப்ரவரி\or
+ மார்ச்\or
+ ஏப்ரல்\or
+ மே\or
+ ஜூன்\or
+ ஜூலை\or
+ ஆகஸ்ட்\or
+ செப்டம்பர்\or
+ அக்டோபர்\or
+ நவம்பர்\or
+ டிசம்பர்\fi
+ \space\number\day}%
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-telugu.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-telugu.ldf
new file mode 100644
index 00000000000..b71aaa5544b
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-telugu.ldf
@@ -0,0 +1,57 @@
+\ProvidesFile{gloss-telugu.ldf}[polyglossia: module for telugu]
+% Translations provided by Anmol Sharma <unmole.in@gmail.com>
+\makeatletter
+
+\PolyglossiaSetup{telugu}{
+ script=Telugu,
+ scripttag=telu,
+ langtag=TEL,
+ hyphennames={telugu},
+ hyphenmins={2,2}, %FIXME
+ fontsetup=true,
+}
+
+\def\captionstelugu{%
+ \def\refname{ఆధారాలు}%
+ \def\abstractname{సారాంశం}%
+ \def\bibname{గ్రంథాల జాబితా}%
+ \def\prefacename{ముందుమాట}%
+ \def\chaptername{అధ్యాయము}%
+ \def\appendixname{అదనంగా}%
+ \def\contentsname{విషయాలు}%
+ \def\listfigurename{ఆకృతుల జాబితా}%
+ \def\listtablename{పట్టికల జాబితా}%
+ \def\indexname{విషయ సూచిక}%
+ \def\figurename{ఆకృతి}%
+ \def\tablename{పట్టిక}%
+ %\def\thepart{}%
+ \def\partname{భాగం}%
+ \def\pagename{పేజి}%
+ \def\seename{చూడండి}%
+ \def\alsoname{కూడా చూడండి}%
+ \def\enclname{ఎంక్లోజర్*}%
+ \def\ccname{సిసి}%
+ \def\headtoname{కి}%
+ \def\proofname{రుజువు}%
+ \def\glossaryname{నిఘంటువు}%
+}
+
+\def\datetelugu{%
+ \def\telugu@month{%
+ \ifcase\month\or
+ జనవరి\or
+ ఫిబ్రవరి\or
+ మార్చ్\or
+ ఏప్రిల్\or
+ మే\or
+ జూన్\or
+ జూలై\or
+ ఆగస్ట్\or
+ సెప్టెంబర్\or
+ అక్తోబెర్\or
+ నవంబర్\or
+ డిసంబర్\fi}%
+ \def\today{\telugu@month\space\number\day,\space\number\year}%
+}
+
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-thai.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-thai.ldf
index 7a51a04c82e..e974fc45489 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-thai.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-thai.ldf
@@ -9,14 +9,22 @@
%%%% Thai Linux Working Group
%%%% http://linux.thai.net/
%%%%
+\PolyglossiaSetup{thai}{
+ script=Thai,
+ scripttag=thai,
+ hyphennames={nohyphenation},
+ fontsetup=true
+ %TODO localalph={xxx@alph,xxx@Alph}
+ %TODO localdigits=thainumber
+}
\newif\if@thai@numerals
\def\tmp@thai{thai}
\define@key{thai}{numerals}[arabic]{%
\def\@tmpa{#1}%
- \ifx\@tmpa\tmp@thai\@thai@numeralstrue\else%
- \@thai@numeralsfalse\fi%
- }
+ \ifx\@tmpa\tmp@thai\@thai@numeralstrue\else
+ \@thai@numeralsfalse\fi
+}
\setkeys{thai}{numerals}
@@ -43,7 +51,7 @@
\def\headtoname{เรียน}%
\def\proofname{พิสูจน์}%
%\def\glossaryname{}%
- }
+}
\def\datethai{%
\def\thai@month{%
\ifcase\month\or
@@ -54,7 +62,7 @@
\thai@year=\year%
\advance\thai@year by 543%
\def\today{\thainumber\day \space \thai@month\space พ.ศ.~\thainumber\thai@year}%
- }
+}
%NB: thai-latex had "plus 0.6pt", but .4em appears to give better results
% FIXME to avoid name clashes, rename \wbr to \wordbreak or \thaiworkbreak ?
@@ -72,10 +80,10 @@
}
\def\thainumber#1{%
- \if@thai@numerals%
+ \if@thai@numerals
\thaidigits{\number#1}%
%%{\protect\addfontfeature{Mapping=thaidigits}\protect\number#1}
- \else%
+ \else
\number#1%
%%{\protect\reset@font\number#1}
\fi}
@@ -95,57 +103,36 @@
\def\thai@numbers{%
\let\@latinalph\@alph%
\let\@latinAlph\@Alph%
- \if@thai@numerals%
+ \if@thai@numerals
\let\@alph\@thaialph%
\let\@Alph\@thaiAlph%
\fi
- }
+}
\def\nothai@numbers{%
\let\@alph\@latinalph%
\let\@Alph\@latinAlph%
- }
+}
\def\thai@globalnumbers{%
\let\orig@arabic\@arabic%
\let\@arabic\thainumber%
\renewcommand{\thefootnote}{\protect\thainumber{\c@footnote}}%
- }
+}
\def\nothai@globalnumbers{%
\let\@arabic\orig@arabic%
\renewcommand\thefootnote{\protect\number{\c@footnote}}%
- }
-
-\def\thai@font{%
- \@ifundefined{thaifont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{thai}%
- \if@tempswa
- \addfontfeature{Script=Thai}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Thai script!^^J
- Please define \string\thaifont\space with \string\newfontfamily}%
- \fi}%
- {\thaifont}%
}
-\def\selectnormalfontthai{%
- \let\normalfont=\thai@font%
- \let\rmfamily=\thai@font%
- \let\sffamily=\thai@font%
- \let\ttfamily=\thai@font%
- \def\reset@font{\normalfont}}
-
-\def\thai@language{\language=\l@nohyphenation}
-
\def\blockextras@thai{%
+%%TODO \XeTeXlinebreaklocales "th"% uses ICU to find line breaks on the basis of a dictionary lookup-- make this optional? (in case a user might prefer a preprocessor
\let\orig@baselinestrech\baselinestretch%
\renewcommand{\baselinestretch}{1.2}%
- }
+}
\def\noblockextras@thai{%
+%%TODO \XeTeXlinebreaklocales "en"%
\let\baselinestrech\orig@baselinestretch%
- }
+}
+
\endinput
%TODO ?
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkish.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkish.ldf
index 68665f6f6ca..b604c6ccacb 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkish.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkish.ldf
@@ -1,25 +1,13 @@
\ProvidesFile{gloss-turkish.ldf}[polyglossia: module for turkish]
\RequirePackage{hijrical}
\makeatletter
-
-\def\turkish@font{%
-\font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-\@ifundefined{turkishfont}{%
- \zf@check@ot@lang{TUR}%
- \if@tempswa
- \addfontfeature{Language=Turkish}%
- \else
- \zf@check@ot@lang{TRK}%
- \if@tempswa
- \addfontfeature{Language=Turkish}\fi%
- \fi}
- {\turkishfont}%
-}%
-
-\ifx\l@turkish\@undefined
- \xpg@nopatterns{turkish}
- \adddialect\l@turkish\l@nohyphenation
-\fi
+\PolyglossiaSetup{turkish}{
+ hyphennames={turkish},
+ hyphenmins={2,2},
+ langtag=TRK,
+ frenchspacing=true,
+ fontsetup=true
+ }
\newXeTeXintercharclass\turkish@punctthin % ! :
\newXeTeXintercharclass\turkish@punctthick % =
@@ -28,7 +16,6 @@
\def\turkish@punctthickspace{{\unskip\nobreakspace}}
\def\turkish@punctuation{%
- \frenchspacing%
\XeTeXinterchartokenstate=1%
\XeTeXcharclass `\! \turkish@punctthin
\XeTeXcharclass `\: \turkish@punctthin
@@ -38,7 +25,9 @@
}
\def\noturkish@punctuation{%
- \nonfrenchspacing%
+ \XeTeXcharclass `\! \z@
+ \XeTeXcharclass `\: \z@
+ \XeTeXcharclass `\= \z@
\XeTeXinterchartokenstate=0%
}
@@ -79,10 +68,6 @@
\DefineFormatHijriDate{turkish}{%
\number\value{Hijriday}\space\hijrimonthturkish{\value{Hijrimonth}}\space\number\value{Hijriyear}}
-\def\turkish@language{\language=\l@turkish}
-
-\setlocalhyphenmins{turkish}{2}{2}%
-
\def\noextras@turkish{%
\noturkish@punctuation%
}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkmen.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkmen.ldf
new file mode 100644
index 00000000000..07180c208fd
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-turkmen.ldf
@@ -0,0 +1,43 @@
+\ProvidesFile{gloss-turkmen.ldf}[polyglossia: module for turkmen]
+%% Translations provided by Nazar Annagurban <nazartm at gmail dot com>
+\makeatletter
+\PolyglossiaSetup{turkmen}{
+ hyphennames={turkmen},
+ hyphenmins={2,2},
+ langtag=TKM,
+ frenchspacing=false,
+ fontsetup=true
+}
+
+\def\captionsturkmen{%
+ \def\prefacename{Sözbaşy}%
+ \def\refname{Çeşmeler}%
+ \def\abstractname{Gysgaça manysy}%
+ \def\bibname{Çeşmeler}%
+ \def\chaptername{Bap}%
+ \def\appendixname{Goşmaça}%
+ \def\contentsname{Mazmuny}%
+ \def\listfigurename{Suratlaryň sanawy}%
+ \def\listtablename{Tablisalaryň sanawy}%
+ \def\indexname{Indeks}%
+ \def\figurename{Surat}%
+ \def\tablename{Tablisa}%
+ \def\partname{Bölüm}%
+ \def\enclname{Goşmaça}%
+ \def\ccname{Iberilenler}%
+ \def\headtoname{Kime}%
+ \def\pagename{Sahypa}%
+ \def\subjectname{Tema}%
+ \def\seename{ser.}%
+ \def\alsoname{şuňa-da ser.}%
+ \def\proofname{Delil}%
+ \def\glossaryname{Sözlük}%
+}
+\def\dateturkmen{%
+ \def\today{\number\day~\ifcase\month\or
+ Ýanwar\or Fewral\or Mart\or Aprel\or Maý\or Iýun\or
+ Iýul\or Awgust\or Sentýabr\or Oktýabr\or Noýabr\or
+ Dekabr\fi
+ \space\number\year}%
+}
+\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-ukrainian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-ukrainian.ldf
index a96a838d825..e49232faf15 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-ukrainian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-ukrainian.ldf
@@ -1,35 +1,17 @@
\ProvidesFile{gloss-ukrainian.ldf}[polyglossia: module for ukrainian]
% Strings taken from Babel
% and revised by Roman Kyrylych
-%
\makeatletter
-\ifx\l@ukrainian\@undefined%
- \xpg@nopatterns{Ukrainian}%
- \adddialect\l@ukrainian\l@nohyphenation%
-\fi
-
-\def\ukrainian@font{%
- \@ifundefined{ukrainianfont}{%
- \@ifundefined{cyrillicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{cyrl}%
- \if@tempswa
- \addfontfeature{Script=Cyrillic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Cyrillic script!^^J
- Please define \string\cyrillicfont\space or \string\ukrainianfont\space with \newfontfamily}%
- \fi
- \zf@check@ot@lang{UKR}%
- \if@tempswa\addfontfeature{Language=Ukrainian}\fi
- }%
- {\cyrillicfont%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{UKR}%
- \if@tempswa\addfontfeature{Language=Ukrainian}\fi}}%
- {\ukrainianfont}%
+\PolyglossiaSetup{ukrainian}{
+ script=Cyrillic,
+ scripttag=cyrl,
+ langtag=UKR,
+ hyphennames={ukrainian},
+ hyphenmins={2,2},
+ frenchspacing=true,
+ fontsetup=true
+ %TODO localalph
}
\def\captionsukrainian{%
@@ -89,29 +71,13 @@
\let\latin@alph\@alph%
\let\@Alph\ukrainian@Alph%
\let\@alph\ukrainian@alph%
- }
+}
\def\noukrainian@numbers{%
\let\@Alph\latin@Alph%
\let\@alph\latin@alph%
}
-\def\ukrainian@language{\language=\l@ukrainian}
-
-\setlocalhyphenmins{ukrainian}{2}{2}%
-
-\def\noextras@ukrainian{%
- \nonfrenchspacing%
- }
-
-\def\blockextras@ukrainian{%
- \frenchspacing%
- }
-
-\def\inlineextras@ukrainian{%
- \frenchspacing%
- }
-
\endinput
%TODO? stuff from Babel
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-urdu.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-urdu.ldf
index a1759c19ed5..b205431bf54 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-urdu.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-urdu.ldf
@@ -5,12 +5,16 @@
\RequirePackage{hijrical}
\makeatletter
-\ifx\l@urdu\@undefined
- %\xpg@nopatterns{urdu}%
- \adddialect\l@urdu\l@nohyphenation
-\fi
-
-\def\urdu@RL{\relax}
+\PolyglossiaSetup{urdu}{
+ script=Arabic,
+ direction=RL,
+ scripttag=arab,
+ langtag=URD,
+ hyphennames={urdu,nohyphenation},
+ fontsetup=true
+ %TODO localalph={abjad,abjad}
+ %TODO localnumber=urdunumber
+}
\newif\if@western@numerals
\def\tmp@western{western}
@@ -20,6 +24,7 @@
\else\@western@numeralsfalse%
\fi}
+%% TODO USE boolkey instead !!!
%this is needed for \abjad in arabicnumbers.sty
\def\tmp@true{true}
\define@key{urdu}{abjadjimnotail}[true]{%
@@ -51,32 +56,32 @@
%\Hijritoday is now locale-aware and will format the date with this macro:
\DefineFormatHijriDate{urdu}{\@ensure@RTL{%
-\urdunumber{\value{Hijriday}}؍\space\urduhijrimonth{\value{Hijrimonth}}\space\urdunumber{\value{Hijriyear}}}}
+ \urdunumber{\value{Hijriday}}؍\space\urduhijrimonth{\value{Hijrimonth}}\space\urdunumber{\value{Hijriyear}}}}
\def\captionsurdu{%
-\def\refname{\@ensure@RTL{حوالہ جات}}%
-\def\abstractname{\@ensure@RTL{ملخّص}}%
-\def\bibname{\@ensure@RTL{کتابیات}}%
-\def\prefacename{\@ensure@RTL{دیباچہ}}%
-\def\chaptername{\@ensure@RTL{باب}}%
-\def\appendixname{\@ensure@RTL{ضمیمہ}}%
-\def\contentsname{\@ensure@RTL{فہرست عنوانات}}%
-\def\listfigurename{\@ensure@RTL{فہرست اشکال}}%
-\def\listtablename{\@ensure@RTL{فہرست جداول}}%
-\def\indexname{\@ensure@RTL{اشاریہ}}%
-\def\figurename{\@ensure@RTL{شكل}}%
-\def\tablename{\@ensure@RTL{جدول}}%
-%\def\thepart{\text<lang>{}}%
-\def\partname{\@ensure@RTL{حصّہ}}%
-\def\pagename{\@ensure@RTL{صفحہ}}%
-\def\seename{\@ensure@RTL{ملاحظہ ہو}}%
-\def\alsoname{\@ensure@RTL{ایضاً}}%
-\def\enclname{\@ensure@RTL{منسلک}}%
-\def\ccname{\@ensure@RTL{نقل}}%
-\def\headtoname{\@ensure@RTL{بملاحظہ}}%
-\def\proofname{\@ensure@RTL{ثبوت}}%
-\def\glossaryname{\@ensure@RTL{لغت}}%
-\def\sectionname{\@ensure@RTL{فصل}}%
+ \def\refname{\@ensure@RTL{حوالہ جات}}%
+ \def\abstractname{\@ensure@RTL{ملخّص}}%
+ \def\bibname{\@ensure@RTL{کتابیات}}%
+ \def\prefacename{\@ensure@RTL{دیباچہ}}%
+ \def\chaptername{\@ensure@RTL{باب}}%
+ \def\appendixname{\@ensure@RTL{ضمیمہ}}%
+ \def\contentsname{\@ensure@RTL{فہرست عنوانات}}%
+ \def\listfigurename{\@ensure@RTL{فہرست اشکال}}%
+ \def\listtablename{\@ensure@RTL{فہرست جداول}}%
+ \def\indexname{\@ensure@RTL{اشاریہ}}%
+ \def\figurename{\@ensure@RTL{شكل}}%
+ \def\tablename{\@ensure@RTL{جدول}}%
+ %\def\thepart{\text<lang>{}}%
+ \def\partname{\@ensure@RTL{حصّہ}}%
+ \def\pagename{\@ensure@RTL{صفحہ}}%
+ \def\seename{\@ensure@RTL{ملاحظہ ہو}}%
+ \def\alsoname{\@ensure@RTL{ایضاً}}%
+ \def\enclname{\@ensure@RTL{منسلک}}%
+ \def\ccname{\@ensure@RTL{نقل}}%
+ \def\headtoname{\@ensure@RTL{بملاحظہ}}%
+ \def\proofname{\@ensure@RTL{ثبوت}}%
+ \def\glossaryname{\@ensure@RTL{لغت}}%
+ \def\sectionname{\@ensure@RTL{فصل}}%
}
\def\dateurdu{%
@@ -95,96 +100,40 @@
\else
%%FIXME use farsidigits instead???
\protect\arabicdigits{\number#1}%
- %%{\protect\addfontfeature{Mapping=arabicdigits}\number#1}%
\fi}
\def\urdu@numbers{%
- \let\@latinalph\@alph%
- \let\@latinAlph\@Alph%
- \let\@alph\abjad%
- \let\@Alph\abjad%
+ \let\@latinalph\@alph%
+ \let\@latinAlph\@Alph%
+ \let\@alph\abjad%
+ \let\@Alph\abjad%
}
+
\def\nourdu@numbers{%
\let\@alph\@latinalph%
\let\@Alph\@latinAlph%
}
-\def\urdu@globalnumbers{%
- \let\orig@arabic\@arabic%
- \let\@arabic\urdunumber%
- % For some reason \thefootnote needs to be set separately:
- \renewcommand\thefootnote{\protect\urdunumber{\c@footnote}}%
- }
-\def\nourdu@globalnumbers{
- \let\@arabic\orig@arabic%
- \renewcommand\thefootnote{\protect\number{\c@footnote}}%
- }
-
-\def\urdu@language{\language=\l@urdu}
-
-\def\urdu@font{%
- \@ifundefined{urdufont}{%
- \@ifundefined{arabicfont}{%
- \normalfontlatin%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@script{arab}%
- \if@tempswa
- \addfontfeature{Script=Arabic}%
- \else
- \PackageError{polyglossia}{^^J
- The current font does not contain the Arabic script!^^J
- Please define \string\arabicfont\space or \string\urdufont\space with \newfontfamily}%
- \fi
- \zf@check@ot@lang{URD}%
- \if@tempswa\addfontfeature{Language=urdu}\fi}%
- {\arabicfont%
- \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
- \zf@check@ot@lang{URD}%
- \if@tempswa\addfontfeature{Language=urdu}\fi}%
- }%
- {\urdufont}%
-}
-% TODO add setup to define Sans and Mono Arabic fonts if desired
-\def\urdu@font@sf{%
- \@ifundefined{urdufontsf}{%
-% \sffamily% FIXME
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa%
-% \addfontfeature{Script=Arabic}%
-% \else%
- \urdu@font%
-% \fi%
- }%
- {\urdufontsf}%
-}
-\def\urdu@font@tt{%
- \@ifundefined{urdufonttt}{%
-% \ttfamily% FIXME
-% \font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-% \zf@check@ot@script{arab}%
-% \if@tempswa%
-% \addfontfeature{Script=Arabic}%
-% \else%
- \urdu@font%
-% \fi%
- }%
- {\urdufonttt}%
-}
+\def\urdu@globalnumbers{%
+ \let\orig@arabic\@arabic%
+ \let\@arabic\urdunumber%
+ % For some reason \thefootnote needs to be set separately:
+ \renewcommand\thefootnote{\protect\urdunumber{\c@footnote}}%
+ }
-\def\selectnormalfonturdu{%
- \let\normalfont=\urdu@font%
- \let\rmfamily=\urdu@font%
- \let\sffamily=\urdu@font@sf%
- \let\ttfamily=\urdu@font@tt%
- \def\reset@font{\normalfont}}
+\def\nourdu@globalnumbers{
+ \let\@arabic\orig@arabic%
+ \renewcommand\thefootnote{\protect\number{\c@footnote}}%
+ }
\def\blockextras@urdu{%
- \let\@@MakeUppercase\MakeUppercase%
- \def\MakeUppercase##1{##1}%
- }
+ \let\@@MakeUppercase\MakeUppercase%
+ \def\MakeUppercase##1{##1}%
+ }
+
\def\noextras@urdu{%
- \let\MakeUppercase\@@MakeUppercase%
- }
+ \let\MakeUppercase\@@MakeUppercase%
+ }
+
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-usorbian.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-usorbian.ldf
index 267e99a5f10..810354ce1d4 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-usorbian.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-usorbian.ldf
@@ -1,18 +1,10 @@
\ProvidesFile{gloss-usorbian.ldf}[polyglossia: module for upper sorbian]
-\makeatletter
-\def\usorbian@font{\selectfontfamilylatin}
-\ifx\l@uppersorbian\@undefined
- \ifx\l@usorbian\@undefined
- \xpg@nopatterns{Upper Sorbian}
- \adddialect\l@usorbian\l@nohyphenation
- \let\l@uppersorbian\l@usorbian
- \else
- \let\l@uppersorbian\l@usorbian
- \fi
-\else
- \let\l@usorbian\l@uppersorbian
-\fi
+\PolyglossiaSetup{usorbian}{
+ hyphennames={usorbian,uppersorbian},
+ hyphenmins={2,2},
+ fontsetup=true,
+}
\def\captionsusorbian{%
\def\refname{Referency}%
@@ -38,22 +30,19 @@
\def\proofname{Proof}% <-- needs translation
\def\glossaryname{Glossary}% <-- needs translation
}%
+
\def\dateusorbian{%
- \def\today{\number\day.~\ifcase\month\or
+ \def\today{\number\day.~\ifcase\month\or
januara\or februara\or měrca\or apryla\or meje\or junija\or
julija\or awgusta\or septembra\or oktobra\or
nowembra\or decembra\fi
\space \number\year}%
-%TODO implement option olddate:
+ %TODO implement option olddate:
\def\oldtoday{\number\day.~\ifcase\month\or
wulkeho róžka\or małeho róžka\or nalětnika\or
jutrownika\or róžownika\or smažnika\or pražnika\or
žnjenca\or požnjenca\or winowca\or nazymnika\or
hodownika\fi \space \number\year}%
- }
-
-\def\usorbian@language{\language=\l@usorbian}
-
-\setlocalhyphenmins{usorbian}{2}{2}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-vietnamese.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-vietnamese.ldf
index 26c7728a9d0..ac6bcc0f9a2 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-vietnamese.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-vietnamese.ldf
@@ -1,63 +1,43 @@
\ProvidesFile{gloss-vietnamese.ldf}[polyglossia: module for vietnamese]
%% Strings contributed by Daniel Owens < dhowens . pmbx . net >
-\makeatletter
-\def\vietnamese@font{%
-\font\zf@basefont="\csname zf@family@fontdef\f@family\endcsname" at \f@size pt
-\@ifundefined{vietnamesefont}{%
- \zf@check@ot@lang{VIT}%
- \if@tempswa\addfontfeature{Language=Vietnamese}\fi}
- {\vietnamesefont}%
-}%
-
-\ifx\l@vietnamese\@undefined%
- \xpg@nopatterns{Vietnamese}%
- \adddialect\l@vietnamese\l@nohyphenation%
-\fi
+\PolyglossiaSetup{vietnamese}{
+ hyphennames={vietnamese},
+ hyphenmins={2,2},
+ langtag=VIT,
+ frenchspacing=true,
+ fontsetup=true,
+}
\def\captionsvietnamese{%
- \def\refname{Tài liệu}%
- \def\abstractname{Tóm tắt nội dung}%
- \def\bibname{Tài liệu tham khảo}%
- \def\prefacename{Lời nói đầu}%
- \def\chaptername{Chương}%
- \def\appendixname{Phụ lục}%
- \def\contentsname{Mục lục}%
- \def\listfigurename{Danh sách hình vẽ}%
- \def\listtablename{Danh sách bẳng}%
- \def\indexname{Chỉ mục}%
- \def\figurename{Hình}%
- \def\tablename{Bẳng}%
- \def\partname{Phần}%
- \def\pagename{Trang}%
- \def\seename{Xem}%
- \def\alsoname{Xem thêm}%
- \def\enclname{Kèm theo}%
- \def\ccname{Cùng gửi}%
- \def\headtoname{Gửi}%
- \def\proofname{Chứng minh}%
- \def\glossaryname{Từ điển chú giải}%
- }
+ \def\refname{Tài liệu}%
+ \def\abstractname{Tóm tắt nội dung}%
+ \def\bibname{Tài liệu tham khảo}%
+ \def\prefacename{Lời nói đầu}%
+ \def\chaptername{Chương}%
+ \def\appendixname{Phụ lục}%
+ \def\contentsname{Mục lục}%
+ \def\listfigurename{Danh sách hình vẽ}%
+ \def\listtablename{Danh sách bẳng}%
+ \def\indexname{Chỉ mục}%
+ \def\figurename{Hình}%
+ \def\tablename{Bẳng}%
+ \def\partname{Phần}%
+ \def\pagename{Trang}%
+ \def\seename{Xem}%
+ \def\alsoname{Xem thêm}%
+ \def\enclname{Kèm theo}%
+ \def\ccname{Cùng gửi}%
+ \def\headtoname{Gửi}%
+ \def\proofname{Chứng minh}%
+ \def\glossaryname{Từ điển chú giải}%
+ }
+
\def\datevietnamese{%
- \def\today{%
+ \def\today{%
Ngày \number\day\space
tháng \number\month\space
năm \number\year}%
- }
-
-\def\vietnamese@language{\language=\l@vietnamese}
-
-\setlocalhyphenmins{vietnamese}{2}{2}%
+ }
-\def\noextras@vietnamese{%
- \nonfrenchspacing%
-}
-
-\def\blockextras@vietnamese{%
- \frenchspacing%
-}
-
-\def\inlineextras@vietnamese{%
- \frenchspacing%
-}
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-welsh.ldf b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-welsh.ldf
index da110307c61..d861308b2c7 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/gloss-welsh.ldf
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/gloss-welsh.ldf
@@ -1,47 +1,43 @@
\ProvidesFile{gloss-welsh.ldf}[polyglossia: module for welsh]
-\makeatletter
-\def\welsh@font{\selectfontfamilylatin}
-\ifx\l@welsh\@undefined%
- \xpg@nopatterns{Welsh}%
- \adddialect\l@welsh\l@nohyphenation%
-\fi
+\PolyglossiaSetup{welsh}{
+ hyphennames={welsh},
+ hyphenmins={2,3},
+ fontsetup=true,
+}
\def\captionswelsh{%
- \def\refname{Cyfeiriadau}%
- \def\abstractname{Crynodeb}%
- \def\bibname{Llyfryddiaeth}%
- \def\prefacename{Rhagair}%
- \def\chaptername{Pennod}%
- \def\appendixname{Atodiad}%
- \def\contentsname{Cynnwys}%
- \def\listfigurename{Rhestr Ddarluniau}%
- \def\listtablename{Rhestr Dablau}%
- \def\indexname{Mynegai}%
- \def\figurename{Darlun}%
- \def\tablename{Taflen}%
- %\def\thepart{}%
- \def\partname{Rhan}%
- \def\pagename{tudalen}%
- \def\seename{gweler}%
- \def\alsoname{gweler hefyd}%
- \def\enclname{amgaeëdig}%
- \def\ccname{copïau}%
- \def\headtoname{At}%
- \def\proofname{Prawf}%
- \def\glossaryname{Rhestr termau}%
- }
+ \def\refname{Cyfeiriadau}%
+ \def\abstractname{Crynodeb}%
+ \def\bibname{Llyfryddiaeth}%
+ \def\prefacename{Rhagair}%
+ \def\chaptername{Pennod}%
+ \def\appendixname{Atodiad}%
+ \def\contentsname{Cynnwys}%
+ \def\listfigurename{Rhestr Ddarluniau}%
+ \def\listtablename{Rhestr Dablau}%
+ \def\indexname{Mynegai}%
+ \def\figurename{Darlun}%
+ \def\tablename{Taflen}%
+ %\def\thepart{}%
+ \def\partname{Rhan}%
+ \def\pagename{tudalen}%
+ \def\seename{gweler}%
+ \def\alsoname{gweler hefyd}%
+ \def\enclname{amgaeëdig}%
+ \def\ccname{copïau}%
+ \def\headtoname{At}%
+ \def\proofname{Prawf}%
+ \def\glossaryname{Rhestr termau}%
+ }
+
\def\datewelsh{%
- \def\today{\ifnum\day=1\relax 1\/\textsuperscript{añ}\else%
+ \def\today{\ifnum\day=1\relax 1\/\textsuperscript{añ}\else
\number\day\fi\space\ifcase\month\or
- Ionawr\or Chwefror\or Mawrth\or Ebrill\or
- Mai\or Mehefin\or Gorffennaf\or Awst\or
- Medi\or Hydref\or Tachwedd\or Rhagfyr\fi%
- \space\number\year}%
- }
-
-\def\welsh@language{\language=\l@welsh}
-
-\setlocalhyphenmins{welsh}{2}{3}%
+ Ionawr\or Chwefror\or Mawrth\or Ebrill\or
+ Mai\or Mehefin\or Gorffennaf\or Awst\or
+ Medi\or Hydref\or Tachwedd\or Rhagfyr\fi%
+ \space\number\year}%
+ }
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/hijrical.sty b/Master/texmf-dist/tex/xelatex/polyglossia/hijrical.sty
index 0492baa6275..d4f3fe91d07 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/hijrical.sty
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/hijrical.sty
@@ -1,8 +1,15 @@
\ProvidesPackage{hijrical}
- [2007/12/27 v0.1 %
+ [2010/07/12 v0.2 %
Islamic calendar]
-\RequirePackage{bidi}
+\RequirePackage{calc}
\RequirePackage{arabicnumbers}
+\@ifpackageloaded{bidi}{}{\newif\if@RTL\@RTLfalse}
+\@ifpackageloaded{l3calc}{\PackageError{hijrical}{\MessageBreak
+Package l3calc is loaded, which replaces the functionality of
+calc. Computation of Hijri dates will not work properly with
+l3calc! The latest version of expl3 on CTAN no longer loads
+l3calc. Please update expl3!
+}{}}{}
\@ifundefined{@Remainder}{\input{cal-util.def}}{}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/polyglossia.sty b/Master/texmf-dist/tex/xelatex/polyglossia/polyglossia.sty
index 02889374b43..f990db9fd3b 100644
--- a/Master/texmf-dist/tex/xelatex/polyglossia/polyglossia.sty
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/polyglossia.sty
@@ -1,9 +1,17 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{polyglossia}[2010/03/23 v1.1.1
+\ProvidesPackage{polyglossia}[2010/07/15 v1.2.0
Babel replacement for XeLaTeX]
\RequirePackage{etoolbox}
\RequirePackage{makecmds}
-\RequirePackage{fontspec} %which itself depends on xkeyval
+\RequirePackage{fontspec}[2010/06/08]% v2.0
+% fontspec now uses LaTeX3 packages such as expl3, so we need this:
+% TODO is is possible to localize this further?
+\ExplSyntaxOn
+
+\ifcsundef{newXeTeXintercharclass}{%
+ \xpg@error{Your~ xelatex~ format~ appears~ to~ be~ outdated!^^J
+~~~~Please~ update~ your~ system~ and~ recreate~ it~ with~ fmtutil.}
+ }{}
%% This is for compatibility with Babel-aware package:
\cslet{ver@babel.sty}{\@empty} % this "fakes" babel
@@ -11,26 +19,41 @@
\AtEndPreamble{\let\bbl@set@language\xpg@set@language} %for biblatex
\AtEndPreamble{\let\bbl@main@language\xpg@main@language} %for biblatex
+%% for \docvslist (etoolbox)
+\providecommand*{\do}[1]{}%
+
%% custom message macros
+\providecommand*{\xpg@error}[1]{%
+ \PackageError{polyglossia}{#1}{}%
+}
+
\providecommand*{\xpg@warning}[1]{%
- \PackageWarning{polyglossia}%
- {#1}}
+ \PackageWarning{polyglossia}{#1}%
+}
+
\providecommand*{\xpg@info}[1]{%
\PackageInfo{polyglossia}%
- {#1\@gobble}} %% the \@gobble is to prevent displaying the line nr
-\providecommand*{\xpg@nopatterns}[1]{%
- \xpg@warning{No hyphenation patterns were loaded for `#1'\MessageBreak
- I will use the patterns for \string\language=\string\l@nohyphenation\space instead}}
-\providecommand*{\xpg@nolang}[1]{%
- \xpg@warning{File gloss-#1.ldf does not exist!^^J
- I will nevertheless try to use hyphenation patterns for #1.}}%
- %TODO try at least to load the hyphenation patterns for #1.
+ {#1\@gobble}%
+} %% the \@gobble is to prevent displaying the line nr
+
+%TODO change all instances of \xpg@nopatterns in gloss-*.ldf files
+\providecommand*{\xpg@nopatterns@fallback}[2][nohyphenation]{%
+ \xpg@warning{No~ hyphenation~ patterns~ were~ loaded~ for~ `#2'\MessageBreak
+ I~ will~ use~ \string\language=\string\l@ #1\space instead}%
+ \expandafter\adddialect\csname l@#2\expandafter\endcsname\csname l@#1\endcsname\relax}
+
+ \providecommand*{\xpg@nopatterns}[1]{%
+ \xpg@warning{No~ hyphenation~ patterns~ were~ loaded~ for~ `#1'\MessageBreak
+ I~ will~ use~ \string\language=\string\l@nohyphenation\space instead}%
+ %%TODO? \expandafter\adddialect\csname l@#1\endcsname\l@nohyphenation\relax
+ }
+
\def\xpg@ill@value#1#2{%
- \xpg@warning{Illegal value (#1) for #2}}
+ \xpg@warning{Illegal~ value~ (#1)~ for~ #2}}
%% use macro if defined, else warn that it is not
\def\csuse@warn#1{%
- \ifcsundef{#1}{\xpg@warning{ \expandafter\string\csname #1\endcsname\space is not defined}}%
+ \ifcsundef{#1}{\xpg@warning{ \expandafter\string\csname #1\endcsname\space is~ not~ defined}}%
{\csname #1\endcsname}}
%% ensure directionality if bidi is loaded, else ignore
@@ -39,44 +62,377 @@
%% compatibility with babel
\let\addto\gappto% gappto is defined in etoolbox
-%%
+
+%% == Utility macros ==
+%% They are needed because \MakeUppercase and \MakeLowercase are protected,
+%% but we need to change case while defining csnames when setting up fonts for
+%% non-Latin scripts. For instance with "Script=Arabic" we need to lowercase
+%% "Arabic" to create \arabicfont.
+\def\xpg@uppercasefirst#1{\expandafter\xpg@@uppercasefirst #1}
+\def\xpg@@uppercasefirst#1{%
+ \if a#1A\else
+ \if b#1B\else
+ \if c#1C\else
+ \if d#1D\else
+ \if e#1E\else
+ \if f#1F\else
+ \if g#1G\else
+ \if h#1H\else
+ \if i#1I\else
+ \if j#1J\else
+ \if k#1K\else
+ \if l#1L\else
+ \if m#1M\else
+ \if n#1N\else
+ \if o#1O\else
+ \if p#1P\else
+ \if q#1Q\else
+ \if r#1R\else
+ \if s#1S\else
+ \if t#1T\else
+ \if u#1U\else
+ \if v#1V\else
+ \if w#1W\else
+ \if x#1X\else
+ \if y#1Y\else
+ \if z#1Z\else
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+}
+
+\def\xpg@lowercasefirst#1{\expandafter\xpg@@lowercasefirst #1}
+\def\xpg@@lowercasefirst#1{%
+ \if A#1a\else
+ \if B#1b\else
+ \if C#1c\else
+ \if D#1d\else
+ \if E#1e\else
+ \if F#1f\else
+ \if G#1g\else
+ \if H#1h\else
+ \if I#1i\else
+ \if J#1j\else
+ \if K#1k\else
+ \if L#1l\else
+ \if M#1m\else
+ \if N#1n\else
+ \if O#1o\else
+ \if P#1p\else
+ \if Q#1q\else
+ \if R#1r\else
+ \if S#1s\else
+ \if T#1t\else
+ \if U#1u\else
+ \if V#1v\else
+ \if W#1w\else
+ \if X#1x\else
+ \if Y#1y\else
+ \if Z#1z\else
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+}
+
+%% NEW EXPERIMENTAL SETUP INTERFACE FOR GLOSS FILES
+%% options currently available:
+%% language : the name of the language (as understood by fontspec)
+%% hyphennames : the different hyphenation patterns to try (comma separated list)
+%%% TODO: if pattern is prefixed by !, then it should be loaded as a fallback, with \xpg@nopatterns@fallback - i.e. with a warning: e.g. sanskrit for hindi, or catalan for asturian.
+%% script : the name of the script (as understood by fontspec) – default is Latin
+%% direction : the direction of the script: LR or RL
+%% scripttag : the OpenType tag for the script
+%% langtag : the OpenType tag for the language
+%% hyphenmins : the hyphenmins for this language (comma-sep list of two integers)
+%% frenchspacing : boolean
+%% indentfirst : boolean
+%% fontsetup : boolean
+%% TODO: nouppercase : boolean (for scripts like Arabic, Devanagari, etc which have no concept of uppercase/lowercase)
+%% TODO: localalph = {<alph_csname>,<Alph_csname>}
+%% TODO: localnumber = <csname>
+%% or even better localdigits = {0123456789} for fully automatic setup
+
+\newcommand*\PolyglossiaSetup[2]{%
+ %define booleans etoolbox style and set defaults
+ %% TODO ? \providetoggle{#1@setup@done}%
+ \providetoggle{#1@RL}%
+ \providetoggle{#1@latin}\toggletrue{#1@latin}%
+ \providetoggle{#1@scriptlangequal}% whether lang and script names are same: e.g. Hebrew, Arabic
+ \providebool{#1@fontsetup}%
+ \providebool{#1@indentfirst}%
+ \providebool{#1@frenchspacing}%
+ % we initialize these so that we can use \gappto below
+ \csgdef{init@extras@#1}{}%
+ \csgdef{init@noextras@#1}{}% we don't use this yet: remove?
+ \csgdef{xpg@langname@#1}{\xpg@uppercasefirst{#1}}%
+ %needed for docvslist with hyphennames key:
+ \renewcommand*{\do}[1]{%
+ \ifcsdef{l@#1}{}{%
+ \ifstrequal{#1}{##1}{}%
+ {\ifcsdef{l@##1}%
+ {\csletcs{l@#1}{l@##1}\listbreak}%
+ {}%
+ }%
+ }%
+ }%
+ %define all keys:
+ \xpg@define@keys{#1}%
+ \setkeys[xpg@setup]{#1}{#2}%
+ % here we do the fontsetup:
+ \ifbool{#1@fontsetup}%
+ {\xpg@fontsetup@auto{#1}}%
+ {\xpg@info{Skipping~ automatic~ font~ setup~ for~ language~ #1}}%
+ %% TODO? \toggletrue{#1@setup@done}%
+ % reinit \do
+ \renewcommand*{\do}[1]{\setotherlanguage{##1}}%
+}
+
+\def\xpg@first#1,#2{#1}
+\def\xpg@second#1,#2{#2}
+
+\def\xpg@define@keys#1{%
+ \define@key[xpg@setup]{#1}{script}{%
+ \ifstrequal{##1}{Latin}%
+ {\toggletrue{#1@latin}}%
+ {\togglefalse{#1@latin}}%
+ \csgdef{xpg@scriptname@#1}{##1}%
+ \csgdef{xpg@scriptname@#1@lc}{\xpg@lowercasefirst{##1}}}%
+ \define@key[xpg@setup]{#1}{scripttag}{%
+ \csgdef{xpg@scripttag@#1}{##1}}%
+ \define@key[xpg@setup]{#1}{language}{%
+ \csgdef{xpg@langname@#1}{##1}}%
+ \define@key[xpg@setup]{#1}{langtag}{%
+ \csgdef{xpg@langtag@#1}{##1}}%
+ \define@key[xpg@setup]{#1}{hyphennames}[{#1}]{%
+ \docsvlist{##1}%
+ % if l@#1 does not yet exist,
+ % we assign it to nohyphenation
+ % we do this here in case the hyphennames key was omitted
+ \ifcsundef{l@#1}%
+ {\xpg@nopatterns{\csname xpg@langname@#1\endcsname}%
+ \expandafter\adddialect\csname l@#1\endcsname\l@nohyphenation\relax}{}%
+ \csdef{#1@language}{\language=\csname l@#1\endcsname}%
+ }%
+ \define@choicekey+[xpg@setup]{#1}{direction}[\val\nr]{LR,RL}[LR]%
+ {\ifcase\nr\relax
+ \togglefalse{#1@RL}%
+ \or
+ \toggletrue{#1@RL}%
+ \ifcsundef{RTL}{\RequirePackage{bidi}}{}%
+ \fi}%
+ {\xpg@warning{#1: Invalid value \val\space for key "direction"}}%
+ \define@key[xpg@setup]{#1}{hyphenmins}[{2,3}]%
+ {\edef\@tmpfirst{\xpg@first##1}%
+ \edef\@tmpsecond{\xpg@second##1}%
+ \setlocalhyphenmins{#1}{\@tmpfirst}{\@tmpsecond}}%
+ \define@boolkey[xpg@setup]{#1}[#1@]{frenchspacing}[true]{%
+ \ifbool{#1@frenchspacing}%
+ {\csgappto{init@extras@#1}{\frenchspacing}}%
+ {\csgappto{init@extras@#1}{\nonfrenchspacing}}}%
+ \define@boolkey[xpg@setup]{#1}[#1@]{indentfirst}[true]{%
+ \ifbool{#1@indentfirst}%
+ {\csgappto{init@extras@#1}{\french@indent}}%
+ {\csgappto{init@extras@#1}{\nofrench@indent}}}%
+% \define@choicekey*+[xpg@setup]{#1}{fontsetup}[\val\nr]{none,custom,auto}[none]%
+% %{\csgdef{#1@fontsetup}{\val}}%
+% {\xpg@fontsetup{\val}{#1}}%
+% {\xpg@warning{Invalid value \val\space for key "fontsetup" in module "#1"}}%
+ \define@boolkey[xpg@setup]{#1}[#1@]{fontsetup}[true]{}%
+ %TODO assign csnames corr. to localized alph and Alph
+ % \define@key[xpg@setup]{#1}{localalph}[{#1@alph,#1@Alph}]{%
+ % \cslet{xpg@localalph@#1}{\expandafter\csname\xpg@first##1\endcsname}%
+ % \cslet{xpg@localAlph@#1}{\expandafter\csname\xpg@second##1\endcsname}%
+ %}%
+ %TODO same thing with localdigits
+}
+
+%\def\xpg@fontsetup#1{\xpg@csifdef@warn{xpg@fontsetup@#1}}
+%\def\xpg@fontsetup@none#1{\csgdef{#1@font}{\ifcsdef{#1font}{\csname #1font\endcsname}{}}} %<-- simplistic
+%\def\xpg@fontsetup@custom#1{\csuse{#1@font}}
+
+\def\xpg@fontsetup@auto#1{\iftoggle{#1@latin}%
+ {\xpg@fontsetup@latin{#1}}%
+ {\xpg@fontsetup@nonlatin{#1}}%
+}
+
+\def\xpg@addfontfeature@lang#1#2{% #1 is langtag, #2 is langname
+ % Turkish is a special case: tag can be TRK or TUR
+ \edef\tmp@Turkish{Turkish}%
+ \edef\tmp@@langname{#2}%
+ % \ifstrequal{#2}{Turkish}%
+ \ifx\tmp@@langname\tmp@Turkish
+ \fontspec_if_language:nTF {TRK}%
+ {\addfontfeature{Language=Turkish}}%
+ {\fontspec_if_language:nTF {TUR}%
+ {\addfontfeature{Language=Turkish}}%
+ {}}%
+ % else not Turkish
+ \else
+ \edef\tmp@@langparam{Language=#2}%
+ \expandafter\expandafter\expandafter\fontspec_if_language:nTF \expandafter{#1}%
+ {\expandafter\expandafter\expandafter\addfontfeature\expandafter{\tmp@@langparam}}%
+ {}%
+ \fi
+}
+
+\def\xpg@addfontfeature@script#1#2{% #1 is scripttag, #2 is scriptname
+ \edef\tmp@@scriptparam{Script=#2}%
+ \expandafter\expandafter\expandafter\fontspec_if_script:nTF \expandafter{#1}%
+ {\expandafter\expandafter\expandafter\addfontfeature\expandafter{\tmp@@scriptparam}}%
+ {\xpg@error{^^J
+ The~ current~ roman~ font~ does~ not~ contain~ the~ \expandafter\noexpand#2 ~ script!^^J
+ Please~ define~ \expandafter\string\csname \xpg@lowercasefirst{#2}font\endcsname\space with~ \string\newfontfamily}}%
+}
+
+\def\xpg@fontsetup@latin#1{%
+ \begingroup
+ \csgdef{#1@font@rm}{%
+ \ifcsdef{#1font}{\csname #1font\endcsname}%
+ {\edef\tmp@langtag{\csuse{xpg@langtag@#1}}%
+ \edef\tmp@langname{\csuse{xpg@langname@#1}}%
+ \rmfamilylatin%
+ \ifcsvoid{xpg@langtag@#1}{}{%
+ \ifcsvoid{xpg@langname@#1}{}{%
+ \xpg@addfontfeature@lang{\tmp@langtag}{\tmp@langname}}%
+ }}}%
+ \csgdef{#1@font@sf}{%
+ \ifcsdef{#1fontsf}{\csname #1fontsf\endcsname}%
+ {\edef\tmp@langtag{\csuse{xpg@langtag@#1}}%
+ \edef\tmp@langname{\csuse{xpg@langname@#1}}%
+ \sffamilylatin%
+ \ifcsvoid{xpg@langtag@#1}{}{%
+ \ifcsvoid{xpg@langname@#1}{}{%
+ \xpg@addfontfeature@lang{\tmp@langtag}{\tmp@langname}}%
+ }}}%
+ \csgdef{#1@font@tt}{%
+ \ifcsdef{#1fonttt}{\csname #1fonttt\endcsname}%
+ {\edef\tmp@langtag{\csuse{xpg@langtag@#1}}%
+ \edef\tmp@langname{\csuse{xpg@langname@#1}}%
+ \ttfamilylatin%
+ \ifcsvoid{xpg@langtag@#1}{}{%
+ \ifcsvoid{xpg@langname@#1}{}{%
+ \xpg@addfontfeature@lang{\tmp@langtag}{\tmp@langname}}%
+ }}}%
+ \endgroup
+}
+
+\def\xpg@fontsetup@nonlatin#1{%
+ \begingroup
+ \edef\tmp@langname@lc{#1}% eg ukrainian
+ \edef\tmp@scriptname@lc{\csuse{xpg@scriptname@#1@lc}}% eg cyrillic
+ \ifx\tmp@scriptname@lc\tmp@langname@lc
+ \toggletrue{#1@scriptlangequal}%
+ \else
+ \togglefalse{#1@scriptlangequal}%
+ \fi
+ \csgdef{#1@font@rm}{%
+ \ifcsdef{#1font}%
+ {\@nameuse{#1font}}%
+ {\edef\tmp@scripttag{\csuse{xpg@scripttag@#1}}% eg cyrl
+ \edef\tmp@scriptname{\csuse{xpg@scriptname@#1}}% eg Cyrillic
+ \edef\tmp@langtag{\csuse{xpg@langtag@#1}}% eg UKR
+ \edef\tmp@langname{\csuse{xpg@langname@#1}}% eg Ukrainian
+ \providetoggle{#1@use@script@font}%
+ \iftoggle{#1@scriptlangequal}%
+ {\rmfamilylatin}%
+ {\expandafter\ifcsname\csuse{xpg@scriptname@#1@lc} font\endcsname% eg \cyrillicfont
+ \toggletrue{#1@use@script@font}%
+ \expandafter\csname\csuse{xpg@scriptname@#1@lc} font\endcsname
+ \else
+ \rmfamilylatin
+ \fi}
+ \iftoggle{#1@use@script@font}{}{%
+ \ifcsvoid{xpg@scripttag@#1}{}{%
+ \ifcsvoid{xpg@scriptname@#1}{}{%
+ \xpg@addfontfeature@script{\tmp@scripttag}{\tmp@scriptname}}}}%
+ \ifcsvoid{xpg@langtag@#1}{}{%
+ \ifcsvoid{xpg@langname@#1}{}{%
+ \xpg@addfontfeature@lang{\tmp@langtag}{\tmp@langname}}}%
+ }}%
+ \csgdef{#1@font@sf}{%
+ \ifcsdef{#1fontsf}%
+ {\@nameuse{#1fontsf}}%
+ {\edef\tmp@scripttag{\csuse{xpg@scripttag@#1}}% eg cyrl
+ \edef\tmp@scriptname{\csuse{xpg@scriptname@#1}}% eg Cyrillic
+ \edef\tmp@langtag{\csuse{xpg@langtag@#1}}% eg UKR
+ \edef\tmp@langname{\csuse{xpg@langname@#1}}% eg Ukrainian
+ \providetoggle{#1@use@script@fontsf}%
+ \iftoggle{#1@scriptlangequal}%
+ {\sffamilylatin}%
+ {\expandafter\ifcsname\csuse{xpg@scriptname@#1@lc} fontsf\endcsname% eg \cyrillicfontsf
+ \toggletrue{#1@use@script@fontsf}%
+ \expandafter\csname\csuse{xpg@scriptname@#1@lc} fontsf\endcsname
+ \else
+ \sffamilylatin
+ \fi}
+ \iftoggle{#1@use@script@fontsf}{}{%
+ \ifcsvoid{xpg@scripttag@#1}{}{%
+ \ifcsvoid{xpg@scriptname@#1}{}{%
+ \xpg@addfontfeature@script{\tmp@scripttag}{\tmp@scriptname}}}}%
+ \ifcsvoid{xpg@langtag@#1}{}{%
+ \ifcsvoid{xpg@langname@#1}{}{%
+ \xpg@addfontfeature@lang{\tmp@langtag}{\tmp@langname}}}%
+ }}%
+ \csgdef{#1@font@tt}{%
+ \ifcsdef{#1fonttt}%
+ {\@nameuse{#1fonttt}}%
+ {\edef\tmp@scripttag{\csuse{xpg@scripttag@#1}}% eg cyrl
+ \edef\tmp@scriptname{\csuse{xpg@scriptname@#1}}% eg Cyrillic
+ \edef\tmp@langtag{\csuse{xpg@langtag@#1}}% eg UKR
+ \edef\tmp@langname{\csuse{xpg@langname@#1}}% eg Ukrainian
+ \providetoggle{#1@use@script@fonttt}%
+ \iftoggle{#1@scriptlangequal}%
+ {\ttfamilylatin}%
+ {\expandafter\ifcsname\csuse{xpg@scriptname@#1@lc} fonttt\endcsname% eg \cyrillicfonttt
+ \toggletrue{#1@use@script@fonttt}%
+ \expandafter\csname\csuse{xpg@scriptname@#1@lc} fonttt\endcsname
+ \else
+ \ttfamilylatin
+ \fi}
+ \iftoggle{#1@use@script@fonttt}{}{%
+ \ifcsvoid{xpg@scripttag@#1}{}{%
+ \ifcsvoid{xpg@scriptname@#1}{}{%
+ \xpg@addfontfeature@script{\tmp@scripttag}{\tmp@scriptname}}}}%
+ \ifcsvoid{xpg@langtag@#1}{}{%
+ \ifcsvoid{xpg@langname@#1}{}{%
+ \xpg@addfontfeature@lang{\tmp@langtag}{\tmp@langname}}}%
+ }}%
+ \endgroup
+}
+
+%%% END OF PolyglossiaSetup
+
%% ensure localization of \markright and \markboth commands
-\def\opt@enabled{on}
-\def\opt@disabled{off}
-\define@key{polyglossia}{localmarks}[on]{%
- \def\@tmpa{#1}
- \ifx\@tmpa\opt@enabled
+%%% THIS IS NOW DISABLED BY DEFAULT
+\define@boolkey{polyglossia}[xpg@]{localmarks}[false]{%
+ \ifbool{xpg@localmarks}{%
+ \xpg@info{Option:~ localmarks}%
\def\local@marks##1{%
\def\markboth####1####2{%
- \begingroup%
- \let\label\relax \let\index\relax \let\glossary\relax%
- \unrestored@protected@xdef\@themark%
- {{\foreignlanguage{##1}{%
+ \begingroup
+ \let\label\relax \let\index\relax \let\glossary\relax
+ \unrestored@protected@xdef\@themark
+ {{\foreignlanguage{##1}{%
\protect\@@ensure@maindir{####1}}}%
- {\foreignlanguage{##1}{%
+ {\foreignlanguage{##1}{%
\protect\@@ensure@maindir{####2}}}}%
\@temptokena \expandafter{\@themark}%
\mark{\the\@temptokena}%
- \endgroup%
+ \endgroup
\if@nobreak\ifvmode\nobreak\fi\fi}%
\def\markright####1{%
- \begingroup%
- \let\label\relax \let\index\relax \let\glossary\relax%
- \expandafter\@markright\@themark%
+ \begingroup
+ \let\label\relax \let\index\relax \let\glossary\relax
+ \expandafter\@markright\@themark
{\foreignlanguage{##1}{\protect\@@ensure@maindir{####1}}}%
\@temptokena \expandafter{\@themark}%
\mark{\the\@temptokena}%
- \endgroup%
+ \endgroup
\if@nobreak\ifvmode\nobreak\fi\fi}%
\def\@markright####1####2####3{\@temptokena{\protect\@@ensure@maindir{####1}}%
\unrestored@protected@xdef\@themark{{\the\@temptokena}%
- {\protect\@@ensure@maindir{####3}}}}}
- \else
- \def\local@marks##1{}
- \xpg@info{Option: localmarks=off}
- \fi
+ {\protect\@@ensure@maindir{####3}}}}}%
+ }{% else
+ \def\local@marks##1{}%
+ }%
}
-\setkeys{polyglossia}{localmarks=on}
+\setkeys{polyglossia}{localmarks=false}
% to reset the intercharclass of a character to "normal"
\newXeTeXintercharclass\xpg@normalclass %TODO
@@ -85,80 +441,89 @@
%% (suggestion by Enrico Gregorio)
\@ifundefined{l@nohyphenation}{\chardef\l@nohyphenation=255 }{}
+%we call this macro when a gloss file is not found for a given language
+\def\xpg@nogloss#1{%
+ \xpg@warning{File~ gloss-#1.ldf~ does~ not~ exist!^^J
+ I~ will~ nevertheless~ try~ to~ use~ hyphenation~ patterns~ for~ #1.}%
+ \PolyglossiaSetup{#1}{hyphenmins,hyphennames={#1},fontsetup=true}%
+ % the above amounts to:
+ %\ifcsundef{l@#1}%
+ % {\expandafter\adddialect\csname l@#1\endcsname\l@nohyphenation\relax}%
+ % {\setlocalhyphenmins{#1}{2}{3}}%
+ %\csdef{#1@language}{\language=\csname l@#1\endcsname}%
+}
+
\newcommand{\setdefaultlanguage}[2][]{%
\IfFileExists{gloss-#2.ldf}%
{\ifcsundef{#2@loaded}%
{\input{gloss-#2.ldf}%
- \xpg@info{Default language is #2.}
+ \xpg@info{Default~ language~ is~ #2.}
\def\languagename{#2}%
% This is needed because \arabic is a built-in LaTeX command:
- % so now we have \begin{Arabic}... instead of \begin{arabic}...
- \edef\@tmpa{arabic}%
- \edef\@tmpb{#2}%
- \ifx\@tmpb\@tmpa%
- \newenvironment{Arabic}[1][]{\begin{otherlanguage}[####1]{arabic}}%
- {\end{otherlanguage}}%
- \else%
- \newenvironment{#2}[1][]{\begin{otherlanguage}[####1]{#2}}%
- {\end{otherlanguage}}%
- \fi
+ % so now we have \begin{Arabic}... instead of \begin{arabic}...
+ \ifstrequal{#2}{arabic}%
+ {\newenvironment{Arabic}[1][]{\begin{otherlanguage}[####1]{arabic}}%
+ {\end{otherlanguage}}}%
+ {\newenvironment{#2}[1][]{\begin{otherlanguage}[####1]{#2}}%
+ {\end{otherlanguage}}}%
\expandafter\newcommand\csname text#2\endcsname[2][]{%
- \ifcsdef{RL}%
- {\ifcsundef{#2@RL}%
- {\@ensure@LTR{\foreignlanguage[####1]{#2}{####2}}}%
- {\@ensure@RTL{\foreignlanguage[####1]{#2}{####2}}}}%
- {\foreignlanguage[####1]{#2}{####2}}%
+ \ifcsdef{RTL}%
+ {\iftoggle{#2@RL}%
+ {\@ensure@RTL{\foreignlanguage[####1]{#2}{####2}}}%
+ {\@ensure@LTR{\foreignlanguage[####1]{#2}{####2}}}%
+ }% else bidi not loaded
+ {\iftoggle{#2@RL}%
+ {\xpg@error{Language~ #2~ is~ right-to-left,~ but~ bidi~ package~ was~ not~ loaded!}}%
+ {\foreignlanguage[####1]{#2}{####2}}%
+ }%
}%
\csletcs{local#2}{text#2}%
\csgdef{#2@loaded}{}%
\gdef\xpg@main@language{#2}%
}%
- {\PackageWarning{polyglossia}{gloss-#2.ldf is already loaded!}}%
- %% The following settings are for the default language and script:
- \ifcsundef{#2@RL}{}{\@RTLmaintrue}% this tells bidi.sty that the document is RTL
- \AtBeginDocument{%
- \selectlanguage[#1]{#2}%
- \selectbackgroundlanguage{#2}}%
+ {\xpg@warning{gloss-#2.ldf~ is~ already~ loaded!}}%:
+ %% The following settings are for the default language and script:
+ \iftoggle{#2@RL}{\@RTLmaintrue}{}% this tells bidi.sty that the document is RTL
+ \AtBeginDocument{%
+ \selectlanguage[#1]{#2}%
+ \selectbackgroundlanguage{#2}}%
}%
%ELSE
- {\xpg@nolang{#2}\hyphenrules{#2}}}%
+ {\xpg@nogloss{#2}}%
+}
\let\setmainlanguage=\setdefaultlanguage
\newcommand{\resetdefaultlanguage}[2][]{%
\ifcsundef{#2@loaded}{%
- \PackageError{polyglossia}{gloss-#2.ldf is not loaded!}}%
+ \xpg@error{gloss-#2.ldf~ is~ not~ loaded!}}%
{\csuse{no\xpg@main@language @globalnumbers}% disable globalnumbers of previously defined default language
\csuse{noextras@\xpg@main@language}%
+ \csuse{init@noextras@\xpg@main@language}%
\def\languagename{#2}%
- \ifcsundef{#2@RL}{}{\@rlmaintrue\@rl@footnotetrue}%
+ \iftoggle{#2@RL}{\@rlmaintrue\@rl@footnotetrue}{}%
\selectlanguage[#1]{#2}%
\selectbackgroundlanguage{#2}}}
\def\familytype{rm}
-\gappto\rmfamily{\def\familytype{rm}}
-\gappto\sffamily{\def\familytype{sf}}
-\gappto\ttfamily{\def\familytype{tt}}
+% This robustifies the redefinitions of \<xx>family (suggestion by Enrico Gregorio)
+% e.g. to prevent expansion of the \familytype redefinition in auxiliary files
+\csgappto{rmfamily }{\def\familytype{rm}}
+\csgappto{sffamily }{\def\familytype{sf}}
+\csgappto{ttfamily }{\def\familytype{tt}}
% This saves the normalfont for the latin script since we may change normalfont in other scripts
\let\normalfontlatin=\normalfont%
\let\rmfamilylatin=\rmfamily%
\let\sffamilylatin=\sffamily%
\let\ttfamilylatin=\ttfamily%
-\def\reset@latin@script{%
+\def\resetfontlatin{%
\let\rmfamily=\rmfamilylatin%
\let\sffamily=\sffamilylatin%
\let\ttfamily=\ttfamilylatin%
- \normalfontlatin}
-
-\def\reset@LR{\csuse{setLR}}
-
-\def\selectnormalfontlatin{%
- \if\normalfont\ttfamily\ttfamilylatin\else
- \if\normalfont\sffamily\sffamilylatin\else
- \normalfontlatin\fi\fi}
+ \let\normalfont=\normalfontlatin}
-\DeclareRobustCommand\selectfontfamilylatin{%
+\def\selectfontfamilylatin{%
\def\tmp@tt{tt}\def\tmp@sf{sf}%
\ifx\familytype\tmp@tt%
\ttfamilylatin%
@@ -166,6 +531,22 @@
\sffamilylatin%
\else\rmfamilylatin\fi\fi}
+\def\xpg@select@fontfamily#1{%
+ \def\tmp@tt{tt}\def\tmp@sf{sf}%
+ \ifx\familytype\tmp@tt
+ \csuse@warn{#1@font@tt}%
+ \else\ifx\familytype\tmp@sf
+ \csuse@warn{#1@font@sf}%
+ \else\csuse@warn{#1@font@rm}\fi\fi}
+
+\def\xpg@set@normalfont#1{%
+ \letcs{\rmfamily}{#1@font@rm}%
+ \letcs{\sffamily}{#1@font@sf}%
+ \letcs{\ttfamily}{#1@font@tt}%
+ \gdef\normalfont{\protect\xpg@select@fontfamily{#1}}%
+ \gdef\reset@font{\protect\normalfont}%
+}
+
\let\@@fterindentfalse\@afterindentfalse
\def\french@indent{\let\@afterindentfalse\@afterindenttrue
\@afterindenttrue}
@@ -173,7 +554,7 @@
\@afterindentfalse}
\newcommand{\selectbackgroundlanguage}[1]{%
- \csuse{selectnormalfont#1}%
+ \iftoggle{#1@latin}{}{\xpg@set@normalfont{#1}}%
\csuse{#1@globalnumbers}%
}
@@ -187,35 +568,35 @@
\ifx\@tmpb\@tmpa%
\newenvironment{Arabic}[1][]{\begin{otherlanguage}[####1]{arabic}}%
{\end{otherlanguage}}%
- \else%
+ \else
\newenvironment{#2}[1][]{\begin{otherlanguage}[####1]{#2}}%
{\end{otherlanguage}}%
\fi
\expandafter\newcommand\csname text#2\endcsname[2][]{%
- \ifcsdef{RL}{%
- \ifcsundef{#2@RL}%
- {\@ensure@LTR{\foreignlanguage[####1]{#2}{####2}}}%
- {\@ensure@RTL{\foreignlanguage[####1]{#2}{####2}}}%
- }{% else
- \foreignlanguage[####1]{#2}{####2}%
- }}%
- \csletcs{local#2}{text#2}%
- \csgdef{#2@loaded}{}%
+ \ifcsdef{RTL}%
+ {\iftoggle{#2@RL}%
+ {\@ensure@RTL{\foreignlanguage[####1]{#2}{####2}}}%
+ {\@ensure@LTR{\foreignlanguage[####1]{#2}{####2}}}%
+ }% else bidi not loaded
+ {\iftoggle{#2@RL}%
+ {\xpg@error{Language~ #2~ is~ right-to-left,~ but~ bidi~ package~ was~ not~ loaded!}}%
+ {\foreignlanguage[####1]{#2}{####2}}%
+ }%
+ }%
+ \csletcs{local#2}{text#2}%
+ \csgdef{#2@loaded}{}%
}%
- {\PackageWarning{polyglossia}{gloss-#2.ldf is already loaded!}}%
+ {\xpg@warning{gloss-#2.ldf~ is~ already~ loaded!}}%
}%
- %ELSE
- {\xpg@nolang{#2}\hyphenrules{#2}}%
- %TODO ? \expandafter\ifx\csname l@#2\endcsname\@undefined
- %\xpg@nopatterns{#2}\expandafter\adddialect\csname l@#2\endcsname 0%
- %\else\expandafter\expandafter\protect\language=\csname l@#2\endcsname\fi
+ %ELSE
+ {\xpg@nogloss{#2}}%
}
\newcommand\setotherlanguages[1]{%
- \def\do##1{\setotherlanguage{##1}}%
+ \renewcommand*{\do}[1]{\setotherlanguage{##1}}%
\docsvlist{#1}}%
-\def\common@language{%
+\def\common@language{% FIXME is this really needed???
\language=\z@
\lefthyphenmin=\tw@
\righthyphenmin=\thr@@}
@@ -231,34 +612,47 @@
\providecommand{\foreignlanguage}{}
\renewcommand{\foreignlanguage}[3][]{%
- \ifcsundef{#2@loaded}{\xpg@nolang{#2}\hyphenrules{#2}}{%
- {\def\languagename{#2}%
+ \ifcsundef{#2@loaded}%
+ {\xpg@nogloss{#2}}%
+ {{\select@@language{#2}%
\setkeys{#2}{#1}%
- \csuse@warn{#2@font}%
- \csuse@warn{#2@language}%
- \csuse{date#2}%
- \csuse{#2@numbers}%
\use@localhyphenmins{#2}%
+ \ifbool{#2@frenchspacing}{\frenchspacing}{\nonfrenchspacing}%
\csuse{inlineextras@#2}%
#3}%
- }%
+ }%
}
+% otherlanguage* is the environment equivalent of \foreignlanguage
+\expandafter\providecommand\csname otherlanguage*\endcsname{}
+\renewenvironment{otherlanguage*}[2][]{%
+ \ifcsundef{#2@loaded}%
+ {\bgroup\xpg@nogloss{#2}}%
+ {\bgroup\select@@language{#2}%
+ \setkeys{#2}{#1}%
+ \use@localhyphenmins{#2}%
+ \ifbool{#2@frenchspacing}{\frenchspacing}{\nonfrenchspacing}%
+ \csuse{inlineextras@#2}%
+ }%
+}{\egroup}
+
%Hook that other package authors can use
%(for instance biblatex):
\newcommand*{\xpg@hook@setlanguage}{}
\providecommand{\selectlanguage}{}
\renewcommand{\selectlanguage}[2][]{%
- \ifcsundef{#2@loaded}{\xpg@nolang{#2}\hyphenrules{#2}}{%
- \def\xpg@pop@language{%
+ \ifcsundef{#2@loaded}%
+ {\xpg@nogloss{#2}}%
+ {\def\xpg@pop@language{%
\xpg@set@language{\languagename}%
\xpg@hook@setlanguage%
\let\emp@langname\@undefined}%
\aftergroup\xpg@pop@language%
\setkeys{#2}{#1}%
\xpg@set@language{#2}%
-}}
+ }%
+}
\newcommand{\xpg@set@language}[1]{%
\select@language{#1}%
@@ -272,19 +666,26 @@
\def\select@language#1{%
\xpg@initial@setup%
- \edef\languagename{#1}%
- \ifcsundef{RL}{}%
- {\ifcsundef{#1@RL}{\setLR}{\setRL}}%
- \csuse@warn{#1@font}%
- \csuse@warn{#1@language}%
- \use@localhyphenmins{#1}%
+ \select@@language{#1}%
+ \ifcsundef{setRL}{}%
+ {\iftoggle{#1@RL}{\setRL}{\setLR}}%
\csuse{captions#1}%
- \csuse{date#1}%
- \csuse{#1@numbers}%
\local@marks{#1}%
+ \csuse{init@extras@#1}%
\csuse{blockextras@#1}%
}
+% Common code for `\select@language' and `\foreignlanguage'.
+\newcommand{\select@@language}[1]{%
+ \edef\languagename{#1}%
+ \xpg@select@fontfamily{#1}%
+ \csuse@warn{#1@language}%
+ \csuse{date#1}%
+ \csuse{#1@numbers}%
+ \use@localhyphenmins{#1}%
+}
+
+
\let\xpg@pop@language\relax
\provideenvironment{otherlanguage}{}{}
@@ -295,10 +696,10 @@
\newcommand{\setlocalhyphenmins}[3]{%
\expandafter\ifx\csname l@#1\endcsname\relax%
- \xpg@warning{\string\setlocalhyphenmin useless for unknown language #1}%
+ \xpg@warning{\string\setlocalhyphenmin\space~ useless~ for~ unknown~ language~ #1}%
\else
\expandafter\ifx\csname l@#1\endcsname\l@nohyphenation%
- \xpg@warning{\string\setlocalhyphenmin useless for unhyphenated language #1}%
+ \xpg@warning{\string\setlocalhyphenmin\space~ useless~ for~ unhyphenated~ language~ #1}%
\else
\providehyphenmins{#1}{#2#3}%
\fi
@@ -308,40 +709,13 @@
\ifcsundef{#1hyphenmins}{}%
{\expandafter\expandafter\expandafter\set@hyphenmins\csname #1hyphenmins\endcsname\relax}}
-% FIXME: remove this eventually, say in 2012 :)
-% taken from xelatex.ini, in case the xelatex format is too old
-\ifcsundef{newXeTeXintercharclass}{%
- \xpg@warning{Your xelatex format appears to be outdated!^^J
- Please update your system and recreate it with fmtutil.}
- \newcount\xe@alloc@intercharclass % allocates intercharclass
- \xe@alloc@intercharclass=\thr@@ % from 4 (1,2 and 3 are used by CJK, AFAIK)
- \def\xe@alloc@#1#2#3#4#5{\global\advance#1\@ne
- \xe@ch@ck#1#4#2% make sure there's still room
- \allocationnumber#1%
- \global#3#5\allocationnumber
- \wlog{\string#5=\string#2\the\allocationnumber}}
- \def\xe@ch@ck#1#2#3{%
- \ifnum#1<#2\else
- \errmessage{No room for a new #3}%
- \fi}
- \def\newXeTeXintercharclass{%
- \xe@alloc@\xe@alloc@intercharclass\XeTeXintercharclass\chardef\@cclv} %at most 254
- }
- {}
-
-%% patch lastpage to avoid problem with \thepage when \@arabic is redefined for non-Latin numbers
-%\@ifpackageloaded{lastpage}{%
-%\xpg@info{Redefining lastpage command \string\lastpage@putlabel}%
-%\def\lastpage@putlabel{\addtocounter{page}{-1}%
-% \immediate\write\@auxout{\string
-% \newlabel{LastPage}{{}{\number\c@page}}}%
-% \addtocounter{page}{1}}}%
-% {}
-%
\define@boolkey{polyglossia}[system@]{babelshorthands}[false]{}
+\AtEndPreamble{\@ifpackageloaded{bidi}{\newcommand*{\aemph}[1]{$\overline{\hboxR{#1}}$}}{}}
+
%% Package Options %%
-\DeclareOption{nolocalmarks}{\setkeys{polyglossia}{localmarks=off}}
+\DeclareOption{nolocalmarks}{\setkeys{polyglossia}{localmarks=false}}
+\DeclareOption{localmarks}{\setkeys{polyglossia}{localmarks=true}}
\DeclareOption{babelshorthands}{\setkeys{polyglossia}{babelshorthands=true}}
\DeclareOption{quiet}{%
\gdef\@latex@info#1{\relax}% no latex info
@@ -349,27 +723,30 @@
\gdef\@font@warning#1{\relax}% no latex font warnings
\gdef\zf@PackageInfo#1{\relax}% no fontspec info
\gdef\xpg@info#1{\relax}}% no polyglossia info
+%
+% FIXME these should also be loaded \AtEndOfPackage !!!
\def\xpg@option#1#2{%
\ifcsundef{xpg@main@language}{\setdefaultlanguage}{\setotherlanguage}%
[#1]{#2}}
-\DeclareOption{USenglish}{\xpg@option{variant=american}{english}}
-\DeclareOption{american}{\xpg@option{variant=american}{english}}
-\DeclareOption{UKenglish}{\xpg@option{variant=british}{english}}
-\DeclareOption{british}{\xpg@option{variant=british}{english}}
-\DeclareOption{australian}{\xpg@option{variant=australian}{english}}
-\DeclareOption{newzealand}{\xpg@option{variant=newzealand}{english}}
-\DeclareOption{ngerman}{\xpg@option{spelling=new}{german}}
-\DeclareOption{polygreek}{\xpg@option{variant=poly}{greek}}
-\DeclareOption{monogreek}{\xpg@option{variant=mono}{greek}}
-\DeclareOption{ancientgreek}{\xpg@option{variant=ancient}{greek}}
-\DeclareOption*{%
- \edef\@temp{%
- \noexpand\ifcsundef{xpg@main@language}%
- \noexpand\setdefaultlanguage
- \noexpand\setotherlanguage
- {\CurrentOption}%
- }%
- \expandafter\AtEndOfPackage\expandafter{\@temp}%
-}
+%\DeclareOption{USenglish}{\xpg@option{variant=american}{english}}
+%\DeclareOption{american}{\xpg@option{variant=american}{english}}
+%\DeclareOption{UKenglish}{\xpg@option{variant=british}{english}}
+%\DeclareOption{british}{\xpg@option{variant=british}{english}}
+%\DeclareOption{australian}{\xpg@option{variant=australian}{english}}
+%\DeclareOption{newzealand}{\xpg@option{variant=newzealand}{english}}
+%\DeclareOption{ngerman}{\xpg@option{spelling=new}{german}}
+%\DeclareOption{polygreek}{\xpg@option{variant=poly}{greek}}
+%\DeclareOption{monogreek}{\xpg@option{variant=mono}{greek}}
+%\DeclareOption{ancientgreek}{\xpg@option{variant=ancient}{greek}}
+%%% TODO add warning message that this approach is deprecated <<<<<<<<<<<<<<
+%\DeclareOption*{%
+% \edef\@temp{%
+% \noexpand\ifcsundef{xpg@main@language}%
+% \noexpand\setdefaultlanguage
+% \noexpand\setotherlanguage
+% {\CurrentOption}%
+% }%
+% \expandafter\AtEndOfPackage\expandafter{\@temp}%
+%}
\ProcessOptions*
\endinput
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.aux b/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.aux
deleted file mode 100644
index ae46bde5e5d..00000000000
--- a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.aux
+++ /dev/null
@@ -1,37 +0,0 @@
-\relax
-\select@language {french}
-\@writefile{toc}{\select@language {french}}
-\@writefile{lof}{\select@language {french}}
-\@writefile{lot}{\select@language {french}}
-\select@language {turkish}
-\@writefile{toc}{\select@language {turkish}}
-\@writefile{lof}{\select@language {turkish}}
-\@writefile{lot}{\select@language {turkish}}
-\select@language {french}
-\@writefile{toc}{\select@language {french}}
-\@writefile{lof}{\select@language {french}}
-\@writefile{lot}{\select@language {french}}
-\select@language {turkish}
-\@writefile{toc}{\select@language {turkish}}
-\@writefile{lof}{\select@language {turkish}}
-\@writefile{lot}{\select@language {turkish}}
-\select@language {french}
-\@writefile{toc}{\select@language {french}}
-\@writefile{lof}{\select@language {french}}
-\@writefile{lot}{\select@language {french}}
-\select@language {arabic}
-\@writefile{toc}{\select@language {arabic}}
-\@writefile{lof}{\select@language {arabic}}
-\@writefile{lot}{\select@language {arabic}}
-\@writefile{lot}{\select@language {french}}
-\@writefile{lof}{\select@language {french}}
-\@writefile{toc}{\select@language {french}}
-\select@language {french}
-\select@language {arabic}
-\@writefile{toc}{\select@language {arabic}}
-\@writefile{lof}{\select@language {arabic}}
-\@writefile{lot}{\select@language {arabic}}
-\@writefile{lot}{\select@language {french}}
-\@writefile{lof}{\select@language {french}}
-\@writefile{toc}{\select@language {french}}
-\select@language {french}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.log b/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.log
deleted file mode 100644
index 9b16ca61ced..00000000000
--- a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.log
+++ /dev/null
@@ -1,268 +0,0 @@
-This is XeTeX, Version 3.1415926-2.2-0.9995.2 (TeX Live 2009/Arch Linux) (format=xelatex 2010.1.19) 18 MAR 2010 15:35
-entering extended mode
- restricted \write18 enabled.
- %&-line parsing enabled.
-**test-polyglossia-setup.tex
-(./test-polyglossia-setup.tex
-LaTeX2e <2009/09/24>
-Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
-yphenation, german-x-2009-06-19, ngerman-x-2009-06-19, ancientgreek, ibycus, ar
-abic, basque, bulgarian, catalan, pinyin, coptic, croatian, czech, danish, dutc
-h, esperanto, estonian, farsi, finnish, french, galician, german, ngerman, mono
-greek, greek, hungarian, icelandic, indonesian, interlingua, irish, italian, ku
-rmanji, latin, latvian, lithuanian, mongolian, mongolian2a, bokmal, nynorsk, po
-lish, portuguese, romanian, russian, sanskrit, serbian, slovak, slovenian, span
-ish, swedish, turkish, ukenglish, ukrainian, uppersorbian, welsh, loaded.
-(/usr/share/texmf-dist/tex/latex/base/article.cls
-Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
-(/usr/share/texmf-dist/tex/latex/base/size12.clo
-File: size12.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
-)
-\c@part=\count80
-\c@section=\count81
-\c@subsection=\count82
-\c@subsubsection=\count83
-\c@paragraph=\count84
-\c@subparagraph=\count85
-\c@figure=\count86
-\c@table=\count87
-\abovecaptionskip=\skip41
-\belowcaptionskip=\skip42
-\bibindent=\dimen102
-)
-(/usr/share/texmf-dist/tex/xelatex/fontspec/fontspec.sty
-Package: fontspec 2008/08/09 v1.18 Advanced font selection for XeLaTeX
-
-(/usr/share/texmf-dist/tex/generic/ifxetex/ifxetex.sty
-Package: ifxetex 2009/01/23 v0.5 Provides ifxetex conditional
-)
-\c@zf@newff=\count88
-\c@zf@index=\count89
-\c@zf@script=\count90
-\c@zf@language=\count91
-
-(/usr/share/texmf-dist/tex/latex/tools/calc.sty
-Package: calc 2007/08/22 v4.3 Infix arithmetic (KKT,FJ)
-\calc@Acount=\count92
-\calc@Bcount=\count93
-\calc@Adimen=\dimen103
-\calc@Bdimen=\dimen104
-\calc@Askip=\skip43
-\calc@Bskip=\skip44
-LaTeX Info: Redefining \setlength on input line 76.
-LaTeX Info: Redefining \addtolength on input line 77.
-\calc@Ccount=\count94
-\calc@Cskip=\skip45
-)
-(/usr/share/texmf-dist/tex/latex/xkeyval/xkeyval.sty
-Package: xkeyval 2008/08/13 v2.6a package option processing (HA)
-
-(/usr/share/texmf-dist/tex/generic/xkeyval/xkeyval.tex
-\XKV@toks=\toks14
-\XKV@tempa@toks=\toks15
-\XKV@depth=\count95
-File: xkeyval.tex 2008/08/13 v2.6a key=value parser (HA)
-
-(/usr/share/texmf-dist/tex/generic/xkeyval/keyval.tex)))
-(/usr/share/texmf-dist/tex/latex/base/fontenc.sty
-Package: fontenc 2005/09/27 v1.99g Standard LaTeX package
-
-(/usr/share/texmf-dist/tex/xelatex/euenc/eu1enc.def
-File: eu1enc.def 2008/03/08 v0.1d Experimental unicode font encoding
-)
-LaTeX Font Info: Try loading font information for EU1+lmr on input line 100.
-
-
-(/usr/share/texmf-dist/tex/xelatex/euenc/eu1lmr.fd
-File: eu1lmr.fd 2007/01/14 v1.3 Font defs for Latin Modern
-))
-LaTeX Info: Redefining \itshape on input line 1163.
-LaTeX Info: Redefining \slshape on input line 1166.
-LaTeX Info: Redefining \scshape on input line 1169.
-LaTeX Info: Redefining \upshape on input line 1172.
-
-fontspec.cfg loaded.
-(/usr/share/texmf-dist/tex/xelatex/fontspec/fontspec.cfg))
-Package fontspec Info: Linux Libertine scale = 0.99965 on input line 4.
-\c@zf@famc@Linux Libertine=\count96
-Package fontspec Info: Defining font family for 'Linux Libertine' with options
-[Scale=MatchLowercase,] on input line 4.
-Package fontspec Info: Linux Libertine scale = 0.99965 on input line 4.
-Package fontspec Info: Linux Libertine scale = 0.99965 on input line 4.
-Package fontspec Info: Linux Libertine/B scale = 0.98845 on input line 4.
-Package fontspec Info: Linux Libertine/B scale = 0.98845 on input line 4.
-Package fontspec Info: Linux Libertine/I scale = 0.98186 on input line 4.
-Package fontspec Info: Linux Libertine/I scale = 0.98186 on input line 4.
-Package fontspec Info: Linux Libertine/BI scale = 0.96892 on input line 4.
-LaTeX Font Info: Font shape `EU1/LinuxLibertine(0)/m/n' will be
-(Font) scaled to size 9.99649pt on input line 4.
-Package fontspec Info: DejaVu Sans scale = 0.78812 on input line 5.
-\c@zf@famc@DejaVu Sans=\count97
-Package fontspec Info: Defining font family for 'DejaVu Sans' with options [Sca
-le=MatchLowercase,] on input line 5.
-Package fontspec Info: DejaVu Sans scale = 0.78812 on input line 5.
-Package fontspec Info: DejaVu Sans/B scale = 0.78812 on input line 5.
-Package fontspec Info: DejaVu Sans/I scale = 0.78812 on input line 5.
-Package fontspec Info: DejaVu Sans/BI scale = 0.78812 on input line 5.
-Package fontspec Info: DejaVu Sans Mono scale = 0.78812 on input line 6.
-\c@zf@famc@DejaVu Sans Mono=\count98
-Package fontspec Info: Defining font family for 'DejaVu Sans Mono' with options
- [Scale=MatchLowercase,] on input line 6.
-Package fontspec Info: DejaVu Sans Mono scale = 0.78812 on input line 6.
-Package fontspec Info: DejaVu Sans Mono/B scale = 0.78812 on input line 6.
-Package fontspec Info: DejaVu Sans Mono/I scale = 0.78812 on input line 6.
-Package fontspec Info: DejaVu Sans Mono/BI scale = 0.78812 on input line 6.
-Package fontspec Info: Scheherazade scale = 1.27927 on input line 7.
-\c@zf@famc@Scheherazade=\count99
-Package fontspec Info: Defining font family for 'Scheherazade' with options [Sc
-ale=MatchLowercase,Script=Arabic] on input line 7.
-Package fontspec Info: Scheherazade scale = 1.27927 on input line 7.
-Package fontspec Info: Could not resolve font Scheherazade/B (it might not exis
-t) on input line 7.
-Package fontspec Info: Could not resolve font Scheherazade/I (it might not exis
-t) on input line 7.
-Package fontspec Info: Could not resolve font Scheherazade/BI (it might not exi
-st) on input line 7.
-Package fontspec Info: DejaVu Sans scale = 0.78812 on input line 8.
-Package fontspec Info: Defining font family for 'DejaVu Sans' with options [Sca
-le=MatchLowercase,Script=Arabic] on input line 8.
-Package fontspec Info: DejaVu Sans scale = 0.78812 on input line 8.
-Package fontspec Info: DejaVu Sans/B scale = 0.78812 on input line 8.
-Package fontspec Info: DejaVu Sans/I scale = 0.78812 on input line 8.
-Package fontspec Info: DejaVu Sans/BI scale = 0.78812 on input line 8.
-Package fontspec Info: DejaVu Sans Mono scale = 0.78812 on input line 9.
-Package fontspec Info: Defining font family for 'DejaVu Sans Mono' with options
- [Scale=MatchLowercase,Script=Arabic] on input line 9.
-Package fontspec Info: DejaVu Sans Mono scale = 0.78812 on input line 9.
-Package fontspec Info: DejaVu Sans Mono/B scale = 0.78812 on input line 9.
-Package fontspec Info: DejaVu Sans Mono/I scale = 0.78812 on input line 9.
-Package fontspec Info: DejaVu Sans Mono/BI scale = 0.78812 on input line 9.
- (./polyglossia.sty
-Package: polyglossia 2010/03/12 v1.2.0 Babel replacement for XeLaTeX
-
-(/usr/share/texmf-dist/tex/latex/etoolbox/etoolbox.sty
-Package: etoolbox 2009/08/06 v1.8 e-TeX tools for LaTeX
-
-(/usr/share/texmf-dist/tex/latex/etex-pkg/etex.sty
-Package: etex 1998/03/26 v2.0 eTeX basic definition package (PEB)
-\et@xins=\count100
-))
-(/usr/share/texmf-dist/tex/latex/makecmds/makecmds.sty
-Package: makecmds 2009/09/03 v1.0a extra command making commands
-)
-\xpg@normalclass=\XeTeXintercharclass4
-) (./gloss-french.ldf
-File: gloss-french.ldf polyglossia: module for french
-\french@punctthin=\XeTeXintercharclass5
-\french@punctthick=\XeTeXintercharclass6
-\french@punctguill=\XeTeXintercharclass7
-)
-Package polyglossia Info: Default language is french..
-
-(./gloss-bahasai.ldf
-File: gloss-bahasai.ldf polyglossia: module for bahasa indonesia
- (./hijrical.sty
-Package: hijrical 2007/12/27 v0.1 Islamic calendar
-
-(/home/francois/texmf/tex/xelatex/bidi/bidi.sty
-Package: bidi 2010/03/01 v1.0.4 <revision 127> Bidirectional typesetting in XeL
-aTeX
-\n@everypar=\toks16
-
-(/home/francois/texmf/tex/xelatex/bidi/footnote-bidi.def)
-(/home/francois/texmf/tex/xelatex/bidi/article-bidi.def)) (./arabicnumbers.sty
-Package: arabicnumbers 2010/03/18 v0.2 Formatting of Arabic and Farsi digits an
-d of Arabic abjad numerals
-) (./cal-util.def
-\c@tmpA=\count101
-\c@tmpB=\count102
-\c@tmpC=\count103
-\c@tmpD=\count104
-\c@tmpE=\count105
-\c@tmpF=\count106
-)
-\c@Hijriday=\count107
-\c@Hijrimonth=\count108
-\c@Hijriyear=\count109
-)) (./gloss-turkish.ldf
-File: gloss-turkish.ldf polyglossia: module for turkish
-\turkish@punctthin=\XeTeXintercharclass8
-\turkish@punctthick=\XeTeXintercharclass9
-) (./gloss-ukrainian.ldf
-File: gloss-ukrainian.ldf polyglossia: module for ukrainian
-)
-(./gloss-arabic.ldf
-File: gloss-arabic.ldf polyglossia: module for arabic
-) (./test-polyglossia-setup.aux)
-\openout1 = `test-polyglossia-setup.aux'.
-
-LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Checking defaults for EU1/lmr/m/n on input line 18.
-LaTeX Font Info: ... okay on input line 18.
-LaTeX Font Info: Font shape `EU1/LinuxLibertine(0)/m/n' will be
-(Font) scaled to size 11.99579pt on input line 18.
-LaTeX Font Info: Font shape `EU1/LinuxLibertine(0)/m/n' will be
-(Font) scaled to size 10.94615pt on input line 18.
- [1
-
-]
-LaTeX Font Info: Font shape `EU1/LinuxLibertine(0)/m/it' will be
-(Font) scaled to size 11.78229pt on input line 32.
-LaTeX Font Info: Font shape `EU1/LinuxLibertine(0)/m/si' will be
-(Font) scaled to size 11.78229pt on input line 33.
-
-
-LaTeX Font Warning: Font shape `EU1/DejaVuSansMono(0)/m/si' undefined
-(Font) using `EU1/DejaVuSansMono(0)/m/n' instead on input line 35.
-
-
-LaTeX Font Info: Font shape `EU1/DejaVuSansMono(0)/m/n' will be
-(Font) scaled to size 9.4574pt on input line 35.
-LaTeX Font Info: Font shape `EU1/DejaVuSansMono(0)/m/si' will be
-(Font) scaled to size 8.62987pt on input line 35.
-LaTeX Font Info: Font shape `EU1/LinuxLibertine(0)/m/si' will be
-(Font) scaled to size 10.75133pt on input line 37.
-LaTeX Font Info: Font shape `EU1/Scheherazade(0)/m/n' will be
-(Font) scaled to size 15.3512pt on input line 44.
-\c@adj@day=\count110
-\c@RDdate=\count111
-\c@tmpx=\count112
-\c@tmpy=\count113
-LaTeX Font Info: Font shape `EU1/DejaVuSans(0)/m/n' will be
-(Font) scaled to size 9.4574pt on input line 47.
-LaTeX Font Info: Font shape `EU1/DejaVuSans(0)/m/n' will be
-(Font) scaled to size 8.62987pt on input line 47.
-LaTeX Font Info: Font shape `EU1/DejaVuSans(0)/bx/n' will be
-(Font) scaled to size 9.4574pt on input line 49.
-LaTeX Font Info: Font shape `EU1/DejaVuSans(1)/bx/n' will be
-(Font) scaled to size 9.4574pt on input line 49.
-LaTeX Font Info: Font shape `EU1/DejaVuSans(1)/bx/n' will be
-(Font) scaled to size 8.62987pt on input line 49.
-LaTeX Font Info: Font shape `EU1/DejaVuSans(1)/m/n' will be
-(Font) scaled to size 9.4574pt on input line 49.
-[2] (./test-polyglossia-setup.aux)
-
-LaTeX Font Warning: Some font shapes were not available, defaults substituted.
-
- )
-Here is how much of TeX's memory you used:
- 3445 strings out of 494664
- 65348 string characters out of 3167327
- 151452 words of memory out of 3000000
- 6620 multiletter control sequences out of 15000+200000
- 4194 words of font info for 47 fonts, out of 3000000 for 9000
- 669 hyphenation exceptions out of 8191
- 30i,5n,59p,836b,235s stack positions out of 5000i,500n,10000p,200000b,50000s
-
-Output written on test-polyglossia-setup.pdf (2 pages).
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.pdf b/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.pdf
deleted file mode 100644
index 166aa5bdbf2..00000000000
--- a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.tex b/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.tex
deleted file mode 100644
index 27691075c6e..00000000000
--- a/Master/texmf-dist/tex/xelatex/polyglossia/test-polyglossia-setup.tex
+++ /dev/null
@@ -1,58 +0,0 @@
-\documentclass[12pt]{article}
-\usepackage[no-math]{fontspec}
-\defaultfontfeatures{Scale=MatchLowercase}
-\setromanfont{Linux Libertine}
-\setsansfont{DejaVu Sans}
-\setmonofont{DejaVu Sans Mono}
-\newfontfamily\arabicfont[Script=Arabic]{Scheherazade}
-\newfontfamily\arabicfontsf[Script=Arabic]{DejaVu Sans}
-\newfontfamily\arabicfonttt[Script=Arabic]{DejaVu Sans Mono}
-\usepackage{polyglossia}
-%\tracingall
-\setdefaultlanguage{french}
-\setotherlanguage{bahasai}
-\setotherlanguage{turkish}
-\setotherlanguage{ukrainian}
-\setotherlanguage{arabic}
-\def\showfamily{\fbox{\small\familytype}}
-\begin{document}\showfamily
-
-Bonjour!
-
-\textukrainian{\today}
-
-\textbahasai{\today}
-
-\textturkish{\today}
-
-
-\newpage
-%
-Some normal text. \showfamily
-\itshape Some italic text.
-\scshape Some upshape text.
-
-\ttfamily some code… \showfamily
-
-\rmfamily Some normal text. \showfamily
-\normalfont normal \showfamily
-
-texte «normal». \textit{\textturkish{türkçe metin}}. \textturkish{\textit{türkçe metin}}.
-
-texte «normal». \textit{\begin{turkish} türkçe metin.\end{turkish}} \begin{turkish}\textit{türkçe metin.}\end{turkish}
-
-\textarabic{متن عربي / \today = \Hijritoday}
-
-
-\sffamily\showfamily
-
-texte «normal». \textbf{\textarabic{\showfamily متن عربي}} \textarabic{\textbf{متن عربي}}
-
-\bfseries
-texte «normal».
-
-\begin{Arabic}\mdseries متن عربي\end{Arabic}
-
-\begin{Arabic}\textmd{متن عربي}\end{Arabic}
-
-\end{document}
diff --git a/Master/texmf-dist/tex/xelatex/polyglossia/xgreek-fixes.def b/Master/texmf-dist/tex/xelatex/polyglossia/xgreek-fixes.def
new file mode 100644
index 00000000000..853bd0831c1
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/polyglossia/xgreek-fixes.def
@@ -0,0 +1,308 @@
+% the following fixes are taken verbatim from xgreek.sty:
+\global\lccode"0386="03AC \global\uccode"0386="0391
+\global\lccode"0388="03AD \global\uccode"0388="0395
+\global\lccode"0389="03AC \global\uccode"0389="0397
+\global\lccode"038A="03AF \global\uccode"038A="0399
+\global\lccode"038C="03CC \global\uccode"038C="039F
+\global\lccode"038E="03CD \global\uccode"038E="03A5
+\global\lccode"038F="03CE \global\uccode"038F="03A9
+\global\lccode"0390="0390 \global\uccode"0390="03AA
+\global\lccode"0391="03B1 \global\uccode"0391="0391
+\global\lccode"0392="03B2 \global\uccode"0392="0392
+\global\lccode"0393="03B3 \global\uccode"0393="0393
+\global\lccode"0394="03B4 \global\uccode"0394="0394
+\global\lccode"0395="03B5 \global\uccode"0395="0395
+\global\lccode"0396="03B6 \global\uccode"0396="0396
+\global\lccode"0397="03B7 \global\uccode"0397="0397
+\global\lccode"0398="03B8 \global\uccode"0398="0398
+\global\lccode"0399="03B9 \global\uccode"0399="0399
+\global\lccode"039A="03BA \global\uccode"039A="039A
+\global\lccode"039B="03BB \global\uccode"039B="039B
+\global\lccode"039C="03BC \global\uccode"039C="039C
+\global\lccode"039D="03BD \global\uccode"039D="039D
+\global\lccode"039E="03BE \global\uccode"039E="039E
+\global\lccode"039F="03BF \global\uccode"039F="039F
+\global\lccode"03A0="03C0 \global\uccode"03A0="03A0
+\global\lccode"03A1="03C1 \global\uccode"03A1="03A1
+\global\lccode"03A3="03C3 \global\uccode"03A3="03A3
+\global\lccode"03A4="03C4 \global\uccode"03A4="03A4
+\global\lccode"03A5="03C5 \global\uccode"03A5="03A5
+\global\lccode"03A6="03C6 \global\uccode"03A6="03A6
+\global\lccode"03A7="03C7 \global\uccode"03A7="03A7
+\global\lccode"03A8="03C8 \global\uccode"03A8="03A8
+\global\lccode"03A9="03C9 \global\uccode"03A9="03A9
+\global\lccode"03AA="03CA \global\uccode"03AA="03AA
+\global\lccode"03AB="03CB \global\uccode"03AB="03AB
+\global\lccode"03AC="03AC \global\uccode"03AC="0391
+\global\lccode"03AD="03AD \global\uccode"03AD="0395
+\global\lccode"03AE="03AE \global\uccode"03AE="0397
+\global\lccode"03AF="03AF \global\uccode"03AF="0399
+\global\lccode"03B0="03B0 \global\uccode"03B0="03AB
+\global\lccode"03B1="03B1 \global\uccode"03B1="0391
+\global\lccode"03B2="03B2 \global\uccode"03B2="0392
+\global\lccode"03B3="03B3 \global\uccode"03B3="0393
+\global\lccode"03B4="03B4 \global\uccode"03B4="0394
+\global\lccode"03B5="03B5 \global\uccode"03B5="0395
+\global\lccode"03B6="03B6 \global\uccode"03B6="0396
+\global\lccode"03B7="03B7 \global\uccode"03B7="0397
+\global\lccode"03B8="03B8 \global\uccode"03B8="0398
+\global\lccode"03B9="03B9 \global\uccode"03B9="0399
+\global\lccode"03BA="03BA \global\uccode"03BA="039A
+\global\lccode"03BB="03BB \global\uccode"03BB="039B
+\global\lccode"03BC="03BC \global\uccode"03BC="039C
+\global\lccode"03BD="03BD \global\uccode"03BD="039D
+\global\lccode"03BE="03BE \global\uccode"03BE="039E
+\global\lccode"03BF="03BF \global\uccode"03BF="039F
+\global\lccode"03C0="03C0 \global\uccode"03C0="03A0
+\global\lccode"03C1="03C1 \global\uccode"03C1="03A1
+\global\lccode"03C2="03C2 \global\uccode"03C2="03A3
+\global\lccode"03C3="03C3 \global\uccode"03C3="03A3
+\global\lccode"03C4="03C4 \global\uccode"03C4="03A4
+\global\lccode"03C5="03C5 \global\uccode"03C5="03A5
+\global\lccode"03C6="03C6 \global\uccode"03C6="03A6
+\global\lccode"03C7="03C7 \global\uccode"03C7="03A7
+\global\lccode"03C8="03C8 \global\uccode"03C8="03A8
+\global\lccode"03C9="03C9 \global\uccode"03C9="03A9
+\global\lccode"03CA="03CA \global\uccode"03CA="03AA
+\global\lccode"03CB="03CB \global\uccode"03CB="03AB
+\global\lccode"03CC="03CC \global\uccode"03CC="039F
+\global\lccode"03CD="03CD \global\uccode"03CD="03A5
+\global\lccode"03CE="03CE \global\uccode"03CE="03A9
+\global\lccode"03D0="03D0 \global\uccode"03D0="0392
+\global\lccode"03D1="03D1 \global\uccode"03D1="0398
+\global\lccode"03D2="03C5 \global\uccode"03D2="03A5
+\global\lccode"03D3="03CD \global\uccode"03D3="03A5
+\global\lccode"03D4="03CB \global\uccode"03D4="03AB
+\global\lccode"03D5="03C6 \global\uccode"03D5="03A6
+\global\lccode"03D6="03C0 \global\uccode"03D6="03A0
+\global\lccode"03DA="03DB \global\uccode"03DA="03DA
+\global\lccode"03DB="03DB \global\uccode"03DB="03DA
+\global\lccode"03DC="03DD \global\uccode"03DC="03DC
+\global\lccode"03DD="03DD \global\uccode"03DD="03DC
+\global\lccode"03DE="03DF \global\uccode"03DE="03DE
+\global\lccode"03DF="03DF \global\uccode"03DF="03DE
+\global\lccode"03E0="03E1 \global\uccode"03E0="039A
+\global\lccode"03E0="03E1 \global\uccode"03E1="03A1
+\global\lccode"03F0="03BA \global\uccode"03F0="039A
+\global\lccode"03F1="03C1 \global\uccode"03F1="03A1
+\global\lccode"03F2="03F2 \global\uccode"03F2="03F9
+\global\lccode"03F9="03F2 \global\uccode"03F9="03F9
+\global\lccode"1F00="1F00 \global\uccode"1F00="0391
+\global\lccode"1F01="1F01 \global\uccode"1F01="0391
+\global\lccode"1F02="1F02 \global\uccode"1F02="0391
+\global\lccode"1F03="1F03 \global\uccode"1F03="0391
+\global\lccode"1F04="1F04 \global\uccode"1F04="0391
+\global\lccode"1F05="1F05 \global\uccode"1F05="0391
+\global\lccode"1F06="1F06 \global\uccode"1F06="0391
+\global\lccode"1F07="1F07 \global\uccode"1F07="0391
+\global\lccode"1F08="1F00 \global\uccode"1F08="0391
+\global\lccode"1F09="1F01 \global\uccode"1F09="0391
+\global\lccode"1F0A="1F02 \global\uccode"1F0A="0391
+\global\lccode"1F0B="1F03 \global\uccode"1F0B="0391
+\global\lccode"1F0C="1F04 \global\uccode"1F0C="0391
+\global\lccode"1F0D="1F05 \global\uccode"1F0D="0391
+\global\lccode"1F0E="1F06 \global\uccode"1F0E="0391
+\global\lccode"1F0F="1F07 \global\uccode"1F0F="0391
+\global\lccode"1F10="1F10 \global\uccode"1F10="0395
+\global\lccode"1F11="1F11 \global\uccode"1F11="0395
+\global\lccode"1F12="1F12 \global\uccode"1F12="0395
+\global\lccode"1F13="1F13 \global\uccode"1F13="0395
+\global\lccode"1F14="1F14 \global\uccode"1F14="0395
+\global\lccode"1F15="1F15 \global\uccode"1F15="0395
+\global\lccode"1F18="1F10 \global\uccode"1F18="0395
+\global\lccode"1F19="1F11 \global\uccode"1F19="0395
+\global\lccode"1F1A="1F12 \global\uccode"1F1A="0395
+\global\lccode"1F1B="1F13 \global\uccode"1F1B="0395
+\global\lccode"1F1C="1F14 \global\uccode"1F1C="0395
+\global\lccode"1F1D="1F15 \global\uccode"1F1D="0395
+\global\lccode"1F20="1F20 \global\uccode"1F20="0397
+\global\lccode"1F21="1F21 \global\uccode"1F21="0397
+\global\lccode"1F22="1F22 \global\uccode"1F22="0397
+\global\lccode"1F23="1F23 \global\uccode"1F23="0397
+\global\lccode"1F24="1F24 \global\uccode"1F24="0397
+\global\lccode"1F25="1F25 \global\uccode"1F25="0397
+\global\lccode"1F26="1F26 \global\uccode"1F26="0397
+\global\lccode"1F27="1F27 \global\uccode"1F27="0397
+\global\lccode"1F28="1F20 \global\uccode"1F28="0397
+\global\lccode"1F29="1F21 \global\uccode"1F29="0397
+\global\lccode"1F2A="1F22 \global\uccode"1F2A="0397
+\global\lccode"1F2B="1F23 \global\uccode"1F2B="0397
+\global\lccode"1F2C="1F24 \global\uccode"1F2C="0397
+\global\lccode"1F2D="1F25 \global\uccode"1F2D="0397
+\global\lccode"1F2E="1F26 \global\uccode"1F2E="0397
+\global\lccode"1F2F="1F27 \global\uccode"1F2F="0397
+\global\lccode"1F30="1F30 \global\uccode"1F30="0399
+\global\lccode"1F31="1F31 \global\uccode"1F31="0399
+\global\lccode"1F32="1F32 \global\uccode"1F32="0399
+\global\lccode"1F33="1F33 \global\uccode"1F33="0399
+\global\lccode"1F34="1F34 \global\uccode"1F34="0399
+\global\lccode"1F35="1F35 \global\uccode"1F35="0399
+\global\lccode"1F36="1F36 \global\uccode"1F36="0399
+\global\lccode"1F37="1F37 \global\uccode"1F37="0399
+\global\lccode"1F38="1F30 \global\uccode"1F38="0399
+\global\lccode"1F39="1F31 \global\uccode"1F39="0399
+\global\lccode"1F3A="1F32 \global\uccode"1F3A="0399
+\global\lccode"1F3B="1F33 \global\uccode"1F3B="0399
+\global\lccode"1F3C="1F34 \global\uccode"1F3C="0399
+\global\lccode"1F3D="1F35 \global\uccode"1F3D="0399
+\global\lccode"1F3E="1F36 \global\uccode"1F3E="0399
+\global\lccode"1F3F="1F37 \global\uccode"1F3F="0399
+\global\lccode"1F40="1F40 \global\uccode"1F40="039F
+\global\lccode"1F41="1F41 \global\uccode"1F41="039F
+\global\lccode"1F42="1F42 \global\uccode"1F42="039F
+\global\lccode"1F43="1F43 \global\uccode"1F43="039F
+\global\lccode"1F44="1F44 \global\uccode"1F44="039F
+\global\lccode"1F45="1F45 \global\uccode"1F45="039F
+\global\lccode"1F48="1F40 \global\uccode"1F48="039F
+\global\lccode"1F49="1F41 \global\uccode"1F49="039F
+\global\lccode"1F4A="1F42 \global\uccode"1F4A="039F
+\global\lccode"1F4B="1F43 \global\uccode"1F4B="039F
+\global\lccode"1F4C="1F44 \global\uccode"1F4C="039F
+\global\lccode"1F4D="1F45 \global\uccode"1F4D="039F
+\global\lccode"1F50="1F50 \global\uccode"1F50="03A5
+\global\lccode"1F51="1F51 \global\uccode"1F51="03A5
+\global\lccode"1F52="1F52 \global\uccode"1F52="03A5
+\global\lccode"1F53="1F53 \global\uccode"1F53="03A5
+\global\lccode"1F54="1F54 \global\uccode"1F54="03A5
+\global\lccode"1F55="1F55 \global\uccode"1F55="03A5
+\global\lccode"1F56="1F56 \global\uccode"1F56="03A5
+\global\lccode"1F57="1F57 \global\uccode"1F57="03A5
+\global\lccode"1F59="1F51 \global\uccode"1F59="03A5
+\global\lccode"1F5B="1F53 \global\uccode"1F5B="03A5
+\global\lccode"1F5D="1F55 \global\uccode"1F5D="03A5
+\global\lccode"1F5F="1F57 \global\uccode"1F5F="03A5
+\global\lccode"1F60="1F60 \global\uccode"1F60="03A9
+\global\lccode"1F61="1F61 \global\uccode"1F61="03A9
+\global\lccode"1F62="1F62 \global\uccode"1F62="03A9
+\global\lccode"1F63="1F63 \global\uccode"1F63="03A9
+\global\lccode"1F64="1F64 \global\uccode"1F64="03A9
+\global\lccode"1F65="1F65 \global\uccode"1F65="03A9
+\global\lccode"1F66="1F66 \global\uccode"1F66="03A9
+\global\lccode"1F67="1F67 \global\uccode"1F67="03A9
+\global\lccode"1F68="1F60 \global\uccode"1F68="03A9
+\global\lccode"1F69="1F61 \global\uccode"1F69="03A9
+\global\lccode"1F6A="1F62 \global\uccode"1F6A="03A9
+\global\lccode"1F6B="1F63 \global\uccode"1F6B="03A9
+\global\lccode"1F6C="1F64 \global\uccode"1F6C="03A9
+\global\lccode"1F6D="1F65 \global\uccode"1F6D="03A9
+\global\lccode"1F6E="1F66 \global\uccode"1F6E="03A9
+\global\lccode"1F6F="1F67 \global\uccode"1F6F="03A9
+\global\lccode"1F70="1F70 \global\uccode"1F70="0391
+\global\lccode"1F71="1F71 \global\uccode"1F71="0391
+\global\lccode"1F72="1F72 \global\uccode"1F72="0395
+\global\lccode"1F73="1F73 \global\uccode"1F73="0395
+\global\lccode"1F74="1F74 \global\uccode"1F74="0397
+\global\lccode"1F75="1F75 \global\uccode"1F75="0397
+\global\lccode"1F76="1F76 \global\uccode"1F76="0399
+\global\lccode"1F77="1F77 \global\uccode"1F77="0399
+\global\lccode"1F78="1F78 \global\uccode"1F78="039F
+\global\lccode"1F79="1F79 \global\uccode"1F79="039F
+\global\lccode"1F7A="1F7A \global\uccode"1F7A="03A5
+\global\lccode"1F7B="1F7B \global\uccode"1F7B="03A5
+\global\lccode"1F7C="1F7C \global\uccode"1F7C="03A9
+\global\lccode"1F7D="1F7D \global\uccode"1F7D="03A9
+\global\lccode"1F80="1F80 \global\uccode"1F80="1FBC
+\global\lccode"1F81="1F81 \global\uccode"1F81="1FBC
+\global\lccode"1F82="1F82 \global\uccode"1F82="1FBC
+\global\lccode"1F83="1F83 \global\uccode"1F83="1FBC
+\global\lccode"1F84="1F84 \global\uccode"1F84="1FBC
+\global\lccode"1F85="1F85 \global\uccode"1F85="1FBC
+\global\lccode"1F86="1F86 \global\uccode"1F86="1FBC
+\global\lccode"1F87="1F87 \global\uccode"1F87="1FBC
+\global\lccode"1F88="1F80 \global\uccode"1F88="1FBC
+\global\lccode"1F89="1F81 \global\uccode"1F89="1FBC
+\global\lccode"1F8A="1F82 \global\uccode"1F8A="1FBC
+\global\lccode"1F8B="1F83 \global\uccode"1F8B="1FBC
+\global\lccode"1F8C="1F84 \global\uccode"1F8C="1FBC
+\global\lccode"1F8D="1F85 \global\uccode"1F8D="1FBC
+\global\lccode"1F8E="1F86 \global\uccode"1F8E="1FBC
+\global\lccode"1F8F="1F87 \global\uccode"1F8F="1FBC
+\global\lccode"1F90="1F90 \global\uccode"1F90="1FCC
+\global\lccode"1F91="1F91 \global\uccode"1F91="1FCC
+\global\lccode"1F92="1F92 \global\uccode"1F92="1FCC
+\global\lccode"1F93="1F93 \global\uccode"1F93="1FCC
+\global\lccode"1F94="1F94 \global\uccode"1F94="1FCC
+\global\lccode"1F95="1F95 \global\uccode"1F95="1FCC
+\global\lccode"1F96="1F96 \global\uccode"1F96="1FCC
+\global\lccode"1F97="1F97 \global\uccode"1F97="1FCC
+\global\lccode"1F98="1F90 \global\uccode"1F98="1FCC
+\global\lccode"1F99="1F91 \global\uccode"1F99="1FCC
+\global\lccode"1F9A="1F92 \global\uccode"1F9A="1FCC
+\global\lccode"1F9B="1F93 \global\uccode"1F9B="1FCC
+\global\lccode"1F9C="1F94 \global\uccode"1F9C="1FCC
+\global\lccode"1F9D="1F95 \global\uccode"1F9D="1FCC
+\global\lccode"1F9E="1F96 \global\uccode"1F9E="1FCC
+\global\lccode"1F9F="1F97 \global\uccode"1F9F="1FCC
+\global\lccode"1FA0="1FA0 \global\uccode"1FA0="1FFC
+\global\lccode"1FA1="1FA1 \global\uccode"1FA1="1FFC
+\global\lccode"1FA2="1FA2 \global\uccode"1FA2="1FFC
+\global\lccode"1FA3="1FA3 \global\uccode"1FA3="1FFC
+\global\lccode"1FA4="1FA4 \global\uccode"1FA4="1FFC
+\global\lccode"1FA5="1FA5 \global\uccode"1FA5="1FFC
+\global\lccode"1FA6="1FA6 \global\uccode"1FA6="1FFC
+\global\lccode"1FA7="1FA7 \global\uccode"1FA7="1FFC
+\global\lccode"1FA8="1FA0 \global\uccode"1FA8="1FFC
+\global\lccode"1FA9="1FA1 \global\uccode"1FA9="1FFC
+\global\lccode"1FAA="1FA2 \global\uccode"1FAA="1FFC
+\global\lccode"1FAB="1FA3 \global\uccode"1FAB="1FFC
+\global\lccode"1FAC="1FA4 \global\uccode"1FAC="1FFC
+\global\lccode"1FAD="1FA5 \global\uccode"1FAD="1FFC
+\global\lccode"1FAE="1FA6 \global\uccode"1FAE="1FFC
+\global\lccode"1FAF="1FA7 \global\uccode"1FAF="1FFC
+\global\lccode"1FB0="1FB0 \global\uccode"1FB0="1FB8
+\global\lccode"1FB1="1FB1 \global\uccode"1FB1="1FB9
+\global\lccode"1FB2="1FB2 \global\uccode"1FB2="1FBC
+\global\lccode"1FB3="1FB3 \global\uccode"1FB3="1FBC
+\global\lccode"1FB4="1FB4 \global\uccode"1FB4="1FBC
+\global\lccode"1FB6="1FB6 \global\uccode"1FB6="0391
+\global\lccode"1FB7="1FB7 \global\uccode"1FB7="1FBC
+\global\lccode"1FB8="1FB0 \global\uccode"1FB8="1FB8
+\global\lccode"1FB9="1FB1 \global\uccode"1FB9="1FB9
+\global\lccode"1FBA="1F70 \global\uccode"1FBA="0391
+\global\lccode"1FBB="1F71 \global\uccode"1FBB="0391
+\global\lccode"1FBC="1FB3 \global\uccode"1FBC="1FBC
+\global\lccode"1FBD="1FBD \global\uccode"1FBD="1FBD
+\global\lccode"1FC2="1FC2 \global\uccode"1FC2="1FCC
+\global\lccode"1FC3="1FC3 \global\uccode"1FC3="1FCC
+\global\lccode"1FC4="1FC4 \global\uccode"1FC4="1FCC
+\global\lccode"1FC6="1FC6 \global\uccode"1FC6="0397
+\global\lccode"1FC7="1FC7 \global\uccode"1FC7="1FCC
+\global\lccode"1FC8="1F72 \global\uccode"1FC8="0395
+\global\lccode"1FC9="1F73 \global\uccode"1FC9="0395
+\global\lccode"1FCA="1F74 \global\uccode"1FCA="0397
+\global\lccode"1FCB="1F75 \global\uccode"1FCB="0397
+\global\lccode"1FCC="1FC3 \global\uccode"1FCC="1FCC
+\global\lccode"1FD0="1FD0 \global\uccode"1FD0="1FD8
+\global\lccode"1FD1="1FD1 \global\uccode"1FD1="1FD9
+\global\lccode"1FD2="1FD2 \global\uccode"1FD2="03AA
+\global\lccode"1FD3="1FD3 \global\uccode"1FD3="03AA
+\global\lccode"1FD6="1FD6 \global\uccode"1FD6="0399
+\global\lccode"1FD7="1FD7 \global\uccode"1FD7="03AA
+\global\lccode"1FD8="1FD0 \global\uccode"1FD8="1FD8
+\global\lccode"1FD9="1FD1 \global\uccode"1FD9="1FD9
+\global\lccode"1FDA="1F76 \global\uccode"1FDA="0399
+\global\lccode"1FDB="1F77 \global\uccode"1FDB="0399
+\global\lccode"1FE0="1FE0 \global\uccode"1FE0="1FE8
+\global\lccode"1FE1="1FE1 \global\uccode"1FE1="1FE9
+\global\lccode"1FE2="1FE2 \global\uccode"1FE2="03AB
+\global\lccode"1FE3="1FE3 \global\uccode"1FE3="03AB
+\global\lccode"1FE4="1FE4 \global\uccode"1FE4="03A1
+\global\lccode"1FE5="1FE5 \global\uccode"1FE5="1FEC
+\global\lccode"1FE6="1FE6 \global\uccode"1FE6="03A5
+\global\lccode"1FE7="1FE7 \global\uccode"1FE7="03AB
+\global\lccode"1FE8="1FE0 \global\uccode"1FE8="1FE8
+\global\lccode"1FE9="1FE1 \global\uccode"1FE9="1FE9
+\global\lccode"1FEA="1F7A \global\uccode"1FEA="03A5
+\global\lccode"1FEB="1F7B \global\uccode"1FEB="03A5
+\global\lccode"1FEC="1FE5 \global\uccode"1FEC="1FEC
+\global\lccode"1FF2="1FF2 \global\uccode"1FF2="1FFC
+\global\lccode"1FF3="1FF3 \global\uccode"1FF3="1FFC
+\global\lccode"1FF4="1FF4 \global\uccode"1FF4="1FFC
+\global\lccode"1FF6="1FF6 \global\uccode"1FF6="03A9
+\global\lccode"1FF7="1FF7 \global\uccode"1FF7="1FFC
+\global\lccode"1FF8="1F78 \global\uccode"1FF8="039F
+\global\lccode"1FF9="1F79 \global\uccode"1FF9="039F
+\global\lccode"1FFA="1F7C \global\uccode"1FFA="03A9
+\global\lccode"1FFB="1F7D \global\uccode"1FFB="03A9
+\global\lccode"1FFC="1FF3 \global\uccode"1FFC="1FFC
+\endinput