У меня есть список списков в конце моего документа после моего списка таблиц и моего списка чисел. Вещь, которая является действительно раздражающей меня, состоит в том, что они выглядят одинаково кроме списка списков, не оставляет разрыв строки между главами.
У меня был хороший Google вокруг, и у людей задали тот же вопрос, но, кажется, не было ответа.
Состоит в том их любая причина, почему они не выглядят одинаково и она быть сделанными выглядеть краткими?
Причина в том, что вертикальный интервал между главами в списке рисунков (lof) и списке таблиц (lot) добавляется командой \chapter
, а для списка листингов (lol) такого положения просто нет.
Как это исправить, немного зависит от класса документа, который вы используете. Если вы используете замечательный класс memoir
, крючки для этой цели уже предусмотрены:
\renewcommand{\memchapinfo}[4]{%
\addtocontents{lol}{\protect\addvspace{10pt}}}
Если ваши списки появляются в приложениях, вам понадобится крючок \memappchapinfo
вместо \memchapinfo
. (Список доступных хуков приведен в разделе 18.25 руководства memoir)
Если вы не используете 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
.