高見龍

iOS app/Ruby/Rails Developer & Instructor, 喜愛非主流的新玩具 :)

爽爽快快學Vim(1)

建議直接到 youtube 並切換至 HD 畫質觀看。另外也傳了一份到 vimeo 以及 youku

影片內提到的相關連結:

shell指令

Ctrll: 清除畫面

Ctrlw: 一次刪除一個字(word)

Ctrlu: 刪除一整行

Ctrlr: 搜尋 history

Vim

mode 切換

ia 進入insert mode, i = insert, a = append

在insert mode按下 EscCtrl+[ 回到normal mode

在normal mode按下 vV 進入到visual mode

在visual mode按下 EscCtrl+[ 回到normal mode

游標移動

h j k l 移動游標

wW 往後跳一個字(word), bB 往前跳一個字(word)。

0 將游標跳回行首, $ 則是跳至行尾。

f 會找到該行的下一個雙引號,fx 會找到該行下一個英文字母"x",以此類推;大寫 F 則是反向。

t 會找到該行的下一個雙引號的前一個位置,tx 會找到該行下一個英文字母"x"的前一個位置,以此類推;大寫 T 則是反向。

{ 往上一個段落移動;} 往下一個段落移動

vit 選取目前游標所在的這個標籤(tag),例如<div>hello</div>則會選取hellovat 則會連帶標籤一起選取,例如<div>hello</div>則會選取<div>hello</div>

vi 選取目前游標所在的這個雙引號內的內容,例如"hello world"則會選取hello worldva 則會連雙引號一起選取。其中雙引號也可以替換成單引號、小括號等符號,功能一樣是選取該符號內的文字。

viw 選取目前游標所在的這個字(word)。

gg 游標跳至整個檔案的第一行;G 游標跳至檔案的最後一行

zt 將目前游標所在位置的內容拉至螢幕的上方;zb 將目前游標所在位置的內容拉至螢幕的下方;zz 將目前游標所在位置的內容拉至螢幕的正中間;

/ 搜尋,搜尋到結果後n可跳至下一個;N可跳至上個。

* 直接搜尋符合游標所在的字(word)

編輯

i 進入insert mode,I 游標直接跳至行首,並進入insert mode

a 進入insert mode,A 游標直接跳至行末,並進入insert mode

D 刪除游標所在位置之後的所有內容

C 同上,並直接進入insert mode

x 刪除一個字元

. 重複上一個動作

dd 刪除一整行

3dd 刪除3行

yy 複製游標所在位置的一整行

3yy 從游標處往下複製3行,包含游標所在的那一行

p 貼上內容;4p 從目前游標的所在處貼上內容4次

= 格式整理,gg=G 整份文件格式自動整理

dwdiw 刪除游標所在的那一個字(word)

cwciw 刪除游標所在的一個字(word)並直接進入insert mode

> 增加縮排;< 減少縮排

常用命令

:w 寫入檔案

:q 離開Vim,若加上!則為強制離開

:tabe 開新tab

gt 切換至下一個tab;gT 切換至上一個tab。(在我的vimrc裡有分別對應到F7跟F8鍵)

:new 新增水平分割視窗;:vnew 新增垂直分割視窗。

其它

Ctrlz 把vim放至背景工作;fg指令則是將vim從背景工作撿回來。

如果沒有意外或被其它工作中斷,應該可以繼續錄下去。發音的部份感覺咬字像含顆魯蛋一樣,無意義的贅字還是很多,有待加強。內容有不對的地方,再請不吝前輩們給予指教。

推薦閱讀

Comments