如何在Windows下的Vim中递增(CTRL-A不起作用...)

时间:2020-03-05 18:54:32  来源:igfitidea点击:

尽管CtrlX在Windows下的vim中可以正常工作,而CtrlA则选择全部。

有没有办法在Windows下通过按键增加数字?

解决方案

回答

尝试Ctrl-NumPad +吗?

(从这里)

回答

我们可以通过在vim目录中打开'mswin.vim'文件并找到如下所示的部分来使Ctrl + A在Windows中递增。

" CTRL-A is Select all
noremap <C-A> gggH<C-O>G
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
cnoremap <C-A> <C-C>gggH<C-O>G
onoremap <C-A> <C-C>gggH<C-O>G
snoremap <C-A> <C-C>gggH<C-O>G
xnoremap <C-A> <C-C>ggVG

注释掉所有这些行,如下所示:

" CTRL-A is Select all
"noremap <C-A> gggH<C-O>G
"inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
"cnoremap <C-A> <C-C>gggH<C-O>G
"onoremap <C-A> <C-C>gggH<C-O>G
"snoremap <C-A> <C-C>gggH<C-O>G
"xnoremap <C-A> <C-C>ggVG

然后Ctrl + A按键会增加。

当键盘没有实号键盘时,这是一个非常不错的选择。

回答

我修改了TMealy的解决方案,以使CtrlA仍然全选(我觉得这很有用),而CtrlI递增(也很有用)。

noremap <C-I> <C-A>

" CTRL-A is Select all
noremap <C-A> gggH<C-O>G
inoremap <C-A> <C-O>gg<C-O>gH<C-O>G
cnoremap <C-A> <C-C>gggH<C-O>G
onoremap <C-A> <C-C>gggH<C-O>G
snoremap <C-A> <C-C>gggH<C-O>G
xnoremap <C-A> <C-C>ggVG