From 46a0dcf5450e9cad3f8fdcff9dd9d449b9db7325 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 9 Apr 2013 16:34:28 +0000 Subject: xepersian (9apr13) git-svn-id: svn://tug.org/texlive/trunk@29791 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/xelatex/xepersian/ChangeLog | 12 +++ Master/texmf-dist/doc/xelatex/xepersian/README | 5 +- .../texmf-dist/doc/xelatex/xepersian/xepersian.pdf | Bin 263959 -> 259930 bytes .../source/xelatex/xepersian/xepersian.dtx | 120 ++++++++++++++++++--- .../source/xelatex/xepersian/xepersian.ins | 1 + .../tex/xelatex/xepersian/glossaries-xepersian.def | 100 +++++++++++++++++ .../tex/xelatex/xepersian/hyperref-xepersian.def | 7 +- .../xelatex/xepersian/xepersian-mathsdigitspec.sty | 4 +- .../texmf-dist/tex/xelatex/xepersian/xepersian.sty | 5 +- 9 files changed, 232 insertions(+), 22 deletions(-) create mode 100644 Master/texmf-dist/tex/xelatex/xepersian/glossaries-xepersian.def (limited to 'Master') diff --git a/Master/texmf-dist/doc/xelatex/xepersian/ChangeLog b/Master/texmf-dist/doc/xelatex/xepersian/ChangeLog index 0c35e126cc2..00b84ce55db 100644 --- a/Master/texmf-dist/doc/xelatex/xepersian/ChangeLog +++ b/Master/texmf-dist/doc/xelatex/xepersian/ChangeLog @@ -1,3 +1,15 @@ +2013/04/16 version 12.3 Persian TeX Group + * Version 12.3 released. + * Disabled `\XePersian' in pdfstring when `hyperref' package is used. + +2013/04/08 version 12.2 Persian TeX Group + * Version 12.2 released. + * Definitions of `\Umathcode' and `\Umathchardef' removed from + `xepersian-mathsdigitspec.sty'. + * `harfi', `adadi', and `tartibi' counters are now protected when `glossaries' + package is used. + * Disabled `\lr' and `\rl' in pdfstring when `hyperref' package is used. + 2013/04/01 version 12.1 Persian TeX Group * Version 12.1 released. * `\prg_stepwise_inline:nnnn' in `xepersian-mathsdigitspec.sty' is changed to diff --git a/Master/texmf-dist/doc/xelatex/xepersian/README b/Master/texmf-dist/doc/xelatex/xepersian/README index 6b1104c71d9..ba2ad13e920 100644 --- a/Master/texmf-dist/doc/xelatex/xepersian/README +++ b/Master/texmf-dist/doc/xelatex/xepersian/README @@ -1,6 +1,6 @@ ____________________ The XePersian package -v12.1 +v12.3 XePersian is a package written for XeLaTeX that allows users to typeset Persian easily. @@ -20,8 +20,7 @@ In doing so, please always explain your issue well enough, always include a minimal working examples showing the issue, and always choose the appropriate label for your query (i.e. if you are reporting any bugs, choose `bug' label). -Current version release date: 2013/04/04 -Expected next version release date: 2013/05/20 +Current version release date: 2013/04/16 ______________ Persian TeX Group persian-tex@tug.org diff --git a/Master/texmf-dist/doc/xelatex/xepersian/xepersian.pdf b/Master/texmf-dist/doc/xelatex/xepersian/xepersian.pdf index dc0ee7b3057..d7b066d7806 100644 Binary files a/Master/texmf-dist/doc/xelatex/xepersian/xepersian.pdf and b/Master/texmf-dist/doc/xelatex/xepersian/xepersian.pdf differ diff --git a/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx b/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx index 6784d425283..afc24f14386 100755 --- a/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx +++ b/Master/texmf-dist/source/xelatex/xepersian/xepersian.dtx @@ -5,7 +5,7 @@ %<*readme> ____________________ The XePersian package -v12.1 +v12.3 XePersian is a package written for XeLaTeX that allows users to typeset Persian easily. @@ -27,8 +27,7 @@ In doing so, please always explain your issue well enough, always include a minimal working examples showing the issue, and always choose the appropriate label for your query (i.e. if you are reporting any bugs, choose `bug' label). -Current version release date: 2013/04/04 -Expected next version release date: 2013/05/20 +Current version release date: 2013/04/16 ______________ Persian TeX Group persian-tex@tug.org @@ -43,6 +42,18 @@ This work is “maintained” (as per LPPL maintenance status) by Persian TeX Group. % %<*changelog> +2013/04/16 version 12.3 Persian TeX Group + * Version 12.3 released. + * Disabled `\XePersian' in pdfstring when `hyperref' package is used. + +2013/04/08 version 12.2 Persian TeX Group + * Version 12.2 released. + * Definitions of `\Umathcode' and `\Umathchardef' removed from + `xepersian-mathsdigitspec.sty'. + * `harfi', `adadi', and `tartibi' counters are now protected when `glossaries' + package is used. + * Disabled `\lr' and `\rl' in pdfstring when `hyperref' package is used. + 2013/04/01 version 12.1 Persian TeX Group * Version 12.1 released. * `\prg_stepwise_inline:nnnn' in `xepersian-mathsdigitspec.sty' is changed to @@ -123,6 +134,7 @@ by Persian TeX Group. \generate{\file{flowfram-xepersian.def}{\from{\jobname.dtx}{flowfram-xepersian.def}}} \generate{\file{footnote-bidi-xepersian.def}{\from{\jobname.dtx}{footnote-bidi-xepersian.def}}} \generate{\file{framed-bidi-xepersian.def}{\from{\jobname.dtx}{framed-bidi-xepersian.def}}} +\generate{\file{glossaries-xepersian.def}{\from{\jobname.dtx}{glossaries-xepersian.def}}} \generate{\file{hyperref-xepersian.def}{\from{\jobname.dtx}{hyperref-xepersian.def}}} \generate{\file{imsproc-xepersian.def}{\from{\jobname.dtx}{imsproc-xepersian.def}}} \generate{\file{kashida-xepersian.def}{\from{\jobname.dtx}{kashida-xepersian.def}}} @@ -173,7 +185,7 @@ by Persian TeX Group. % % %<*driver> -\documentclass{ltxdoc} +\documentclass{artikel3} \usepackage{supertabular} \usepackage{fontspec} \usepackage{calc} @@ -238,7 +250,7 @@ by Persian TeX Group. % Persian for \LaTeXe{} over \XeTeX} % \author{Persian TeX Group\\ % \url{persian-tex@tug.org}} -% \date{\today\qquad Version 12.1} +% \date{\today\qquad Version 12.3} %\maketitle %\tableofcontents %\section{Introduction} @@ -247,7 +259,7 @@ by Persian TeX Group. %\begin{itemize} %\item The \textsf{\XePersian} package only works with \XeTeX\ engine. %\item Before reading this documentation, you should have read the documentation of the \textsf{bidi} package. The \textsf{\XePersian} package automatically loads \textsf{bidi} package with \texttt{RTLdocument} option enabled and hence any commands that \textsf{bidi} package offers, is also available in \textsf{\XePersian} package. Here, in this documentation, we will not repeat any of \textsf{bidi} package's commands. -%\item In previous versions (\(\leq1.0.3\)) of \XePersian, a thesis class provided for typesetting thesis. As of version 1.0.4, I no longer provide this class because I am not familiar with specification of a thesis in Iran and even if I was, the specifications are different from University to University. \XePersian\ is a general package like \LaTeX\ and should not provide any class for typesetting thesis. So if you really want to have a class file for typesetting thesis, then you should ask your University/department to write one for you. +%\item In previous versions (\(\leq1.0.3\)) of \XePersian, a thesis class provided for typesetting thesis. As of version 1.0.4, we no longer provide this class because we are not familiar with specification of a thesis in Iran and even if we were, the specifications are different from University to University. \XePersian\ is a general package like \LaTeX\ and should not provide any class for typesetting thesis. So if you really want to have a class file for typesetting thesis, then you should ask your University/department to write one for you. % %\end{itemize} %\subsection{\textsf{\XePersian} Info On The Terminal and In The Log File} @@ -257,7 +269,7 @@ by Persian TeX Group. %Description: The package supports Persian %typesetting, using fonts provided in the distribution. %Copyright © 2008-2013 Persian TeX Group -%v12.1, 2013/04/04 +%v12.3, 2013/04/16 %License: LaTeX Project Public License, version 1.3c or higher (your choice) %Location on CTAN: /macros/xetex/latex/xepersian %\end{lstlisting} @@ -4056,11 +4068,89 @@ by Persian TeX Group. % \end{macrocode} % \iffalse % +%<*glossaries-xepersian.def> +%\fi +% \subsection{\textsf{glossaries-xepersian.def}} +% \begin{macrocode} +\ProvidesFile{glossaries-xepersian.def}[2013/04/08 v0.1 xepersian adaptations for glossaries package for XeTeX engine] +\newcommand*{\gls@harfipage}{\@harfi\c@page} +\newcommand*{\gls@tartibipage}{\@tartibi\c@page} +\newcommand*{\gls@adadipage}{\@adadi\c@page} +\renewcommand{\gls@protected@pagefmts}{% + \gls@numberpage,\gls@alphpage,\gls@Alphpage,\gls@romanpage,\gls@harfipage,\gls@tartibipage,\gls@adadipage +} +\renewcommand*{\@@do@wrglossary}[1]{% + \begingroup + \let\orgnumber\number + \let\orgromannumeral\romannumeral + \let\orgalph\@alph + \let\orgAlph\@Alph + \let\orgharfi\@harfi + \let\orgadadi\@adadi + \let\orgtartibi\@tartibi + \def\the##1{% + \ifx##1\c@page \gls@numberpage\else\orgnumber##1\fi}% + \def\number##1{% + \ifx##1\c@page \gls@numberpage\else\orgnumber##1\fi}% + \def\romannumeral##1{% + \ifx##1\c@page \gls@romanpage\else\orgnumber##1\fi}% + \def\@alph##1{% + \ifx##1\c@page \gls@alphpage\else\orgnumber##1\fi}% + \def\@Alph##1{% + \ifx##1\c@page \gls@Alphpage\else\orgnumber##1\fi}% + \def\@harfi##1{% + \ifx##1\c@page \gls@harfipage\else\orgnumber##1\fi}% + \def\@adadi##1{% + \ifx##1\c@page \gls@adadipage\else\orgnumber##1\fi}% + \def\@tartibi##1{% + \ifx##1\c@page \gls@tartibipage\else\orgnumber##1\fi}% + \gls@disablepagerefexpansion + \protected@xdef\@glslocref{\theglsentrycounter}% + \endgroup + \@gls@checkmkidxchars\@glslocref + \expandafter\ifx\theHglsentrycounter\theglsentrycounter + \def\@glo@counterprefix{}% + \else + \protected@edef\@glsHlocref{\theHglsentrycounter}% + \@gls@checkmkidxchars\@glsHlocref + \edef\@do@gls@getcounterprefix{\noexpand\@gls@getcounterprefix + {\@glslocref}{\@glsHlocref}% + }% + \@do@gls@getcounterprefix + \fi + \ifglsxindy + \expandafter\@glo@check@mkidxrangechar\@glsnumberformat\@nil + \def\@glo@range{}% + \expandafter\if\@glo@prefix(\relax + \def\@glo@range{:open-range}% + \else + \expandafter\if\@glo@prefix)\relax + \def\@glo@range{:close-range}% + \fi + \fi + \glossary[\csname glo@#1@type\endcsname]{% + (indexentry :tkey (\csname glo@#1@index\endcsname) + :locref \string"{\@glo@counterprefix}{\@glslocref}\string" % + :attr \string"\@gls@counter\@glo@suffix\string" + \@glo@range + ) + }% + \else + \@set@glo@numformat{\@glo@numfmt}{\@gls@counter}{\@glsnumberformat}% + {\@glo@counterprefix}% + \glossary[\csname glo@#1@type\endcsname]{% + \string\glossaryentry{\csname glo@#1@index\endcsname + \@gls@encapchar\@glo@numfmt}{\@glslocref}}% + \fi +} +% \end{macrocode} +% \iffalse +% %<*hyperref-xepersian.def> %\fi % \subsection{\textsf{hyperref-xepersian.def}} % \begin{macrocode} -\ProvidesFile{hyperref-xepersian.def}[2010/07/25 v0.3 bilingual captions for hyperref package] +\ProvidesFile{hyperref-xepersian.def}[2013/04/16 v0.5 bilingual captions for hyperref package] \def\equationautorefname{\if@RTL معادله\else Equation\fi}% \def\footnoteautorefname{\if@RTL زیرنویس\else footnote\fi}% \def\itemautorefname{\if@RTL فقره\else item\fi}% @@ -4087,6 +4177,11 @@ by Persian TeX Group. \HyOrg@appendix } } +\pdfstringdefDisableCommands{% +\let\lr\@firstofone +\let\rl\@firstofone +\def\XePersian{XePersian} +} % \end{macrocode} % \iffalse % @@ -5486,8 +5581,8 @@ U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET % \subsection{\textsf{xepersian.sty}} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\def\xepersianversion{v12.1} -\def\xepersiandate{2013/04/04} +\def\xepersianversion{v12.3} +\def\xepersiandate{2013/04/16} \ProvidesPackage{xepersian}[\xepersiandate\space \xepersianversion\space Persian typesetting in XeLaTeX] \RequirePackage{fontspec} @@ -6031,6 +6126,7 @@ number is 999,999,999.}% \@ifpackageloaded{enumerate}{\input{enumerate-xepersian.def}}{} \@ifpackageloaded{empheq}{\input{empheq-xepersian.def}}{} \@ifpackageloaded{framed}{\input{framed-bidi-xepersian.def}}{} +\@ifpackageloaded{glossaries}{\input{glossaries-xepersian.def}}{} \@ifpackageloaded{hyperref}{\input{hyperref-xepersian.def}}{} \@ifpackageloaded{minitoc}{\input{minitoc-xepersian.def}}{} \@ifpackageloaded{natbib}{\input{natbib-xepersian.def}}{} @@ -6962,9 +7058,7 @@ indexblock environment may only appear inside frontpage environment. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{xepersian-mathsdigitspec} - [2013/04/04 v1.0.3 Unicode Persian maths digits in XeLaTeX] -\@ifundefined{Umathcode}{\let\Umathcode\XeTeXmathcode}{} -\@ifundefined{Umathchardef}{\let\Umathchardef\XeTeXmathchardef}{} + [2013/04/08 v1.0.4 Unicode Persian maths digits in XeLaTeX] \def\new@mathgroup{\alloc@8\mathgroup\chardef\@cclvi} \let\newfam\new@mathgroup \def\select@group#1#2#3#4{% diff --git a/Master/texmf-dist/source/xelatex/xepersian/xepersian.ins b/Master/texmf-dist/source/xelatex/xepersian/xepersian.ins index b1674a8d694..88820b08975 100644 --- a/Master/texmf-dist/source/xelatex/xepersian/xepersian.ins +++ b/Master/texmf-dist/source/xelatex/xepersian/xepersian.ins @@ -69,6 +69,7 @@ by Persian TeX Group. \generate{\file{flowfram-xepersian.def}{\from{\jobname.dtx}{flowfram-xepersian.def}}} \generate{\file{footnote-bidi-xepersian.def}{\from{\jobname.dtx}{footnote-bidi-xepersian.def}}} \generate{\file{framed-bidi-xepersian.def}{\from{\jobname.dtx}{framed-bidi-xepersian.def}}} +\generate{\file{glossaries-xepersian.def}{\from{\jobname.dtx}{glossaries-xepersian.def}}} \generate{\file{hyperref-xepersian.def}{\from{\jobname.dtx}{hyperref-xepersian.def}}} \generate{\file{imsproc-xepersian.def}{\from{\jobname.dtx}{imsproc-xepersian.def}}} \generate{\file{kashida-xepersian.def}{\from{\jobname.dtx}{kashida-xepersian.def}}} diff --git a/Master/texmf-dist/tex/xelatex/xepersian/glossaries-xepersian.def b/Master/texmf-dist/tex/xelatex/xepersian/glossaries-xepersian.def new file mode 100644 index 00000000000..af83f3337dc --- /dev/null +++ b/Master/texmf-dist/tex/xelatex/xepersian/glossaries-xepersian.def @@ -0,0 +1,100 @@ +%% +%% This is file `glossaries-xepersian.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% xepersian.dtx (with options: `glossaries-xepersian.def') +%% +%% ______________________________________ +%% Copyright © 2008–2013 Persian TeX Group +%% +%% License information appended. +%% +%% + +\ProvidesFile{glossaries-xepersian.def}[2013/04/08 v0.1 xepersian adaptations for glossaries package for XeTeX engine] +\newcommand*{\gls@harfipage}{\@harfi\c@page} +\newcommand*{\gls@tartibipage}{\@tartibi\c@page} +\newcommand*{\gls@adadipage}{\@adadi\c@page} +\renewcommand{\gls@protected@pagefmts}{% + \gls@numberpage,\gls@alphpage,\gls@Alphpage,\gls@romanpage,\gls@harfipage,\gls@tartibipage,\gls@adadipage +} +\renewcommand*{\@@do@wrglossary}[1]{% + \begingroup + \let\orgnumber\number + \let\orgromannumeral\romannumeral + \let\orgalph\@alph + \let\orgAlph\@Alph + \let\orgharfi\@harfi + \let\orgadadi\@adadi + \let\orgtartibi\@tartibi + \def\the##1{% + \ifx##1\c@page \gls@numberpage\else\orgnumber##1\fi}% + \def\number##1{% + \ifx##1\c@page \gls@numberpage\else\orgnumber##1\fi}% + \def\romannumeral##1{% + \ifx##1\c@page \gls@romanpage\else\orgnumber##1\fi}% + \def\@alph##1{% + \ifx##1\c@page \gls@alphpage\else\orgnumber##1\fi}% + \def\@Alph##1{% + \ifx##1\c@page \gls@Alphpage\else\orgnumber##1\fi}% + \def\@harfi##1{% + \ifx##1\c@page \gls@harfipage\else\orgnumber##1\fi}% + \def\@adadi##1{% + \ifx##1\c@page \gls@adadipage\else\orgnumber##1\fi}% + \def\@tartibi##1{% + \ifx##1\c@page \gls@tartibipage\else\orgnumber##1\fi}% + \gls@disablepagerefexpansion + \protected@xdef\@glslocref{\theglsentrycounter}% + \endgroup + \@gls@checkmkidxchars\@glslocref + \expandafter\ifx\theHglsentrycounter\theglsentrycounter + \def\@glo@counterprefix{}% + \else + \protected@edef\@glsHlocref{\theHglsentrycounter}% + \@gls@checkmkidxchars\@glsHlocref + \edef\@do@gls@getcounterprefix{\noexpand\@gls@getcounterprefix + {\@glslocref}{\@glsHlocref}% + }% + \@do@gls@getcounterprefix + \fi + \ifglsxindy + \expandafter\@glo@check@mkidxrangechar\@glsnumberformat\@nil + \def\@glo@range{}% + \expandafter\if\@glo@prefix(\relax + \def\@glo@range{:open-range}% + \else + \expandafter\if\@glo@prefix)\relax + \def\@glo@range{:close-range}% + \fi + \fi + \glossary[\csname glo@#1@type\endcsname]{% + (indexentry :tkey (\csname glo@#1@index\endcsname) + :locref \string"{\@glo@counterprefix}{\@glslocref}\string" % + :attr \string"\@gls@counter\@glo@suffix\string" + \@glo@range + ) + }% + \else + \@set@glo@numformat{\@glo@numfmt}{\@gls@counter}{\@glsnumberformat}% + {\@glo@counterprefix}% + \glossary[\csname glo@#1@type\endcsname]{% + \string\glossaryentry{\csname glo@#1@index\endcsname + \@gls@encapchar\@glo@numfmt}{\@glslocref}}% + \fi +} +%% +%% Copyright © 2008–2013 Persian TeX Group +%% +%% It may be distributed and/or modified under the LaTeX Project Public License, +%% version 1.3c or higher (your choice). The latest version of +%% this license is at: http://www.latex-project.org/lppl.txt +%% +%% This work is “maintained” (as per LPPL maintenance status) +%% by Persian TeX Group. +%% +%% +%% +%% +%% End of file `glossaries-xepersian.def'. diff --git a/Master/texmf-dist/tex/xelatex/xepersian/hyperref-xepersian.def b/Master/texmf-dist/tex/xelatex/xepersian/hyperref-xepersian.def index 0797b71c31b..4e64ad589e5 100644 --- a/Master/texmf-dist/tex/xelatex/xepersian/hyperref-xepersian.def +++ b/Master/texmf-dist/tex/xelatex/xepersian/hyperref-xepersian.def @@ -13,7 +13,7 @@ %% %% -\ProvidesFile{hyperref-xepersian.def}[2010/07/25 v0.3 bilingual captions for hyperref package] +\ProvidesFile{hyperref-xepersian.def}[2013/04/16 v0.5 bilingual captions for hyperref package] \def\equationautorefname{\if@RTL معادله\else Equation\fi}% \def\footnoteautorefname{\if@RTL زیرنویس\else footnote\fi}% \def\itemautorefname{\if@RTL فقره\else item\fi}% @@ -40,6 +40,11 @@ \HyOrg@appendix } } +\pdfstringdefDisableCommands{% +\let\lr\@firstofone +\let\rl\@firstofone +\def\XePersian{XePersian} +} %% %% Copyright © 2008–2013 Persian TeX Group %% diff --git a/Master/texmf-dist/tex/xelatex/xepersian/xepersian-mathsdigitspec.sty b/Master/texmf-dist/tex/xelatex/xepersian/xepersian-mathsdigitspec.sty index 60b17855f84..754c86d8286 100644 --- a/Master/texmf-dist/tex/xelatex/xepersian/xepersian-mathsdigitspec.sty +++ b/Master/texmf-dist/tex/xelatex/xepersian/xepersian-mathsdigitspec.sty @@ -15,9 +15,7 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{xepersian-mathsdigitspec} - [2013/04/04 v1.0.3 Unicode Persian maths digits in XeLaTeX] -\@ifundefined{Umathcode}{\let\Umathcode\XeTeXmathcode}{} -\@ifundefined{Umathchardef}{\let\Umathchardef\XeTeXmathchardef}{} + [2013/04/08 v1.0.4 Unicode Persian maths digits in XeLaTeX] \def\new@mathgroup{\alloc@8\mathgroup\chardef\@cclvi} \let\newfam\new@mathgroup \def\select@group#1#2#3#4{% diff --git a/Master/texmf-dist/tex/xelatex/xepersian/xepersian.sty b/Master/texmf-dist/tex/xelatex/xepersian/xepersian.sty index e8e0683f27c..33969b37414 100644 --- a/Master/texmf-dist/tex/xelatex/xepersian/xepersian.sty +++ b/Master/texmf-dist/tex/xelatex/xepersian/xepersian.sty @@ -14,8 +14,8 @@ %% \NeedsTeXFormat{LaTeX2e} -\def\xepersianversion{v12.1} -\def\xepersiandate{2013/04/04} +\def\xepersianversion{v12.3} +\def\xepersiandate{2013/04/16} \ProvidesPackage{xepersian}[\xepersiandate\space \xepersianversion\space Persian typesetting in XeLaTeX] \RequirePackage{fontspec} @@ -559,6 +559,7 @@ number is 999,999,999.}% \@ifpackageloaded{enumerate}{\input{enumerate-xepersian.def}}{} \@ifpackageloaded{empheq}{\input{empheq-xepersian.def}}{} \@ifpackageloaded{framed}{\input{framed-bidi-xepersian.def}}{} +\@ifpackageloaded{glossaries}{\input{glossaries-xepersian.def}}{} \@ifpackageloaded{hyperref}{\input{hyperref-xepersian.def}}{} \@ifpackageloaded{minitoc}{\input{minitoc-xepersian.def}}{} \@ifpackageloaded{natbib}{\input{natbib-xepersian.def}}{} -- cgit v1.2.3