vim多文件編輯

總想寫點東西,以證明自己的存在給將來。
 
1 screen
a 通過ports安裝screen
b $screen
c $vi file1.c
d CTRL+a c (表示同時按住CTRL和a,鬆開後再單擊c,以下同)新建一個窗口
e $vi file2.c
f 光標移動到起始點
g CTRL+a [進入copy模式
h 單擊空格標誌起始點
i 通過hjkl選擇範圍
j 單擊空格標誌結束點
k CTRL+a p進入上一窗口
l 單擊i進入insert模式
m CTRL+a ]插入當前位置
 
2 插入
a $vi file1.c
b 移動光標至插入點
c :r file2.c
適合把一個文件插入另一個文件的情況
 
3 window
a $vi file1.c
b :split file2.c
c CTRL+w j/k在上下窗口切換
可以在您的~/.vimrc中加入如下2行:
map <C-J> <C-W>j
map <C-K> <C-W>k
這樣可以通過CTRL+j/k在上下窗口切換
也可以用如下2行:
map <C-J> <C-W>j<C-W>_
map <C-K> <C-W>k<C-W>_
實現CTRL+j/k切換窗口並使當前窗口占滿屏幕
 
4 buffer
a 通過vim打開多個文件(可以通過ctags或者cscope)
b :ls查看當前打開的buffer(文件)
c :b num切換文件(其中num爲buffer list中的編號)
可以用到的命令有
:bn -- next buffer in the buffer list
:bp -- previous buffer in the buffer list
:b# -- previous buffer you was in
可以在您的~/.vimrc中加入如下3行:
map <right> :bn<cr>
map <left> :bp<cr>
map <space> :b#<cr>
實現左右方向鍵切換到上或下一個buffer,按空格在兩個buffer間切換
典型的應用場景是:同時打開c文件和h文件,然後用空格切換
 
5 mark
a $vi file1.c
b 移動光標至您關注的位置,單擊mR
c :e file2.c
d 移動光標至您關注的位置,單擊mW
e 然後就可以通過'R/'W在文件間切換
m[a-z]: lowercase marks, valid within one file
m[A-Z]: uppercase marks, also called file marks, valid between files
該方法很適合閱讀源碼和3個以上文件編輯的情況
方法3,4,5,因爲都在同一個vim中,您可以使用yy,yw,y'a,dd,dw,d'a等和p實現copy和粘貼
另外,當您離開一個已修改但未保存的文件時,vim會提示您保存,可以通過如下命令
:set autowrite
實現讓其自動保存
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章