8

在 Vim 中,可以使用 跳转到最后一行G(或使用gg)跳转到第一行,但该移动也会跳转到第一个非空格字符。

是否有键绑定可以跳转到第一行(或最后一行),但留在同一列?

4

2 回答 2

18

那将是set nostartofline。有了它,如果可能的话ggG将保留该列,就像j等一样。

来自:h startofline

                           'startofline' 'sol' 'nostartofline' 'nosol'
'startofline' 'sol'     boolean (default on)
                        global
                        {not in Vi}
        When "on" the commands listed below move the cursor to the first
        non-blank of the line.  When off the cursor is kept in the same column
        (if possible).  This applies to the commands: CTRL-D, CTRL-U, CTRL-B,
        CTRL-F, "G", "H", "M", "L", gg, and to the commands "d", "<<" and ">>"
        with a linewise operator, with "%" with a count and to buffer changing
        commands (CTRL-^, :bnext, :bNext, etc.).  [..]
于 2013-05-25T09:49:29.553 回答
1

是的,有一个键绑定。但这很偏僻。

  • 1 CTRL+End:第一行,同一列
  • CTRL+End:最后一行,同一列
于 2013-05-28T09:18:10.003 回答