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

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

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

چرا وجود فاصله در دستور index باعث ایجاد نمایه‌ی تهی می‌شود؟

+1 رای
69 بازدید

سلام
چرا وجود فاصله خالی بین دستور \index و آکولاد آن باعث ایجاد نمایه‌ی خالی می‌شود؟ مگه نباید فاصله خالی تا آکولاد مشابه با دیگر دستورها حذف شود؟

کد زیر را به عنوان مثال درنظر بگیرید:

\documentclass{article}
\usepackage{makeidx}
\makeindex
\begin{document}

\index{a}
\index {a}

\printindex
\end{document}

که خروجی آن عبارت است از شکل زیر
enter image description here

سوال شده 18 مهر 1396 توسط فرشاد ترابی (2,825 امتیاز)

1 پاسخ

+2 رای
 
بهترین پاسخ

وقتی شما می‌گید \index{a} (منظورم اولین نمایه شماست) در سطح پائین این اتفاقی هست که میفته

   \write\@indexfile%
      {\string\indexentry{a}{\thepage}}

نمایه شما با استفاده از دستور بدوی \write به فایل .idx نوشته می‌شود. تک وقتی دستور \write رو می‌بینه همون موقع process نمی‌کنه بلکه پردازشش تا زمانی که تک صفحه رو در زمان shipout می‌سازه به تأخیر می‌انجامه. به عنوان نمونه اگر شما فایل نمونه زیر رو اجرا کنید:

\documentclass{article}
\usepackage{makeidx}
\makeindex
\begin{document}
\index{a}


\printindex
\end{document}

در فایل .idx هیچ چیزی وجود نداره چون در صفحه چیزی وجود نداره. در مورد نمونه شما

\documentclass{article}
\usepackage{makeidx}
\makeindex
\begin{document}

\index{a}
\index {a}

\printindex
\end{document}

در مورد نمایه دوم یعنی \index {a} آرگومان \index فاصله خالی بعدش هست و {a} بصورت معمولی و نه آرگومان دستور \index چاپ میشه. برای اطلاعات بیشتر فصل ۲۱ کتاب TeXBook کنوث صفحه ۲۲۷ رو بخونید.

پاسخ داده شده 18 مهر 1396 توسط وفا (18,737 امتیاز)
انتخاب شده 26 مهر 1396 توسط فرشاد ترابی
ممنونم از پاسخ شما. این نشون می‌ده که باید حتما فاصله رو برداریم. یه راه که به ذهنم می‌رسه اینه که از یه دستور کمکی استفاده کنیم به این صورت \def\Index#1{\index{#1}} آیا از لحاظ عملیاتی مشکلی پیش میاره؟
نه پیش نمیاره
...