این یکی از نسخههای بسته bidi است که هر دو بسته bidi و xepersian باید بصورت همزمان بروزرسانی شوند در غیراینصورت خطا خواهید گرفت. نسخه تازه بسته xepersian هنوز آماده نیست و فردا روی CTAN قرار میگیرد. بنابراین تا قرار گرفتن نسخه 25.3 بسته xepersian در تکلایو، بسته bidi خود را بروز نکنید.
من نسخه 40.3 بسته bidi را به CTAN دادهام. در این نسخه دو مشکل زیر درست شدهاند:
برای حل مشکل شماره ۳۲ گزینه banner و برای حل مشکل شماره ۳۳، گزینه PDFbanner اضافه شدهاند. هر دو این گزینه در نسخه 25.3 بسته xepersian نیز قابل دسترسی خواهند بود.
گزینه banner
اگر در نسخههای قبل بسته bidi فایل زیر را اجرا کنید
\documentclass{article}
\usepackage{bidi}
\begin{document}
Hello, world!
\end{document}
در ترمینال و فایل log چیزی مثل
****************************************************
*
* bidi package (Bidirectional typesetting in
* plain TeX and LaTeX, using XeTeX engine)
*
* Description: A convenient interface for
* typesetting bidirectional texts in plain TeX
* and LaTeX. The package includes adaptations
* for use with many other commonly-used packages.
*
* Copyright (c) 2007--2024 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub organization
*
* v40.3 (Release John Willard Milnor), 2024/12/14
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
*
* Location on CTAN: /macros/xetex/latex/bidi
*
* Issue tracker: https://github.com/xepersian/bidi/issues
*
* Discussions: https://github.com/xepersian/bidi/discussions
*
* Primary author of bidi package: Vafa Khalighi.
*
****************************************************
را میبینید. اگر به هر دلیلی علاقهای به دیدن این توضیحات ندارید میتوانید از گزینه banner استفاده کنید. این گزینه دو کلید on , off دارد که کلید on بصورت پیشفرض هنگام فراخوانی بسته bidi فعال است. بنابراین اگر علاقهای به دیدن این جزییات در ترمینال و فایل log ندارید کافی است بسته bidi را به صورت
\usepackage[%
banner=off%
]{bidi}
فراخوانی کنید.
گزینه banner و بسته xepersian
اگر بسته xepersian را بصورت
\usepackage[%
banner=off%
]{xepersian}
فراخوانی کنید، علاوه بر نداشتن جزییات بسته bidi، جزییات بسته xepersian را نیز در ترمینال و فایل log نخواهید دید. منظور از جزییات بسته xepersian چیزی مثل
****************************************************
*
* xepersian package (Persian for LaTeX, using XeTeX engine)
*
* Description: The package supports Persian
* typesetting, using fonts provided in the
* distribution.
*
* Copyright (c) 2008--2024 Vafa Khalighi
* Copyright (c) 2018--2020 bidi-tex GitHub Organization
*
* v25.3 (Release Mount Damavand), 2024/12/14
*
* License: LaTeX Project Public License, version
* 1.3c or higher (your choice)
*
* Location on CTAN: /macros/xetex/latex/xepersian
*
* Issue tracker: https://github.com/xepersian/xepersian/issues
*
* Discussions: https://github.com/xepersian/xepersian/discussions
*
* Primary author of xepersian package: Vafa Khalighi.
*
****************************************************
است.
مکان نمایش جزییات بسته bidi و بسته xepersian
در صورت فعال بودن (پیشفرض) گزینه banner اطلاعات بسته bidi بلافاصله در آغاز فایل bidi.sty و اطلاعات بسته xepersian بلافاصله در آغاز فایل xepersian.sty نمایش داده میشوند.
گزینه PDFbanner
در نسخههای قبل بسته bidi، اطلاعاتی در مورد بسته bidi و بسته xepersian (در صورت استفاده) در قسمت custom properties فایل PDF درج میشد. اگر به هر دلیلی علاقهای به درج شدن این اطلاعات در فایل PDF ندارید، میتوانید از گزینه PDFbanner استفاده کنید. این گزینه نیز دو کلید on (پیشفرض هنگام فراخوانی بسته) و off است. برای درج نشدن این اطلاعات در فایل PDF کافی است بسته bidi یا xepersian را بصورت
\usepackage[%
PDFbanner=off%
]{bidi}
or
\usepackage[%
PDFbanner=off%
]{xepersian}
فراخوانی کنید.
تغییرات داخلی بسته bidi
تمام گزینههای بسته bidi بازنویسی شدهاند. بنابراین اگر چیزی به درستی کار نمیکند لطفا آن را در گیتهاب گزارش کنید. دلیل این کار این است که همانطور که در بالا گفتم من میخواستم که
در صورت فعال بودن (پیشفرض) گزینه banner اطلاعات بسته bidi
بلافاصله در آغاز فایل bidi.sty و اطلاعات بسته xepersian بلافاصله
در آغاز فایل xepersian.sty نمایش داده شوند.
بسته bidi و xepersian گزینهها را در پایان بسته و با استفاده از بسته xkeyval تعریف میکرد. برای داشتن جزییات بستهها در آغاز بستهها، باید گزینهها در آغاز بستهها تعریف شوند و به جای استفاده از بسته xkeyval از خود امکانات لاتک ۳ که در کرنل لاتک کنونی وجود دارد، استفاده شود.