P: ¿cómo puedo obtener una sangría "adecuada" de los itemize
entornos LaTeX auctex
?
Aquí es donde me gustaría estar con un item
en un itemize
entorno:
\item
la línea tiene dos espacios sangrados en relación con el comienzo del entorno- las líneas de continuación en el elemento tienen sangría dos espacios adicionales en relación con la
\item
línea
Esto es lo que me gustaría / esperar 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}
Se puede ajustar la sangría inicial del elemento con la LaTeX-item-indent
variable, que por defecto es -2
. Con este valor predeterminado, consigo el comportamiento indeseable de la \item
que no se sangría, pero yo hago obtener el comportamiento deseado de las líneas de continuación ser compensado por un dos espacios adicionales:
\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}
Establecer LaTeX-item-indent
en 0
me da la sangría deseada en la \item
línea (dos espacios adentro), pero no me da la segunda mitad del comportamiento deseado de las líneas de continuación que se compensan con dos espacios adicionales:
\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}
Entonces: ¿cómo se obtienen los dos comportamientos deseados?
- sangría inicial de la
\item
línea dos espacios, y - líneas de continuación dos espacios adicionales sangrados?
(Observe el hilo SO relacionado ).
fuente
LaTeX-indent-level
en 4. Los elementos se sangrarán a 4 - 2 = 2 y las líneas de continuación se sangrarán a 4 = 2 + 2. Sin embargo, esto significa que todos los demás entornos del archivo estarán sangrados a 4 (y no 2), que puede o no ser deseable. Prefiero que tengan sangría en 2 ellos mismos, que es donde estoy atascado.LaTeX-indent-environment-list
y agregar una función personalizada para la sangría? La funciónLaTeX-indent-tabular
puede proporcionar un punto de partida razonable (o al menos un ejemplo razonable de sangría personalizada dentro de un entorno). Me topé con esta variable / función, por lo que no he tenido la oportunidad de analizarla yo mismo.Respuestas:
El comentario de @ sykora
(setq LaTeX-item-indent -2 LaTeX-indent-level 4)
casi está ahí, pero significa que también nos contagiamos a todos los demás entornos. Entonces, por ejemplo, también tendríamos:La siguiente función se basa en un fragmento de código antiguo (¿y aparentemente roto?) De Tassilo Horn . Obtiene la sangría correcta, incluso para entornos anidados. Funciona para
itemize
,enumerate
ydescription
entornos, para arrancar:No puedo evitar sentir que hay una configuración muy simple que me falta y esta es la versión de Rube Goldberg . Aún así, funciona y rasca una picazón que he tenido durante años .
EDITAR: en respuesta al comentario de @ sykora, he revisado la función para eliminar la codificación rígida.
\item
Los s ahora sonLaTeX-indent-level
espacios sangrados . Las líneas de continuación pueden tomar el valor de una nueva variableLaTeX-indent-level-item-continuation
o, si no desea vincular esta última, el doble del valor deLaTeX-indent-level
.Como sucede, la unión y el ajuste
LaTeX-indent-level-item-continuation
a 8 dan resultados estéticamente agradables. Incluso podría cambiarlo:fuente
latex.el
, es decir,(+ (LaTeX-indent-calculate-last force-type) LaTeX-item-indent))
está contribuyendo al nivel de sangría.LaTeX-indent-level
o una nueva variable -LateX-item-continuation-indent
?