summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf')
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf86
1 files changed, 86 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf
new file mode 100644
index 00000000000..287620615c4
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-sanskrit.ldf
@@ -0,0 +1,86 @@
+\ProvidesFile{gloss-sanskrit.ldf}[polyglossia: module for sanskrit]
+\RequirePackage{devanagaridigits}
+
+\PolyglossiaSetup{sanskrit}{
+ langtag=SAN,
+ hyphennames={sanskrit,prakrit},
+ hyphenmins={1,3},
+ frenchspacing=true,
+ fontsetup=false, % will be done below
+ %TODO localnumber=sanskritnumber
+}
+
+\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}%
+ }%
+}
+
+\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
+
+%% 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{%
+ \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{%
+ \XeTeXcharclass `\! \z@
+ \XeTeXcharclass `\? \z@
+ \XeTeXcharclass `\; \z@
+ \XeTeXcharclass `\: \z@
+ \XeTeXcharclass `\। \z@
+ \XeTeXcharclass `\॥ \z@
+ \XeTeXinterchartokenstate=0%
+}
+
+\def\noextras@sanskrit{%
+ \nosanskrit@punctuation%
+}
+
+\def\blockextras@sanskrit{%
+ \sanskrit@punctuation%
+}
+
+\endinput