summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/xelatex/xepersian
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/xelatex/xepersian')
-rw-r--r--Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx132
1 files changed, 122 insertions, 10 deletions
diff --git a/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx b/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx
index 05c7dc5e3ff..5fe0bc0fff3 100644
--- a/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx
+++ b/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx
@@ -5,10 +5,10 @@
%<*readme>
_________________
The XePersian package
-v1.2.3
+v1.2.4
XePersian is a package written for XeLaTeX that allows users to typeset
-Persian easily. The current version is 1.2.3 and it will be developed to
+Persian easily. The current version is 1.2.4 and it will be developed to
meet the needs of Persian typesetting properly.
The XePersian package is independent of any operating system, meaning it
@@ -207,7 +207,7 @@ by VAFA KHALIGHI.
% Persian for \LaTeXe{} over \XeTeX}
% \author{VAFA KHALIGHI\\
% \url{vafaklg@gmail.com}}
-% \date{\today\qquad Version 1.2.3}
+% \date{\today\qquad Version 1.2.4}
%\maketitle
%\tableofcontents
%\section{Introduction}
@@ -227,7 +227,7 @@ by VAFA KHALIGHI.
%Description: The package supports Persian
%typesetting, using fonts provided in the distribution.
%Copyright © 2008-2011 VAFA KHALIGHI
-%v1.2.3, 2011/10/01
+%v1.2.4, 2011/12/01
%License: LaTeX Project Public License, version 1.3c or higher (your choice)
%Location on CTAN: /macros/xetex/latex/xepersian
%\end{lstlisting}
@@ -3584,7 +3584,6 @@ by VAFA KHALIGHI.
\eqenvironment{ریاضی}{math}
\eqenvironment{ماتریس}{matrix}
\eqenvironment{صفحه‌کوچک}{minipage}
-\eqenvironment{چندستونی‌ها}{multicols}
\eqenvironment{چندخطی}{multline}
\eqenvironment{یادداشت}{note}
\eqenvironment{انباشتن}{overlay}
@@ -3604,8 +3603,6 @@ by VAFA KHALIGHI.
\eqenvironment{محتوای‌نمایه}{theindex}
\eqenvironment{صفحه‌عنوان}{titlepage}
\eqenvironment{لیست‌بدوی}{trivlist}
-\eqenvironment{همانطورکه‌هست}{verbatim}
-\eqenvironment{همانطورکه‌هست*}{verbatim*}
\eqenvironment{شعر}{verse}
% \end{macrocode}
% \iffalse
@@ -4619,7 +4616,7 @@ by VAFA KHALIGHI.
\makezwnjletter
\newcommand*{\eqcommand}[2]{%
\expandafter\@ifdefinable \csname#1\endcsname{%
-\expandafter\let\csname#1\expandafter\endcsname\csname#2\endcsname}}
+\expandafter\def\csname#1\expandafter\endcsname{\csname#2\endcsname}}}
\newcommand*{\eqenvironment}[2]{\newenvironment{#1}{\csname#2\endcsname}{\csname end#2\endcsname}}
\input{commands-ltx.def}
\input{commands-xepersian.def}
@@ -5001,6 +4998,17 @@ by VAFA KHALIGHI.
\@floatboxreset \@setnobreak
\ignorespaces}
}{}
+\begingroup \catcode `|=0 \catcode `[= 1
+\catcode`]=2 \catcode `\{=12 \catcode `\}=12
+\catcode`\\=12 |gdef|@x@xepersian@localize@verbatim#1\پایان{همانطورکه‌هست}[#1|پایان[همانطورکه‌هست]]
+|gdef|@sx@xepersian@localize@verbatim#1\پایان{همانطورکه‌هست*}[#1|پایان[همانطورکه‌هست*]]
+|endgroup
+\def\همانطورکه‌هست{\@verbatim \frenchspacing\@vobeyspaces \@x@xepersian@localize@verbatim}
+\def\endهمانطورکه‌هست{\if@newlist \leavevmode\fi\endtrivlist}
+\ExplSyntaxOn
+\AtBeginDocument{\@namedef{همانطورکه‌هست*}{\@verbatim \fontspec_print_visible_spaces: \@sx@xepersian@localize@verbatim}}
+\ExplSyntaxOff
+\expandafter\let\csname endهمانطورکه‌هست*\endcsname =\endهمانطورکه‌هست
% \end{macrocode}
% \iffalse
%</misc-localise-xepersian.def>
@@ -5324,6 +5332,110 @@ by VAFA KHALIGHI.
% \begin{macrocode}
\آماده‌سازی‌پرونده{packages-localise-xepersian.def}[2011/03/01 v0.1 localising LaTeX2e Packages]
\@گرسبک‌فراخوانی‌شده{color}{\ورودی{color-localise.def}}{}
+\@ifpackageloaded{multicol}{%
+\newenvironment{چندستونی‌ها}{\begin{multicols}}{\end{multicols}}%
+\newenvironment{چندستونی‌ها*}{\begin{multicols*}}{\end{multicols*}}%
+}{}
+\@ifpackageloaded{verbatim}{%
+\begingroup
+ \vrb@catcodes
+ \lccode`\!=`\\ \lccode`\[=`\{ \lccode`\]=`\}
+ \catcode`\~=\active \lccode`\~=`\^^M
+ \lccode`\C=`\C
+ \lowercase{\endgroup
+ \def\xepersian@localize@verbatim@start#1{%
+ \verbatim@startline
+ \if\noexpand#1\noexpand~%
+ \let\next\xepersian@localize@verbatim@
+ \else \def\next{\xepersian@localize@verbatim@#1}\fi
+ \next}%
+ \def\xepersian@localize@verbatim@#1~{\xepersian@localize@verbatim@@#1!پایان\@nil}%
+ \def\xepersian@localize@verbatim@@#1!پایان{%
+ \verbatim@addtoline{#1}%
+ \futurelet\next\xepersian@localize@verbatim@@@}%
+ \def\xepersian@localize@verbatim@@@#1\@nil{%
+ \ifx\next\@nil
+ \verbatim@processline
+ \verbatim@startline
+ \let\next\xepersian@localize@verbatim@
+ \else
+ \def\@tempa##1!پایان\@nil{##1}%
+ \@temptokena{!پایان}%
+ \def\next{\expandafter\verbatim@test\@tempa#1\@nil~}%
+ \fi \next}%
+ \def\verbatim@test#1{%
+ \let\next\verbatim@test
+ \if\noexpand#1\noexpand~%
+ \expandafter\verbatim@addtoline
+ \expandafter{\the\@temptokena}%
+ \verbatim@processline
+ \verbatim@startline
+ \let\next\xepersian@localize@verbatim@
+ \else \if\noexpand#1
+ \@temptokena\expandafter{\the\@temptokena#1}%
+ \else \if\noexpand#1\noexpand[%
+ \let\@tempc\@empty
+ \let\next\verbatim@testend
+ \else
+ \expandafter\verbatim@addtoline
+ \expandafter{\the\@temptokena}%
+ \def\next{\xepersian@localize@verbatim@#1}%
+ \fi\fi\fi
+ \next}%
+ \def\verbatim@testend#1{%
+ \if\noexpand#1\noexpand~%
+ \expandafter\verbatim@addtoline
+ \expandafter{\the\@temptokena[}%
+ \expandafter\verbatim@addtoline
+ \expandafter{\@tempc}%
+ \verbatim@processline
+ \verbatim@startline
+ \let\next\xepersian@localize@verbatim@
+ \else\if\noexpand#1\noexpand]%
+ \let\next\verbatim@@testend
+ \else\if\noexpand#1\noexpand!%
+ \expandafter\verbatim@addtoline
+ \expandafter{\the\@temptokena[}%
+ \expandafter\verbatim@addtoline
+ \expandafter{\@tempc}%
+ \def\next{\xepersian@localize@verbatim@!}%
+ \else \expandafter\def\expandafter\@tempc\expandafter
+ {\@tempc#1}\fi\fi\fi
+ \next}%
+ \def\verbatim@@testend{%
+ \ifx\@tempc\@currenvir
+ \verbatim@finish
+ \edef\next{\noexpand\end{\@currenvir}%
+ \noexpand\verbatim@rescan{\@currenvir}}%
+ \else
+ \expandafter\verbatim@addtoline
+ \expandafter{\the\@temptokena[}%
+ \expandafter\verbatim@addtoline
+ \expandafter{\@tempc]}%
+ \let\next\xepersian@localize@verbatim@
+ \fi
+ \next}%
+ \def\verbatim@rescan#1#2~{\if\noexpand~\noexpand#2~\else
+ \@warning{Characters dropped after `\string\end{#1}'}\fi}}%
+\def\همانطورکه‌هست{\begingroup\@verbatim \frenchspacing\@vobeyspaces
+ \xepersian@localize@verbatim@start}
+\@namedef{همانطورکه‌هست*}{\begingroup\@verbatim\xepersian@localize@verbatim@start}
+\def\endهمانطورکه‌هست{\endtrivlist\endgroup\@doendpe}
+\expandafter\let\csname endهمانطورکه‌هست*\endcsname =\endهمانطورکه‌هست
+}{}
+\ExplSyntaxOn
+\AtBeginDocument{
+ \xepersian_localize_patch_verbatim:
+}
+\cs_set:Npn \xepersian_localize_patch_verbatim: {
+ \@ifpackageloaded{verbatim}{
+ \cs_set:cpn {همانطورکه‌هست*} {
+ \group_begin: \@verbatim \fontspec_print_visible_spaces: \xepersian@localize@verbatim@start
+ }
+ }{
+ }
+}
+\ExplSyntaxOff
% \end{macrocode}
% \iffalse
%</packages-localise-xepersian.def>
@@ -5574,8 +5686,8 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
% \subsection{\textsf{xepersian.sty}}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\def\xepersianversion{v1.2.3}
-\def\xepersiandate{2011/10/01}
+\def\xepersianversion{v1.2.4}
+\def\xepersiandate{2011/12/01}
\ProvidesPackage{xepersian}[\xepersiandate\space \xepersianversion\space
Persian typesetting in XeLaTeX]
\RequirePackage{fontspec}