| TEXPROF(1) | General Commands Manual | TEXPROF(1) |
نام (NAME)
texprof - پروفایلری برای فایلهای منبع TeX
خلاصه دستور (SYNOPSIS)
texprof [options] [&format] [file|\commands]
توضیحات (DESCRIPTION)
پروفایلر TeX را بر روی file اجرا میکند، که معمولاً موجب ایجاد file.dvi و file.tprof میگردد. اگر آرگومان file فاقد پسوند باشد، «.tex» به انتهای آن افزوده خواهد شد. به جای نام فایل، میتوان فهرستی از دستورات TeX را ارائه داد که نخستین آنها باید با یک بکاسلش آغاز شود. با یک آرگومان &format ، پروفایلر TeX از مجموعهٔ متفاوتی از دستورات از پیش کامپایلشدهٔ موجود در format.fmt استفاده میکند؛ هرچند معمولاً بهتر است به جای آن از گزینهٔ -fmt format استفاده شود.
پروفایلر TeX نسخهای از TeX است که زمان مورد نیاز TeX را برای اجرای هر یک از خطوط ورودی یا ماکروها اندازه میگیرد. این برنامه دادههای جمعآوریشده را در فایلی با پسوند .tprof مینویسد. برنامهٔ جداگانهای به نام texprofile (ببینید: texprofile(1)) برای نمایش محتوای یک فایل .tprof به شکلی خوانا استفاده میشود.
کاربرد معمول پروفایلر TeX همراه با قالبهای از پیش تولیدشده است. دستور texprof از قالبی معادل با plain TeX استفاده میکند و دستور latexprof از قالبی معادل با LaTeX بهره میبرد. برای بررسی زمانبندی ماکروهای مختص pdftex یا pdflatex، میتوانید از pdftexprof یا pdflatexprof استفاده کنید.
نحوهٔ مدیریت آرگومانهای خط فرمان توسط پروفایلر TeX مشابه سایر برنامههای TeX در پیادهسازی web2c است.
این نسخه از پروفایلر TeX گزینههای خط فرمان زیر را پشتیبانی میکند.
- -cnf-line string
- تجزیه string به عنوان یک خط پیکربندی texmf.cnf. دفترچه راهنمای Kpathsea را ببینید.
- -etex
- فعالسازی افزونههای e-TeX. این گزینه فقط در ترکیب با -ini مؤثر است. etex(1) را ببینید.
- -file-line-error
- چاپ پیامهای خطا در قالب file:line:error که مشابه شیوه قالببندی بسیاری از کامپایلرها است.
- -no-file-line-error
- غیرفعالسازی چاپ پیامهای خطا در قالب file:line:error.
- -fmt format
- استفاده از format به عنوان نام فرمت مورد استفاده، به جای نامی که پروفایلر TeX با آن فراخوانی شده یا یک خط %&.
- -help
- نمایش پیام راهنما و خروج.
- -ini
- شروع در حالت INI، که برای ذخیره رونوشت (dump) فرمتها استفاده میشود. حالت INI میتواند برای حروفچینی استفاده شود، اما هیچ فرمتی از پیش بارگذاری نمیشود و ممکن است مقداردهیهای اولیه اساسی مانند تنظیم catcodeها لازم باشد.
- -interaction mode
- تنظیم حالت تعاملی. این حالت میتواند یکی از مقادیر batchmode، nonstopmode، scrollmode یا errorstopmode باشد. معنای این حالتها مشابه دستورات (\commands) متناظر آنها است.
- -jobname name
- استفاده از name برای نام کار (job name)، به جای استخراج آن از نام فایل ورودی.
- -kpathsea-debug bitmask
- تنظیم پرچمهای اشکالزدایی جستجوی مسیر با توجه به bitmask. برای جزئیات به دفترچه راهنمای Kpathsea مراجعه کنید.
- -ltx
- فعالسازی افزونههای LaTeX. این گزینه تنها در ترکیب با -ini مؤثر است. latex(1) را ببینید.
- -mktex fmt
- فعالسازی mktexfmt، که در آن fmt باید یکی از مقادیر tex، tfm، fmt یا pk باشد.
- -no-mktex fmt
- غیرفعالسازی mktexfmt، که در آن fmt باید یکی از مقادیر tex، tfm، fmt یا pk باشد.
- -output-directory directory
- نوشتن فایلهای خروجی در directory به جای دایرکتوری جاری. جستجوی فایلهای ورودی ابتدا در directory و سپس در امتداد مسیر جستجوی عادی انجام میشود.
- -parse-first-line
- اگر اولین خط از فایل ورودی اصلی با %& شروع شود، برای یافتن نام dump تجزیه میشود.
- -no-parse-first-line
- غیرفعالسازی تجزیه اولین خط از فایل ورودی اصلی.
- فعالسازی شبیهسازی دستورات اولیه رایج pdftex. این گزینه به گزینه -ini نیاز دارد و متضمن گزینه -ltx است. pdftex(1) را ببینید.
- -prof
- فعالسازی تحلیل کارایی (profiling) به محض ورود TeX به حلقه اصلی. اگر از این گزینه استفاده نشود، تحلیل کارایی باید با استفاده از دستور اولیه \profileon فعال گردد. همچنین میتوان تحلیل کارایی را با دستور اولیه \profileoff خاموش کرد.
- -progname name
- عمل کردن در قالب برنامه name. این امر بر فرمت مورد استفاده و مسیرهای جستجو تأثیر میگذارد.
- -version
- نمایش اطلاعات نسخه و خروج. برای جزئیات دقیق چگونگی استفاده از متغیرهای محیطی، به مستندات کتابخانهٔ Kpathsea (برای نمونه، گره «Path specifications») مراجعه کنید. از ابزار kpsewhich میتوان برای پرسوجوی مقادیر متغیرها استفاده کرد.
- TEXMFOUTPUT
- بهطور معمول، TeX فایلهای خروجی خود را در دایرکتوری جاری قرار میدهد. اگر هر یک از فایلهای خروجی در آنجا باز نشوند، تلاش میکند آن را در دایرکتوری مشخصشده در متغیر محیطی TEXMFOUTPUT باز کند. هیچ مقدار پیشفرضی برای این متغیر وجود ندارد. برای مثال، اگر دستور texprof paper را اجرا کنید و دایرکتوری جاری قابل نوشتن نباشد و متغیر TEXMFOUTPUT دارای مقدار /tmp باشد، TeX تلاش میکند فایلهای /tmp/paper.log ، /tmp/paper.dvi ، و /tmp/paper.tprof را ایجاد کند. متغیر TEXMFOUTPUT برای فایلهای ورودی نیز بررسی میشود، زیرا TeX اغلب فایلهایی تولید میکند که پس از آن باید خوانده شوند؛ برای ورودی، هیچ پسوندی (مانند «.tex») بهطور پیشفرض افزوده نمیشود و نام ورودی صرفاً به همان صورتی که داده شده بررسی میشود.
- TEXINPUTS
- مسیر جستجو برای فایلهای \input و \openin. این مسیر معمولاً با «.» آغاز میشود تا فایلهای کاربر پیش از فایلهای سیستمی پیدا شوند. یک مؤلفهٔ خالی در مسیر با مسیرهای تعریفشده در فایل texmf.cnf جایگزین خواهد شد. برای مثال، TEXINPUTS را روی ".:/home/user/tex:" تنظیم کنید تا دایرکتوری جاری و «/home/user/tex» به ابتدای مسیر جستجوی استاندارد افزوده شوند.
- TEXFORMATS
- مسیر جستجو برای فایلهای format.
- TFMFONTS
- مسیر جستجو برای فایلهای سنجهٔ قلم (.tfm).
- SOURCE_DATE_EPOCH
- اگر تنظیم شود، مقدار آن بر حسب ثانیههای مبدأ (epoch-seconds) در نظر گرفته شده و برای تاریخ ایجاد و به عنوان لحظهٔ مرجع برای دستورهای اولیه مرتبط با زمان در LaTeX استفاده خواهد شد. این متغیر برای ساختهای بازتولیدپذیر (reproducible builds) مفید است.
- FORCE_SOURCE_DATE
- اگر روی مقدار "1" تنظیم شود، دستورهای اولیه مرتبط با زمان در TeX (\year، \month، \day، \time) نیز از مقدار SOURCE_DATE_EPOCH مقداردهی اولیه میشوند. در صورت وجود هرگونه جایگزین امکانپذیر، استفاده از این روش توصیه نمیشود.
متغیرهای محیطی بسیار بیشتری در رابطه با جستجوی مسیر ممکن است بررسی شوند. راهنمای Kpathsea را ببینید.
فایلها (FILES)
محل فایلهای ذکرشده در زیر از سیستمی به سیستم دیگر متفاوت است. از ابزار kpsewhich برای یافتن محل آنها استفاده کنید.
- *.tfm
- فایلهای سنجه (metric) برای قلمهای TeX.
- *.fmt
- فایلهای format پیشپردازششدهٔ TeX.
- *.pk *.pfb
- فایلهای قلم مورد استفادهٔ TeX. این صفحهٔ راهنما جامع نیست. مستندات کامل برای پروفایلر TeX را میتوان در texprof.pdf یافت. اطلاعات بیشتر را میتوان در راهنمای Kpathsea library پیدا کرد.
گزارش باگها (BUGS)
این نسخه از پروفایلر TeX تمامی دستورهای اولیهای (primitives) را که pdftex ارائه میدهد پیادهسازی نمیکند، و علاوه بر این، اثرهای جانبی یکسانی تولید نخواهد کرد.
در دسترس بودن (AVAILABILITY)
پروفایلر TeX باید روی طیف گستردهای از معماریهای ماشین و سیستمعاملها کامپایل شود. تابع مورد استفاده برای دریافت اطلاعات زمانبندی، مختص POSIX است.
سورسکدهای پروفایلر TeX در آدرس زیر میزبانی میشوند: https://github.com/ruckertm/HINT
همچنین ببینید (SEE ALSO)
texprofiler(1)، tex(1)، latex(1)، pdftex(1)، pdflatex(1) و kpsewhich(1).
نویسندگان (AUTHORS)
نویسندهٔ اصلی پروفایلر TeX، Martin Ruckert است، همراه با افزونههای eTeX توسط Peter Breitenlohner، افزونههای LaTeX توسط Thierry Laronde، و کتابخانهٔ kpathsearch توسط Karl Berry.
TeX توسط Donald E. Knuth طراحی شده است، کسی که آن را با استفاده از سیستم Web خود برای برنامههای Pascal پیادهسازی کرد.
افراد بسیار بیشتری در این سامانه حروفچینی که امروزه به نام TeX شناخته میشود مشارکت کردهاند؛ بسیار بیشتر از آن که بتوان نام همهٔ آنها را در اینجا آورد.
| 2 September 2024 | Version 1.0 |