[latex3-commits] [git/LaTeX3-latex3-babel] main: arabic (ar): islamic-umalqura. (583fab7)

Javier email at dante.de
Thu May 26 18:36:47 CEST 2022


Repository : https://github.com/latex3/babel
On branch  : main
Link       : https://github.com/latex3/babel/commit/583fab755ba04b51639b55d01f1b0382c8c9b332

>---------------------------------------------------------------

commit 583fab755ba04b51639b55d01f1b0382c8c9b332
Author: Javier <email at localhost>
Date:   Thu May 26 18:36:47 2022 +0200

    arabic (ar): islamic-umalqura.


>---------------------------------------------------------------

583fab755ba04b51639b55d01f1b0382c8c9b332
 README.md                  |   4 ++--
 babel.dtx                  |  34 ++++++++++++++-------------
 babel.ins                  |   2 +-
 babel.pdf                  | Bin 862648 -> 863134 bytes
 bbcompat.dtx               |   2 +-
 locale/ar/babel-arabic.tex |  57 +++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 79 insertions(+), 20 deletions(-)

diff --git a/README.md b/README.md
index 733704b..0f42a92 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Babel 3.75.2747
+## Babel 3.75.2749
 
 *(Development)*
 
@@ -49,7 +49,7 @@ respective authors.
 ### Summary of latest changes
 ```
 3.75   (dev)
-       * Start calendars.
+       * Start calendars: islamic-civil, islamic-umalqura
 
 3.75   2022-05-22
        * `\BabelEnsureInfo` is active by default, to make sure the BCP 47
diff --git a/babel.dtx b/babel.dtx
index 06a32fc..e5c1abc 100644
--- a/babel.dtx
+++ b/babel.dtx
@@ -32,7 +32,7 @@
 %
 % \iffalse
 %<*filedriver>
-\ProvidesFile{babel.dtx}[2022/05/24 v3.75.2747 The Babel package]
+\ProvidesFile{babel.dtx}[2022/05/26 v3.75.2749 The Babel package]
 \documentclass{ltxdoc}
 \GetFileInfo{babel.dtx}
 \usepackage{fontspec}
@@ -5143,8 +5143,8 @@ help from Bernd Raichle, for which I am grateful.
 % \section{Tools}
 %
 %    \begin{macrocode}
-%<<version=3.75.2747>>
-%<<date=2022/05/24>>
+%<<version=3.75.2749>>
+%<<date=2022/05/26>>
 %    \end{macrocode}
 %
 % \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -10801,19 +10801,21 @@ help from Bernd Raichle, for which I am grateful.
 % little library |calendar.js|, by John Walker, in the public domain.
 %
 %    \begin{macrocode}
-\ExplSyntaxOn
-\def\bbl at fpmod#1#2{(#1-#2*floor(#1/#2))}
-\def\bbl at cs@gregleap#1{%
-  (\bbl at fpmod{#1}{4} == 0) &&
-    (!((\bbl at fpmod{#1}{100} == 0) && (\bbl at fpmod{#1}{400} != 0)))}
-\def\bbl at ca@jd#1#2#3{% year, month, day
-  \fp_eval:n{ 1721424.5   + (365 * (#1 - 1)) +
-    floor((#1 - 1) / 4)   + (-floor((#1 - 1) / 100)) +
-    floor((#1 - 1) / 400) + floor((((367 * #2) - 362) / 12) +
-    ((#2 <= 2) ? 0 : (\bbl at cs@gregleap{#1} ? -1 : -2)) + #3) }}
-\newcommand\babelcalendar[2][\the\year-\the\month-\the\day]{%
-  \@nameuse{bbl at ca@#2}#1\@@}
-\ExplSyntaxOff
+\ifx\ExplSyntaxOn\@undefined\else
+  \ExplSyntaxOn
+  \def\bbl at fpmod#1#2{(#1-#2*floor(#1/#2))}
+  \def\bbl at cs@gregleap#1{%
+    (\bbl at fpmod{#1}{4} == 0) &&
+      (!((\bbl at fpmod{#1}{100} == 0) && (\bbl at fpmod{#1}{400} != 0)))}
+  \def\bbl at ca@jd#1#2#3{% year, month, day
+    \fp_eval:n{ 1721424.5   + (365 * (#1 - 1)) +
+      floor((#1 - 1) / 4)   + (-floor((#1 - 1) / 100)) +
+      floor((#1 - 1) / 400) + floor((((367 * #2) - 362) / 12) +
+      ((#2 <= 2) ? 0 : (\bbl at cs@gregleap{#1} ? -1 : -2)) + #3) }}
+  \newcommand\babelcalendar[2][\the\year-\the\month-\the\day]{%
+    \@nameuse{bbl at ca@#2}#1\@@}
+  \ExplSyntaxOff
+\fi
 %    \end{macrocode}
 %
 %
diff --git a/babel.ins b/babel.ins
index f413103..d83b6b1 100644
--- a/babel.ins
+++ b/babel.ins
@@ -26,7 +26,7 @@
 %% and covered by LPPL is defined by the unpacking scripts (with
 %% extension .ins) which are part of the distribution.
 %%
-\def\filedate{2022/05/24}
+\def\filedate{2022/05/26}
 \def\batchfile{babel.ins}
 \input docstrip.tex
 
diff --git a/babel.pdf b/babel.pdf
index 513758e..1ef3abb 100644
Binary files a/babel.pdf and b/babel.pdf differ
diff --git a/bbcompat.dtx b/bbcompat.dtx
index 9c70ba0..02fab1b 100644
--- a/bbcompat.dtx
+++ b/bbcompat.dtx
@@ -30,7 +30,7 @@
 %
 % \iffalse
 %<*dtx>
-\ProvidesFile{bbcompat.dtx}[2022/05/24 v3.75.2747]
+\ProvidesFile{bbcompat.dtx}[2022/05/26 v3.75.2749]
 %</dtx>
 %
 %% File 'bbcompat.dtx'
diff --git a/locale/ar/babel-arabic.tex b/locale/ar/babel-arabic.tex
index dd2e2c9..c543637 100644
--- a/locale/ar/babel-arabic.tex
+++ b/locale/ar/babel-arabic.tex
@@ -12,6 +12,8 @@
 
 \ExplSyntaxOn
 
+% == islamic-civil ==
+
 \def\bbl at cs@isltojd#1#2#3{ % year, month, day
   ((#3 + ceil(29.5 * (#2 - 1)) +
   (#1 - 1) * 354 + floor((3 + (11 * #1)) / 30) +
@@ -32,6 +34,61 @@
     min(12,ceil((\bbl at tempa-(29+\bbl at cs@isltojd{#5}{1}{1}))/29.5)+1) }}%
   \edef#7{\fp_eval:n{ \bbl at tempa - \bbl at cs@isltojd{#5}{#6}{1} + 1} }}
   
+% == islamic-umalqura ==
+
+% Data covers Hijri ~1435/~1460 (Gregorian ~2014/~2038)
+\def\bbl at ca@umalqura at data{56660, 56690,56719,56749,56778,56808,%
+  56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,%
+  57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,%
+  57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,%
+  57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,%
+  58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,%
+  58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,%
+  58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,%
+  58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,%
+  59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,%
+  59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,%
+  59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,%
+  60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,%
+  60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,%
+  60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,%
+  60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,%
+  61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,%
+  61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,%
+  61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,%
+  62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,%
+  62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,%
+  62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,%
+  63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,%
+  63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,%
+  63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,%
+  63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,%
+  64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,%
+  64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,%
+  64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,%
+  65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,%
+  65401,65431,65460,65490,65520}
+
+\@namedef{bbl at ca@islamic-umalqura+}{\bbl at ca@islamcuqr at x{+1}}
+\@namedef{bbl at ca@islamic-umalqura}{\bbl at ca@islamcuqr at x{}}
+\@namedef{bbl at ca@islamic-umalqura-}{\bbl at ca@islamcuqr at x{-1}}
+
+\def\bbl at ca@islamcuqr at x#1#2-#3-#4\@@#5#6#7{%
+  \edef\bbl at tempd{\fp_eval:n{ % (Julian) day
+    \bbl at ca@jd{#2}{#3}{#4} + 0.5 - 2400000 #1}}%
+  \count@\@ne
+  \bbl at foreach\bbl at ca@umalqura at data{%
+    \advance\count@\@ne
+    \ifnum##1>\bbl at tempd\else
+      \edef\bbl at tempe{\the\count@}%
+      \edef\bbl at tempb{##1}%
+    \fi}%
+  \edef\bbl at templ{\fp_eval:n{ \bbl at tempe + 16260 + 949 }}% month~lunar
+  \edef\bbl at tempa{\fp_eval:n{ floor((\bbl at templ - 1 ) / 12) }}% annus
+  \edef#5{\fp_eval:n{ \bbl at tempa + 1  }}%
+  \edef#6{\fp_eval:n{ \bbl at templ - (12 * \bbl at tempa) }}%
+  \edef#7{\fp_eval:n{ \bbl at tempd - \bbl at tempb + 1 }}}
+  
 \ExplSyntaxOff
 
 \endinput





More information about the latex3-commits mailing list.