vim 反转指定范围的文本行

一、全部反转

原始文本:

line 1
line 2
line 3
line 4

反转后的文本:

line 4
line 3
line 2
line 1

反转命令:

:g/^/m0

 

二、反转指定行

原始文本:

line 1
line 2
line 3
line 4
line 5
line 6

我要反转第2-5行。

反转后的文本:

line 1
line 5
line 4
line 3
line 2
line 6

 

反转步骤:

  1. 光标移动到第一行(目标行的上一行)
  2. 输入命令 mt,将第一行标记为 t
  3. 光标移动到第五行
  4. 输入命令 :'t+1,.g/^/m 't

 

若想看详细解释,输入命令 :help 12.4

参考资料:https://superuser.com/questions/189947/how-reverse-selected-lines-order-in-vim