资讯专栏INFORMATION COLUMN

VIM 为什么光标移动缓慢

Tangpj / 1433人阅读

摘要:通过开启追踪发现,每次移动都会执行一个这样的函数,很明显是高亮对应的括号这样的功能。光标移动缓慢上没感觉,但是同样的配置在树莓派上很糟糕,移动都非常缓慢,大概等接近一秒才能反应,这让人有点不能忍。

关键词:vim Highlight_Matching_Pair slow

Mac上没感觉,但是同样的配置在树莓派上很糟糕,jk移动都非常缓慢,大概等接近一秒才能反应,这让人有点不能忍。

通过开启:set verbose=9追踪发现,每次jk移动都会执行一个call s:Highlight_Matching_Pair这样的函数,很明显是高亮对应的括号这样的功能。

同样,我们也可以通过:au CursorMoved查看鼠标移动时定义的调用。

查看后发现是来自matchparen.vim这个内置插件中的方法。
于是搜了一下,在这个vim脚本中发现关闭的方法:: NoMatchParen,就会关闭一切自动配对高亮了。如果再开启,就输入: DoMatchParen

参考:Disable Highlight Matched Parentheses in ViM : “let loaded_matchparen = 1” not working

有人建议开vim后自动关闭它:

" Disable parentheses matching depends on system. This way we should address all cases (?)
set noshowmatch
" NoMatchParen " This doesnt work as it belongs to a plugin, which is only loaded _after_ all files are.
" Trying disable MatchParen after loading all plugins
"
function! g:FuckThatMatchParen ()
    if exists(":NoMatchParen")
        :NoMatchParen
    endif
endfunction

augroup plugin_initialize
    autocmd!
    autocmd VimEnter * call FuckThatMatchParen()
augroup END

发现的确关闭了。但是好像jk的速度还是一样。# VIM 光标移动缓慢
vim Highlight_Matching_Pair slow

Mac上没感觉,但是同样的配置在树莓派上很糟糕,jk移动都非常缓慢,大概等接近一秒才能反应,这让人有点不能忍。

通过开启:set verbose=9追踪发现,每次jk移动都会执行一个call s:Highlight_Matching_Pair这样的函数,很明显是高亮对应的括号这样的功能。

同样,我们也可以通过:au CursorMoved查看鼠标移动时定义的调用。

查看后发现是来自matchparen.vim这个内置插件中的方法。
于是搜了一下,在这个vim脚本中发现关闭的方法:: NoMatchParen,就会关闭一切自动配对高亮了。如果再开启,就输入: DoMatchParen

参考:Disable Highlight Matched Parentheses in ViM : “let loaded_matchparen = 1” not working

有人建议开vim后自动关闭它:

" Disable parentheses matching depends on system. This way we should address all cases (?)
set noshowmatch
" NoMatchParen " This doesnt work as it belongs to a plugin, which is only loaded _after_ all files are.
" Trying disable MatchParen after loading all plugins
"
function! g:FuckThatMatchParen ()
    if exists(":NoMatchParen")
        :NoMatchParen
    endif
endfunction

augroup plugin_initialize
    autocmd!
    autocmd VimEnter * call FuckThatMatchParen()
augroup END

发现的确关闭了。但是好像jk的速度还是一样。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25061.html

相关文章

  • vim 入坑指南

    摘要:助记符上的所有定义的快捷键都是有一定的意义的,在这里我先把常用的一些列出来。我刚开始学的时候,还不知道有那些助记符,基本完全靠死记硬背,我就是用一张纸,然后把命令手写抄到纸上,放在我的电脑旁,忘了就马上拿来看看,别说,效果还挺好的。 个人站点:桃园 0. 前言 0.1 简介 vim 被誉为『编辑器之神』,与之同时代的 emacs 被誉为『神之编辑器』。可以看得出 vim 在编辑器的地...

    zhou_you 评论0 收藏0
  • MacVIM

    摘要:当光标从一点移动到另外一点,在这两点之间的文本包括这两个点称作被跨过,这里的命令也被称作是。移动光标到当前行的第一个字母位置。剪贴板在里面被称为寄存器。将会拷贝从当前光标到第三个出现的引号之间的内容到剪贴板。 https://github.com/b4winckler/macvim/releases Type :h macvim For usage instructions, Typ...

    13651657101 评论0 收藏0
  • Vim 的哲学(四)

    摘要:的哲学第四篇姗姗来迟,狗血的原因我就不多说了,好消息是我将为这个系列带来一些动态演示。所以目前为止你学会上述四个动作指令就足够了。以词为单位使得我们可以更精确也是更具语义化的移动光标,并且要比逐个字符的移动要快得多。 Vim 的哲学第四篇姗姗来迟,狗血的原因我就不多说了,好消息是我将为这个系列带来一些动态演示。原本我打算录视频的,但是文章都写了那么些篇了,现在再录视频似乎晚了些,所以我...

    xiao7cn 评论0 收藏0
  • Vim中文键盘速查表及Vim命令索引

    摘要:经典的键盘速查表中文介绍图以及各命令的详细介绍索引,按不同颜色区分动作命令操作符,推荐阅读谈谈中的操作符和动作命令。原文地址中文键盘速查表详细介绍 经典的Vim键盘速查表中文介绍图以及各命令的详细介绍索引,按不同颜色区分Vim动作(motion)、Vim命令、Vim操作符(operator),推荐阅读谈谈Vim中的操作符和动作命令。 showImg(https://image.vimj...

    forsigner 评论0 收藏0
  • vim 入门笔记

    摘要:学习整理注意后文中带尖括号的描述表示键盘按键,比如回车是指回车按键。输入文件名回车即可进入编辑器编辑该文件。按键回车进入替换模式可以连续替换多个字符。所有的命令都必须敲回车键结束。 前言 本文的初衷 从知道 vim 开始我就有心学习并尝试过几次,每次都是暂时的心血来潮,最终全部不了了之,就连最基本的 vimtutor 我都是学个两三节就半途而废,所以这次干脆写篇文章,利用几次学习把这篇...

    Hegel_Gu 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<