summaryrefslogtreecommitdiff
path: root/macros/unicodetex/latex/texnegar/texnegar-doc.ltx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/unicodetex/latex/texnegar/texnegar-doc.ltx')
-rw-r--r--macros/unicodetex/latex/texnegar/texnegar-doc.ltx486
1 files changed, 247 insertions, 239 deletions
diff --git a/macros/unicodetex/latex/texnegar/texnegar-doc.ltx b/macros/unicodetex/latex/texnegar/texnegar-doc.ltx
index d3da27ee43..c740068a7d 100644
--- a/macros/unicodetex/latex/texnegar/texnegar-doc.ltx
+++ b/macros/unicodetex/latex/texnegar/texnegar-doc.ltx
@@ -1,7 +1,7 @@
%%
%% This is file `texnegar-doc.tex'
%%
-%% Copyright (c) Hossein Movahhedian 2020
+%% Copyright (c) Hossein Movahhedian 2020-2021
%%
%% It may be distributed and/or modified under the LaTeX Project Public License,
%% version 1.3c or higher (your choice). The latest version of
@@ -17,6 +17,7 @@
\usepackage{hologo}
\usepackage{xcolor}
\usepackage{iftex}
+\usepackage{enumitem}
\setfontfamily\PeFont[Script=Arabic,Language=Persian]{HM XKayhan}
@@ -31,15 +32,15 @@
% This also makes the index 1 columns, which I don't want
\makeatletter
\renewenvironment{theindex}
- {\section*{\indexname}\begin{multicols}{2}%
- \@mkboth{\MakeUppercase\indexname}%
- {\MakeUppercase\indexname}%
- \thispagestyle{plain}\parindent\z@
- \parskip\z@ \@plus .3\p@\relax
- \columnseprule \z@
- \columnsep 35\p@
- \let\item\@idxitem}
- {\end{multicols}}
+ {\section*{\indexname}\begin{multicols}{2}%
+ \@mkboth{\MakeUppercase\indexname}%
+ {\MakeUppercase\indexname}%
+ \thispagestyle{plain}\parindent\z@
+ \parskip\z@ \@plus .3\p@\relax
+ \columnseprule \z@
+ \columnsep 35\p@
+ \let\item\@idxitem}
+ {\end{multicols}}
\makeatother
\ifluatex
@@ -50,7 +51,7 @@
\fi
\title{
- The \TeXNegar{} package\\Kashida justification in LuaTeX and XeTeX\\User Documentation
+ The \textsf{texnegar} package\\Kashida justification in LuaTeX and XeTeX\\User Documentation
}
\author{
@@ -62,7 +63,7 @@
}
}
-\date{Released \quad 2020-08-30 \quad v0.1b}
+\date{Released \quad 2021-01-27 \quad v0.1c}
\definecolor{HMhighlightBlueI}{rgb}{0,0,1}
\definecolor{HMhighlightbgYellowII}{rgb}{1,1,1}
@@ -103,15 +104,6 @@
}
\end{minipage}
-% \vskip 15mm
-% \begin{center}\begin{minipage}{0.65\linewidth}\parskip 15pt
-% \textit{
-% Negar, in Persian, is the present stem of negaashtan meaning to design; to paint;
-% to write; and as a noun it means ``sweetheart, idol, beloved, figuratively refering
-% to a beautiful woman, pattern, painting, and artistic design''
-% }
-% \end{minipage}\end{center}
-
\newpage
\tableofcontents
@@ -136,30 +128,30 @@ and \mbox{\textsf{X Series 2}} available at\linebreak[4]
The \indexterm{texnegar}{\TeXNegar} package implements kashida justification in LuaTeX and XeTeX
and fixes known bugs in \textsf{xepersian}.
-The following files in the directory \texttt{texmf-dist/doc/xelatex/texnegar/} can be used as simple
+The following files in the directory \texttt{texmf-dist/doc/latex/texnegar/} can be used as simple
examples of the usage of the package:
\newcounter{beanx}
\begin{list}{\arabic{beanx}.}{\usecounter{beanx}\setlength{\rightmargin}{\leftmargin}}
\item \texttt{texnegar-luatex-glyph.tex} \\
- See pages 26 -- 35 for PDF output.
+ See pages 26 -- 35 for PDF output.
\item \texttt{texnegar-luatex-leaders-glyph.tex} \\
- See pages 36 -- 45 for PDF output.
+ See pages 36 -- 45 for PDF output.
\item \texttt{texnegar-luatex-leaders-hrule.tex} \\
- See pages 46 -- 55 for PDF output.
+ See pages 46 -- 55 for PDF output.
\item \texttt{texnegar-xetex-bidi-glyph.tex} \\
- See pages 56 -- 65 for PDF output.
+ See pages 56 -- 65 for PDF output.
\item \texttt{texnegar-xetex-bidi-leaders-glyph.tex} \\
- See pages 66 -- 75 for PDF output.
+ See pages 66 -- 75 for PDF output.
\item \texttt{texnegar-xetex-bidi-leaders-hrule.tex} \\
- See pages 76 -- 85 for PDF output.
+ See pages 76 -- 85 for PDF output.
\item \texttt{texnegar-xetex-xepersian-glyph.tex} \\
- See pages 86 -- 95 for PDF output.
+ See pages 86 -- 95 for PDF output.
\item \texttt{texnegar-xetex-xepersian-leaders-glyph.tex} \\
- See pages 96 -- 105 for PDF output.
+ See pages 96 -- 105 for PDF output.
\item \texttt{texnegar-xetex-xepersian-leaders-hrule.tex} \\
- See pages 106 -- 115 for PDF output.
+ See pages 106 -- 115 for PDF output.
% \item \texttt{xepersian-XB.tex} \\
- % See pages 14 -- 23 for PDF output.
+ % See pages 16 -- 25 for PDF output.
\end{list}
Please use the Bitbucket issue tracker:
@@ -174,59 +166,59 @@ which I cannot make time to fix.
Kashida is one of the most important features that must be included in any
Persian typesetter. In \textsf{xepersian} this feature is implemented but with some
-problems. See pages 14 -- 23 for pictorial illustrations for various font styles.
+problems. See pages 16 -- 25 for pictorial illustrations for various font styles.
These problems along with the fixes in \TeXNegar{} are briefly:
\newcounter{bean}
\begin{list}{P-\Roman{bean}}{\usecounter{bean}\setlength{\rightmargin}{\leftmargin}}
- \item In \textsf{xepersian} \indexterm{overlapping of glyphs}{overlapping of glyphs} occurs in letter
- combinations such as "{\RtoL{ﺑ + ﻰ}}", "{\RtoL{ﺗ + ﻰ}}", and
- "{\RtoL{ﭘ + ﻰ}}" because the character
- \textsf{U+FEF0 (ARABIC LETTER FARSI YEH FINAL FORM)} is replaced with
- another character. This is fixed by modifying the fixed part of the
- glue inserted between the consecutive characters. Furthermore, both,
- the fixed and the stretchable parts of the glue can be changed by the
- user.
- \item In \indexterm{letter combinations}{letter combinations} such as "{\RtoL{ﻫ + ﻰ}}", in \textsf{xepersian},
- the character \textsf{U+FEEB (ARABIC LETTER HEH INITIAL FORM)} is
- replaced with \textsf{U+06BE (ARABIC LETTER HEH DOACHASHEMEE)}. This
- is fixed by inserting the character \textsf{U+200E} before the
- combination "\textsf{U+200D + hrule + U+200D}" which is used as
- stretching item.
-
- {\color{gray}
- Note: \indexterm{Vafa Khalighi}{Vafa Khalighi} has fixed this problem in
- \href{https://tug.org/svn/texlive/trunk/Master/texmf-dist/tex/xelatex/xepersian/kashida-xepersian.def?revision=55165&view=co}%
- {\texttt{xepersian-23.0}},
- by copying the corresponding code from
- \href{http://www.tug.org/svn/texlive/trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def?revision=55123&view=co}%
- {\texttt{xepersian-hm-0.5e}}.
- Consequently, the
- option \texttt{KashidaXBFix} along with the commands \linebreak[4]
- \texttt{\textbackslash KashidaXBFixOn} and
- \texttt{\textbackslash KashidaXBFixOff} has been removed in \linebreak[4]
- \texttt{xepersian-23.0} and the later versions.}
-
- \item In \textsf{xepersian} when outline or shadow fonts are used, the gaps
- filled by horizontal rule appears as a solid box. This is fixed by
- using the \textsf{kashida} glyph instead of the horizontal rule in
- \TeXNegar.
- \item Activating kashida in \textsf{xepersian} disturbs \indexterm{ligatures}{ligatures}. This is
- fixed in \TeXNegar{} by escaping the components of the
- ligature which form the glyph, i.e. by inserting an escape character
- before Persian letters joined to form the ligature without any empty
- characters, blank characters, invisible characters and whitespace
- characters which form the glyph. See
- \mbox{Figures \ref{fig:ligatures-xep} and \ref{fig:ligatures-texnegar}}.
- Currently only 3 ligature glyphs are available in
- \TeXNegar, but you can add as many as you want or let
- me know the ligature glyphs that you need, so that I can add them in
- the next release of the package. Of course, this is not the best
- solution, but it works.
-
- \item If italic or oblique style of some fonts, such as \textsf{X Series 2},
- is used in \textsf{xepersian}, an extra \indexterm{gap}{gap} is left between the
- stretched characters. This is fixed in \textsf{HM Series} fonts.
+ \item In \textsf{xepersian} \indexterm{overlapping of glyphs}{overlapping of glyphs} occurs in letter
+ combinations such as "{\RtoL{ﺑ + ﻰ}}", "{\RtoL{ﺗ + ﻰ}}", and
+ "{\RtoL{ﭘ + ﻰ}}" because the character
+ \textsf{U+FEF0 (ARABIC LETTER FARSI YEH FINAL FORM)} is replaced with
+ another character. This is fixed by modifying the fixed part of the
+ glue inserted between the consecutive characters. Furthermore, both,
+ the fixed and the stretchable parts of the glue can be changed by the
+ user.
+ \item In \indexterm{letter combinations}{letter combinations} such as "{\RtoL{ﻫ + ﻰ}}", in \textsf{xepersian},
+ the character \textsf{U+FEEB (ARABIC LETTER HEH INITIAL FORM)} is
+ replaced with \textsf{U+06BE (ARABIC LETTER HEH DOACHASHEMEE)}. This
+ is fixed by inserting the character \textsf{U+200E} before the
+ combination "\textsf{U+200D + hrule + U+200D}" which is used as
+ stretching item.
+
+ {\color{gray}
+ Note: \indexterm{Vafa Khalighi}{Vafa Khalighi} has fixed this problem in
+ \href{https://tug.org/svn/texlive/trunk/Master/texmf-dist/tex/xelatex/xepersian/kashida-xepersian.def?revision=55165&view=co}%
+ {\texttt{xepersian-23.0}},
+ by copying the corresponding code from
+ \href{http://www.tug.org/svn/texlive/trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def?revision=55123&view=co}%
+ {\texttt{xepersian-hm-0.5e}}.
+ Consequently, the
+ option \texttt{KashidaXBFix} along with the commands \linebreak[4]
+ \texttt{\textbackslash KashidaXBFixOn} and
+ \texttt{\textbackslash KashidaXBFixOff} has been removed in \linebreak[4]
+ \texttt{xepersian-23.0} and the later versions.}
+
+ \item In \textsf{xepersian} when outline or shadow fonts are used, the gaps
+ filled by horizontal rule appears as a solid box. This is fixed by
+ using the \textsf{kashida} glyph instead of the horizontal rule in
+ \TeXNegar.
+ \item Activating kashida in \textsf{xepersian} disturbs \indexterm{ligatures}{ligatures}. This is
+ fixed in \TeXNegar{} by escaping the components of the
+ ligature which form the glyph, i.e. by inserting an escape character
+ before Persian letters joined to form the ligature without any empty
+ characters, blank characters, invisible characters and whitespace
+ characters which form the glyph. See
+ \mbox{Figures \ref{fig:ligatures-xep} and \ref{fig:ligatures-texnegar}}.
+ Currently only 3 ligature glyphs are available in
+ \TeXNegar, but you can add as many as you want or let
+ me know the ligature glyphs that you need, so that I can add them in
+ the next release of the package. Of course, this is not the best
+ solution, but it works.
+
+ \item If italic or oblique style of some fonts, such as \textsf{X Series 2},
+ is used in \textsf{xepersian}, an extra \indexterm{gap}{gap} is left between the
+ stretched characters. This is fixed in \textsf{HM Series} fonts.
\end{list}
For comparing the outputs of \textsf{xepersian} and \TeXNegar{} with
@@ -273,7 +265,7 @@ please note that \TeXNegar{} should be loaded before \textsf{xepersian}.
For example:
\begin{verbatim}
\documentclass{report}
-\usepackage[Kashida=leaders+glyph]{texnegar}
+\usepackage[Minimal=On,Kashida=leaders+glyph]{texnegar}
\usepackage{xepersian}
\end{verbatim}
@@ -281,167 +273,178 @@ The options available in \TeXNegar{} are:
\begin{itemize}
\item \indexterm{General Options}{\textbf{General Options}}: \\
-\begin{itemize}
- \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}: \\
- which implements kashida feature with three possible values:
\begin{itemize}
- \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}{glyph}: \\
- which uses the \texttt{kashida} character to stretch the text. \\
-
- {\color{magenta}
- Imortant notes for \hologo{XeLaTeX} users: \\
-
+ \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{Minimal}}: \\
+ which has two possible values:
\begin{itemize}
- \item
- If you are going to use this option then you should run \texttt{xelatex} thrice. For example: \\
-
- \texttt{rm -f kashida-example.aux \\
- xelatex kashida-example.tex \\
- xelatex kashida-example.tex \\
- xelatex kashida-example.tex} \\
-
- \item
- This feature is still experimental in \hologo{XeLaTeX} and is not regarded as stable,
- so, if you are going to use this option be ready for unpredictable results.
-
- \item
- With this option, for each gap which is to be filled with kashida,
- some commands, current position on the page, and references are saved in the
- \texttt{\bslash jobname.aux} file and if the text is long, the file size may get
- too large.
- \end{itemize}}
-
- \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}{leaders+glyph}: \\
- which uses kashida glyph leaders to stretch the text.
- Please note that the option `Kashida=leaders+glyph' is currently only
- supported by \mbox{\textsf{HM Series}} fonts available at
- \href{https://dma8hm1334.bitbucket.io}{\texttt{https://dma8hm1334.bitbucket.io}}.
- If you know of any other font that supports this option, please
- let me know to add it to the list of corresponding fonts.
-
- Contrary to the option \texttt{Kashida=glyph}, in this case nothing is saved
- in \texttt{.aux} files.
-
- \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}{leaders+hrule}: \\
- which uses horizontal rule (\verb|\hrule|) leaders to stretch the text.
-
- \item \texttt{Off}: \\
- which disables kashida feature.
-
- \item \texttt{On}: \\
- which is the same as \texttt{leaders+glyph}.
-
+ \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Minimal}}{On}: \\
+ for using \texttt{texnegar} to implement kashida feature only.
+
+ \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Minimal}}{Off}: \\
+ for using \texttt{texnegar} as a general purpose typesetter (including kashida implementation).
+ This is the default value.
+ \end{itemize}
+
+ \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}: \\
+ which implements kashida feature with three possible values:
+ \begin{itemize}
+ \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}{glyph}: \\
+ which uses the \texttt{kashida} character to stretch the text. \\
+
+ {\color{magenta}
+ Imortant notes for \hologo{XeLaTeX} users: \\
+
+ \begin{itemize}
+ \item
+ If you are going to use this option then you should run \texttt{xelatex} thrice. For example: \\
+
+ \texttt{rm -f kashida-example.aux \\
+ xelatex kashida-example.tex \\
+ xelatex kashida-example.tex \\
+ xelatex kashida-example.tex} \\
+
+ \item
+ This feature is still experimental in \hologo{XeLaTeX} and is not regarded as stable,
+ so, if you are going to use this option be ready for unpredictable results.
+
+ \item
+ With this option, for each gap which is to be filled with kashida,
+ some commands, current position on the page, and references are saved in the
+ \texttt{\bslash jobname.aux} file and if the text is long, the file size may get
+ too large.
+ \end{itemize}}
+
+ \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}{leaders+glyph}: \\
+ which uses kashida glyph leaders to stretch the text.
+ Please note that the option `Kashida=leaders+glyph' is currently only
+ supported by \mbox{\textsf{HM Series}} fonts available at
+ \href{https://dma8hm1334.bitbucket.io}{\texttt{https://dma8hm1334.bitbucket.io}}.
+ If you know of any other font that supports this option, please
+ let me know to add it to the list of corresponding fonts.
+
+ Contrary to the option \texttt{Kashida=glyph}, in this case nothing is saved
+ in \texttt{.aux} files.
+
+ \item \indextermsubsub{General Options}{\textbf{General Options}}{\texttt{Kashida}}{leaders+hrule}: \\
+ which uses horizontal rule (\verb|\hrule|) leaders to stretch the text.
+
+ \item \texttt{Off}: \\
+ which disables kashida feature.
+
+ \item \texttt{On}: \\
+ which is the same as \texttt{leaders+glyph}.
+
+ \end{itemize}
+ Also, please note that the value of \texttt{Kashida} is mandatory.
+ For example \texttt{Kashida=glyph} inserts a stretched \texttt{kashida} glyph
+ and \linebreak[4] \texttt{Kashida=leaders+glyph} inserts \texttt{kashida} leaders wherever
+ it is needed.
+
+ \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{linebreakpenalty}}: \\
+ which specifies the amount of penalty for preventing bad line-breaking.
+ You may strictly specify the value of this option. For example you may either set % \linebreak[4]
+ \texttt{'linebreakpenalty=8'} or
+ use the default values. The available default values of penalties which are put into the
+ horizontal list output are the negative of the followings:
+
+ \begin{longtable}{ll}
+ \texttt{min}: & \texttt{0} \\
+ \texttt{low}: & \texttt{8} \\
+ \texttt{medium}: & \texttt{15} \\
+ \texttt{high}: & \texttt{25} \\
+ \texttt{max}: & \texttt{10000}
+ \end{longtable}
+
+ \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{ligatures}}: \\
+ which fixes the disturbance of ligatures caused by activating kashida
+ justification in \TeXNegar. You may strictly specify the value of this option.
+ For example \texttt{'ligatures=dlig'} or you may use the default value.
+ The available values are:
+
+ \begin{longtable}{ll}
+ \texttt{aalt}: & Access All Alternatives \\
+ \texttt{ccmp}: & Glyph Composition/Decomposition \\
+ \texttt{dlig}: & Discretionary Ligatures \\
+ \texttt{fina}: & Final (Terminal) Forms \\
+ \texttt{init}: & Initial Forms \\
+ \texttt{locl}: & Localized Forms \\
+ \texttt{medi}: & Medial Forms \\
+ \texttt{rlig}: & Required Ligatures \\
+ \texttt{default}: & All the above features
+ \end{longtable}
+ Please note that this feature is still experimental and is not regarded as stable.
+
+ \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{color}}: \\
+ which colorize the stretched parts of the text for checking the quality of kashida
+ justification. Color must be one of a named color declared in \textsf{xcolor} package.
+ For example: \texttt{color=blue} or \texttt{color=Blue}.
+
+ Default color name is: \texttt{magenta}
+
+ Please note that activating this option increases system resource and disk usage.
+
\end{itemize}
- Also, please note that the value of \texttt{Kashida} is mandatory.
- For example \texttt{Kashida=glyph} inserts a stretched \texttt{kashida} glyph
- and \linebreak[4] \texttt{Kashida=leaders+glyph} inserts \texttt{kashida} leaders wherever
- it is needed.
-
- \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{linebreakpenalty}}: \\
- which specifies the amount of penalty for preventing bad line-breaking.
- You may strictly specify the value of this option. For example you may either set % \linebreak[4]
- \texttt{'linebreakpenalty=8'} or
- use the default values. The available default values of penalties which are put into the
- horizontal list output are the negative of the followings:
-
- \begin{longtable}{ll}
- \texttt{min}: & \texttt{0} \\
- \texttt{low}: & \texttt{8} \\
- \texttt{medium}: & \texttt{15} \\
- \texttt{high}: & \texttt{25} \\
- \texttt{max}: & \texttt{10000}
- \end{longtable}
-
- \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{ligatures}}: \\
- which fixes the disturbance of ligatures caused by activating kashida
- justification in \TeXNegar. You may strictly specify the value of this option.
- For example \texttt{'ligatures=dlig'} or you may use the default value.
- The available values are:
-
- \begin{longtable}{ll}
- \texttt{aalt}: & Access All Alternatives \\
- \texttt{ccmp}: & Glyph Composition/Decomposition \\
- \texttt{dlig}: & Discretionary Ligatures \\
- \texttt{fina}: & Final (Terminal) Forms \\
- \texttt{init}: & Initial Forms \\
- \texttt{locl}: & Localized Forms \\
- \texttt{medi}: & Medial Forms \\
- \texttt{rlig}: & Required Ligatures \\
- \texttt{default}: & All the above features
- \end{longtable}
- Please note that this feature is still experimental and is not regarded as stable.
-
- \item \indextermsub{General Options}{\textbf{General Options}}{\texttt{color}}: \\
- which colorize the stretched parts of the text for checking the quality of kashida
- justification. Color must be one of a named color declared in \textsf{xcolor} package.
- For example: \texttt{color=blue} or \texttt{color=Blue}.
-
- Default color name is: \texttt{magenta}
-
- Please note that activating this option increases system resource and disk usage.
-
-\end{itemize}
\end{itemize}
\begin{itemize}
\item \indexterm{LuaLaTeX-only Options}{\textbf{\hologo{LuaLaTeX}-only Options}}: \\
-\begin{itemize}
- \item \indextermsub{LuaLaTeX-only Options}{\textbf{\hologo{LuaLaTeX}-only Options}}{\texttt{hboxrecursion}}: \\
- which enables kashida justification inside horizontal boxes recursively.
+ \begin{itemize}
+ \item \indextermsub{LuaLaTeX-only Options}{\textbf{\hologo{LuaLaTeX}-only Options}}{\texttt{hboxrecursion}}: \\
+ which enables kashida justification inside horizontal boxes recursively.
- \item \indextermsub{LuaLaTeX-only Options}{\textbf{\hologo{LuaLaTeX}-only Options}}{\texttt{vboxrecursion}}: \\
- which enables kashida justification inside vertical boxes recursively.
+ \item \indextermsub{LuaLaTeX-only Options}{\textbf{\hologo{LuaLaTeX}-only Options}}{\texttt{vboxrecursion}}: \\
+ which enables kashida justification inside vertical boxes recursively.
-\end{itemize}
+ \end{itemize}
\end{itemize}
\begin{itemize}
\item \indexterm{XeLaTeX-only Options}{\textbf{\hologo{XeLaTeX}-only Options}}: \\
-\begin{itemize}
- \item \indextermsub{XeLaTeX-only Options}{\textbf{\hologo{XeLaTeX}-only Options}}{\texttt{kashidastretch}}: \\
- which specifies the amount of extra stretching
- for some combinations of characters. You may strictly specify the value of
- this option. For example \texttt{'kashidastretch=0.14 em plus 0.5 em'} or you
- may use the default values. The available default values are:
-
- \begin{longtable}{lll}
- \texttt{kayhan} & \texttt{0.14 em plus 0.5 em} \\
- \texttt{khorramshahr} & \texttt{0.131 em plus 0.5 em} \\
- \texttt{kayhannavaar} & \texttt{0.129 em plus 0.5 em} \\
- \texttt{kayhanpook} & \texttt{0.133 em plus 0.5 em} \\
- \texttt{kayhansayeh} & \texttt{0.135 em plus 0.5 em} \\
- \texttt{khoramshahr} & \texttt{0.128 em plus 0.5 em} \\
- \texttt{khorramshahr} & \texttt{0.13 em plus 0.5 em} \\
- \texttt{niloofar} & \texttt{0.132 em plus 0.5 em} \\
- \texttt{paatch} & \texttt{0.127 em plus 0.5 em} \\
- \texttt{riyaz} & \texttt{0.125 em plus 0.5 em} \\
- \texttt{roya} & \texttt{0.142 em plus 0.5 em} \\
- \texttt{shafigh} & \texttt{0.143 em plus 0.5 em} \\
- \texttt{shafighKurd} & \texttt{0.126 em plus 0.5 em} \\
- \texttt{shafighUzbek} & \texttt{0.123 em plus 0.5 em} \\
- \texttt{shiraz} & \texttt{0.122 em plus 0.5 em} \\
- \texttt{sols} & \texttt{0.124 em plus 0.5 em} \\
- \texttt{tabriz} & \texttt{0.119 em plus 0.5 em} \\
- \texttt{titr} & \texttt{0.12 em plus 0.5 em} \\
- \texttt{titre} & \texttt{0.121 em plus 0.5 em} \\
- \texttt{traffic} & \texttt{0.124 em plus 0.5 em} \\
- \texttt{vahid} & \texttt{0.134 em plus 0.5 em} \\
- \texttt{vosta} & \texttt{0.136 em plus 0.5 em} \\
- \texttt{yaghut} & \texttt{0.138 em plus 0.5 em} \\
- \texttt{yagut} & \texttt{0.137 em plus 0.5 em} \\
- \texttt{yas} & \texttt{0.126 em plus 0.5 em} \\
- \texttt{yekan} & \texttt{0.141 em plus 0.5 em} \\
- \texttt{yermook} & \texttt{0.139 em plus 0.5 em} \\
- \texttt{zar} & \texttt{0.116 em plus 0.5 em} \\
- \texttt{ziba} & \texttt{0.119 em plus 0.5 em} \\
- \texttt{default} & \texttt{0.14 em plus 0.5 em} \\
- \texttt{noskip} & \texttt{0 em plus 0.5 em}
- \end{longtable}
-
- For example: \mbox{\texttt{'kashidastretch=titr'}} is equivalent to\linebreak
- \mbox{\texttt{'kashidastretch=0.12 em plus 0.5 em'}}
+ \begin{itemize}
+ \item \indextermsub{XeLaTeX-only Options}{\textbf{\hologo{XeLaTeX}-only Options}}{\texttt{kashidastretch}}: \\
+ which specifies the amount of extra stretching
+ for some combinations of characters. You may strictly specify the value of
+ this option. For example \texttt{'kashidastretch=0.14 em plus 0.5 em'} or you
+ may use the default values. The available default values are:
+
+ \begin{longtable}{lll}
+ \texttt{kayhan} & \texttt{0.14 em plus 0.5 em} \\
+ \texttt{khorramshahr} & \texttt{0.131 em plus 0.5 em} \\
+ \texttt{kayhannavaar} & \texttt{0.129 em plus 0.5 em} \\
+ \texttt{kayhanpook} & \texttt{0.133 em plus 0.5 em} \\
+ \texttt{kayhansayeh} & \texttt{0.135 em plus 0.5 em} \\
+ \texttt{khoramshahr} & \texttt{0.128 em plus 0.5 em} \\
+ \texttt{khorramshahr} & \texttt{0.13 em plus 0.5 em} \\
+ \texttt{niloofar} & \texttt{0.132 em plus 0.5 em} \\
+ \texttt{paatch} & \texttt{0.127 em plus 0.5 em} \\
+ \texttt{riyaz} & \texttt{0.125 em plus 0.5 em} \\
+ \texttt{roya} & \texttt{0.142 em plus 0.5 em} \\
+ \texttt{shafigh} & \texttt{0.143 em plus 0.5 em} \\
+ \texttt{shafighKurd} & \texttt{0.126 em plus 0.5 em} \\
+ \texttt{shafighUzbek} & \texttt{0.123 em plus 0.5 em} \\
+ \texttt{shiraz} & \texttt{0.122 em plus 0.5 em} \\
+ \texttt{sols} & \texttt{0.124 em plus 0.5 em} \\
+ \texttt{tabriz} & \texttt{0.119 em plus 0.5 em} \\
+ \texttt{titr} & \texttt{0.12 em plus 0.5 em} \\
+ \texttt{titre} & \texttt{0.121 em plus 0.5 em} \\
+ \texttt{traffic} & \texttt{0.124 em plus 0.5 em} \\
+ \texttt{vahid} & \texttt{0.134 em plus 0.5 em} \\
+ \texttt{vosta} & \texttt{0.136 em plus 0.5 em} \\
+ \texttt{yaghut} & \texttt{0.138 em plus 0.5 em} \\
+ \texttt{yagut} & \texttt{0.137 em plus 0.5 em} \\
+ \texttt{yas} & \texttt{0.126 em plus 0.5 em} \\
+ \texttt{yekan} & \texttt{0.141 em plus 0.5 em} \\
+ \texttt{yermook} & \texttt{0.139 em plus 0.5 em} \\
+ \texttt{zar} & \texttt{0.116 em plus 0.5 em} \\
+ \texttt{ziba} & \texttt{0.119 em plus 0.5 em} \\
+ \texttt{default} & \texttt{0.14 em plus 0.5 em} \\
+ \texttt{noskip} & \texttt{0 em plus 0.5 em}
+ \end{longtable}
+
+ For example: \mbox{\texttt{'kashidastretch=titr'}} is equivalent to\linebreak
+ \mbox{\texttt{'kashidastretch=0.12 em plus 0.5 em'}}
-\end{itemize}
+ \end{itemize}
\end{itemize}
\section{Commands}
@@ -485,21 +488,26 @@ During the development of this package I refered to Stack Exchange network of
question-and-answer (Q\&A) websites to solve problems for which I am grateful.
I also would like to thank the developer teams of TeX's friends especially LaTeX, LuaTeX and XeTeX teams.
-\def\HistoryItem#1#2{\subsection*{[#1]} \addcontentsline{toc}{subsection}{[#1]} \item #2}
-
\section{Change History}
-\begin{itemize}
- \let\tmpitemindent\itemindent
- \addtolength{\itemindent}{\leftmargin}
- \setlength{\parskip}{0pt}
- \setlength{\itemsep}{0pt}
+\def\SubSecItem#1{\subsubsection*{\hskip 2em\large #1}\addcontentsline{toc}{subsection}{[#1]}}
+\newenvironment{Itemize}{\begin{itemize}[leftmargin=4em]}{\end{itemize}}
- \HistoryItem{2020-08-29~v0.1a}{First standalone version.}
+\SubSecItem{2020-08-29~v0.1a}
+\begin{Itemize}
+ \item First standalone version.
+\end{Itemize}
- \HistoryItem{2020-08-30~v0.1b}{Changed some file names.}
+\SubSecItem{2020-08-30~v0.1b}
+\begin{Itemize}
+ \item Changed some file names.
+\end{Itemize}
-\end{itemize}
+\SubSecItem{2021-01-27~v0.1c}
+\begin{Itemize}
+ \item Added the option \texttt{Minimal} which is needed if texnegar is used for kashida implementaion only.
+ \item Fixed the problem with \texttt{Scheherazade} and \texttt{Amiri} fonts.
+\end{Itemize}
\section*{To Do's}