首页 > 其他 > 详细

vim 指令備忘錄

时间:2014-03-25 06:03:45      阅读:420      评论:0      收藏:0      [点我收藏+]

移動游標的方法

[ h ] [ j ] [ k ] [ l ]

[←] [ ↓ ] [ ↑ ] [→]

 

w 以一個單字字首向後移動

b 以一個單字字首向前移動

 

0 = [Home] = ^ 移到該行的第一個字元

$ = [End] 移到該行的最後面字元處

 

% 在 () {} 上會移動到相對應的括號

f “ 移到該行的下一個雙引號 (F反向)

 

gg 移動到檔案最前面的第一個字元

G 移動到檔案最後面一行的第一個字元

 

n + [space] 向右移動 n 個

n + [Enter] 向下移動 n 行 = nG = nj = n↓

 

( 跳到上一個區塊的第一行或最後一行

) 跳到下一個區塊的第一行或最後一行

[[ 跳到上一個區塊的第一行

]] 跳到下一個區塊的第一行

{ 跳到上一個區塊的最後一行

} 跳到下一個區塊的最後一行

 

[Page Down] = [Ctrl] + [f] 下一頁

[Page Up] = [Ctrl] + [b] 上一頁

[Ctrl] + [e] 向下捲動一行

[Ctrl] + [y] 向上捲動一行

 

H 移動到該頁第一行

M 移動到該頁中間那一行

L 移動到該頁最後一行

 

zz 移動畫面置中游標

zb 移動畫面置底游標

zt 移動畫面置頂游標

 

ma 標記mark a

‘a 快速跳到標記mark a的那一行

‘ ‘ 回到剛剛的位置

 

搜尋

/word 游標之後開始找

n 搜尋下一個 ( * 游標所在單字搜尋下一個相同的單字)

N 搜尋上一個 ( # 游標所在單字搜尋上一個相同的單字)

?word 游標之前開始找

 

取代

:1,$s/word1/word2/g 從第一行到最後一行尋找word1字串取代為word2

:1,$s/word1/word2/g取代前提示使用者確認

 

刪除、複製與貼上

x = [del]

X = [backspace]

dd 刪除該列ndd

diw 刪除游標上的單字

 

cc = C = S 刪除該行後,進入insert模式

ciw 刪除游標上的單字,進入insert模式

ci‘ 刪除單引號內的字串,進入insert模式

 

yy = Y 複製該列 (nyy)

yiw 複製單字

yi‘ 複製單引號內的字串

"ayy 把複製的字串放到a索引裡 ( :reg指令,清空:let @a = ‘ ‘ )

"ap 游標後貼上a索引裡的內容

 

p 游標後貼上

P 游標前貼上

 

. 重複前一個動作

u 復原前一個動作

[Ctrl] + [r] 重做上一個動作

 

進入插入或取代的編輯模式

o 目前游標所在的下一行處插入新的一行

O 目前游標所在處的上一行插入新的一行

 

r 取代游標所在的一個字元

R 會一直取代游標所在的文字,直到按下[ESC]為止

 

visual模式區塊選擇

[v] + [←↓↑→] 反白字元

[V] + [←↓↑→] 反白列visual line模式

[Ctrl] + [v] visual block模式

y 反白的地方複製起來

d = x 反白的地方刪除掉

 

多檔案編輯

vim file1 file2

:n 編輯下一個檔案

:N 編輯上一個檔案

:files = ls 列出目前vim 開啟的所有檔案

 

多視窗

vim -o file1 file2 上下分割視窗

vim -O file1 file2 左右分割視窗

 

:sp = :new file 上下分割視窗

:vs = :vnew file 左右分割視窗

 

[Ctrl]+[w]+ [←↓↑→] 游標可移動到下方的視窗

[Ctrl] + [w] + [w] 切換到下一個視窗

[Ctrl] + [w]+ [q] = :q

[Ctrl] + [w] + [o] = :only 留下目前視窗,關閉其他

[Ctrl] + [w] + [=] 平均視窗大小

 

Tab視窗

vim -p file1 file2 用tab顯示

gt 切換下一個tab (ngt)

gT 切換上一個tab

:tab ball 把所有 buffer 轉成 tabpage。

:tabe file 開新tab

:tabc 關閉tab

:tabo 留下目前tab,關閉其他

:tabr 第一個標籤頁

:tabl 最後一個標籤頁

 

vim 的環境設定參數

:opt 列出所有目前的設定,在 set 這個字上按 Enter 即可改變設定,改完後按 :q就可以了 (在簡短說明處按 Enter 則會叫出該部份的說明檔給您參考)

:set option? 顯示 option 這設定的目前值

:set all 顯示目前所有的環境參數設定值。

:set 顯示有更動過的設定

 

:set ai 自動縮排(autoindent)

:set tabstop=4 設定一個tab等於四個空白長度

:set expandtab tab鍵會用空白取代(由tabstop設定而定)

:retab 將tab轉換成space

:set shiftwidth=4 縮排>>時,一次移動的字元寬度

:set showmatch 自動找對應括號

:set hlsearch 標記搜尋到的字串

:set incsearch 不需按 Enter,邊打邊搜尋

:set ruler 顯示說明

:set showmode 顯示編輯狀態

:set enc=utf8 設定編碼

:set paste 直接貼上文字時格式不會跑掉

 

:set cin 編輯 C/C++ code 時會自動打開

:syntax on 語法高亮度顯示

 

指令

:w [filename] 另存新檔

:n1,n2 w [filename] 將 n1 到 n2 的內容儲存成 filename 這個檔案

:! command 暫時離開 vi 到指令列模式下執行 command 的顯示結果 eg. :!ls

 

vim –r filename 恢復編輯時被中斷的檔案

 

其他

[Ctrl] + [p] 自動補齊變數名稱或語法

>> 縮排 (n>>)

<< 縮排倒退

 

參考網址:

1. http://linux.vbird.org/linux_basic/0310vi.php#vi_temp

2. http://jex.logdown.com/posts/40910-vim

3. http://www.study-area.org/tips/vim/index.html

4. http://edt1023.sayya.org/vim/node10.html

vim 指令備忘錄,布布扣,bubuko.com

vim 指令備忘錄

原文:http://www.cnblogs.com/yijay/p/3622285.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!