diff options
Diffstat (limited to 'arabluatex.dtx')
-rw-r--r-- | arabluatex.dtx | 82 |
1 files changed, 76 insertions, 6 deletions
diff --git a/arabluatex.dtx b/arabluatex.dtx index 93ce3a4..c5cf1da 100644 --- a/arabluatex.dtx +++ b/arabluatex.dtx | |||
@@ -27,7 +27,7 @@ | |||
27 | %<package-info>\NeedsTeXFormat{LaTeX2e}[1999/12/01] | 27 | %<package-info>\NeedsTeXFormat{LaTeX2e}[1999/12/01] |
28 | %<package-info>\ProvidesPackage{arabluatex} | 28 | %<package-info>\ProvidesPackage{arabluatex} |
29 | %<*package-info> | 29 | %<*package-info> |
30 | [2016/12/17 v1.6 An ArabTeX-like interface for LuaLaTeX] | 30 | [2016/12/24 v1.7 An ArabTeX-like interface for LuaLaTeX] |
31 | %</package-info> | 31 | %</package-info> |
32 | % | 32 | % |
33 | %<*driver> | 33 | %<*driver> |
@@ -145,7 +145,7 @@ | |||
145 | \defaultfontfeatures{RawFeature={+liga}} | 145 | \defaultfontfeatures{RawFeature={+liga}} |
146 | \setmainfont{Old Standard}[SmallCapsFont={Latin Modern Roman Caps}, | 146 | \setmainfont{Old Standard}[SmallCapsFont={Latin Modern Roman Caps}, |
147 | RawFeature={+mark;+ccmp;+ss05;+ss06}] | 147 | RawFeature={+mark;+ccmp;+ss05;+ss06}] |
148 | \usepackage{arabluatex}[2016/12/17] | 148 | \usepackage{arabluatex}[2016/12/24] |
149 | \usepackage[nopar]{quran} | 149 | \usepackage[nopar]{quran} |
150 | \usepackage{varioref} | 150 | \usepackage{varioref} |
151 | \usepackage{hypdoc} | 151 | \usepackage{hypdoc} |
@@ -203,7 +203,7 @@ | |||
203 | %</driver> | 203 | %</driver> |
204 | % \fi | 204 | % \fi |
205 | % | 205 | % |
206 | % \CheckSum{0} | 206 | % \CheckSum{697} |
207 | % | 207 | % |
208 | % \CharacterTable | 208 | % \CharacterTable |
209 | % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z | 209 | % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z |
@@ -257,7 +257,7 @@ | |||
257 | % \pagebreak | 257 | % \pagebreak |
258 | % \listoftables | 258 | % \listoftables |
259 | % \normalsize | 259 | % \normalsize |
260 | % | 260 | % |
261 | % \begin{abstract} | 261 | % \begin{abstract} |
262 | % This package provides for \LuaLaTeX\ an Arab{\TeX}-like interface | 262 | % This package provides for \LuaLaTeX\ an Arab{\TeX}-like interface |
263 | % to generate Arabic writing from an \textsc{ascii} | 263 | % to generate Arabic writing from an \textsc{ascii} |
@@ -1320,6 +1320,7 @@ vowels (see §~3). | |||
1320 | % \end{quote} | 1320 | % \end{quote} |
1321 | % | 1321 | % |
1322 | % \subparagraph{\arb[trans]{'alif-u 'l-wa.sl-i} preceded by a diphthong} | 1322 | % \subparagraph{\arb[trans]{'alif-u 'l-wa.sl-i} preceded by a diphthong} |
1323 | % \label{sec:diphthong-alif} | ||
1323 | % The diphthong is resolved into two simple vowels \parencite[i. 21 | 1324 | % The diphthong is resolved into two simple vowels \parencite[i. 21 |
1324 | % D--22 A]{Wright} viz. \emph{ay}~→ \emph{\u{a}\u{i}} and \emph{aw}~→ | 1325 | % D--22 A]{Wright} viz. \emph{ay}~→ \emph{\u{a}\u{i}} and \emph{aw}~→ |
1325 | % \emph{\u{a}\u{u}}. \package{arabluatex} detects the cases in which | 1326 | % \emph{\u{a}\u{u}}. \package{arabluatex} detects the cases in which |
@@ -1656,6 +1657,75 @@ vowels (see §~3). | |||
1656 | % \meta{n} prevents the necessary \arb[trans]{ta^sdId} rule | 1657 | % \meta{n} prevents the necessary \arb[trans]{ta^sdId} rule |
1657 | % (\cpageref{ref:necessary-tashdid}) from being applied. | 1658 | % (\cpageref{ref:necessary-tashdid}) from being applied. |
1658 | % | 1659 | % |
1660 | % \subsection{Putting back on broken contextual analysis rules} | ||
1661 | % \label{sec:arbnull} | ||
1662 | % \NEWfeature{v1.7} In complex documents such as critical editions | ||
1663 | % where footnotes and other kind of annotations can be particularly | ||
1664 | % abundant, the contextual analysis rules that are described above may | ||
1665 | % be broken by \LaTeX\ commands. To take an example, consider the | ||
1666 | % following:---% | ||
1667 | % \iffalse | ||
1668 | %<*example> | ||
1669 | % \fi | ||
1670 | \begin{arabluacode} | ||
1671 | This is wrong: | ||
1672 | \begin{arab}[fullvoc] | ||
1673 | fa-lammA ra'aW\LRfootnote{A footnote that interferes with the | ||
1674 | contextual analysis.} 'l-na^gma... | ||
1675 | \end{arab} | ||
1676 | \end{arabluacode} | ||
1677 | % \iffalse | ||
1678 | %</example> | ||
1679 | % \fi% | ||
1680 | % According to the rule stated \vpageref{sec:diphthong-alif}, the | ||
1681 | % diphthong in \arb[trans]{ra'aW} must be resolved into two simple | ||
1682 | % vowels before the \arb[trans]{'alif-u 'l-wa.sl-i}, as | ||
1683 | % \arb[fullvoc]{ra'aW 'l-na^gma}. | ||
1684 | % | ||
1685 | % \DescribeMacro{\arbnull} The \cs{arbnull} command is provided so as | ||
1686 | % to put back on contextual analysis rules in such situations. It | ||
1687 | % takes as argument the word that must be brought back for any given | ||
1688 | % rule to be applied as it ought to. Depending on the contexts that | ||
1689 | % have to be restored, \cs{arbnull} may be found just after or before | ||
1690 | % Arabic words.% | ||
1691 | % \iffalse | ||
1692 | %<*example> | ||
1693 | % \fi | ||
1694 | \begin{arabluacode}[text only] | ||
1695 | In any case, \emph{no space must be left} after or before the Arabic | ||
1696 | word that \cs{arbnull} is applied to. | ||
1697 | \end{arabluacode} | ||
1698 | % \iffalse | ||
1699 | %</example> | ||
1700 | % \fi% | ||
1701 | % The following shows how the Arabic should have been written in the | ||
1702 | % preceding example and gives further illustrations of the same | ||
1703 | % technique:---% | ||
1704 | % \iffalse | ||
1705 | %<*example> | ||
1706 | % \fi | ||
1707 | \begin{arabluacode} | ||
1708 | \begin{arab}[fullvoc] | ||
1709 | fa-lammA ra'aW\arbnull{'l-na^gma}\LRfootnote{A footnote that | ||
1710 | interferes with the contextual analysis.} 'l-na^gma... | ||
1711 | |||
1712 | qAla\LRfootnote{A footnote that interferes with the contextual | ||
1713 | analysis.} \arbnull{qAla}uhrub fa-lan tuqtala. | ||
1714 | |||
1715 | zayduN\arbnull{ibnu}\LRfootnote{A footnote that interferes with | ||
1716 | the contextual analysis.} \arbnull{zayduN}ibn-u | ||
1717 | `amriNU.\LRfootnote{See \vref{fn:zayd-is-son}.} | ||
1718 | \end{arab} | ||
1719 | \begin{arab}[trans] | ||
1720 | zayduN\arbnull{ibnu}\LRfootnote{A footnote that interferes with | ||
1721 | the contextual analysis.} \arbnull{zayduN}ibn-u | ||
1722 | `amriNU.\LRfootnote{See \vref{fn:zayd-is-son}.} | ||
1723 | \end{arab} | ||
1724 | \end{arabluacode} | ||
1725 | % \iffalse | ||
1726 | %</example> | ||
1727 | % \fi% | ||
1728 | % | ||
1659 | % \subsection{\texorpdfstring{Stretching characters: the | 1729 | % \subsection{\texorpdfstring{Stretching characters: the |
1660 | % \arb[trans]{ta.twIl}}{Stretching characters: the taṭwīl}} | 1730 | % \arb[trans]{ta.twIl}}{Stretching characters: the taṭwīl}} |
1661 | % \label{sec:tatwil} | 1731 | % \label{sec:tatwil} |
@@ -2939,7 +3009,7 @@ wa-ya.sIru ta.hta 'l-jild-i | |||
2939 | % \begin{macrocode} | 3009 | % \begin{macrocode} |
2940 | \NeedsTeXFormat{LaTeX2e} | 3010 | \NeedsTeXFormat{LaTeX2e} |
2941 | \ProvidesPackage{arabluatex}% | 3011 | \ProvidesPackage{arabluatex}% |
2942 | [2016/12/17 v1.6 An ArabTeX-like interface for LuaLaTeX] | 3012 | [2016/12/24 v1.7 An ArabTeX-like interface for LuaLaTeX] |
2943 | \RequirePackage{ifluatex} | 3013 | \RequirePackage{ifluatex} |
2944 | % \end{macrocode} | 3014 | % \end{macrocode} |
2945 | % \package{arabluatex} requires \LuaLaTeX\ of course. Issue a warning | 3015 | % \package{arabluatex} requires \LuaLaTeX\ of course. Issue a warning |
@@ -3345,7 +3415,7 @@ wa-ya.sIru ta.hta 'l-jild-i | |||
3345 | % \end{macrocode} | 3415 | % \end{macrocode} |
3346 | % \end{macro} | 3416 | % \end{macro} |
3347 | % \begin{macro}{\arbnull} | 3417 | % \begin{macro}{\arbnull} |
3348 | % \changes{v1.7}{2016/12/23}{New \cs{arbnull} command for putting | 3418 | % \changes{v1.7}{2016/12/24}{New \cs{arbnull} command for putting |
3349 | % back on any contextual analysis broken by other commands.} The | 3419 | % back on any contextual analysis broken by other commands.} The |
3350 | % \cs{arbnull} command does nothing by itself. It is processed only | 3420 | % \cs{arbnull} command does nothing by itself. It is processed only |
3351 | % if it is found in Arabic context so as to put back on contextual | 3421 | % if it is found in Arabic context so as to put back on contextual |