summaryrefslogtreecommitdiff
path: root/macros/xetex/latex/quran/tex/quran-transen.def
blob: ac52ff0935d6fd26108dc2836eaf32381abf9787 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
\let\qt@doqt@orig\qt@doqt
\let\ToggleBasmalah@orig\ToggleBasmalah
%%%%%%%%%%%%%%%%%%%%%%%%%%
\def\basmalahen{In the name of Allah, most benevolent, ever-merciful. \qt@par}%
\bidi@newrobustcmd\ToggleBasmalahen{%
  \ifx\basmalahen\relax%
    \def\basmalahen{In the name of Allah, most benevolent, ever-merciful. \qt@par}%
  \else%
    \let\basmalahen\relax%
  \fi%
}%
\def\Basmalahen{%
        \begingroup%
        \let\par\relax%
        \def\qt@no##1{\relax}%
        \quranayahen[1][1][1]%
        \endgroup%
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand\qt@doen{ o o }{%
    \addtocounter{qt@count}{1}%
    \def\@qtexp{}%
    \loop%
        \global\xdef\@qtexp{\@qtexp\csname qurantrans@en@\roman{qt@count}\endcsname\ifnum\value{qt@count}=\qt@max\else\space\fi\qt@par}%
        \ifnum\value{qt@count}<\qt@max\relax%
        \addtocounter{qt@count}{1}%
    \repeat%
    \IfNoValueTF{#1}%
    {\@qtexp}%true
    {\qt@WordCount=0\relax\c@qt@start=\numexpr#1-1\relax%
    \readlist*\qt@words{\@qtexp}%
        \IfNoValueTF{#2}%
        {\c@qt@end=\numexpr\qt@wordslen+1\relax}{\c@qt@end=\numexpr#2+1\relax}%
        \foreachitem\qt@word\in\qt@words{%
            \ifnum\qt@wordcnt>\c@qt@start\ifnum\qt@wordcnt<\c@qt@end\qt@word\ifnum\qt@wordcnt=\numexpr\c@qt@end-1\relax\else\xspace\fi\fi\fi%
        }%
        \qt@showitems{\ifdefined\arabicfont\arabicfont\fi\showitems\qt@words}%
    }%false
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\qurantexten}{ s O{\qt@default} o t{+} }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#4}{\def\qt@showitems##1{\footnote{##1}}}{\def\qt@showitems##1{\relax}}%
    \IfBooleanTF{#1}%
    {\IfBooleanTF{#4}{\qurantext*[#2][#3]+}{\qurantext*[#2][#3]}}%
    {\IfBooleanTF{#4}{\qurantext[#2][#3]+}{\qurantext[#2][#3]}}%
    \let\qt@doqt\qt@doqt@orig% 
    \def\qt@showitems##1{\relax}%          
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand\quransurahen{ s O{\qt@surah@default} }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quransurah*[#2]}%
    {\quransurah[#2]}%
    \let\qt@doqt\qt@doqt@orig%        
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranayahen}{ s o o o t{+} }{%
    \let\qt@doqt\qt@doen%
    \let\ToggleBasmalah\ToggleBasmalahlt%
    \IfBooleanTF{#1}%
    {\IfBooleanTF{#5}{\quranayah*[#2][#3][#4]+}{\quranayah*[#2][#3][#4]}}%
    {\IfBooleanTF{#5}{\quranayah[#2][#3][#4]+}{\quranayah[#2][#3][#4]}}%    
    \let\qt@doqt\qt@doqt@orig%    
    \let\ToggleBasmalah\ToggleBasmalah@orig%        
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranjuzen}{ s o }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quranjuz*[#2]}%
    {\quranjuz[#2]}%        
    \let\qt@doqt\qt@doqt@orig%    
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranpageen}{ s o }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quranpage*[#2]}%
    {\quranpage[#2]}%        
    \let\qt@doqt\qt@doqt@orig%    
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranquarteren}{ s o }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quranquarter*[#2]}%
    {\quranquarter[#2]}%        
    \let\qt@doqt\qt@doqt@orig%    
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranrukuen}{ s o }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quranruku*[#2]}%
    {\quranruku[#2]}%        
    \let\qt@doqt\qt@doqt@orig%    
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranhizben}{ s o }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quranhizb*[#2]}%
    {\quranhizb[#2]}%        
    \let\qt@doqt\qt@doqt@orig%    
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%
\DeclareDocumentCommand{\quranmanzilen}{ s o }{%
    \let\qt@doqt\qt@doen%
    \IfBooleanTF{#1}%
    {\quranmanzil*[#2]}%
    {\quranmanzil[#2]}%        
    \let\qt@doqt\qt@doqt@orig%    
}%
%%%%%%%%%%%%%%%%%%%%%%%%%%