Латекс: сделать \listoffigures похожими на \listoftables или \lstlistoflistings

У меня есть список списков в конце моего документа после моего списка таблиц и моего списка рисунков. Что меня действительно раздражает, так это то, что они выглядят одинаково, за исключением того, что список списков не оставляет пробела между главами.

У меня был хороший Google, и люди задавали тот же вопрос, но, похоже, не получили никакого ответа.

Есть ли у них какая-то причина, почему они не выглядят одинаково, и их нужно сделать краткими?

1 ответ

Решение

Причина этого заключается в том, что вертикальный интервал между главами в списке рисунков (lof) и списке таблиц (lot) добавляется \chapter команда, и просто нет такого положения для списка объявлений (смеется).

Как это исправить, немного зависит от класса документа, который вы используете. Если вы используете отличный memoir класс, крючки для этого уже предусмотрены:

\renewcommand{\memchapinfo}[4]{%
  \addtocontents{lol}{\protect\addvspace{10pt}}}

Если ваши списки появляются в приложениях, вы подключите \memappchapinfo вместо \memchapinfo, (Обратитесь к разделу 18.25 руководства по мемуарам для получения списка доступных крючков.)

Если вы не используете memoirвам, как правило, нужно подключить свой класс \@chapter команда. Это может выглядеть, например:

\makeatletter
\let\my@chapter\@chapter
\renewcommand*{\@chapter}{%
  \addtocontents{lol}{\protect\addvspace{10pt}}%
  \my@chapter}
\makeatother

Вы можете легко проверить, что используется для создания LOL, проверив .lol файл, соответствующий вашему документу. Если ваш документ, например, base.texпосмотри в base.lol, Вы должны увидеть что-то вроде:

\contentsline {lstlisting}{...}{...}
\contentsline {lstlisting}{...}{...}
\addvspace {10pt}
\contentsline {lstlisting}{...}{...}

Обратите внимание \addvspace разделение строк содержимого из разных глав.

Поскольку фактический код, используемый для вставки пробелов между главами, также зависит от класса документа, адаптируйте фактический \addvspace Команда должна быть такой же, как в вашем .lof или же .lot файлы.

Другие вопросы по тегам