(Mac)当语法设置为Ruby时,Vim相当缓慢

栏目: Ruby · 发布时间: 7年前

内容简介:http://stackoverflow.com/questions/22949067/macvim-quite-slow-when-syntax-is-set-to-ruby

我在MacVim 7.4(我使用命令行版本),通过Homebrew安装.

当语法突出显示 Ruby 代码时,Vim缓慢.当在vim中的Ruby文件中移动时,htop显示80%-100%的CPU使用率.

我在这里发现了这些:

> Vim slow with ruby syntax highlighting

> Syntax highlighting causes terrible lag in Vim

并尝试了提出的解决方案.我做了什么:

> set regexpengine = 1:没有改变.仍然非常高的CPU使用率和缓慢的性能.

> set lazyredraw:事情更好,但权衡非常明显(移动时光标消失)

>我检查了我的.vimrc中的autocmd语句,发现没有什么特别慢.我尝试删除所有的插件,但问题仍然存在.

我尝试关闭语法,并且解决了这个问题.另外,使用vim -u NONE启动vim,然后转动语法来解决问题,所以它一定是我的.vimrc中的东西?

Here 的链接到我的vimrc.

编辑

我可能已经发现有罪的设置.似乎有两个设置在vim中显着减慢移动速度:

>设置相对数

>设置光标

请注意,这两个设置都可以触发此行为.

这些设置强制vim在滚动保持j或k时在屏幕上重画相当多的东西.

我怀疑在这里有一个解决方案,但我非常乐意加快速度.

编辑#2

请注意,relativenumber和cursorline仅在Ruby文件中使用时触发此行为.我试过的每一个其他文件类型(相对于数字和光标)滚动顺畅,无论多长时间.

正如avivr所说,由于foldmethod = syntax,Vim有时很慢(特别是对于ins-completion)在大文件中

来自:help todo:

  • Slow combination of folding and PHP syntax highlighting. Script to

    reproduce it. Caused by “syntax sync fromstart” in combination with patch

    7.2.274. (Christian Brabandt, 2010 May 27) Generally, folding with

    ‘foldmethod’ set to “syntax” is slow. Do profiling to find out why.

FastFold plugin 使得折叠仅在保存时重新计算(所以您始终使用foldmethod =手动 – 但折叠使用foldmethod =语法或之前设置的任何内容计算).

这解决了我的问题.现在我可以在我的5000行C文件中使用完全整数的完成,而且它是瞬间的,而不是花费几分钟而无法响应.

http://stackoverflow.com/questions/22949067/macvim-quite-slow-when-syntax-is-set-to-ruby


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人工智能

人工智能

李开复、王咏刚 / 文化发展出版社 / 2017-5-10 / CNY 55.00

人工智能已经来了,它就在我们身边,几乎无处不在。 人工智能技术正在彻底改变人类的认知,重建人机相互协作的关系。史无前例的自动驾驶正在重构我们头脑中的出行地图和人类生活图景,今天的人工智能技术也正在翻译、写作、绘画等人文和艺术领域进行大胆的尝试。 我们真的知道什么是人工智能吗? 我们真的准备好与人工智能共同发展了吗? 我们该如何在心理上将人和机器摆在正确的位置? 我们该......一起来看看 《人工智能》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具