% Created on September 1, 2019 % Sina Ahmadi (https://sinaahmadi.github.io/) \ProvidesFile{gloss-kurdish.ldf}[polyglossia: module for Kurdish] \RequireBidi \RequirePackage{arabicnumbers} \RequirePackage{farsical} \RequirePackage{hijrical} \PolyglossiaSetup{kurdish}{ bcp47=ckb, script=Arabic, direction=RL, scripttag=arab, langtag=KUR, hyphennames={nohyphenation}, fontsetup=true, localnumeral=kurdishnumerals } % BCP-47 compliant aliases \setlanguagealias*{kurdish}{ku} \setlanguagealias*[variant=kurmanji,script=Latin]{kurdish}{kmr-Latn} \setlanguagealias*[variant=sorani]{kurdish}{ckb} \setlanguagealias*[variant=kurmanji,script=Arabic]{kurdish}{kmr-Arab} \setlanguagealias*[script=Latin]{kurdish}{ku-Latn} \setlanguagealias*[variant=sorani,script=Arabic]{kurdish}{ckb-Arab} \setlanguagealias*[variant=sorani,script=Latin]{kurdish}{ckb-Latn} \setlanguagealias*[script=Arabic]{kurdish}{ku-Arab} \setlanguagealias*[variant=kurmanji]{kurdish}{kmr} % Babel aliases \setlanguagealias[variant=kurmanji]{kurdish}{kurmanji} \newif\if@kurdish@kurmanji \def\kurdish@variant{sorani} \define@choicekey*+{kurdish}{variant}[\val\nr]{sorani,kurmanji}[sorani]{% \ifcase\nr\relax % sorani: \def\kurdish@variant{sorani}% \@kurdish@kurmanjifalse% \or % kurmanji: \def\kurdish@variant{kurmanji}% \@kurdish@kurmanjitrue% \fi \kurdish@set@variety% \xpg@info{Option: kurdish, variant=\val}% }{\xpg@warning{Unknown Kurdish variant `#1'}} \newif\if@kurdish@latin \newif\if@kurdish@arabic \define@choicekey*+{kurdish}{script}[\val\nr]{Arabic,Latin}{% \ifcase\nr\relax % Arabic: \@kurdish@latinfalse% \@kurdish@arabictrue% \or % Latin: \@kurdish@latintrue% \@kurdish@arabicfalse% \fi \kurdish@set@variety% \xpg@info{Option: kurdish, script=\val}% }{\xpg@warning{Unknown Kurdish script `#1'}} \newif\if@western@numerals \newif\if@force@western@numerals \def\kurdish@script{arabic} \def\kurdish@pattern{nohyphenation} \def\kurdish@set@variety{% \if@kurdish@latin% Latin explicitly set \@western@numeralstrue% \if@kurdish@kurmanji \def\kurdish@pattern{kurmanji}% \SetLanguageKeys{kurdish}{script=Latin,direction=LR,scripttag=latn,babelname=kurmanji,bcp47=kmr-Latn}% \else \SetLanguageKeys{kurdish}{script=Latin,direction=LR,scripttag=latn,babelname=kurdish,bcp47=ckb-Arab}% \fi \def\kurdish@script{latin} \xpg@fontsetup@latin{kurdish}% \else \if@kurdish@arabic% Arabic explicitly set \if@kurdish@kurmanji \if@force@western@numerals\else\@western@numeralsfalse\fi% \SetLanguageKeys{kurdish}{script=Arabic,direction=RL,scripttag=arab,babelname=kurmanji,bcp47=kmr-Arab}% \def\kurdish@script{arabic}% \else \SetLanguageKeys{kurdish}{script=Arabic,direction=RL,scripttag=arab,babelname=kurdish,bcp47=ckb-Arab}% \fi \xpg@fontsetup@nonlatin{kurdish}% \else% sorani=Arabic, kurmanji=Latin \if@kurdish@kurmanji \@western@numeralstrue% \SetLanguageKeys{kurdish}{script=Latin,direction=LR,scripttag=latn,babelname=kurmanji,bcp47=kmr-Latn}% \xpg@fontsetup@latin{kurdish}% \def\kurdish@script{latin} \else \SetLanguageKeys{kurdish}{script=Arabic,direction=RL,scripttag=arab,babelname=kurdish,bcp47=ckb-Arab}% \xpg@fontsetup@nonlatin{kurdish}% \fi \fi \fi } \def\tmp@western{western} \define@key{kurdish}{numerals}[eastern]{% \def\@tmpa{#1}% \ifx\@tmpa\tmp@western\@western@numeralstrue\@force@western@numeralstrue\else% \@western@numeralsfalse% \fi% } %this is needed for \abjad in arabicnumbers.sty \def\tmp@true{true} \define@key{kurdish}{abjadjimnotail}[true]{% \def\@tmpa{#1}% \ifx\@tmpa\tmp@true\abjad@jim@notailtrue% \else \abjad@jim@notailfalse \fi% } % NOT YET USED \define@key{kurdish}{locale}[default]{% \def\@kurdish@locale{#1}} %TODO add option for CALENDAR % Register default options \xpg@initialize@gloss@options{kurdish}{variant=sorani,locale=default,script=Arabic,abjadjimnotail=false,numerals=eastern} \def\kurdish@language{% \polyglossia@setup@language@patterns{\kurdish@pattern}% }% \def\kurdishNativemonth#1{\ifcase#1% \or رێبه‌ندان\or ره‌شه‌مێ\or خاكه‌لێوه‌\or گوڵان\or جۆزه‌ردان\or پووشپه‌ڕ\or خه‌رمانان\or گه‌لاوێژ\or ره‌زبه‌ر\or گه‌ڵارێزان\or سه‌رماوه‌ز\or به‌فرانبار\fi} \def\kurdishmonth#1{\ifcase#1% \or کانونی دووەم\or شوبات\or ئازار\or نیسان\or ئایار\or حوزه‌یران\or ته‌ممووز\or ئاب\or ئه‌یلوول\or تشرینی یه‌كه‌م\or تشرینی دووهه‌م\or كانوونی یه‌كه‌م\fi} %\Hijritoday is now locale-aware and will format the date with this macro: \DefineFormatHijriDate{kurdish}{% \@ensure@RTL{% \kurdishnumber{\value{Hijriday}}\space\HijriMonthArabic{\value{Hijrimonth}}\space\kurdishnumber{\value{Hijriyear}}% }% } \def\captionskurdish@sorani@arabic{% \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\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{هاوپێچ}}% \def\ccname{\@ensure@RTL{روونووس}}% \def\headtoname{\@ensure@RTL{بۆ}}% \def\pagename{\@ensure@RTL{لاپه‌ڕه‌}}% \def\seename{\@ensure@RTL{چاو لێکه‌ن}}% \def\alsoname{\@ensure@RTL{هه‌روه‌ها چاو لێکه‌ن}}% \def\proofname{\@ensure@RTL{سەلماندن}}% \def\glossaryname{\@ensure@RTL{فه‌رهه‌نگۆک}}% } \def\captionskurdish@sorani@latin{% \def\prefacename{Pêşekî}% \def\refname{Serçawekan}% \def\abstractname{Puxte}% \def\bibname{Kitêbname}% \def\chaptername{Bendî}% \def\appendixname{Paşko}% \def\contentsname{Nêwerrok}% \def\listfigurename{Lîstî Wênekan}% \def\listtablename{Lîstî Xiştekan}% \def\indexname{Pêrrist}% \def\figurename{Wêney}% \def\tablename{Xiştey}% \def\partname{Beşî}% \def\enclname{Hawpêç}% \def\ccname{Rûnûs}% \def\headtoname{Bo}% \def\pagename{Laperre}% \def\seename{Çaw lêken}% \def\alsoname{Herweha çaw lêken}% \def\proofname{Selmandin}% \def\glossaryname{Ferhengok}% } \def\captionskurdish@kurmanji@latin{% \def\prefacename{Peşgotin}% \def\refname{Pirtuken bijartî}% \def\abstractname{Kurtebîr}% \def\bibname{Çavkanîya Pirtukan}% \def\chaptername{Serê}% \def\appendixname{Tebînîya}% \def\contentsname{Navêrok}% \def\listfigurename{Hejmara Dimena}% \def\listtablename{Hejmara Kevalen}% \def\indexname{Endeks}% \def\figurename{Dimenê}% \def\tablename{Kevala}% \def\partname{Bêşa}% \def\enclname{Dumahik}% \def\ccname{Belavker}% \def\headtoname{Ji bo}% \def\pagename{Rûpelê}% \def\seename{binêra}% \def\alsoname{le vêya ji binêra}% \def\proofname{Delîl}% \def\glossaryname{Çavkanîya lêkolînê}% } \def\captionskurdish@kurmanji@arabic{% \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\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{دوماهک}}% \def\ccname{\@ensure@RTL{بەلاڤکەر}}% \def\headtoname{\@ensure@RTL{ژ بۆ}}% \def\pagename{\@ensure@RTL{رووپەلێ}}% \def\seename{\@ensure@RTL{بنێرا}}% \def\alsoname{\@ensure@RTL{لە ڤێیا ژ بنێرا}}% \def\proofname{\@ensure@RTL{دەلیل}}% \def\glossaryname{\@ensure@RTL{چاڤکانییا لێکۆلینێ}}% } \def\captionskurdish{% \csname captionskurdish@\kurdish@variant @\kurdish@script\endcsname% } \def\datekurdish@sorani@arabic{% \def\today{\@ensure@RTL{\kurdishnumber\day{ی}\space\kurdishmonth{\month}{ی}\space\kurdishnumber\year}}% } \def\datekurdish@sorani@latin{% \def\today{% \number\day.~\ifcase\month\or \januaryname\or \februaryname\or \marchname\or \aprilname\or \mayname\or \junename\or \julyname\or \augustname\or \septembername\or \octobername\or \novembername\or \decembername\or \@ctrerr\fi~\number\year}% \def\ontoday{% \number\day’ê~\ifcase\month\or \januaryname\or \februaryname\or \marchname\or \aprilname\or \mayname\or \junename\or \julyname\or \augustname\or \septembername\or \octobername\or \novembername\or \decembername\or \@ctrerr\fi ê~\number\year}% \def\januaryname{Kanûnî Yekem}% \def\februaryname{Şubat}% \def\marchname{Azar}% \def\aprilname{Nîsan}% \def\mayname{Ayar}% \def\junename{Huzeyran}% \def\julyname{Temmûz}% \def\augustname{Ab}% \def\septembername{Eylûl}% \def\octobername{Tişrînî Yekem}% \def\novembername{Tişrînî Dûhem}% \def\decembername{Kanûnî Dûhem}% } \def\datekurdish@kurmanji@latin{% \def\today{% \number\day.~\ifcase\month\or \januaryname\or \februaryname\or \marchname\or \aprilname\or \mayname\or \junename\or \julyname\or \augustname\or \septembername\or \octobername\or \novembername\or \decembername\or \@ctrerr\fi~\number\year}% \def\ontoday{% \number\day’ê~\ifcase\month\or \januaryname\or \februaryname\or \marchname\or \aprilname\or \mayname\or \junename\or \julyname\or \augustname\or \septembername\or \octobername\or \novembername\or \decembername\or \@ctrerr\fi ê~\number\year}% \def\januaryname{Çileya Paşîn}% \def\februaryname{Sibat}% \def\marchname{Adar}% \def\aprilname{Nîsan}% \def\mayname{Gulan}% \def\junename{Hezîran}% \def\julyname{Tîrmeh}% \def\augustname{Tebax}% \def\septembername{Îlon}% \def\octobername{Çiriya Pêşîn}% \def\novembername{Çiriya Paşîn}% \def\decembername{Çileya Pêşîn}% } \def\datekurdish@kurmanji@arabic{% \datekurdish@sorani@arabic% FIXME: correct? } % TODO: babel-kurmanji has these "alternative" month names % How to integrate them ("montnames=alternative" is not really good)? % It seems the month name question is all but straightforward: % https://en.wikipedia.org/wiki/Kurdish_calendar#Names %\def\datekurdish@kurmanji@alternate{% % \datekurdish@kurmanji % \def\januaryname{Rêbendan}% % \def\februaryname{Reşemih}% % \def\aprilname{Cotan}% % Avrêl % \def\junename{Pûşper}% % \def\augustname{Gelavêj}% % \def\septembername{Gelarezan}% % Rezber % \def\octobername{Kewçêr}% % \def\novembername{Sermawez}% % \def\decembername{Berfandar}% %} \def\datekurdish{% \csname datekurdish@\kurdish@variant @\kurdish@script\endcsname% } \newcommand{\kurdishnumerals}[2]{\kurdishnumber{#2}} \def\kurdishnumber#1{% \if@western@numerals \number#1% \else \xpg@if@char@available{06F0}% {\farsidigits{\number#1}}% {\arabicdigits{\number#1}}% \fi } %\def\kurdishnum#1{\expandafter\kurdishnumber\csname c@#1\endcsname} %\def\kurdishbracenum#1{(\expandafter\kurdishnumber\csname c@#1\endcsname)} %\def\kurdishornatebracenum#1{\char"FD3E\expandafter\kurdishnumber\csname c@#1\endcsname\char"FD3F} %\def\kurdishalph#1{\expandafter\@farsialph\csname c@#1\endcsname} \def\kurdish@numbers{% \if@western@numerals% \else% \let\@alph\abjad% \let\@Alph\abjad% \fi% } \def\nokurdish@numbers{% \let\@alph\@latinalph% \let\@Alph\@latinAlph% } \def\kurdish@globalnumbers{% \let\@arabic\kurdishnumber% \renewcommand\thefootnote{\localnumeral*{footnote}}% \renewcommand\theequation{\localnumeral*{equation}}% } % Store original definition \let\xpg@save@arabic\@arabic \def\nokurdish@globalnumbers{ \let\@arabic\xpg@save@arabic% \renewcommand\thefootnote{\protect\number{\c@footnote}}% } % Save original \MakeUppercase definition \let\xpg@save@MakeUppercase\MakeUppercase \def\blockextras@kurdish{% \def\MakeUppercase##1{##1}% } \def\noextras@kurdish{% \let\MakeUppercase\xpg@save@MakeUppercase% } \endinput