遞增和遞減數字和字母字元

在正常模式下,我們可以使用 <C-a> 在游標處或之後增加行上的最近數字,並使用 <C-x> 遞減。在以下示例中,游標位置由^指示。

遞增和遞減數字

for i in range(11):
      ^

<C-x> 減少數量:

for i in range(10):
                ^

10<C-a> 通過 10 遞增:

for i in range(20):
                ^

遞增和遞減字母字元

要使增量和減量也適用於字母,可以使用 ex 命令:set nrformats+=alpha 或將 set nrformats+=alpha 新增到 .vimrc

增量示例:

AAD
 ^ 

<C-a> 將它遞增到 B

ABD
 ^ 

減量示例:

ABD
  ^ 

<C-x> 減少 DC

ABC
  ^ 

啟用字母遞增/遞減時遞增和遞減數字

請注意,啟用遞增/遞減以使用字母字元意味著在你真正想要修改數字時必須小心不要修改它們。你可以使用 ex 命令:set nrformats-=alpha 關閉字母遞增/遞減,或者你可以只知道它並確保在遞增或遞減之前移動到該數字。這是從上面重做工作的“for i in range(11):”示例,同時設定了字母遞增/遞減:

假設你想將 11 減少到 10 並且字母遞增/遞減有效。

for i in range(11):
      ^

由於字母遞增/遞減有效,為了避免修改游標下的字元,首先使用普通模式移動命令 f1(即小寫 f 後跟數字 1,向前移動到第一個 1,不要與功能鍵混淆):

for i in range(11):
               ^

現在,由於游標在數字上,你可以用 <C-x> 減去它。遞減時,游標重新定位到數字的最後一位:

for i in range(10):
                ^