.\" Automatically generated by Pandoc 3.1.11.1 .\" .TH "edtx2dtx" "1" "November 23, 2024" "edtx2dtx 0.2.0" "User Manual" .SH "نام (NAME)" edtx2dtx \- تبدیل فایلهای .edtx به .dtx .SH "خلاصه دستور (SYNOPSIS)" \f[B]edtx2dtx\f[R] \f[I]filename.edtx\f[R] > \f[I]filename.dtx\f[R] .SH "توضیحات (DESCRIPTION)" این ابزار قطعه‌های کد را در یک جفت \f[CR]\[rs]begin{macrocode}\f[R] و \f[CR]\[rs]end{macrocode}\f[R] (کامنت‌شده و با دندانه‌گذاری مناسب) محصور می‌کند. یک قطعه کد، هر توالی از خطوط است که با یک نویسه کامنت منفرد (احتمالاً دندانه‌دار) (\f[CR]%\f[R]) آغاز نشده باشد؛ به این معنی که هم خطوط غیرکامنت و هم خطوطی که با چندین نویسه کامنت شروع می‌شوند به عنوان کد به حساب می‌آیند، و خطوط مستندات نیز ممکن است دارای دندانه‌گذاری باشند. .PP بخشی از فایل که باید پردازش شود باید توسط یک جفت \f[CR]\[rs]begin{macrocode}\f[R] و \f[CR]\[rs]end{macrocode}\f[R] مشخص گردد. به عبارت دیگر، هر چیزی قبل از \f[CR]\[rs]begin{macrocode}\f[R] به عنوان سرایند در نظر گرفته شده و تغییر نمی‌کند، و هر چیزی بعد از \f[CR]\[rs]end{macrocode}\f[R] به عنوان پسایند در نظر گرفته شده و تغییر داده نمی‌شود. در واقع، هر تعدادی از جفت‌های \f[CR]\[rs]begin{macrocode}\f[R] \[em] \f[CR]\[rs]end{macrocode}\f[R] مجاز است. (این سامانه اجازه می‌دهد گرداننده (driver) همان‌طور که هست باقی بماند، و همچنین چسباندن یک فایل \f[CR].dtx\f[R] را درون یک فایل \f[CR].edtx\f[R] آسان می‌کند، زیرا اجرای این ابزار بر روی یک \f[CR].dtx\f[R] فایل را تغییر نمی‌دهد.) .PP علاوه بر این، این ابزار نخستین رخداد \f[CR].edtx\f[R] در سرایند را، که به دنبال آن یک یادداشت اختیاری درون پرانتز آمده است، با \f[CR].dtx\f[R] به همراه یادداشتی در مورد نحوه تولید فایل جایگزین می‌کند. .SH "گزینه‌ها (OPTIONS)" .TP \f[B]\-c, \-\-comment\f[R] نویسه کامنت ورودی؛ مقدار پیش‌فرض \f[CR]%\f[R] است. (هر نویسه کامنت ورودی در سرایند و پسایند با نویسه کامنت خروجی جایگزین خواهد شد، که همواره \f[CR]%\f[R] است.) .PP \f[B]\-b, \-\-begin\-macrocode\f[R] \f[I]regex\f[R] .PD 0 .P .PD .TP \f[B]\-e, \-\-end\-macrocode\f[R] \f[I]regex\f[R] از این گزینه‌ها برای تغییر نشانگرهای \f[I]ورودی\f[R] پیش‌فرض \f[CR]\[rs]begin{macrocode}\f[R] و \f[CR]\[rs]end{macrocode}\f[R] استفاده کنید. (نشانگرهای \f[I]خروجی\f[R] همواره \f[CR]\[rs]begin{macrocode}\f[R] و \f[CR]\[rs]end{macrocode}\f[R] هستند.) نشانگرها باید به عنوان عبارات باقاعده‌ای که کل خط را مطابقت می‌دهند مشخص شوند. نشانگرهای ورودی در فایل باقی نمی‌مانند، یعنی با نشانگرهای خروجی جایگزین می‌شوند. .PP \f[B]\-B, \-\-Begin\-macrocode\f[R] \f[I]regex\f[R] .PD 0 .P .PD .TP \f[B]\-E, \-\-End\-macrocode\f[R] \f[I]regex\f[R] مانند \f[CR]\-b\f[R] و \f[CR]\-e\f[R]، اما نشانگرهای ورودی در خروجی نگه داشته می‌شوند. .TP \f[B]\-s, \-\-strip\-empty\f[R] اگر این گزینه مشخص شود، خطوط خالی در خروجی گنجانده نمی‌شوند. .TP \f[B]\-h, \-\-help\f[R] نمایش راهنما و خروج. .TP \f[B]\-V, \-\-version\f[R] نمایش شماره نسخه و خروج. .SH "مثال‌ها (EXAMPLES)" اگر \f[CR]input.edtx\f[R] دقیقاً مشابه یک فایل \f[CR]dtx\f[R] باشد، فقط بدون \f[CR]\[rs]begin{macrocode}\f[R] و \f[CR]\[rs]end{macrocode}\f[R] در اطراف هر قطعه کد: .IP .EX edtx2dtx input.edtx > output.dtx .EE .PP ابزار Memoize از فراخوانی زیر برای تولید یک \f[CR].dtx\f[R] از کد مستندشده پایتون در \f[CR]memoize\-extract.py\f[R] استفاده می‌کند. مقدار \f[CR]\-c\f[R] ابزار \f[CR]edtx2dtx\f[R] را با کامنت‌های پایتون سازگار می‌سازد. گزینه \f[CR]\-B\f[R] هر آنچه پیش از عبارت شماره نسخه قرار دارد را به عنوان سرایند مشخص کرده و عبارت شماره نسخه را در خروجی نگه می‌دارد. به طور مشابه، \f[CR]\-E\f[R] تعیین می‌کند که پردازش باید هنگام برخورد با متغیرهای محلی Emacs متوقف شود (که دست‌نخورده در خروجی حفظ می‌شوند). .IP .EX edtx2dtx \-s \-c \[aq]#\[aq] \-B \[aq]\[ha]__version__\[aq] \-E \[aq]\[ha]# Local Variables:\[aq] $< \[rs] .EE .SH "همچنین ببینید (SEE ALSO)" easydoctex.el