.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.3. .TH FMTUTIL "1" "February 2026" "TeX Live" "دستورات کاربری" .SH "نام (NAME)" fmtutil \- مدیریت و بازسازی فرمت‌های TeX و پایه‌های Metafont، برای هر کاربر .br fmtutil-sys \- مدیریت و بازسازی فرمت‌های TeX و پایه‌های Metafont، در سطح سیستم .br mktexfmt \- ایجاد یک فایل فرمت TeX یا پایه‌ی Metafont .SH "خلاصه دستور (SYNOPSIS)" .B fmtutil [\fI\,-user|-sys\/\fR] [\fI\,گزینه\/\fR] ... [\fI\,دستور\/\fR] .br .B fmtutil-sys [\fI\,گزینه\/\fR] ... [\fI\,دستور\/\fR] .br .B fmtutil-user [\fI\,گزینه\/\fR] ... [\fI\,دستور\/\fR] .br .B mktexfmt \fI\,FORMAT.fmt|BASE.base|FMTNAME\/\fR .SH "توضیحات (DESCRIPTION)" fmtutil نسخه r77314 (2026\-01\-09 17:20:28 +0100) .PP بازسازی و مدیریت فایل‌های fmt مربوط به TeX و فایل‌های base مربوط به Metafont که در اینجا به طور کلی «فرمت‌ها» (formats) نامیده می‌شوند. (برنامه MetaPost دیگر از معادل قدیمی «mems» استفاده نمی‌کند.) .PP اگر در حالت mktexfmt اجرا نشود، باید دقیقاً یک دستور مشخص گردد، پسوند نام فایل‌ها معمولاً نباید ذکر شود، هیچ آرگومان غیرگزینه‌ای مجاز نیست و چندین فرمت را می‌توان به طور همزمان تولید کرد. .PP اگر نام دستور به mktexfmt ختم شود، تنها یک فرمت می‌تواند ایجاد شود. تنها گزینه‌های پشتیبانی‌شده \fB\-\-help\fR و \fB\-\-version\fR هستند و خط فرمان باید یا نام یک فرمت همراه با پسوند باشد، یا یک نام ساده که به عنوان آرگومان به \fB\-\-byfmt\fR پاس داده می‌شود (توضیحات زیر را ببینید). نام کامل فایل تولید‌شده (در صورت وجود) تنها در خروجی استاندارد (stdout) نوشته می‌شود و چیز دیگری چاپ نخواهد شد. در صورت داشتن دسترسی نوشتن، از دایرکتوری‌های سیستمی استفاده می‌شود؛ در غیر این صورت از دایرکتوری‌های کاربری استفاده خواهد شد. .PP به طور پیش‌فرض، اگر تمام فرمت‌های درخواستی با موفقیت ساخته شوند، وضعیت خروجی صفر و در غیر این صورت غیرصفر خواهد بود. .SH "گزینه‌ها (OPTIONS)" .TP \fB\-\-sys\fR استفاده از متغیرهای TEXMFSYS{VAR,CONFIG} .TP \fB\-\-user\fR استفاده از متغیرهای TEXMF{VAR,CONFIG} .TP \fB\-\-cnffile\fR FILE خواندن FILE به جای fmtutil.cnf (می‌تواند چندین بار مشخص شود که در این صورت از همه فایل‌ها استفاده می‌شود) .TP \fB\-\-dry\-run\fR, \fB\-n\fR عدم ساخت واقعی فرمت‌ها .TP \fB\-\-fmtdir\fR DIR نوشتن فرمت‌ها در پوشه DIR به جای TEXMF[SYS]VAR .TP \fB\-\-no\-engine\-subdir\fR عدم استفاده از زیرپوشه اختصاصی موتور (engine) در fmtdir .TP \fB\-\-no\-error\-if\-no\-format\fR خروج با موفقیت حتی اگر هیچ فرمتی انتخاب نشده باشد .TP \fB\-\-no\-error\-if\-no\-engine\fR=\fI\,ENGINE1\/\fR,ENGINE2,... خروج با موفقیت حتی اگر یک ENGINE مورد نیاز یافت نشود، .IP مشروط بر اینکه در این لیست قرار داشته باشد. .TP \fB\-\-no\-strict\fR خروج با موفقیت حتی اگر ساخت یک فرمت با شکست مواجه شود .TP \fB\-\-nohash\fR عدم به‌روزرسانی فایل‌های ls\-R .TP \fB\-\-recorder\fR ارسال گزینه \fB\-recorder\fR و ذخیره فایل‌های .fls .TP \fB\-\-refresh\fR بازسازی مجدد فقط فرمت‌های موجود .TP \fB\-\-status\-file\fR FILE افزودن اطلاعات وضعیت فرمت‌های ساخته‌شده به انتهای FILE .TP \fB\-\-quiet\fR اجرای بی‌صدا بدون چاپ پیام‌ها .TP \fB\-\-catcfg\fR (عملیاتی انجام نمی‌دهد، برای سازگاری با نسخه‌های پیشین وجود دارد) .TP \fB\-\-dolinks\fR (عملیاتی انجام نمی‌دهد، برای سازگاری با نسخه‌های پیشین وجود دارد) .TP \fB\-\-force\fR (عملیاتی انجام نمی‌دهد، برای سازگاری با نسخه‌های پیشین وجود دارد) .TP \fB\-\-test\fR (عملیاتی انجام نمی‌دهد، برای سازگاری با نسخه‌های پیشین وجود دارد) .SS "دستورها (دقیقاً یکی باید مشخص شود):" .TP \fB\-\-all\fR بازسازی مجدد تمامی فایل‌های فرمت .TP \fB\-\-missing\fR ایجاد تمامی فایل‌های فرمت ناموجود .TP \fB\-\-byengine\fR ENGINE ایجاد (یا بازسازی) فرمت‌های ساخته‌شده با موتور ENGINE .TP \fB\-\-byfmt\fR FORMAT ایجاد (یا بازسازی) فرمت FORMAT .TP \fB\-\-byhyphen\fR HYPHENFILE ایجاد (یا بازسازی) فرمت‌های وابسته به HYPHENFILE .TP \fB\-\-enablefmt\fR FORMAT[/ENGINE] فعال‌سازی FORMAT ساخته‌شده با ENGINE .TP \fB\-\-disablefmt\fR FORMAT[/ENGINE] غیرفعال‌سازی FORMAT ساخته‌شده با ENGINE. اگر چندین فرمت نام یکسان ولی موتورهای متفاوتی داشته باشند، .IP مشخص کردن شناسه \fI\,/ENGINE\/\fP الزامی است. .TP \fB\-\-listcfg\fR فهرست کردن پیکربندی‌ها (فعال و غیرفعال)، فیلترشده بر اساس فرمت‌های موجود .TP \fB\-\-showhyphen\fR FORMAT چاپ نام فایل خط تیره (hyphen file) برای فرمت FORMAT .TP \fB\-\-version\fR نمایش اطلاعات نسخه و خروج .TP \fB\-\-help\fR نمایش این پیام راهنما و خروج .SH "محیط (ENVIRONMENT)" .PP توضیح درخت‌ها و فایل‌هایی که به طور معمول استفاده می‌شوند: .IP اگر \fB\-\-cnffile\fR در خط فرمان مشخص شده باشد (احتمالاً چندین بار)، از مقادیر آن استفاده می‌شود. در غیر این صورت، fmtutil تمام فایل‌های fmtutil.cnf یافت‌شده با اجرای دستور «kpsewhich \fB\-all\fR fmtutil.cnf» را به ترتیبی که توسط kpsewhich بازگردانده می‌شود، می‌خواند. فایل‌های مشخص‌شده با \fB\-\-cnffile\fR ابتدا به صورت مستقیم بارگذاری می‌شوند و اگر یافت نشوند و نام فایل فاقد بخش دایرکتوری باشد، از طریق kpsewhich جستجو می‌گردند. .IP در هر صورت، اگر چندین فایل fmtutil.cnf پیدا شود، تمام تعاریف فرمت موجود در همه فایل‌های fmtutil.cnf با یکدیگر ادغام می‌شوند. .IP بنابراین، اگر فایل‌های fmtutil.cnf در تمام درخت‌ها وجود داشته باشند و چیدمان پیش‌فرض همراه با TeX Live استفاده شود، فایل‌های زیر به ترتیب ذکر شده خوانده می‌شوند: .nf .IP برای fmtutil\-sys: TEXMFSYSCONFIG \fI\,$TEXLIVE/YYYY/texmf\-config/web2c/fmtutil.cnf\/\fP TEXMFSYSVAR \fI\,$TEXLIVE/YYYY/texmf\-var/web2c/fmtutil.cnf\/\fP TEXMFLOCAL \fI\,$TEXLIVE/texmf\-local/web2c/fmtutil.cnf\/\fP TEXMFDIST \fI\,$TEXLIVE/YYYY/texmf\-dist/web2c/fmtutil.cnf\/\fP .IP برای fmtutil\-user: TEXMFCONFIG $HOME/.texliveYYYY/texmf\-config/web2c/fmtutil.cnf TEXMFVAR $HOME/.texliveYYYY/texmf\-var/web2c/fmtutil.cnf TEXMFHOME \fI\,$HOME/texmf/web2c/fmtutil.cnf\/\fP TEXMFSYSCONFIG \fI\,$TEXLIVE/YYYY/texmf\-config/web2c/fmtutil.cnf\/\fP TEXMFSYSVAR \fI\,$TEXLIVE/YYYY/texmf\-var/web2c/fmtutil.cnf\/\fP TEXMFLOCAL \fI\,$TEXLIVE/texmf\-local/web2c/fmtutil.cnf\/\fP TEXMFDIST \fI\,$TEXLIVE/YYYY/texmf\-dist/web2c/fmtutil.cnf\/\fP .IP (که در آن YYYY نسخه انتشار TeX Live است). .fi .IP بسته به عملیات انجام‌شده، fmtutil ممکن است یکی از فایل‌های cnf موجود را به‌روزرسانی کند یا یک فایل fmtutil.cnf جدید بسازد، همان‌طور که در زیر شرح داده شده است. .PP محل ذخیره فایل‌های فرمت: .IP به طور پیش‌فرض، فایل‌های فرمت در \fI\,$TEXMFSYSVAR/ENGINE\/\fP توسط fmtutil\-sys، و در \fI\,$TEXMFVAR/ENGINE\/\fP توسط fmtutil\-user بازنویسی می‌شوند، که در آن \fI\,/ENGINE\/\fP زیرپوشه‌ای همنام با موتور استفاده‌شده است، مانند «pdftex». .IP برای mktexfmt، در صورت داشتن دسترسی نوشتن از TEXMFSYSVAR استفاده می‌شود وگرنه TEXMFVAR به کار می‌رود. .IP اگر گزینه \fB\-\-fmtdir\fR=\fI\,DIR\/\fR مشخص شده باشد، DIR به جای TEXMF[SYS]VAR استفاده می‌شود، اما به طور پیش‌فرض زیرپوشه \fI\,/ENGINE\/\fP همچنان استفاده خواهد شد. .IP در تمام موارد، اگر گزینه \fB\-\-no\-engine\-subdir\fR مشخص شود، زیرپوشه \fI\,/ENGINE\/\fP حذف می‌گردد. .PP محل ذخیره تغییرات پیکربندی: .IP اگر فایل‌های پیکربندی در خط فرمان داده شوند، اولین فایل مشخص‌شده برای ذخیره هرگونه تغییر ناشی از \fB\-\-enable\fR یا \fB\-\-disable\fR استفاده خواهد شد. .IP اگر فایل‌های پیکربندی از خروجی kpsewhich گرفته شوند، الگوریتم پیچیده‌تر است: .IP ۱) اگر \fI\,$TEXMFCONFIG/web2c/fmtutil.cnf\/\fP یا \fI\,$TEXMFHOME/web2c/fmtutil.cnf\/\fP در فهرست فایل‌های استفاده‌شده باشد، فایلی که در ابتدای فهرست kpsewhich \fB\-\-all\fR آمده است (معادل خروجی دستور «kpsewhich fmtutil.cnf») استفاده می‌شود. .IP ۲) اگر هیچ‌یک از دو مورد فوق موجود نباشند و تغییراتی اعمال شود، یک فایل پیکربندی جدید در \fI\,$TEXMFCONFIG/web2c/fmtutil.cnf\/\fP ایجاد می‌گردد. .IP به طور کلی، ایده این است که اگر یک فایل کانفیگ قابل نوشتن نباشد، می‌توان از فایلی در سطح بالاتر استفاده کرد. به این ترتیب، تنظیمات توزیع را می‌توان در سطح سیستم با استفاده از TEXMFLOCAL بازنویسی کرد، و تنظیمات سیستم را می‌توان دوباره در TEXMFHOME یا TEXMFCONF یک کاربر خاص بازنویسی نمود. .PP حل تعارض تعاریف چندگانه یک فرمت: .IP اگر یک فرمت در بیش از یک فایل پیکربندی تعریف شده باشد، تعریفی که از اولین fmtutil.cnf فهرست‌شده می‌آید استفاده می‌شود. .PP غیرفعال کردن فرمت‌ها: .IP فایل‌های fmtutil.cnf با اولویت بالاتر (که زودتر فهرست شده‌اند) می‌توانند فرمت‌های موجود در فایل‌های با اولویت پایین‌تر (که دیرتر فهرست شده‌اند) را با نوشتن خطی مانند زیر در فایل با اولویت بالاتر غیرفعال کنند: .IP #! .IP عبارت #! باید در ابتدای خط همراه با حداقل یک فاصله یا تب پس از آن قرار گیرد و بین هر کلمه در لیست فاصله وجود داشته باشد. .IP برای مثال، می‌توانید فرمت luajitlatex را با ایجاد فایل \fI\,$TEXMFCONFIG/web2c/fmtutil.cnf\/\fP با خط زیر غیرفعال کنید: .IP #! luajitlatex luajittex language.dat,language.dat.lua lualatex.ini .IP (در واقع، فرمت‌های مرتبط با luajittex دقیقاً دلیل وجود گزینه \fB\-\-no\-error\-if\-no\-engine\fR هستند، زیرا luajittex روی تمام پلتفرم‌ها قابل کامپایل نیست؛ بنابراین به این کار نیازی نیست.) .PP مقایسه fmtutil\-user (دستور fmtutil \fB\-user\fR) با fmtutil\-sys (دستور fmtutil \fB\-sys\fR): .IP هنگامی که fmtutil\-sys اجرا می‌شود یا گزینه \fB\-sys\fR در خط فرمان به کار می‌رود، متغیرهای TEXMFSYSCONFIG و TEXMFSYSVAR به ترتیب به جای TEXMFCONFIG و TEXMFVAR استفاده می‌شوند. این تفاوت اصلی میان fmtutil\-sys و fmtutil\-user است. .IP برای جزئیات بیشتر به نشانی https://tug.org/texlive/scripts\-sys\-user.html مراجعه کنید. .IP اگر مسیرهای دیگری در خط فرمان مشخص شوند، یا این درخت‌ها وجود نداشته باشند، یا از TeX Live اصلی استفاده نکنید، ممکن است مسیرهای دیگری به کار گرفته شوند. .PP پشتیبانی از فایل‌های اجرایی در حال توسعه: .IP اگر نام یک موتور به «\-dev» ختم شود، فرمت‌ها در دایرکتوری مربوطه بدون پسوند \fB\-dev\fR ساخته می‌شوند. این امکان اجرای آسان باینری‌های در حال توسعه را به صورت همزمان در کنار باینری‌های منتشرشده فراهم می‌کند. .SH "محیط اجرا (RUNTIME ENVIRONMENT)" .IP این اسکریپت برای تولید فایل fmt/base برنامه‌های TeX و Metafont را اجرا می‌کند و بنابراین تمامی متغیرهای محیطی معمول و قوانین مسیر جستجو برای TeX/MF اعمال می‌شوند. .PP محل فایل اجرایی: ../../../../texk/texlive/../../../../Master/texmf\-dist/scripts/texlive/fmtutil.pl .SH "گزارش باگ‌ها (REPORTING BUGS)" گزارش باگ‌ها به: tex\-live@tug.org .br صفحه خانگی TeX Live: