Lattice: FARE \ listoffigures sembrano \ listoftables o \ lstlistoflistings
Domanda
Ho un elenco di annunci alla fine del mio documento seguendo la mia lista delle tabelle e la mia lista delle figure. La cosa che è davvero fastidioso me è che lo stesso aspetto, tranne la lista di annunci non lasceranno al confine tra i capitoli.
Ho avuto un buon google intorno e la gente ha fatto la stessa domanda, ma non sembrano avere avuto alcuna risposta.
È il loro alcuna ragione per cui essi non hanno lo stesso aspetto e essere fatti per guardare conciso?
Soluzione
La ragione di questo è che la distanza verticale tra i capitoli nella lista delle figure (OL) e elenco delle tabelle (lotto) viene aggiunto dal comando \chapter
, e non v'è semplicemente nessuna di tali disposizioni per la lista di annunci (lol ).
Come risolvere questo dipende un po 'dalla classe di documento che si sta utilizzando. Se si utilizza l'eccellente classe memoir
, sono già previsti ganci per questo scopo:
\renewcommand{\memchapinfo}[4]{%
\addtocontents{lol}{\protect\addvspace{10pt}}}
Se i tuoi annunci vengono visualizzati nelle appendici, ti agganciare \memappchapinfo
invece di \memchapinfo
. (Sezione 18.25 del manuale memorie per un elenco di ganci disponibili consultabili.)
Se non si utilizza memoir
, avrete in genere bisogno di collegare il vostro comando \@chapter
di classe. Questo potrebbe sembrare, ad esempio:
\makeatletter
\let\my@chapter\@chapter
\renewcommand*{\@chapter}{%
\addtocontents{lol}{\protect\addvspace{10pt}}%
\my@chapter}
\makeatother
Si può facilmente verificare quello che viene utilizzato per generare la lol controllando il file .lol
corrispondente al documento. Se il documento è, ad esempio, base.tex
, guardare in base.lol
. Si dovrebbe vedere qualcosa di simile:
\contentsline {lstlisting}{...}{...}
\contentsline {lstlisting}{...}{...}
\addvspace {10pt}
\contentsline {lstlisting}{...}{...}
Si noti la \addvspace
separa le linee contenuto da diversi capitoli.
Mentre il codice effettivo utilizzato per inserire la spaziatura tra i capitoli dipende anche dalla classe di documento, adattare il comando effettivo \addvspace
ad essere lo stesso nei file .lof
o .lot
.