به دلیل قطعی اینترنت و نبود دسترسی به ایمیل‌های خارجی، می‌توانید بدون نیاز به تایید ایمیل، ثبت‌نام کنید و پرسش‌های خود را بپرسید.

اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
+1 رای
2.6k بازدید

با درود
در متن نمونه پیوست اسامی اشخاص، مکان‌ها و موارد دیگر وجود دارد. بنابراین دست‌کم به سه نمایه مجزا نیاز هست. اما دستورات معمول ایجاد نمایه فقط یک نمایه تولید می‌کند. از چه طریق می‌توان نمایه‌های متفاوت داشت؟
با سپاس

فایل(های) پیوست:
person.png

1 پاسخ

0 رای

سلام


می‌تونیم از بستهٔ imakeidx استفاده کنیم. شیوهٔ کار بسیار ساده است. در ابتدا نوع نمایه‌ها را مشخص می‌کنیم و سپس در متن، برای کلمه‌ها، دستور نمایهٔ خودش را به کار می‌بریم. نمونهٔ زیر را ببینید:

\documentclass[12pt]{article}
%\usepackage{makeidx} % <--- deleted
%%%%%%%%%%%%%%%%%%%%  added  %%%%%%%%%%%%%%%%%%%%
\usepackage[xindy]{imakeidx}
\makeindex
\makeindex[name=person, title={اسم‌ها}, columns=1]
\makeindex[name=place, title={مکان‌ها}, columns=1]
\makeindex[name=doc, title={سندها}, columns=1]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\usepackage{bidipoem}
\usepackage[localise, computeautoilg=on]{xepersian} % <--- changed. quickindex deleted
\settextfont[Scale=1]{Yas}
%\renewcommand\poemcolsepskip{1.0cm}
%\makeindex % <--- deleted
\begin{document}
	مرحوم فروزانفر\درنمایه[person]{فروزانفر} و زرین‌کوب\درنمایه[person]{زرین‌کوب}
	از شارحین بزرگ و به نام آثار مولوی هستند. همچنین دکتر موحد\درنمایه[person]{موحد}
	با تسلط تمام مقالات\درنمایه[doc]{مقالات} را تصحیح نموده است.
	
	مولوی از شهر بصره\درنمایه[place]{بصره} در زمانی نام می‌برد که هنوز ساخته نشده است
	و از این موضع محل نقد\درنمایه{نقد} قرار می‌گیرد. مقبره وی در
	قونیه\درنمایه[place]{قونیه} ترکیه\درنمایه[place]{ترکیه} قرار دارد.
	
	\printindex[person]
	\printindex[place]
	\printindex[doc]
	\printindex
\end{document}

مثلاً برای کلمه‌ای که به مکان مربوط می‌شه، این‌طوری می‌نویسیم:

\درنمایه[place]{Place Name} % or \index[place]{Place Name}

برای اسم:

\درنمایه[person]{Person Name} % or \index[person]{Person Name}

و….


برای اجراکردن، بایستی دستور xindy با متعلقاتش رو برای هر نمایه به کار ببریم؛ ما تو این نمونه کد، چهار نوع نمایه داریم: اسم‌ها (person.idx)، مکان‌ها (place.idx)، سندها (doc.idx)، و بدون نام (example.idx). اجراهای لازم:

1: xelatex
2: xindy -L persian-variant2 -C utf8 -M numeric-sort -M latex -M latex-loc-fmts -M texindy -M page-ranges person.idx
3: xindy -L persian-variant2 -C utf8 -M numeric-sort -M latex -M latex-loc-fmts -M texindy -M page-ranges place.idx
4: xindy -L persian-variant2 -C utf8 -M numeric-sort -M latex -M latex-loc-fmts -M texindy -M page-ranges doc.idx
5: xindy -L persian-variant2 -C utf8 -M numeric-sort -M latex -M latex-loc-fmts -M texindy -M page-ranges example.idx
6: xelatex

نتیجهٔ اجراها بایستی به این صورت باشند:
enter image description here
(عکس را در تب جدید باز کنید)


اگه به نمایهٔ بدون نام نیاز ندارید، بایستی دستورهای

\makeindex
\printindex

حذف، و دستور ۵ هم اجرا نشود.


خروجی:

enter image description here

با تشکر فراوان
من کد را با xelatex اجرا کردم یعنی مرحله اول. اما برای اجرای دستورات ۲ تا ۵ تنظیم خاصی باید در ادیتور TeXworks صورت گیرد؟
توسط (1.2k امتیاز)
برای اجرای دستورهای ۲ تا ۵، من cmd رو ترجیح می‌دم. یدونه cmd در همان مسیر فایل اصلی باز و اون دستورها رو یکی‌یکی اجرا می‌کنم (وقتی دستور ۲ اجرا شد، از روی کیبورد مکان‌نمای بالا رو یه بار می‌زنم تا اون دستور دوباره بیاد؛ بعد در انتهای دستور، اسم نمایهٔ بعدی رو تایپ می‌کنم).

