【发布时间】:2013-02-05 04:52:48
【问题描述】:
我知道
:set number
和
:set nonumber
我想知道vi/vim中有没有命令
:set togglenumber
如果行号未显示,则显示行号;如果行号显示,则隐藏行号。
【问题讨论】:
-
set number!或invnumber。另见this table我前段时间制作的。
标签: vim vi line-numbers
我知道
:set number
和
:set nonumber
我想知道vi/vim中有没有命令
:set togglenumber
如果行号未显示,则显示行号;如果行号显示,则隐藏行号。
【问题讨论】:
set number! 或 invnumber。另见this table我前段时间制作的。
标签: vim vi line-numbers
你可以使用(至少在 VIM 上):
:设置invnumber
更多信息:
:set number Turn line numbers on
:set nonumber Turn line numbers off
:set invnumber Toggle line numbers
:set number! Toggle line numbers
:set number& Set option to default value
:set number? Show value of option
来源:http://vim.wikia.com/wiki/Managing_set_options#Boolean_options
【讨论】:
:set inv<tab> 以查看可能的值
在 vim 中,许多选项都支持这种set 模式,(例如,foo):
"enable the option
set foo
"disable it
set nofoo
"toggle the option
set foo!
"get option's current value
set foo?
对于number,将密钥映射到:set nu! 就可以了。
【讨论】:
您可以使用! 后缀切换任何(布尔)选项,即:set number! 将切换显示行号。
此命令的板载帮助有点隐藏;虽然有人会认为:help toggle 会让你到达那里,但事实并非如此。使用:help set-! 是一个神奇的词。
【讨论】:
我使用相对行号,用于当前行上方和下方的所有行,以及当前行的绝对行号。 但这仅在 Vim 7.4 之后才有效。
这有时被称为“混合”行号(例如在文章 https://jeffkreeftmeijer.com/vim-number/ 中)
要从“完全没有数字”切换到“混合”,您可以使用以下配置:
set number relativenumber " Turn line numbering on at startup
" Toggle line numbers from none at all
" to relative numbering with current line number
noremap <F3> :set invnumber invrelativenumber<CR>
【讨论】: