P: como posso obter o recuo "adequado" dos itemize
ambientes LaTeX auctex
?
Aqui é onde eu gostaria de estar com item
um itemize
ambiente:
\item
A linha é recuada dois espaços em relação ao início do ambiente- linhas de continuação no item são recuadas dois espaços adicionais em relação à
\item
linha
Isto é o que eu gostaria / esperava ver:
\begin{itemize}
\item Here's a really long item in a LaTeX itemize environment;
note how the *initial* item line is indented two spaces, and the
continuation lines are indented another two spaces.
\end{itemize}
Pode-se ajustar o recuo inicial do item com a LaTeX-item-indent
variável, cujo padrão é -2
. Com este padrão, eu recebo o comportamento indesejável da \item
não sendo recuado, mas eu faço obter o comportamento desejado das linhas de continuação sendo compensados por mais dois espaços:
\begin{itemize}
\item Here's a really long item in a LaTeX itemize environment;
note how the *initial* item line is *NOT* indented two spaces,
but the continuation lines are indented two spaces.
\end{itemize}
Definir LaTeX-item-indent
para 0
obtém o recuo desejado na \item
linha (dois espaços em), mas não obtém a segunda metade do comportamento desejado das linhas de continuação sendo compensadas por dois espaços adicionais:
\begin{itemize}
\item Here's a really long item in a LaTeX itemize environment;
note how the *initial* item line is indented two spaces, but the
continuation lines are *NOT* indented an additional two spaces.
\end{itemize}
Então: como obter os dois comportamentos desejados:
- recuo inicial da
\item
linha dois espaços e - linhas de continuação dois espaços adicionais recuados?
(Observe o thread SO relacionado .)
fonte
LaTeX-indent-level
4. Os itens serão recuados para 4 - 2 = 2 e as linhas de continuação serão recuadas para 4 = 2 + 2. No entanto, isso significa que todos os outros ambientes no arquivo serão recuados para 4 (e não 2), o que pode ou não ser desejável. Eu prefiro que eles sejam recuados em 2 eles mesmos, que é onde eu estou preso.LaTeX-indent-environment-list
e adicionar uma função personalizada para recuo? A funçãoLaTeX-indent-tabular
pode fornecer um ponto de partida razoável (ou pelo menos um exemplo razoável de recuo personalizado dentro de um ambiente). Eu apenas me deparei com essa variável / função, então não tive a chance de investigar por mim mesma.Respostas:
O comentário de @ sykora
(setq LaTeX-item-indent -2 LaTeX-indent-level 4)
está quase lá, mas significa que também passamos para todos os outros ambientes. Então, por exemplo, também teríamos:A função a seguir cria um trecho de código antigo (e aparentemente quebrado?) Do Tassilo Horn . Ele obtém o recuo correto, inclusive para ambientes aninhados. Ele funciona para
itemize
,enumerate
edescription
ambientes, para inicializar:Não posso deixar de sentir que estou perdendo uma configuração muito simples e esta é a versão do Rube Goldberg . Ainda assim, ele funciona e arranha uma coceira que sinto há anos .
EDIT: em resposta ao comentário do @ sykora, revi a função para remover a codificação.
\item
s agora sãoLaTeX-indent-level
espaços recuados . As linhas de continuação podem assumir o valor de uma nova variável,LaTeX-indent-level-item-continuation
ou, se você não quiser vincular a última, duas vezes o valor deLaTeX-indent-level
.Por acaso, a ligação e a configuração
LaTeX-indent-level-item-continuation
para 8 oferecem resultados esteticamente agradáveis. Eu posso até mudar para ele:fonte
latex.el
- isto é,(+ (LaTeX-indent-calculate-last force-type) LaTeX-item-indent))
- está contribuindo para o nível de recuo.LaTeX-indent-level
ou uma nova variável -LateX-item-continuation-indent
?