| xindy(1) | xindy | xindy(1) |
xindy - ایجاد نمایه مرتبشده و برچسبگذاریشده از نمایه خام
خلاصه دستور (SYNOPSIS)
xindy [-V?h] [-qv] [-d magic] [-o outfile.ind] [-t log] \
[-L lang] [-C codepage] [-M module] [-I input] \
[--interactive] [--mem-file=xindy.mem] \
[idx0 idx1 ...]
گزینههای طولانی به سبک گنو برای گزینههای کوتاه (GNU-Style Long Options for Short Options):
-V / --version -? / -h / --help -q / --quiet -v / --verbose -d / --debug (multiple times) -o / --out-file -t / --log-file -L / --language -C / --codepage -M / --module (multiple times) -I / --input-markup (supported: latex, xelatex, omega, xindy)
توضیحات (DESCRIPTION)
دستور xindy بخش مستقل از قالببندی سامانه نمایهسازی انعطافپذیر xindy است. این ابزار یک نمایه خام را به عنوان ورودی دریافت کرده و یک نمایه ادغامشده، مرتبشده و برچسبگذاریشده تولید میکند. ادغام، مرتبسازی و برچسبگذاری توسط فایلهای شیوهنامه (style files) xindy کنترل میشوند.
فایلهای حاوی نمایه خام به عنوان آرگومان به دستور داده میشوند. اگر هیچ آرگومانی داده نشود، نمایه خام از ورودی استاندارد خوانده خواهد شد.
دستور xindy بهطور کامل در کتابچه راهنمای آن که در وبگاه http://www.xindy.org موجود است، شرح داده شده است. همچنین یک توضیح مقدماتی مناسب در فصل نمایهسازی کتاب LaTeX Companion (ویرایش دوم) آمده است.
اگر قصد تولید نمایه برای اسناد LaTeX را دارید، احتمالاً دستور texindy(1) برای شما کاربردیتر خواهد بود. این دستور یک پوشش (wrapper) برای xindy است که بسیاری از قواعد پیشفرض LaTeX را فعال میکند.
گزینهها (OPTIONS)
- "--version" / -V
- شماره نسخه تمام مؤلفههای مربوطه را در خروجی چاپ کرده و خارج میشود.
- "--help" / -h / -?
- پیام نحوه استفاده را به همراه توضیح گزینهها نمایش میدهد.
- "--quiet" / -q
- پیامهای پیشرفت را نمایش نمیدهد؛ تنها پیامهای خطا را در خروجی چاپ میکند.
- "--verbose" / -v
- پیامهای پیشرفت را به صورت تفصیلی نمایش میدهد.
- "--debug" magic / -d magic
- پیامهای
اشکالزدایی
را نمایش
میدهد؛
این گزینه
میتواند
چندین بار
مشخص شود.
مقدار magic
تعیین
میکند چه
چیزی در
خروجی چاپ
شود:
magic توضیحات ------------------------------------------------------------ script پیامهای پیشرفت داخلی اسکریپتهای راهانداز keep_tmpfiles فایلهای موقت را دور نمیریزد markup چاپ ردگیری نشانهگذاری، طبق توضیحات راهنمای xindy level=n سطح ثبت لاگ، n برابر است با 0 (پیشفرض)، 1، 2، یا 3
- "--out-file" outfile.ind / -o outfile.ind
- نمایه را در فایل outfile.ind ذخیره میکند. اگر این گزینه داده نشود، نام فایل خروجی برگرفته از نام پایه اولین آرگومان با پسوند ind خواهد بود. اگر نمایه خام از ورودی استاندارد خوانده شود، مشخص کردن این گزینه اجباری است.
- "--log-file" log.ilg / -t log.ilg
- پیامهای ثبت وقایع (log) را در فایل log.ilg مینویسد. این پیامهای لاگ مستقل از پیامهای پیشرفتی هستند که میتوانید با "--debug" یا "--verbose" آنها را تغییر دهید.
- "--language" lang / -L lang
- نمایه بر
اساس قواعد
زبان lang
مرتب
میشود. این
قواعد در یک
پودمان
(ماژول) xindy که
توسط make-rules
ایجاد شده
کدگذاری
شدهاند.
اگر هیچ کدگذاری ورودی از طریق "--codepage" مشخص نشده باشد یا توسط نشانهگذاری ورودی تحمیل نگردد، یک پودمان xindy برای آن زبان به ترتیب با کدگذاریهای latin، سپس cp، سپس iso، سپس ascii یا utf8 جستجو میشود.
پودمانهای زبان یا در زیردایرکتوری lang یا در contrib/lang از دایرکتوری پایه پودمانها قرار دارند.
- "--codepage" enc / -C enc
- ورودی خام
دارای
کدگذاری enc
است. از این
اطلاعات
برای
انتخاب
پودمان
مرتبسازی
مناسب xindy و
کدگذاری
خروجی
سربرگهای
گروههای
حرفی
استفاده
میشود.
هنگامی که نشانهگذاری ورودی "xelatex" یا "omega" استفاده شود، همیشه "utf8" به عنوان صفحه کد بهکار میرود و در نتیجه این گزینه نادیده گرفته میشود.
اگر ورودی خام با فرمت LICR باشد، باید به جای xindy(1) از texindy(1) استفاده شود. این ابزار نگاشت کدگذاری inputenc را برای نشانهگذاری ورودی "latex" به صفحه کد انتخابی ورودی خام فعال خواهد کرد.
- "--module" module / -M module
- پودمان xindy با نام module.xdy را بارگذاری میکند. این گزینه میتواند چندین بار مشخص شود. پودمانها در مسیر جستجوی xindy جستجو میشوند؛ این مسیر را میتوان با متغیر محیطی "XINDY_SEARCHPATH" تغییر داد.
- "--input-markup" input / -I input
- نشانهگذاری
ورودی
نمایه خام
را مشخص
میکند.
مقادیر
پشتیبانیشده
برای input
عبارتند از
"latex"،
"xelatex"،
"omega" و
"xindy".
نشانهگذاری ورودی "latex" و "xelatex" همان ساختاری است که به طور پیشفرض توسط هسته LaTeX یا بسته ماکروی "index" متعلق به David Jones تولید میشود. نمادگذاری ^^- برای نویسههای تکبایتی پشتیبانی میشود. نگاشت مجدد نویسههای کدگذاریشده با LICR انجام نمیشود؛ برای این کار از texindy(1) استفاده کنید. اگر از LaTeX استاندارد یا pdfLaTeX استفاده میکنید، از نشانهگذاری ورودی "latex" و اگر از XeLaTeX یا LuaLaTeX استفاده میکنید، از نشانهگذاری ورودی "xelatex" استفاده کنید.
نشانهگذاری ورودی "omega" مشابه نشانهگذاری ورودی "latex" است، اما از نمادگذاری ^^- مربوط به Omega برای کدگذاری نویسههای غیر ASCII استفاده میکند.
نشانهگذاری ورودی "xindy" در کتابچه راهنمای xindy مشخص شده است.
- "--interactive"
- اجرای xindy در حالت تعاملی (interactive). شما وارد یک حلقه خواندن-ارزیابی (read-eval-loop) در xindy خواهید شد که در آن عبارتهای زبان xindy به صورت تعاملی خوانده و ارزیابی میشوند.
- "--mem-file" xindy.mem
- این گزینه تنها برای توسعهدهندگان یا در شرایط بسیار نادر قابل استفاده است. هسته کامپایلشده xindy در یک اصطلاحاً memory file (فایل حافظه) ذخیره میشود که نام متعارف آن xindy.mem است و در دایرکتوری کتابخانه xindy قرار دارد. این گزینه امکان استفاده از یک هسته دیگر xindy را فراهم میسازد..SH "زبانها / صفحههای کد پشتیبانیشده (SUPPORTED LANGUAGES / CODEPAGES)" زبانهای زیر پشتیبانی میشوند:
خطهای لاتین (Latin scripts)
albanian gypsy portuguese croatian hausa romanian czech hungarian russian-iso danish icelandic slovak-small english italian slovak-large esperanto kurdish-bedirxan slovenian estonian kurdish-turkish spanish-modern finnish latin spanish-traditional french latvian swedish general lithuanian turkish german-din lower-sorbian upper-sorbian german-duden norwegian vietnamese greek-iso polish
زبان آلمانی دو طرح مرتبسازی متفاوت را برای کار با اُملاوتها به رسمیت میشناسد: بهطور معمول، "ae" مانند "ae" مرتب میشود، اما در دفترچههای تلفن یا فرهنگهای لغت، مانند "a" مرتب میگردد. طرح نخست با عنوان ترتیب DIN و طرح دوم با عنوان ترتیب Duden شناخته میشود.
نامهای زبان "*-iso" فرض میکنند که مدخلهای خام نمایه در کدگذاری ISO 8859-9 هستند.
"gypsy" یک گویش روسی شمالی است.
خطهای سیریلیک (Cyrillic scripts)
belarusian mongolian serbian bulgarian russian ukrainian macedonian
سایر خطها (Other scripts)
greek klingon
صفحههای کد موجود (Available Codepages)
این بخش هنوز نوشته نشده است. میتوانید آنها را در توزیع xindy خود، در دایرکتوری modules/lang/language/ (که در آن language زبان شماست) بررسی کنید. آنها بهصورت variant-codepage-lang.xdy نامگذاری شدهاند، که در آن اغلب variant- خالی است (برای آلمانی، "din5007" و "duden" است؛ برای اسپانیایی، "modern" و "traditional" و غیره).
< Describe available codepages for each language > < Describe relevance of codepages (as internal representation) for LaTeX inputenc >
محیط (ENVIRONMENT)
- "XINDY_SEARCHPATH"
- فهرستی از
دایرکتوریها
که
ماژولهای
xindy در آنها
جستجو
میشوند.
هیچ
جستجویی در
زیردرختها
(مانند آنچه
در TeX سازگار
با TDS است)
انجام
نمیگیرد.
اگر این متغیر محیطی تنظیم نشده باشد، از مقدار پیشفرض استفاده میشود: ".:"modules_dir":"modules_dir"/base". مقدار modules_dir در زمان اجرا و نسبت به مکان دستور xindy تعیین میشود: یا ../modules است، که مربوط به نصبهای opt است؛ یا ../lib/xindy/modules است، که مربوط به نصبهای usr میباشد.
- "XINDY_LIBDIR"
- دایرکتوری
کتابخانهای
که xindy.mem در آن
قرار دارد.
دایرکتوری ماژولها میتواند یک زیردایرکتوری نیز باشد.
سازگاری با MAKEINDEX (COMPATIBILITY TO MAKEINDEX)
ابزار xindy ادعای سازگاری کامل با MakeIndex را ندارد، چرا که این امر مانع از برخی بهبودهای آن میشد. با این حال، ما تلاش میکنیم تا جای ممکن بیشترین سازگاری را فراهم کنیم. مهمترین ناسازگاریها عبارتند از:
- برای
مدخلهای
نمایه خام
در نحو LaTeX،
عبارت
"\index{aaa|bbb}"
بهگونهای
متفاوت
تفسیر
میشود.
برای MakeIndex،
عبارت
"bbb"
نشانهگذاریای
است که به
عنوان یک
برچسب LaTeX
برای این
شماره صفحه
در خروجی
درج میشود.
برای xindy،
این یک
ویژگی مکان
است؛
شناسهٔ
انتزاعیای
که بعداً با
نشانهگذاریای
که باید
برای آن
ویژگی در
خروجی قرار
گیرد،
مرتبط
خواهد شد.
برای کاربردهای مستقیم و ساده، زمانی که "bbb" برابر با "textbf" یا موارد مشابه باشد، ما تعاریف ویژگی مکانی را ارائه میدهیم که رفتار MakeIndex را تقلید میکند.
برای کاربردهای پیچیدهتر، هنگامی که "bbb" یک شناسه نباشد، چنین تعاریف سازگاری وجود ندارند و ممکن است در نسخهٔ فعلی xindy نیز نتوان آنها را ایجاد کرد. گزارش شده که چنین وضعیتی در کلاس LaTeX با نام "memoir" وجود دارد.
برنامهنویسانی که Common Lisp و Lex را میشناسند و مایلند روی راهحلی برای این مورد کار کنند، لطفاً با نویسنده تماس بگیرند.
- اگر یک
محدوده
نمایه و یک
ویژگی مکان
داشته
باشید،
برای مثال،
"\index{key\(attr}"
آغازگر
محدوده
باشد، باید
(۱) آن ویژگی
در مدخل
بستن
محدوده نیز
مشخص شود
(یعنی
بهصورت
"\index{key\)attr}") و (۲)
ویژگی
نمایه باید
در یک فایل
شیوهنامه
xindy تعریف
گردد.
برنامه MakeIndex برای چنین ساختاری، نشانهگذاری "\attr{page1--page2}" را در خروجی تولید میکند. دستیابی به این ساختار در xindy ممکن نیست و خروجی بهصورت "\attrMarkup{page1}--\attrMarkup{page2}" خواهد بود. (این مورد در واقع یک باگ تلقی میشود، اما اولویت بالایی ندارد.)
تفاوت میان برچسبهای شماره صفحه MakeIndex و ویژگیهای مکان xindy پیشتر در مورد قبلی شرح داده شد.
- تعاریف سازگاری MakeIndex تنها از نحو نمایهٔ خام پیشفرض و تعریف نشانهگذاری پشتیبانی میکنند. پیکربندی تجزیه نمایه خام یا استفاده از یک فایل شیوهنامه MakeIndex برای تعیین نشانهگذاری خروجی امکانپذیر نیست..SH "مشکلات شناختهشده (KNOWN ISSUES)" گزینه -q از خروجی پیامهای خطا نیز جلوگیری میکند. پیامهای خطا باید در stderr و پیامهای پیشرفت در stdout فرستاده شوند.
باید روشی برای هدایت نمایه نهایی به stdout وجود داشته باشد. این امر مسلماً مستلزم -q خواهد بود.
تجزیه نمایه خام LaTeX باید قابلپیکربندی باشد.
کدپیج "utf8" باید برای همه زبانها پشتیبانی شود و به عنوان کدپیج داخلی برای بازکدگذاری inputenc در LaTeX مورد استفاده قرار گیرد.
همچنین ببینید (SEE ALSO)
نویسنده (AUTHOR)
Joachim Schrod
شرایط حقوقی (LEGALESE)
حق تکثیر (c) 2004-2014 متعلق به Joachim Schrod.
xindy یک نرمافزار آزاد است؛ شما میتوانید آن را تحت شرایط «پروانه همگانی عمومی گنو» (GNU General Public License) منتشر شده توسط بنیاد نرمافزار آزاد؛ چه نسخه ۲ پروانه و چه (به انتخاب خودتان) هر نسخهٔ بعدی دیگری، مجدداً توزیع کرده و/یا تغییر دهید.
این برنامه به این امید توزیع شده است که مفید باشد، اما بدون هرگونه ضمانت؛ حتی بدون ضمانت ضمنی قابل فروش بودن یا مناسب بودن برای هدفی خاص. برای جزئیات بیشتر به پروانه عمومی همگانی GNU مراجعه کنید.
| 2020-05-28 | Release 2.5.1 |