读书人

大伙VIM(一久新的器)

发布时间: 2012-08-14 10:39:57 作者: rapoo

大家VIM(一久新的器)[三]

基本指令

?

元就始入主了。下指令都是在 commond-mode(c-mode),就是您一入 vim 的模式,只能下指令,不能入文字。如果印象模糊,瞄一下第一元的容。元的是基本的指令,有些比特殊的指令,因太有性了,所以立成一元明。

?

?

入i-mode指令

i  在游所在字元前始入文字(insert)。a  在游所在字元後始入文字(append)。o  在游所在行下一新行入文字(open)。I  在行首始入文字。
此之行首指第一非空白字元,要真正的第一字元始人文字,可使用 0i 或 gI(vim)。
A  在行尾始入文字。
好用,您不必管游在此行的什地方,只要按 A 就在行尾等著您入文字。
O  在游所在行上一新行入文字。J  下一行整行接至本行(Joint)。
相的 split 功能,可在 i-mode 下按 Enter 成,然如果您熟 macro 的,可自行定。 使用 J ,消去本行的 EOL,且上下行接留下一空白字元,符合英文,中文造成困,欲不留空白字元,可使用 gJ(大 J) 指令,但是 vim 的充功能,elvis 不用。 您便找一案看看,光看文字明太抽象了。


?

除指令

x  除游所在之字元。在 vim 及 elvis 亦可用 Del 。X  除游前之字元。不可使用 Backspace 。
vim 可以正使用以上指令於中文,去一中文字。elvis 不行,一中文字要次,即使用 xx。
dd 除一整行(delete line)。dw 除一字(delete word)。不能用於中文。dG 至尾。d1G 至首。或 dgg(只能用於 vim)。D  至行尾,或 d$(含游所在字元)。d0 至行首,或 d^(不含游所在字元)。
回一下 $ 及 ^ 所代表的意,您就可以理解 d$ 及 d^ 的作,就是 vi(m) 可之。


取代和原

r  取代游所在之字元。vi(m) 很有性的,您在 c-mode 按   了 r 她就停在那等主人入所要替代的字元,希望您   主人的,不要傻呼呼的也楞在那,快入您的新字元   吧!:-)
vim 中可用於中文字,也就是可以替一中文字,elvis 不行。然您的 vim 是要在 taiwan 的才行。怎!有有看如此有性的取代方式?ㄚ!r 就是 replace 啦!
R  取代字元至按 Esc 止。cc 取代整行容。或大 S 亦可。cw 替一英文字(word),中文不用。(change)~  游所在之大小互。然不能用於中文。忘了 Shift!C  取代至行尾,即游所在以後的字都被替。或 c$。c0 取代至行首,或 c^。s  替一字元您所入的字串。和 R 不同,R 是覆式的取   代,s 是插入式的取代,您可自看看。ㄟ!是小的   s。u  太重要了,就是 undo,的 vi 支援一次 undo,vim   及 elvis 就不只了,vim 是有限制的。U  在游本行之前,回所有作。Crtl+r 也是很重要,就是 redo 。


?

加上目字

喔!到 vi(m) 的了,是 vi(m) 一非常包的功能,只此一家分(然同源的 ed,sed 等不在此限)。就是您可以在大部份的指令前加上目字,代表要理次的意思。以下用例明比清楚。

5dd  除游所在(含)起算以下五行容。妙吧!3r   按了 3r 後,您入一英文字,三字元皆被您所       入的英文取代。很抱歉,不能用於中文。5J   五行合成一行。3x   除三字元。抱歉,不能用於中文。5i A 然後按 Ecs,插入五 A。中文也可以!2i system Esc  插入 systemsystem。中文也可以!5G 游移至第五行,是首始起算。5l 移至右第五字元,然 j 是可以用方向取代的。   所有移指令(考第二元)都可以加上目字控制,中   文也通喔!elvis 然是不能用於中文。

其它的指令和目字合,就留待各位去掘吧!最重要的是您自操作看看,使用 vi(m) 常常要筋,有更妙的操作方式。



的重排功能

>>  整行向右移一 shiftwidth(是 8 字元,可重)。<<  整行向左移一 shiftwidth(是 8 字元,可重)。
:set shiftwidth? 可得知目前的定值。:set shiftwidth=4 可上重 4 字元。shiftwidth 可成 sw。ㄟ,忘了 Shift !
:ce(nter)  本行文字置中。注意是冒命令!:ri(ght)   本行文字靠右。:le(ft)    本行文字靠左。
所置中、靠左右,是考 textwidth(tw) 的定。如果 tw 有定,是 80,就是以 80 字元度置放。然您也可以如 sw 一上重。
gqip  整段重排。中文出槌!:-(gqq   本行重排。
重排的依也是 textwidth。的重排是指您入文字有按 Enter ,就一直在 keyin,形成一很的一行(然幕上替您做假性折行),重排後,在每一行最後加入 EOL。gq 重排功能是 vim 才有的功能。

读书人网 >开源软件

热点推荐