diff options
author | Karl Berry <karl@freefriends.org> | 2023-06-10 20:13:09 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-06-10 20:13:09 +0000 |
commit | 4f358ef78130d68e8ba4a95101d4440bb62855cf (patch) | |
tree | a8a3a15aaf01e726d9aaff187c87d82f0209135b /Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf | |
parent | dda707b60a2266b1bd88d0f69faf47d835636a4b (diff) |
polyglossia (10jun23)
git-svn-id: svn://tug.org/texlive/trunk@67322 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf')
-rw-r--r-- | Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf | 143 |
1 files changed, 125 insertions, 18 deletions
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf index b8da8e04f95..2da53ef5610 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-serbian.ldf @@ -1,4 +1,4 @@ -% Language definition file (part of polyglossia v1.62 -- 2023/04/22) +% Language definition file (part of polyglossia v1.63 -- 2023/06/10) % \ProvidesFile{gloss-serbian.ldf}[polyglossia: module for Serbian] %TODO split into gloss-serbiancyr.ldf and gloss-serbianlat.ldf @@ -11,6 +11,7 @@ \PolyglossiaSetup{serbian}{ bcp47=sr-Latn, bcp47-language=sr, + bcp47-variant=ekavsk, bcp47-script=Latn, bcp47-casing=sr-Latn, langtag=SRB, @@ -27,11 +28,11 @@ % BCP-47 compliant aliases \setlanguagealias*{serbian}{sr} -\setlanguagealias*[script=Cyrillic]{serbian}{sr-Cyrl} -\setlanguagealias*[script=Latin]{serbian}{sr-Latn} +\setlanguagealias*[script=cyrillic]{serbian}{sr-Cyrl} +\setlanguagealias*[script=latin]{serbian}{sr-Latn} % Babel aliases -\setlanguagealias[script=Cyrillic]{serbian}{serbianc} +\setlanguagealias[script=cyrillic]{serbian}{serbianc} \ifluatex \RequirePackage{luavlna} @@ -42,20 +43,32 @@ \ifcase\xpg@nr\relax % cyrillic: \@serbian@cyrtrue - \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl,bcp47-language=sr,bcp47-script=Cyrl,bcp47-casing=sr-Cyrl} \xpg@fontsetup@nonlatin{serbian}% \or % latin: \@serbian@cyrfalse - \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn,bcp47-language=sr,bcp47-script=Latn,bcp47-casing=sr-Latn} \xpg@fontsetup@latin{serbian}% %TODO \def\serbian@language{\language=\l@serbianlat}% % or should we use Croatian patterns as a fallback for the time being??? \fi + \serbian@set@languagekeys% \xpg@info{Option: Serbian, script=\xpg@val}% }{\xpg@warning{Unknown Serbian script `#1'}} -\define@key{serbian}{script}[Cyrillic]{\setkeys{serbian}{Script=#1}} +\define@key{serbian}{script}[cyrillic]{\setkeys{serbian}{Script=#1}} + +\newif\if@serbian@ijekavian +\define@choicekey*+{serbian}{variant}[\xpg@val\xpg@nr]{ekavian,ijekavian}[ekavian]{% + \ifcase\xpg@nr\relax + % ekavian: + \@serbian@ijekavianfalse% + \or + % ijekavian: + \@serbian@ijekaviantrue% + \fi + \serbian@set@languagekeys% + \xpg@info{Option: Serbian, variant=\xpg@val}% +}{\xpg@warning{Unknown Serbian variant `#1'}} \newif\ifcyrillic@numerals \newif\ifcyrillic@asbuk@numerals @@ -86,10 +99,28 @@ \define@boolkey{serbian}[serbian@]{splithyphens}[true]{} +\define@boolkey{serbian}[serbian@]{datei}[true]{} + +\def\serbian@set@languagekeys{% + \if@serbian@cyr + \if@serbian@ijekavian + \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl-ijekavsk,bcp47-language=sr,bcp47-script=Cyrl,bcp47-variant=ijekavsk,bcp47-casing=sr-Cyrl} + \else + \SetLanguageKeys{serbian}{scripttag=cyrl,script=Cyrillic,babelname=serbianc,bcp47=sr-Cyrl,bcp47-language=sr,bcp47-script=Cyrl,bcp47-variant=ekavsk,bcp47-casing=sr-Cyrl} + \fi + \else + \if@serbian@ijekavian + \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn-ijekavsk,bcp47-language=sr,bcp47-script=Latn,bcp47-variant=ijekavsk,bcp47-casing=sr-Latn} + \else + \SetLanguageKeys{serbian}{scripttag=latn,script=Latin,babelname=serbian,bcp47=sr-Latn,bcp47-language=sr,bcp47-script=Latn,bcp47-variant=ekavsk,bcp47-casing=sr-Latn} + \fi + \fi% +} + \setkeys{serbian}{Script,numerals} % Register default options -\xpg@initialize@gloss@options{serbian}{script=Cyrillic,numerals=arabic,splithyphens=true} +\xpg@initialize@gloss@options{serbian}{script=cyrillic,numerals=arabic,splithyphens=true} \def\captionsserbian{% \if@serbian@cyr\captionsserbian@cyr\else\captionsserbian@lat\fi @@ -126,13 +157,51 @@ \def\headtoname{Prima}% \def\proofname{Dokaz}% \def\glossaryname{Rečnik nepoznatih reči}% + \if@serbian@ijekavian% + \def\partname{Dio}% + \def\glossaryname{Rječnik nepoznatih riječi}% + \fi } -\def\dateserbian@lat{% - \def\today{\number\day .~\ifcase\month\or - januar\or februar\or mart\or april\or maj\or - jun\or jul\or avgust\or septembar\or oktobar\or novembar\or - decembar\fi \space \number\year.}% +\def\month@serbian@lat{% + \ifcase\month\or + januar\or + februar\or + mart\or + april\or + maj\or + \ifserbian@datei juni\else jun\fi\or + \ifserbian@datei juli\else jul\fi\or + avgust\or + septembar\or + oktobar\or + novembar\or + decembar% + \fi% +}% + +\def\month@serbian@lat@gen{% + \ifcase\month\or + januara\or + februara\or + marta\or + aprila\or + maja\or + juna\or + jula\or + avgusta\or + septembra\or + oktobra\or + novembra\or + decembra% + \fi% +}% + +\def\dateserbian@lat{% + \def\today{\number\day.~\month@serbian@lat\ \number\year\@ifstar{}{.}}% + \def\todayRoman{\number\day.~\@Roman\month~\number\year\@ifstar{}{.}}% + \def\todayGen{\number\day.~\month@serbian@lat@gen\ \number\year\@ifstar{}{.}}% + \def\todayArabic{\number\day.~\number\month.~\number\year\@ifstar{}{.}}% } \def\captionsserbian@cyr{% @@ -161,13 +230,51 @@ \def\headtoname{Прима}% \def\proofname{Доказ}% \def\glossaryname{Речник непознатих речи}% + \if@serbian@ijekavian% + \def\partname{Дио}% + \def\glossaryname{Рјечник непознатих ријечи}% + \fi } -\def\dateserbian@cyr{% - \def\today{\number\day .~\ifcase\month\or - јануар\or фебруар\or март\or април\or мај\or - јун\or јул\or август\or септембар\or октобар\or новембар\or - децембар\fi \space \number\year.}% +\def\month@serbian@cyr{% + \ifcase\month\or + јануар\or + фебруар\or + март\or + април\or + мај\or + \ifserbian@datei јуни\else јун\fi\or + \ifserbian@datei јули\else јул\fi\or + август\or + септембар\or + октобар\or + новембар\or + децембар% + \fi% +}% + +\def\month@serbian@cyr@gen{% + \ifcase\month\or + јануара\or + фебруара\or + марта\or + априла\or + маја\or + јуна\or + јула\or + августа\or + септембра\or + октобра\or + новембра\or + децембра% + \fi% +}% + +\def\dateserbian@cyr{% + \def\today{\number\day.~\month@serbian@cyr\ \number\year\@ifstar{}{.}}% + \def\todayRoman{\number\day.~\@Roman\month~\number\year\@ifstar{}{.}}% + \def\todayGen{\number\day.~\month@serbian@cyr@gen\ \number\year\@ifstar{}{.}}% + \def\todayArabic{\number\day.~\number\month.~\number\year\@ifstar{}{.}}% } % Use \providecommand here as the ldf file might |