【问题标题】:Command for toggling line numbers in vivi中切换行号的命令
【发布时间】:2013-02-05 04:52:48
【问题描述】:

我知道

:set number

:set nonumber

我想知道vi/vim中有没有命令

:set togglenumber

如果行号未显示,则显示行号;如果行号显示,则隐藏行号。

【问题讨论】:

  • set number!invnumber。另见this table我前段时间制作的。

标签: vim vi line-numbers


【解决方案1】:

你可以使用(至少在 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

【讨论】:

  • 不错!修饰符,例如“inv ...”或“...!”等使用许多/所有(?)选项。输入 :set inv<tab> 以查看可能的值
【解决方案2】:

在 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! 就可以了。

【讨论】:

    【解决方案3】:

    您可以使用! 后缀切换任何(布尔)选项,即:set number! 将切换显示行号。

    此命令的板载帮助有点隐藏;虽然有人会认为:help toggle 会让你到达那里,但事实并非如此。使用:help set-! 是一个神奇的词。

    【讨论】:

      【解决方案4】:

      我使用相对行号,用于当前行上方和下方的所有行,以及当前行的绝对行号。 但这仅在 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>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-08-04
        • 2021-12-16
        • 2013-10-26
        • 1970-01-01
        • 2016-12-12
        • 2023-04-08
        • 2012-12-11
        • 2015-07-21
        相关资源
        最近更新 更多