2016年4月2日 星期六

vim使用筆記

游標移動 
h: 左,j: 下,k: 上, l: 右
Ctrl+f: 下一頁, Ctrl+b: 上一頁, Ctrl+d: 下半頁, Ctrl+u: 上半頁
Ctrl+y: 上移, Ctrl+e: 下移, 0: 行首, ^: 行首非空白, $: 行尾, gg: 檔首, G: 檔尾
w移至次一個字首, W忽略符號, b移至前一個字字首, B忽略符號, :n 移至n行

插入模式 
i: 字元前輸入文字, a: 字元後輸入文字, I: 行首輸入文字, A: 行尾輸入文字
o: 游標下開一新行, O: 游標上開一新行, J: 下一行整行接至本行

刪除指令 
x: 刪除游標上字元, X: 刪除游標前字元, dd: 刪除一整行, dw: 刪除一個字,
D: 刪至行尾, d0: 刪至行首

複製指令 
y$: 複製至行尾, y0: 複製至行首, yw: 複製一個字

取代與還原 
r: 取代字元, R: 進入取代模式, cc: 取代整行, cw: 取代一個字
C: 取代至行尾, c0: 取代至行首
%s/pattern/string/[c,e,g,i]   %s/Edwin/Edward/cgi

其它指令 
5dd刪除五行, 5yy複製五行 5J,將五行合併成一行, 5x刪除三個字元
p: 貼至游標下, P: 貼至游標上, u: undo, U: 回復所有編輯動作, Ctrl+r: redo
.: 重複前次的編輯動作, >>: 右移一個shift, <: 左名一個shift


尋找指令 
/字: 尋找字, n: 下一個字, N: 上一個字
*尋找游標所在字(下), #尋找游標所在字(上)
gd: 尋找區域變數定義, gD: 尋找廣域變數定義
%: 尋找左、右邊符號、Macro, [[: 尋找上一個function, ]]: 尋找下一個function

Register 緩衝區 
"ayy: 複製本行至a緩衝區, "ap: 將a緩衝區內容貼上
"Ayy: 複製本行至a緩衝區,"Ap: 將a緩衝區內容貼上,有append的作用
"5ayy,5"Ayy
:reg: 列出所有Register的內容

書籤功能 
mx: x為小寫英文字母,游標處會被mark, 大寫可作用於檔案間
`x: 回到書籤原設定位置,Tab鍵上面
'x: 回到書籤設定行首,Enter籤隔壁

緩衝功能 
:e 檔名 開其它檔案  :files 列出buffer中所有檔案
:bn 編輯次一個buffer檔案 :bp編輯前一個buffer檔案

標示功能 
v: 字元標示, V: 行標示, d: 刪除標示區 y: 複製標示區 c: 替換標示區
Shift+>: 標示區右移一個Tab, Shift+<: 標示區左移一個Tab

找變數宣告
gd: 區域宣告, gD:廣域宣告

多視窗 
:sp 檔名 開另一新視窗
Ctrl+w s: 原檔開一新視窗水平,Ctrl+w v: 原檔開一新視窗垂直
Ctrl+w f: 開一新視窗,游標所在處檔名
Ctrl+w q: 結束分割的視窗
Ctrl+w j: 移至下視窗,Ctrl+w k: 移至上視窗,Ctrl+w w: 移至下視窗
Ctrl_w o: 只保留游標所在視窗,其它隱藏
Ctrl+w _: 使游標所有視窗變大, Ctrl+w =: 所有視窗平分大小
Ctrl+w +: 視窗變大一格, Ctrl+w -: 視窗縮小一格
參考來源
http://scc.ustc.edu.cn/zlsc/czxt/200910/W020100308601209599252.pdf

沒有留言:

張貼留言