summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-01-29 22:37:53 +0000
committerKarl Berry <karl@freefriends.org>2020-01-29 22:37:53 +0000
commit015c5f064b14e4a79f151b46a6dd46b150520c81 (patch)
treecc3434d0ae73900950b37bc952816286d4d76d5c /Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
parente9549ffe43d42fda4e5d3778e1d26fbd95e4ae9f (diff)
polyglossia (29jan20)
git-svn-id: svn://tug.org/texlive/trunk@53592 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf')
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf115
1 files changed, 86 insertions, 29 deletions
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
index 3c66f6f8367..0cf07c8c6da 100644
--- a/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-german.ldf
@@ -1,6 +1,7 @@
\ProvidesFile{gloss-german.ldf}[polyglossia: module for german]
\PolyglossiaSetup{german}{
+ bcp47=de-DE,
hyphenmins={2,2},
frenchspacing=true,
fontsetup=true,
@@ -8,6 +9,28 @@
babelname=ngerman
}
+% BCP-47 compliant aliases
+\setlanguagealias*{german}{de}
+\setlanguagealias*[variant=swiss,spelling=new]{german}{de-CH}
+\setlanguagealias*[variant=austrian,spelling=new]{german}{de-AT}
+\setlanguagealias*[variant=german,spelling=new]{german}{de-DE}
+\setlanguagealias*[variant=swiss,spelling=new,script=blackletter]{german}{de-Latf-CH}
+\setlanguagealias*[variant=german,spelling=new,script=blackletter]{german}{de-Latf-DE}
+\setlanguagealias*[variant=austrian,spelling=new,script=blackletter]{german}{de-Latf-AT}
+\setlanguagealias*[variant=austrian,spelling=old]{german}{de-AT-1901}
+\setlanguagealias*[variant=swiss,spelling=new]{german}{de-CH-1996}
+\setlanguagealias*[variant=austrian,spelling=new]{german}{de-AT-1996}
+\setlanguagealias*[variant=german,spelling=old]{german}{de-DE-1901}
+\setlanguagealias*[variant=swiss,spelling=old,script=blackletter]{german}{de-Latf-CH-1901}
+\setlanguagealias*[variant=swiss,spelling=old]{german}{de-CH-1901}
+\setlanguagealias*[variant=austrian,spelling=old,script=blackletter]{german}{de-Latf-AT-1901}
+\setlanguagealias*[variant=swiss,spelling=new,script=blackletter]{german}{de-Latf-CH-1996}
+\setlanguagealias*[script=blackletter]{german}{de-Latf}
+\setlanguagealias*[variant=german,spelling=new]{german}{de-DE-1996}
+\setlanguagealias*[variant=german,spelling=old,script=blackletter]{german}{de-Latf-DE-1901}
+\setlanguagealias*[variant=german,spelling=new,script=blackletter]{german}{de-Latf-DE-1996}
+\setlanguagealias*[variant=austrian,spelling=new,script=blackletter]{german}{de-Latf-AT-1996}
+
% Babel aliases
\setlanguagealias[variant=austrian,spelling=old]{german}{austrian}
\setlanguagealias[variant=austrian,spelling=new]{german}{naustrian}
@@ -18,7 +41,7 @@
\newif\if@german@oldspelling
\@german@oldspellingfalse
-\define@choicekey*+{german}{spelling}[\val\nr]{new,old,1901}[new]{%
+\define@choicekey*+{german}{spelling}[\val\nr]{new,old,1901,1996}[new]{%
\ifcase\nr\relax
% new:
\@german@oldspellingfalse
@@ -28,6 +51,9 @@
\or
% 1901:
\@german@oldspellingtrue
+ \or
+ % 1996:
+ \@german@oldspellingfalse
\fi
\german@set@babelname%
\xpg@info{Option: German, spelling=\val}%
@@ -64,21 +90,45 @@
\def\german@set@babelname{%
\if@german@oldspelling
\if@swiss@locale
- \SetLanguageKeys{german}{babelname=swissgerman}%
+ \if@german@blackletter
+ \SetLanguageKeys{german}{babelname=swissgerman,bcp47=de-Latf-CH-1901}%
+ \else
+ \SetLanguageKeys{german}{babelname=swissgerman,bcp47=de-CH-1901}%
+ \fi
\else
\if@austrian@locale
- \SetLanguageKeys{german}{babelname=austrian}%
+ \if@german@blackletter
+ \SetLanguageKeys{german}{babelname=austrian,bcp47=de-Latf-AT-1901}%
+ \else
+ \SetLanguageKeys{german}{babelname=austrian,bcp47=de-AT-1901}%
+ \fi
\else
- \SetLanguageKeys{german}{babelname=german}%
+ \if@german@blackletter
+ \SetLanguageKeys{german}{babelname=german,bcp47=de-Latf-DE-1901}%
+ \else
+ \SetLanguageKeys{german}{babelname=german,bcp47=de-DE-1901}%
+ \fi
\fi\fi
\else
\if@swiss@locale
- \SetLanguageKeys{german}{babelname=nswissgerman}%
+ \if@german@blackletter
+ \SetLanguageKeys{german}{babelname=nswissgerman,bcp47=de-Latf-CH}%
+ \else
+ \SetLanguageKeys{german}{babelname=nswissgerman,bcp47=de-CH}%
+ \fi
\else
\if@austrian@locale
- \SetLanguageKeys{german}{babelname=naustrian}%
+ \if@german@blackletter
+ \SetLanguageKeys{german}{babelname=naustrian,bcp47=de-Latf-AT}%
+ \else
+ \SetLanguageKeys{german}{babelname=naustrian,bcp47=de-AT}%
+ \fi
\else
- \SetLanguageKeys{german}{babelname=ngerman}%
+ \if@german@blackletter
+ \SetLanguageKeys{german}{babelname=ngerman,bcp47=de-Latf-DE}%
+ \else
+ \SetLanguageKeys{german}{babelname=ngerman,bcp47=de-DE}%
+ \fi
\fi\fi
\fi
}
@@ -95,14 +145,24 @@
% fraktur:
\@german@blacklettertrue%
\fi
+ \german@set@babelname%
\xpg@info{Option: German, script=\val}%
}{\xpg@warning{Unknown German script `#1'}}
-\define@boolkey{german}[german@]{latesthyphen}[false]{}
+% Option defunc'ed, as bot XeTeX and LuaTeX meanwhile
+% use the experimental German hyphenation patterns by default.
+\define@boolkey{german}[german@]{latesthyphen}[true]{}
\define@boolkey{german}[german@]{babelshorthands}[true]{}
-\setkeys{german}{spelling,latesthyphen,script,variant}
+\setkeys{german}{spelling,script,variant}
+
+% Register default options
+\xpg@initialize@gloss@options{german}{variant=german,spelling=new,script=latin,latesthyphen=false,babelshorthands=false}
+% Register alias options
+\xpg@set@alias@values{german}{spelling}{new}{1996}
+\xpg@set@alias@values{german}{spelling}{old}{1901}
+\xpg@set@alias@values{german}{script}{blackletter}{fraktur}
\ifsystem@babelshorthands
\setkeys{german}{babelshorthands=true}
@@ -229,26 +289,23 @@
}
\def\german@language{%
- \ifgerman@latesthyphen
- \if@german@oldspelling
- \if@swiss@locale
- \polyglossia@setup@language@patterns{swissgerman}%
- \else
- \polyglossia@setup@language@patterns{german-x-latest}%
- \fi
- \else
- \polyglossia@setup@language@patterns{ngerman-x-latest}%
- \fi
- \else% (latesthyphen=false)
- \if@german@oldspelling
- \if@swiss@locale
- \polyglossia@setup@language@patterns{swissgerman}%
- \else
- \polyglossia@setup@language@patterns{german}%
- \fi
- \else
- \polyglossia@setup@language@patterns{ngerman}%
- \fi
+ \if@german@oldspelling
+ \if@swiss@locale
+ \polyglossia@setup@language@patterns{swissgerman}%
+ \else
+ \polyglossia@setup@language@patterns{german}%
+ \fi
+ \if@austrian@locale
+ \adddialect\l@austrian\l@german%
+ \fi
+ \else
+ \polyglossia@setup@language@patterns{ngerman}%
+ \if@austrian@locale
+ \adddialect\l@naustrian\l@ngerman%
+ \fi
+ \if@swiss@locale
+ \adddialect\l@nswissgerman\l@ngerman%
+ \fi
\fi
}