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

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

با سلام
آیا در لاتک امکان دارد که برای هر فصلی یک فهرست جداگانه ای داشت که قبل از آن فصل بیاید یا خیر؟
ممنون می شوم راهنمایی کنید.

2 پاسخ

+1 رای

کد زیر را ببینید. اون چیزی که مد نظرتون هست با توضیحات کامل نوشتم. البته با این روش، یعنی استفاده از بسته minitoc، فهرست فصل، فقط می‌تواند داخل آن فصل گنجانده شود و در صورتی که بخواهید آن را قبل از شروع فصل بیاورید، احتمالا به ماکرونویسی نیاز خواهید داشت؛ که البته منطقی هم نیست و جایی ندیده‌ام که فهرست یک فصل را قبل از شروع فصل نمایش بدهند.
در صورتی که این جواب، کارتون را راه انداخت، لطفا دکمه تایید را بزنید.

نمایی از اجرای کد را در این عکس ببینید:

نمایی از اجرای کد و نمایش فهرست محتوای یک فصل در ابتدای آن

توضیحات درون کد، کاملا واضح است؛ ولی با این وجود، توضیح دستورات استفاده شده خارج از محیط کد، خالی از لطف نیست.

  • با بسته minitoc‍ می‌توانید علاوه بر فهرست کتاب، در ابتدای هر فصل نیز یک فهرست مطالب برای همان فصل داشته باشید. البته می‌توان فهرست فصل را در هر جای فصل قرار داد ولی منطقی و مرسوم این است که این فهرست، در ابتدای فصل قرار گیرد.

  • فهرست هر فصل، جایگزین فهرست کل کتاب نیست؛ به این معنی که نمی‌توانید بدون حروفچینی فهرست کلی، فهرست فصل را حروفچینی کنید و در صورت رعایت نکردن این موضوع، با پیغام خطا مواجه می‌شوید.

  • در صورت فراخوانی این بسته با گزینه اختیاری undotted، خطچین بین عنوان و شماره صفحه حذف می‌شود.

  • با دستور \mtcsetdepth{minitoc}{3} در مقدمه فایل لاتک، می‌توانید تعریف کنید که فهرست فصل، تا چه سطحی از بخش‌بندی را شامل شود. به عنوان مثال با این دستور، بخش، زیربخش و زیرزیربخش نمایش داده می‌شود. در صورتی که بخواهید فقط بخش‌ها نمایش داده شوند، عدد ۱ را وارد کنید. با وارد کردن عدد ۲، بخش و زیربخش نمایش داده می‌شوند ولی زیرزیربخش‌ها نمایش داده نمی‌شوند. این قابلیت در کتاب‌هایی که تنوع مطالب در آن‌ها بالاست، خیلی به کار می‌آید؛ به این صورت که فهرست اصلی خود را تا سطوح کمتر و فهرست فصل را شلوغ‌تر و با جزئیات بیشتر نمایش دهید. در کد نمونه زیر، این نکته رعایت شده است.

  • دستور \mtcsettitle{minitoc}{<Title>} برای این است که عنوان دلخواه خود را در مقدمه فایل لاتک، برای فهرست فصل تعریف کنید. به جای <Title> عنوان دلخواه خود را بنویسید و اگر آن را خالی بگذارید، هیچ عنوانی برای فهرست فصل، در نظر گرفته نمی‌شود.

  • دستور \nomtcpagenumbers را در مقدمه فایل لاتک تعریف کنید تا شماره صفحات فهرست حذف شوند. این دستور در کد نمونه غیر فعال (کامنت) شده است.

  • با دستور \mtcsetrules{minitoc}{off} در مقدمه فایل لاتک، خطوط افقی بالا و پایین فهرست فصل، حذف می‌شود. این دستور در کد نمونه غیر فعال (کامنت) شده است.

  • فهرست فصل، از دو طرف تورفتگی دارد. مقدار این تورفتگی را می‌توانید با وارد کردن دستوری در مقدمه فایل لاتک تغییر دهید. با دستور \setlength{\mtcindent}{15pt}، مقدار تورفتگی از سمت راست و چپ، 15pt در نظر گرفته می‌شود. می‌توانید عدد منفی وارد کنید و به جای تورفتگی، بیرون‌زدگی ایجاد کنید. در نظر داشته باشید که تورفتگی سمت عناوین، بیشتر از تورفتگی سمت شماره صفحات است که این به دلیل تورفتگی کلی اول همه پاراگراف‌هاست.

  • با وارد کردن دستور \renewcommand{\mtcoffset}{5pt} در مقدمه فایل لاتک، فهرست فصل به اندازه 5pt آفست می‌شود، یعنی همه محتویات، به اندازه 5pt در جهت افقی جابجا می‌شوند. در صورتی که عدد منفی وارد کنید، محتویات فهرست فصل، در جهت عکس جابجا می‌شوند.


\documentclass{book}

\usepackage{lipsum}

% Set depth of sectional level:
\setcounter{secnumdepth}{3}

% Set depth of the major TOC:
\setcounter{tocdepth}{2}

% By this package, you can add TOC for each chapter in addition to the major TOC.
% Use the option 'undotted' to eliminate dotted line between title of each topic
% and its page number; in this way: '\usepackage[undotted]{minitoc}'.
\usepackage{minitoc}

% Set depth of miniTOC. Set to '1', then you see sections, and don't see
% subsections, subsubsections; or set to '2', then you see sections and
% subsections, and don't see subsubsections.
\mtcsetdepth{minitoc}{3}

