2010-06-12 1 views
4

У меня есть список списков в конце моего документа, следующий за списком таблиц и списком цифр. То, что меня действительно раздражает, это то, что они выглядят одинаково, за исключением того, что список списков не оставляет разрыва между разделами.Latex: Сделать listoffigures похожим на listoftables или lstlistoflistings

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

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

+0

Возможно, вы захотите изменить заголовок, поскольку то, что вы ищете, похоже на «Сделать \ lstlistoflistings похожим на \ listoffigures или \ listoftables". – earl

ответ

6

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

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

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

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

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

\makeatletter 
\let\[email protected]\@chapter 
\renewcommand*{\@chapter}{% 
    \addtocontents{lol}{\protect\addvspace{10pt}}% 
    \[email protected]} 
\makeatother 

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

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

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

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

+0

Я не использую класс мемуаров, я использую отчет. Ваше предложение для занятий, отличных от мемуаров, работало как шарм. Спасибо! – Aetius

Смежные вопросы