اولین بار است که به اینجا می‌آیید؟ راهنمای سایت را بخوانید!
Close Sidebar
وب‌سایت پرسش و پاسخ پارسی‌لاتک جایی برای پرسش و پاسخ درباره سیستم حروف‌چینی لاتک و بسته زی‌پرشین است. در اینجا می‌توانید سوال‌های خود را بپرسید و به سوال‌های دیگران پاسخ دهید.

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

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

چگونه می‌توان برای سندخود چند نمایه ایجاد کرد؟

+1 رای
1,642 بازدید

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

فایل‌های پیوست
person.png
سوال شده فروردین 3, 1401 توسط سيدسعيد موسوی‌ندوشنی (1,174 امتیاز)
ویرایش شده فروردین 3, 1401 توسط سيدسعيد موسوی‌ندوشنی

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

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

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

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