% This command changes title of miniTOC.
\mtcsettitle{minitoc}{The Chapter's Topic}

% This command eliminates page number from miniTOC.
%\nomtcpagenumbers

% This command switches 'off', rules above and below miniTOC.
%\mtcsetrules{minitoc}{off}

% Change the indent of miniTOC:
%\setlength{\mtcindent}{15pt}

% Offset miniTOC horizontally:
%\renewcommand{\mtcoffset}{5pt}

% Define the title page:
\title{How to Make Table of Contents\\ for Individual Chapters}
\author{Abbas Shams\\\texttt{abbas.shams@gmail.com}}
\date{July 19, 2023}

\begin{document}
  % Force LaTeX to make TOC at the begining of desired chapters. This command
  % must be called before any commands within the 'document' environment.
  \dominitoc
  
  % Make title page:
  \maketitle
  
  % Make the major TOC:
  \tableofcontents
  
  \chapter{First Topic}
  % Make miniTOC for this chapter:
  \minitoc
  
  \lipsum[1]
  
  \section{First Topic-Section One}
  
  \lipsum[2]
  
  \section{First Topic-Section Two}
  
  \lipsum[3]
  
  \section{First Topic-Section Three}
  
  \lipsum[4]
  
  \subsection{First Topic-Section Three-Subsection One}
  
  \lipsum[5]
  
  \subsubsection{First Subsubsectin}
  
  \lipsum[6]
  
  \subsubsection{Second Subsubsectin}
  
  \lipsum[7]
  
  \subsection{First Topic-Section Three-Subsection Two}
  
  \lipsum[8]
  
  \chapter{Second Topic}
  % Make miniTOC for this chapter:
  \minitoc
  
  \lipsum[1]
  
  \section{Second Topic-Section One}
  
  \lipsum[2]
  
  \section{Second Topic-Section Two}
  
  \lipsum[3]
  
  \section{Second Topic-Section Three}
  
  \lipsum[4]
  
  \subsection{Second Topic-Section Three-Subsection One}
  
  \lipsum[5]
  
  \subsubsection{First Subsubsectin}
  
  \lipsum[6]
  
  \subsubsection{Second Subsubsectin}
  
  \lipsum[7]
  
  \subsection{Second Topic-Section Three-Subsection Two}
  
  \lipsum[8]
  
\end{document}

این مطلب در مورد متون فارسی هم امتحان شد و فایل نمونه و خروجی آن در پاسخی جداگانه ارائه گردید.

0 رای

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

کد نمونه و تصویری از خروجی را می‌توانید در اینجا مشاهده کنید.

تصویری از خروجی فایل حاوی فهرست مطالب هر فصل


\documentclass{book}

\usepackage{ptext}

% Set depth of sectional level:
\setcounter{secnumdepth}{3}

% Set depth of the major TOC:
\setcounter{tocdepth}{2}

% By this package, you can add TOC for each chapter in addition to the major TOC.
% Use the option 'undotted' to eliminate dotted line between title of each topic
% and its page number; in this way: '\usepackage[undotted]{minitoc}'.
\usepackage{minitoc}

% Set depth of miniTOC. Set to '1', then you see sections, and don't see
% subsections, subsubsections; or set to '2', then you see sections and
% subsections, and don't see subsubsections.
\mtcsetdepth{minitoc}{3}

% This command changes title of miniTOC.
\mtcsettitle{minitoc}{\text{محتوای فصل}}

% This command eliminates page number from miniTOC.
%\nomtcpagenumbers

% This command switches 'off', rules above and below miniTOC.
%\mtcsetrules{minitoc}{off}

% Change the indent of miniTOC:
%\setlength{\mtcindent}{15pt}

% Offset miniTOC horizontally:
%\renewcommand{\mtcoffset}{5pt}

\usepackage{xepersian}
\settextfont{XB Niloofar}
\settextfont{Yas}

% Define the title page:
\title{چگونه در ابتدای هر فصل، یک فهرست مطالب\\%
    برای همان فصل درست کنیم}
\author{عباس شمس\\\texttt{abbas.shams@gmail.com}}
\date{۲۸ تیر ۱۴۰۲}

\begin{document}
    % Force LaTeX to make TOC at the begining of desired chapters. This command
    % must be called before any commands within the 'document' environment.
    \dominitoc
    
    % Make title page:
    \maketitle
    
    % Make the major TOC:
    \tableofcontents
    
    \chapter{حکایات}
    % Make miniTOC for this chapter:
    \minitoc
    
    \ptext[1]
    
    \section{داستان‌های شگفت}
    
    \ptext[2]
    
    \section{داستان راستان}
    
    \ptext[3]
    
    \section{حکایات گلستان سعدی}
    
    \ptext[4]
    
    \subsection{باب اول}
    
    \ptext[5]
    
    \subsubsection{حکایت اول}
    
    \ptext[6]
    
    \subsubsection{حکایت دوم}
    
    \ptext[7]
    
    \subsection{باب دوم}
    
    \ptext[8]
    
    \chapter{نکات نغز}
    % Make miniTOC for this chapter:
    \minitoc
    
    \ptext[1]
    
    \section{ابوسعید ابوالخیر}
    
    \ptext[2]
    
    \section{وصال شیرازی}
    
    \ptext[3]
    
    \section{مولوی}
    
    \ptext[4]
    
    \subsection{مثنوی معنوی}
    
    \ptext[5]
    
    \subsubsection{دفتر اول}
    
    \ptext[6]
    
    \subsubsection{دفتر دوم}
    
    \ptext[7]
    
    \subsection{دیوان شمس}
    
    \ptext[8]
    
\end{document}

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

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 شماره قسمت عنوان جدول
...