LATEX: Faça ListOffigures se parecem com listOftables ou lstlistOflistings

StackOverflow https://stackoverflow.com/questions/3029271

  •  26-09-2019
  •  | 
  •  

Pergunta

Eu tenho uma lista de listagens no final do meu documento, seguindo minha lista de tabelas e minha lista de figuras. O que realmente me irritava é que eles parecem iguais, exceto que a lista de listagens não deixa uma lacuna de linha entre os capítulos.

Eu tive um bom Google por perto e as pessoas fizeram a mesma pergunta, mas não parecem ter tido nenhuma resposta.

O seu motivo é que eles não parecem iguais e são feitos para parecer conciso?

Foi útil?

Solução

A razão para isso é que o espaçamento vertical entre os capítulos na lista de figuras (LOF) e a lista de tabelas (lote) é adicionado pelo \chapter Comando, e simplesmente não existe essa disposição para a lista de listagens (LOL).

Como corrigir isso depende um pouco da classe de documentos que você está usando. Se você está usando o excelente memoir Aula, ganchos para esse fim já são fornecidos:

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

Se suas listagens estiverem aparecendo nos apêndices, você conectará \memappchapinfo ao invés de \memchapinfo. (Consulte a seção 18.25 do manual de memórias para uma lista de ganchos disponíveis.)

Se você não está usando memoir, você normalmente precisa conectar sua aula ' \@chapter comando. Isso pode parecer, por exemplo:

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

Você pode verificar facilmente o que é usado para gerar o LOL, verificando o .lol arquivo correspondente ao seu documento. Se o seu documento é, por exemplo, base.tex, investigar base.lol. Você deve ver algo como:

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

Note o \addvspace separando as linhas de conteúdo de diferentes capítulos.

Como o código real usado para inserir o espaçamento entre os capítulos também depende da classe de documentos, adapte o real \addvspace comando para ser o mesmo que em seu .lof ou .lot arquivos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top