اگه از ویرایشگرهای دیگه استفاده می‌کنین، خیلی راحت می‌شه یدونه گزینه برای همه‌شون تعریف و استفاده کرد.
توسط (3.4k امتیاز)
دستورها در cmd اجرا شد. نمایه‌ها بطور مجزا ایجاد شدند اما مثلا «قونیه» زیر حرف U قرار می‌گیرد. اجرا را چندین بار تکرار کردم اما خطا برطرف نشد.
توسط (1.2k امتیاز)
من مشکلی نداشتم؛ خروجی فایل نمونه رو به پاسخم اضافه کردم.
شما هم همین نمونه رو اجرا کردین؟ یا فایل دیگری است با نمایه‌های انگلیسی که با آن‌ها مشکل دارد؟
توسط (3.4k امتیاز)
من کد شما را عینا کپی کردم و تمام مراحل را هم عینا اجرا کردم. ولی خطا دارد. نمی‌دانم مشکل از کجا است؟
توسط (1.2k امتیاز)
موقع اجرا در cmd، تمام اجراها موفقیت‌آمیز بودند؟ باید پیغام‌های شبیه عکس در پاسخم بیان.
ویرایش شده توسط
توسط (3.4k امتیاز)
فکر کنم فهمیدم مشکل از کجاست. شما دستورها را در Command Prompt اجرا کردید یا در PowerShell؟
نتیجهٔ اجرا باید چیزی شبیه عکس ارسالی در پاسخ باشد.

در PowerShell باید اون نقل‌قول‌های اطراف اسم فایل‌های نمایه رو پاک کنین. از پاسخ هم حذف کردمشون.
توسط (3.4k امتیاز)
من با cmd اجرا می‌کنم. تصویر خروجی را در بالا گذاشته‌ام.
توسط (1.2k امتیاز)
اجراها درست بودند. عجیبه که خروجی‌تون مشکل داره.
با ریموت هم اگه تمایل داشتین بررسی می‌کنم.
توسط (3.4k امتیاز)
پرسیدن سوال
سایت پرسش و پاسخ پارسی‌لاتک جایی برای پرسش و پاسخ درباره سیستم حروف‌چینی لاتک و بسته زی‌پرشین است. در اینجا می‌توانید سوال‌های خود را بپرسید و به سوال‌های دیگران پاسخ دهید.

7.2k پرسش

6.6k پاسخ

23.7k نظر

11.7k کاربر

basket cart icon

محصولات مرتبط با LaTeX

در فروشگاه پارسی‌لاتک


basket cart icon

حمایت مالی از پارسی‌لاتک

برای تامین هزینه‌های نگه‌داری و به‌روزرسانی

محبوب‌ترین برچسب‌ها

رفع خطا جدول xepersian مراجع ریاضی‌نویسی bidi شکل فونت فهرست مطالب شماره‌گذاری منابع پانویس tikz parsilatex بیب‌تک تک‌لایو بیمر اسلاید زی‌پرشین پاورقی سربرگ bibtex نماد رسم شکل فرمول‌نویسی هدر ارجاع‌دهی biditexmaker ویرایشگر قالب beamer واژه‌نامه texstudio اندازه فونت عنوان فصل ماتریس شماره صفحه اعمال نشدن تغییرات در پی‌دی‌اف رسم جدول bidipresentation حاشیه رنگ عنوان شکل اسلاید فارسی محیط قضیه گراف حروف‌چینی کد مکان شکل شماره فصل enumerate tabriz_thesis tikzpicture نمایه align زیرنویس شکل کادر itemize الگوریتم فهرست اشکال listings عدم اجرا نیم‌فاصله فاصله بین خطوط متن لاتین و فارسی hyperref بسته قالب پایان‌نامه فرمول نصب تک‌لایو فارسی‌تک نمودار شماره فرمول glossaries کپشن حروف‌چینی چندستونی خروجی فونت فارسی و انگلیسی ماکرونویسی extrafootnotefeatures لاتک biditools شماره پاورقی پیوست‌ سوال امتحانی فاصله‌گذاری فرمول چندضابطه‌ای tex subfigure biditufte-book header texmaker pdf خطا longtable تصویر شمارنده زیرنویس texlive2015 دیاگرام میک‌تک رسم نمودار شماره‌گذاری صفحات پایان نامه فهرست جداول تورفتگی texlive2016 شعر بولد آکولاد kashida میکروسافت ورد تنظیم جدول سوال چهارگزینه‌ای قاب texworks caption اندیس فاصله عمودی lollipop چپ‌چینی iust-thesis multicol فصل‌نویسی tcolorbox اعداد فارسی pgfplots xindy اوبونتو geometry xelatex texlive کاما fancyhdr وسط‌چینی تک لایو 2015 شماره گذاری به‌روزرسانی بسته aimc46 شکست خط صفر توخالی فرمول طولانی قالب کتاب فونت اعداد بیرون‌زدگی bidipoem عنوان بخش پوستر فاصله سطرها نوشتافت tex-programming قرآن tabriz-thesis ایتالیک winedt جستجوی معکوس فلش جایابی تصویر فهرست تصاویر پاراگراف‌بندی بازیابی اطلاعات هایپرلینک فهرست نمادها شمارنده فصل حروف‌چینی شعر font محیط ریاضی minipage رسم کادر جداکننده جدول طولانی به‌روزرسانی شماره‌گذاری فرمول algorithm2e proof equation eps جدول افقی tabular عکس متن فارسی و انگلیسی پانویس چندستونی کمک مالی فاصله خطوط فونت بولد زیرشکل پانویس پاراگرافی ltrfootnote پیوست computeautoilg فرمول چندخطی persian-bib neveshtuft غلط‌گیری املایی فونت ریاضی پیکان لاتکس قلم baselineskip شماره قسمت عنوان جدول
...