這兩天閑着都在搗鼓VIM了,感覺有點不務正業了,不得不說VIM里面要學習的東西太多了,學習曲線無比陡峭。知識點多了有點亂,特地發個博梳理一下,都是我自己在學習過程中積累的一些,可能有點雜,湊合着看吧,輕拍,歡迎提問一起探討。
一、vim介紹與常用命令
這個就不說了吧,自行google,貼一張VI/VIM鍵盤圖,要學習的拿去當桌面吧,哈哈。
二、vim各版本區別
ubuntu下預裝的版本是vim.tiny,這個更靠近純vi了,不能使用小鍵盤和方向鍵,在編輯模式下,移動光標會變成A B C D等字符並換行。
解決方法兩個;
1.vim缺省是vi兼容模式,設置成不兼容模式就好了:
:set nocp
2.安裝完整VIM
VIM其他版本:vim-gnome安裝的vim依賴於gnome的某些東西的。vim-gtk 依賴於gtk的某些東西。vim-nox這個不知道,ubuntu官網也沒說明。還有一個vim-athena,據說是界面很華麗,沒用過不評論。具體看http://packages.ubuntu.com/oneiric/vim
三、vim緩沖區
緩沖區(Buffer)是一塊內存區域,里面存儲着正在編輯的文件。如果沒有把緩沖區里的文件存盤,那么原始文件不會被更改。
:buffers
命令將會列出當前編輯中所有的緩沖區狀態。在這個狀態列表中,前面的數字是緩沖區的數字標記,第二個標記就是緩沖區當前的狀態,緊接着是與緩沖區所關聯的文件名。有如下幾種狀態:
- (非活動的緩沖區)
a (激活緩沖區)
h (隱藏的緩沖區)
% (當前的緩沖區)
# (交換緩沖區)
= (只讀緩沖區)
+ (已經更改的緩沖區)
:buffers |
列示緩沖區狀態 |
:buffer |
編輯指定緩沖區 |
:ball(ba默認水平分屏) |
編輯所有緩沖區 |
:bnext(bn) |
到下一緩沖區 |
:bprevious(bp) |
到前一緩沖區 |
:blast |
到最后一個緩沖區 |
:bfirst |
到第一個緩沖區 |
:badd |
增加緩沖區 |
:bdelete |
刪除緩沖區 |
:bunload |
卸載緩沖區 |
CTRL-W- 減小窗口,默認值為1
CTRL-W= 可以將幾個窗口的大小變得相等。
:tabnext : 到下一個標簽頁 。
:tabc: close a tab