使用长行编辑xml文件在vim中确实很慢.我该怎么做才能解决这个问题?

47 xml vim performance

我用vim编辑了很多xml文件.问题是,由于线条较长,vim中的导航/编辑速度极慢.有什么我可以做的(除了关闭语法高亮/文件类型插件和文件类型缩进),以便能够编辑这些文件没有所有滞后?

令人沮丧的是,语法突出显示等微不足道的事情被vim处理得如此糟糕.我不记得这是任何其他编辑的问题.我真的很喜欢使用vim,我希望有一些方法可以解决这个问题.

Gab*_*art 58

问题是VIM语法突出显示对于长行来说很慢.只是稍微降低功能性的简单修复是将语法突出显示限制为前x列.你的东西是这样的.vimrc:

set synmaxcol=120
Run Code Online (Sandbox Code Playgroud)


Ben*_*min 12

这是2014年,我使用Vim版本7.4.语法高亮和长行组合仍会导致vim表现得慢得令人无法接受.由于这是Google返回的第一个回复,我想放弃我的"当前"解决方案.

  • 我发现只需在加载有问题的文件后打开和关闭语法,就可以让vim以可接受的速度运行.为方便起见,您可以绑定它

    :syntax off :syntax on

    或绑定它: nnoremap <leader>ts :syntax off<cr>:syntax on<cr>

  • 我还发现,获取我的.vimrc会产生相同的结果

    :source $MYVIMRC

    和强制性地图: nnoremap <leader>sv :source $MYVIMRC<cr>

EDIt ---- 07/31/14

进一步的探索使我限制了最大列的语法.这非常有效,我没有遇到任何问题,因为我已将下面的内容添加到我的vimrc中.

set synmaxcol=250
Run Code Online (Sandbox Code Playgroud)

这极大地限制了前250列的语法.


小智 10

:set nocursorline
Run Code Online (Sandbox Code Playgroud)

应该有所帮助


Dir*_*mar 7

如何漂亮打印XML文件(如果行长度是真正的问题)?你可以这样做,例如使用xmllint它是Gnome libxml2包的一部分(并且还有一个适用于Windows的版本).

您可以通过执行来就地打印

xmllint --format -o xmlFile.xml xmlFile.xml
Run Code Online (Sandbox Code Playgroud)


Joh*_*ter 7

你有线路禁用吗?根据我的经验,当使用很长的线条时,换行可以减慢vim的速度.

set nowrap
Run Code Online (Sandbox Code Playgroud)


Roo*_*ook 4

没有。据我所知,这是语法突出显示。事实上,Vim 使用的正则表达式方法并不是编辑 xml 文件的最佳解决方案。

(当然,你也可以尝试编写自己的xml语法文件,希望你能做得更好)