summaryrefslogtreecommitdiff
path: root/macros/unicodetex/latex/quran-bn/doc/quran-bn-doc.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/unicodetex/latex/quran-bn/doc/quran-bn-doc.tex')
-rw-r--r--macros/unicodetex/latex/quran-bn/doc/quran-bn-doc.tex174
1 files changed, 174 insertions, 0 deletions
diff --git a/macros/unicodetex/latex/quran-bn/doc/quran-bn-doc.tex b/macros/unicodetex/latex/quran-bn/doc/quran-bn-doc.tex
new file mode 100644
index 0000000000..535461ae02
--- /dev/null
+++ b/macros/unicodetex/latex/quran-bn/doc/quran-bn-doc.tex
@@ -0,0 +1,174 @@
+\documentclass[a4paper]{ltxdoc}
+
+\usepackage{holtxdoc}
+\usepackage{url}
+\usepackage{booktabs}
+\usepackage{listings}
+\usepackage{tikz}
+\hypersetup{%
+ plainpages=false,%
+ bookmarksnumbered,%
+ pdftitle={The quran-bn Package},%
+ pdfkeywords={quran-bn, surah, ayah, juz, hizb, ruku, manzil},%
+ pdfauthor={Seiied-Mohammad-Javad Razavian},%
+ baseurl={http://mirrors.ctan.org/macros/xetex/latex/quran-bn/doc/quran-bn-doc.pdf},%
+}
+\usepackage[all]{quran-bn}
+% because of definition of \XeTeX and \XeLaTeX symbols in bidi,
+% I should undef these macro that are also defined in holtxdoc package.
+\makeatletter
+\bidi@undef\XeTeX
+\bidi@undef\XeLaTeX
+\makeatother
+\usepackage{arabxetex}
+\newfontfamily\bengali{NotoSansBengali-Regular}
+
+\makeatletter
+\bidi@BeforeBeginEnvironment{declcs}{\vspace*{-4mm}}
+\makeatother
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\boxcs#1{\leftline{\fbox{\mcs{#1}}}}
+\def\mcs#1{\lr{\texttt{\textbackslash{}#1}}}
+\def\tt#1{\lr{\texttt{#1}}}
+\lstdefinestyle{BashInputStyle}{
+ language=bash,
+ basicstyle=\footnotesize\sffamily,
+ frame=tb,
+ columns=fullflexible,
+ backgroundcolor=\color{gray!10},
+}
+
+% Define box and box title style
+\tikzstyle{mybox} = [draw=black, fill=gray!20, very thick,
+ rectangle, rounded corners, inner sep=10pt, inner ysep=20pt]
+\tikzstyle{fancytitle} =[fill=gray, text=white]
+
+\def\mx#1#2{\mybox{#1}{#2}{.45\textwidth}}
+\def\mxf#1#2{\mybox{#1}{#2}{\textwidth}}
+
+\def\mybox#1#2#3{
+\begin{tikzpicture}
+\node [mybox] (box){%
+ \begin{minipage}[t]{#3}
+ #2
+ \end{minipage}
+};
+\node[fancytitle, anchor=west, right=10pt] at (box.north west) {\small \cs{#1}};
+\node (hole) [anchor=north east, left=5pt ] at (box.north east) { \tikz\fill[very thick,white] (0,0) circle (12pt); };
+\node[ ] at (hole.center) {\includegraphics[width=.05\textwidth]{quran.png}};
+\end{tikzpicture}%
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\title{\includegraphics[scale=.3]{quran.png}\\
+The \xpackage{quran-bn} Package\footnote{To one having devoted his life to the Holy Quran}\\
+}
+\author{Seiied Mohammad Javad Razavian\\\xemail{javadr@gmail.com}}
+
+\date{\quranbndate, Version \quranbnversion\footnote{First release: Feburary 1st, 2021}}
+
+\begin{document}
+\maketitle
+
+\tableofcontents
+%\newpage
+
+\section{Introduction}
+The \xpackage{quran} package provides several macros for
+typesetting the whole or any parts of the Holy Quran based on its popular divisions. That package also develops
+commands for some translations of the Holy Quran including German, Engilsh, French, and Persian.
+Some people asked me to include the other translations into the \xpackage{quran} package,
+but because of some technical issues I decided to create new packages for other translations.
+One of these variations is \xpackage{quran-bn} including all Bengali translations of the Holy Quran
+provided by \url{tanzil.net}, i.e. \emph{``Muhiuddin Khan'}, and \emph{``Zohurul Hoque''}.
+
+
+\section{Loading The Package}
+The package will be loaded in the ordinary way
+\cs{usepackage[option]\{quran-bn\}}.
+After loading the package, it writes some information about itself to the
+terminal and to the log file, too. The information is something like:
+
+\begin{quote}
+\begin{lstlisting}[style=BashInputStyle, language=tex, escapechar={|}]
+Package: quran-bn |\quranbndate| v|\quranbnversion|
+Bengali translations extension to the quran package.
+\end{lstlisting}
+\end{quote}
+
+
+\section{Options of The Package}\label{sec:qurantypesetting}
+There are two options by the names of \xoption{hoque}, and \xoption{khan}.
+\marginpar{\xoption{hoque}\smallskip}\marginpar{\xoption{khan}\smallskip}\marginpar{\xoption{all}\smallskip}
+If you pass any combinations of these options, you will be enabled to typeset these translations in a way
+that the \xpackage{quran} package does.
+There is also \xoption{all} option which loads all Bengali translations provided by the \xpackage{quran-bn} package.
+The package loads \xoption{khan} option by default.
+
+This package is completely built on top of the \xpackage{quran} package, therefore you can pass every options
+defined in that package to the \xpackage{quran-bn} package.
+
+\section{Differences between \xpackage{quran} and \xpackage{quran-bn}}
+At first glance, \xpackage{quran-bn} offers all functionalities of \xpackage{quran}. Therefore,
+both packages are the same in this manner except one difference. The \xpackage{quran-bn} extends the \xpackage{quran}
+by adding two other Bengali translations, namely `khan', and `hoque'. All Bengali translations
+provided by the package are shown in table~\ref{tab:bntrans}.
+
+\begin{table}[!htbp]
+\centering
+\begin{tabular}{|c|l|c|}
+ \toprule
+ order & \multicolumn{1}{c|}{translator} & option's name \\\midrule
+ 1 & Zohurul Hoque & hoque \\
+ 2 & Muhiuddin Khan & khan \\
+ \bottomrule
+\end{tabular}
+ \caption{Bengali translations used in the package and their option's names}
+ \label{tab:bntrans}
+\end{table}
+
+\subsection{How to Change the Current Bengali Translation}
+ The \xpackage{quran-bn} package uses Muhiuddin Khan's translation by default.
+ The following macro could be used to change the default Bengali translation.
+ \begin{declcs}{bnSetTrans}\marg{index}
+ \end{declcs}
+ The \meta{index} could be an integer or a name; both ``order'' and ``option's name''
+ shown in Table~\ref{tab:bntrans} are applicable. Both \cs{bnSetTrans\{2\}} and \cs{bnSetTrans\{khan\}}, for example,
+ have the same effect.
+
+\subsection{How to Get the Name of Current Bengali Translation}
+ \begin{declcs}{bnGetTrans}
+ \end{declcs}
+ The above macro returns the name of current Bengali translation, i.e. one of ``khan'', or ``hoque''.
+
+
+\subsection{How to Typeset the Bengali Translation}
+ It's completely similar to the \xpackage{quran} package.
+ All the following macros are usable.
+
+\begin{multicols}{2}
+ \begin{itemize}
+ \item \cs{quransurahbn}
+ \item \cs{quranayahbn}
+ \item \cs{quranpagebn}
+ \item \cs{quranjuzbn}
+ \item \cs{quranhizbbn}
+ \item \cs{quranquarterbn}
+ \item \cs{quranrukubn}
+ \item \cs{quranmanzilbn}
+ \item \cs{qurantextbn}
+ \end{itemize}
+\end{multicols}
+
+ \centerline{\mxf{quransurah*}
+ {\begin{arab}\small\quransurah*\end{arab}}}
+
+ \centerline{\mxf{bnSetTrans\{khan\}\textbackslash{}quransurahbn*}
+ {\bnSetTrans{khan}\bengali\quransurahbn*}}
+
+ \centerline{\mxf{bnSetTrans\{hoque\}\textbackslash{}quransurahbn*}
+ {\bnSetTrans{hoque}\bengali\quransurahbn*}}
+
+\end{document}
+