gpt4 book ai didi

vim - 如何在(并且仅在)Vim 的可视模式中激活相对行编号?

转载 作者:行者123 更新时间:2023-12-04 15:13:37 25 4
gpt4 key购买 nike

当我进入可视模式时,我试图让 Vim 切换到相对行编号,然后再切换到绝对编号。我注意到有 InsertEnterInsertLeave autocmd 事件,我可以这样使用:

autocmd InsertEnter :set rnu
autocmd InsertLeave :set nu

问题是,我似乎找不到视觉模式的等价物。

最佳答案

视觉模式没有此类事件(尚未实现;您可以提交补丁)。要进入可视模式,您可以简单地覆盖进入可视模式的几个命令:

:nnoremap <silent> v v:<C-u>set nonu rnu<CR>gv
:nnoremap <silent> V V:<C-u>set nonu rnu<CR>gv
:nnoremap <silent> <C-v> <C-v>:<C-u>set nonu rnu<CR>gv
'number'的恢复更难,因为除了通过 <Esc> 显式退出之外,有很多命令可以停止可视化模式。我能想到的最好方法是触发 CursorMoved :
vnoremap <Esc> <Esc>:set nu<CR>
:autocmd CursorMoved * if mode() !~# "[vV\<C-v>]" | set nu | endif

关于vim - 如何在(并且仅在)Vim 的可视模式中激活相对行编号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13344987/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com