diff options
author | Karl Berry <karl@freefriends.org> | 2019-10-28 20:58:49 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-10-28 20:58:49 +0000 |
commit | ffd652038baef26fb84de26fce9991a02e875485 (patch) | |
tree | c02e3f8fde2e20bb8ba3cc9ab3216e609648e350 /Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf | |
parent | cffa8e2910c5d2a7b6b26032eef37d9e18b8b72d (diff) |
polyglossia (28oct19)
git-svn-id: svn://tug.org/texlive/trunk@52555 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf')
-rw-r--r-- | Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf | 99 |
1 files changed, 61 insertions, 38 deletions
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf index 3b102d09854..0f988f69fa9 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf @@ -1,4 +1,11 @@ \ProvidesFile{gloss-sanskrit.ldf}[polyglossia: module for sanskrit] +\ifluatex + \xpg@warning{Sanskrit is not supported with LuaTeX.\MessageBreak +I will proceed with the compilation, but\MessageBreak +the output is not guaranteed to be correct\MessageBreak +and may look very wrong.} +\fi + \RequirePackage{devanagaridigits} \PolyglossiaSetup{sanskrit}{ @@ -7,11 +14,10 @@ hyphenmins={1,3}, frenchspacing=true, fontsetup=false, % will be done below - %TODO localnumber=sanskritnumber + localnumeral=sanskritnumerals } \define@key{sanskrit}{Script}[Devanagari]{% - \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}% @@ -19,65 +25,82 @@ } \def\fontsetup@sanskrit@Devanagari{% - \def\xpg@scripttag@sanskrit{deva}% + \SetLanguageKeys{sanskrit}{scripttag=deva,script=Devanagari} \xpg@fontsetup@nonlatin{sanskrit}} \def\fontsetup@sanskrit@Gujarati{% - \def\xpg@scripttag@sanskrit{gujr}% + \SetLanguageKeys{sanskrit}{scripttag=gujr,script=Gujarati} \xpg@fontsetup@nonlatin{sanskrit}} \def\fontsetup@sanskrit@Malayalam{% - \def\xpg@scripttag@sanskrit{mlym}% + \SetLanguageKeys{sanskrit}{scripttag=mlym,script=Malayalam} \xpg@fontsetup@nonlatin{sanskrit}} \def\fontsetup@sanskrit@Bengali{% - \def\xpg@scripttag@sanskrit{beng}% + \SetLanguageKeys{sanskrit}{scripttag=beng,script=Bengali} \xpg@fontsetup@nonlatin{sanskrit}} \def\fontsetup@sanskrit@Kannada{% - \def\xpg@scripttag@sanskrit{knda}% + \SetLanguageKeys{sanskrit}{scripttag=knda,script=Kannada} \xpg@fontsetup@nonlatin{sanskrit}} \def\fontsetup@sanskrit@Telugu{% - \def\xpg@scripttag@sanskrit{telu}% + \SetLanguageKeys{sanskrit}{scripttag=telu,script=Telugu} \xpg@fontsetup@nonlatin{sanskrit}} -%% DW \def\fontsetup@sanskrit@Latin{% - \def\xpg@scripttag@sanskrit{latn}% - \xpg@fontsetup@latin{sanskrit}} -%% DW + \SetLanguageKeys{sanskrit}{scripttag=latn,script=Latin} + \xpg@fontsetup@latin{sanskrit}} \setkeys{sanskrit}{Script} %sets the default for Devanagari -%% 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} +\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% +} + +\newcommand{\sanskritnumerals}[2]{\sanskritnumber{#2}} + +\def\sanskritnumber#1{% + \ifsanskrit@devanagari@numerals + \devanagaridigits{\number#1}% + \else + \number#1% + \fi% +} -\newXeTeXintercharclass\sanskrit@punctthin % ! ? ; : danda double_danda +% FIXME: Support LuaTeX +\ifxetex + \newXeTeXintercharclass\sanskrit@punctthin % ! ? ; : danda double_danda +\fi \def\sanskrit@punctthinspace{{\unskip\thinspace}} \def\sanskrit@punctuation{% - \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 + % FIXME: Support LuaTeX + \ifxetex + \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 + \fi } \def\nosanskrit@punctuation{% - \XeTeXcharclass `\! \z@ - \XeTeXcharclass `\? \z@ - \XeTeXcharclass `\; \z@ - \XeTeXcharclass `\: \z@ - \XeTeXcharclass `\। \z@ - \XeTeXcharclass `\॥ \z@ - \XeTeXinterchartokenstate=0% + % FIXME: Support LuaTeX + \ifxetex + \XeTeXcharclass `\! \z@ + \XeTeXcharclass `\? \z@ + \XeTeXcharclass `\; \z@ + \XeTeXcharclass `\: \z@ + \XeTeXcharclass `\। \z@ + \XeTeXcharclass `\॥ \z@ + \XeTeXinterchartokenstate=0% + \fi } \def\noextras@sanskrit{% |