Vim:重新映射键以切换行号

Nop*_*ope 18 vim remap

我补充说:

set number
nnoremap <F2> :set nonumber!
Run Code Online (Sandbox Code Playgroud)

到我的vimrc文件.基本上它应该做的是让我按F2下来切换行编号,但它不起作用.我做错了什么?

Tau*_*son 33

在你的.vimrc,添加这个:

set number
nnoremap <F2> :set nonumber!<CR>
Run Code Online (Sandbox Code Playgroud)

然后按下F2将打开行编号(如果已关闭),如果已打开则将其关闭.


Jer*_*ell 23

这是我使用的(使用不同的键绑定):

nmap <f2> :set number! number?<cr>
Run Code Online (Sandbox Code Playgroud)

数字!" 切换设置和"数字?" 报告国家.


Ser*_*ujo 7

nmap <silent> <F11> :exec &nu==&rnu? "se nu!" : "se rnu!"<CR>
Run Code Online (Sandbox Code Playgroud)

在新的vim中,您可以一次设置相对数字和数字,这样:

set nu rnu
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 多亏了这一点,非常适合任何类型的切换,而不仅仅是数字切换. (2认同)

Roo*_*ook 5

这是一种方法:

map <silent> <F2> :if &number <Bar>
    \set nonumber <Bar>
        \else <Bar>
    \set number <Bar>
        \endif<cr>
Run Code Online (Sandbox Code Playgroud)

(这个很好'因为我通常也会在那里放置折叠柱)

这是另一个:

map <silent> <F2> :set invnumber<cr>
Run Code Online (Sandbox Code Playgroud)

(直接法)