summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/xelatex/xepersian
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-10-02 23:05:31 +0000
committerKarl Berry <karl@freefriends.org>2011-10-02 23:05:31 +0000
commit7ceab6fad1b5f8b7302a3b189f44fdaac9bbc4f2 (patch)
treeaee026c39ec39febe0e9efb43c8f84850092b9c9 /Master/texmf-dist/source/xelatex/xepersian
parent943bbbbfd0cd312d527a53cd140d9f71c2b71075 (diff)
xepersian
git-svn-id: svn://tug.org/texlive/trunk@24172 c570f23f-e606-0410-a88d-b1316a301751
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}