diff options
author | Karl Berry <karl@freefriends.org> | 2011-10-02 23:05:31 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-10-02 23:05:31 +0000 |
commit | 7ceab6fad1b5f8b7302a3b189f44fdaac9bbc4f2 (patch) | |
tree | aee026c39ec39febe0e9efb43c8f84850092b9c9 /Master/texmf-dist/source/xelatex | |
parent | 943bbbbfd0cd312d527a53cd140d9f71c2b71075 (diff) |
xepersian
git-svn-id: svn://tug.org/texlive/trunk@24172 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/xelatex')
-rw-r--r-- | Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx | 132 |
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} |