在某些情况下,Vim的响应速度很慢。是否有一个程序可以轻松识别导致问题的原因?

评论

您安装了任何插件吗?

类似于bash -x来查看执行的内容将很有用。

@Melon:是的,我只安装了1个插件。大师:您能进一步解释吗?

丹吉特,我回答了一个重复。当我投票关闭此副本时,我也回应您的评论:删除2个字后,不应将LatexBox调用2000次。现在,您已经找到了问题,您必须使用该插件。希望我对LatexBox有更多了解,以帮助您。

@Carpetsmoker是的,这个答案与我对这个问题的想法非常接近。

#1 楼

Vim具有一组内置的配置文件命令。请参见:h profile

您将打开vim,然后运行以下命令

:profile start profile.log


这会将文件profile.log设置为日志文件。 。如果已经存在,它将被覆盖。现在,我们需要告诉vim要概要分析的内容

:profile func *
:profile file *


这表示对所有函数和所有脚本文件进行概要分析。过度杀伤,也许。现在,您应该做一些使vim动作缓慢的事情。它们正在后台进行概要分析。确定结论后,结束分析。

:profile pause


退出vim。现在,阅读profile.log文件,看看运行缓慢。注意,这是为了在vim内部缓慢运行。如果vim启动缓慢(另一个问题),则应使用

vim --startuptime log.txt


并阅读时间,看看花费了多长时间。

评论


我听了你的指示。开始分析后,我使用dw两次,然后退出。然后查看日志,我得到了FUNCTION LatexBox_FoldLevel(),调用了1930次

–德米特
15年2月4日在9:16

当我尝试此操作时,我得到“ E319:对不起,该命令在此版本中不可用”

–巴里·麦克纳马拉(Barry McNamara)
19 Mar 15 '19在15:31

@BarryMcNamara您可以在:h配置文件中查看有关此内容的更多信息。使用profile需要vim用+ profile编译,这对于发行版中提供的许多(但不是全部)vim二进制文件都是正确的。您可以尝试编译自己的vim,或安装功能更全的二进制文件。

–davidlowryduda
19 Mar 16 '19在0:35

我使用的是默认的Mac版本,看来我具有普通版本,而个人资料仅包含在大型版本中。但是,通过将.vimrc重命名为其他名称,然后将其重命名,我设法解决了遇到的延迟问题。

–巴里·麦克纳马拉(Barry McNamara)
19-3-17的1:16