VIM自动缩进LaTeX文件有问题

17

我想使用gg=G对一些LaTeX文件进行缩进,但是我得到了一个错误的缩进。

\title{                                                                         
\rule{\textwidth}{1pt}\\[0.5em] \huge                                           
\textsc{My headline           
\rule{\textwidth}{1pt}}                                                         
}

我得到的是什么:

\title{
    \rule{\textwidth}{1pt}\\[0.5em] \huge
        \textsc{My headline
            \rule{\textwidth}{1pt}}
}

我想要的(或类似):

\title{
    \rule{\textwidth}{1pt}\\[0.5em] \huge
    \textsc{My headline
    \rule{\textwidth}{1pt}}
}

这正常吗?是配置文件出错了吗?还是标志或插件有问题?有人能帮忙吗?谢谢!


1
你在使用vim时得到的缩进是正确的,因为\rule位于\textsc内部,而\textsc又位于\huge内部。 - rbernabe
2
你也可以尝试在现有的LaTeX文件上使用latexindent.plx Perl脚本 - Werner
你可以尝试使用 filetype indent on - zyy
2个回答

5
我一直使用VIM时遇到了糟糕的缩进问题,即使尝试了很多方法也没有解决。如果有帮助的话,我会关闭自动缩进并手动进行缩进。有自动缩进、智能缩进和其他“极客”缩进类型设置,如果您想尝试开关组合的话。你可以参考这个链接:http://vim.wikia.com/wiki/How_to_stop_auto_indenting。此外,也许您需要使用:set paste来尝试,这是一个粘贴文本并进行缩进的命令。你可以看看这个链接:http://ayaz.wordpress.com/2008/06/21/paste-mode-pasting-text-and-indenting-it-in-vim/

0

对于 .tex 文件,默认的缩进设置为 plain TeX,您可以通过在 .vimrc 中添加以下行来将其设置为 LaTeX:

 let g:tex_flavor='latex'

6
无济于事。缩进仍然无法正常工作。例如,在输入\item后,当我想在下一行输入另一个\item时,它会自动再次缩进两个空格。 - xji
4
事实证明,我对此有误解。如果我实际上键入 \item,它将会跳回缩进位置。 - xji

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接