天天看點

vim與程式員

所有的 Unix Like 系統都會内建 vi 文書編輯器,其他的文書編輯器則不一定會存在。

但是目前我們使用比較多的是 vim 編輯器。

vim 具有程式編輯的能力,可以主動的以字型顔色辨識文法的正确性,友善程式設計。

什麼是 vim?

Vim是從 vi 發展出來的一個文本編輯器。代碼補完、編譯及錯誤跳轉等友善程式設計的功能特别豐富,在程式員中被廣泛使用。

簡單的來說, vi 是老式的字處理器,不過功能已經很齊全了,但是還是有可以進步的地方。 vim 則可以說是程式開發者的一項很好用的工具。

vi/vim 的使用

基本上 vi/vim 共分為三種模式,分别是指令模式(Command mode),輸入模式(Insert mode)和底線指令模式(Last line mode)。 這三種模式的作用分别是:

指令模式:

使用者剛剛啟動 vi/vim,便進入了指令模式。

此狀态下敲擊鍵盤動作會被Vim識别為指令,而非輸入字元。比如我們此時按下i,并不會輸入一個字元,i被當作了一個指令

移動光标

w(e)  移動光标到下一個單詞
b    移動到光标上一個單詞

數字0  移動到本行開頭
$    移動光标到本行結尾

H    移動光标到螢幕首行
M    移動到光标到螢幕的中間一行
L    移動光标到螢幕的尾行
gg    移動光标到文檔的首行
G    移動光标到文檔尾行

ctrl + f  下一頁
ctrl + b  上一頁

`.  移動光标到上一次的修改行      

查找

/chaoge     在整篇文檔中搜尋chaoge字元串,向下查找
?chaoge     在整篇文檔中搜尋chaoge字元串,向上查找

*        查找整個文檔,比對光标所在的所有單詞,按下n查找下一處,N上一處
#        查找整個文檔,比對光标所在的所有單詞,按下n查找下一處,N上一處

gd        找到光标所在單詞比對的單詞,并停留在非注釋的第一個比對上

%    找到括号的另一半!!
      

複制,删除,粘貼

yy    拷貝光标所在行
dd    删除光标所在行
D     删除目前光标到行尾的内容
dG    删除目前行到文檔尾部的内容
p     粘貼yy所複制的内容
x   删除光标所在的字元
u     撤銷上一步的操作      

數字與指令

3yy    拷貝光标所在的3行
5dd    删除光标所在5行      

 輸入模式

在指令模式下按下字母i

即可進入輸入模式,可以編寫代碼啦。。。

vim與程式員

底線指令模式

在指令模式下輸入冒号(英文的:),就進入了底線指令模式,在底線指令模式下可以輸入單個或多個字元的指令,常用指令有:

:q!     強制退出
:wq!    強制寫入退出
:set nu 顯示行号
:數字  調到數字那行

随時按下esc可以退出底線指令模式      

vim工作模式

vim與程式員

vim按鍵

移動光标的方法
h 或 向左箭頭鍵(←)    光标向左移動一個字元
j 或 向下箭頭鍵(↓)    光标向下移動一個字元
k 或 向上箭頭鍵(↑)    光标向上移動一個字元
l 或 向右箭頭鍵(→)    光标向右移動一個字元

向下移動5行      5j
向右移動10字元    10l

n(space)    按下數字n,例如10,然後按下空格,光标會向右移動10個字元
      

底線指令

:! command    暫時離開vim指令模式,執行command的結果
例如  :!ip a    臨時看一下ip資訊,然後可以回到vim

:set nu    顯示vim行号
:set nonu    取消行号      

更多nb的vim用法請看菜鳥教程:http://www.runoob.com/linux/linux-vim.html

努力成為一個開發者

個人站點:www.pythonav.cn

vim