在 vi 編輯器中可以方便地將某個範圍內的文本行左右移動或從一個地方移至另外一個地方。文本行左右移動的命令有 4 個。下面分小節詳細介紹。
1. > 命令
>
命令將指定的正文行向右移動,通常是右移 8 個空格。移動正文行的範圍由光標所在行和隨後輸入的光標移動命令所限定。
> 命令的使用格式如下:
>n
n 表示光標所在位置後面的文本行數。也可以不寫 n,此時默認爲 1;換句話說,只使用>
命令將會移動光標所在的文本行,以及下一個文本行。
如果只想移動光標所在的文本行,可以寫>0
。
需要注意的是,指定的數字是需要移動的行的數目,並不是要右移的空格數。下面實例演示了將一段代碼整體右移。
1) 在 vi 編輯器中編輯下面代碼,將光標定位到第二行,屏幕顯示如下:
#include <stdio.h>int main(void){ int a = 1, b = 2, add, sub, mul, div; add = a + b; sub = a - b; mul = a * b; div = a / b; printf("add %d, sub %d, mul %d, div %d\n", add, sub, mul, div); return 0;}
2) 輸入>6
回車後,屏幕顯示爲:
#include <stdio.h>
int main(void)
{
int a = 1, b = 2, add, sub, mul, div;
add = a + b;
sub = a - b;
mul = a * b;
div = a / b;
printf("add %d, sub %d, mul %d, div %d\n", add, sub, mulf div);
return 0;
}
2. < 命令
<
命令將指定的正文行向左移動。其使用方式與命令相同,但是方向相反。
3. >> 命令
>>
該命令將光標所在行右移 8 個空格。如果在>>
命令之前給出一個數字 n,例如 4,則表示光標當前行及其下面的 3 行(共4行)都右移 8 個空格。下面實例演示了使用>>
命令移動文本。
1) 在 vi 編輯器中編輯以下代碼,並且將光標停留在第 4 行上:
#include <stdio.h>int main(void){int a = 1, b = 2, add, sub, mul, div;add = a + b;sub = a - b;mul = a * b;div = a / b;printf(nadd %d, sub %d, mul %d, div %d\n", add, sub, mulf div);return 0;}
2) 輸入7>>
後,屏幕顯示爲:
#include <stdio.h>int main(void){ int a = 1, b = 2, add, sub, mul, div; add = a + b; sub = a - b; mul = a * b; div = a / b; printf("add %d, sub %d, mul %df div %d\n", add, sub, mul, div); return 0;}
4. << 命令
<<
命令將光標所在行左移 8 個空格。其使用與>>
命令相同,但是移動方向相反。