做爲開發者,有兩個頂級編輯器,即便你不用,你也必定要知道它們是什麼——
·編輯器之神——Vim
·神的編輯器——Emacs
因此本文就來介紹vim
以及它的經常使用命令,Vim
是從vi
發展出來的一個文本編輯器。代碼補全、編譯及錯誤跳轉等方便編程的功能特別豐富,在程序員中被普遍使用vim
鍵盤圖中文版:
tips:在linux
環境下,能夠在命令行輸入vimtutor
命令學習使用vim
,固然前提是你安裝上了vim
linux
共有三種模式,分別是命令模式、插入模式和底線命令模式.這三種模式的做用分別是:
命令模式:
用戶剛剛啓動vim
編輯文件時,便進入了命令模式
此狀態下敲擊鍵盤動做會被Vim
識別爲命令,而非輸入字符
輸入模式:
在命令模式下按下i、a、o
就進入了輸入模式
在輸入模式中,能夠使用如下按鍵:程序員
字符按鍵以及Shift組合 //輸入字符 Enter //換行 Back Space //刪除光標前一個字符 Del //刪除光標後一個字符 方向鍵 //在文本中移動光標 Home/End //移動光標到行首/行尾 Page Up/Page Down //上/下翻頁 Insert //切換光標爲輸入/替換模式,光標將變成豎線/下劃線 Esc //退出輸入模式,切換到命令模式
底線命令模式:
在命令模式下按下:
就進入了底線命令模式
按Esc
鍵退出底線命令模式
簡單的說,能夠用下圖來更直觀展現:編程
i //光標前插入 I //光標所在行首插入 o //光標所在行下面新建一行 O //光標所在行上面新建一行 a //光標後插入 A //光標所在行尾部插入
/search_str //向光標之下查找值爲search_str的字符串 ?search_str //向光標之上查找值爲search_str的字符串 n //重複前一個搜尋的動做 N //反向進行前一個搜尋動做
%s/old/new/ //用old替換new,替換全部行的第一個匹配 %s/old/new/g //用old替換new,替換整個文件的全部匹配,g表示全局 s/old/new/ //用old替換new,替換當前行的第一個匹配 s/old/new/g //用old替換new,替換當前行全部匹配,g表示全局
x,X //x爲向後刪除一個字符,X爲向前刪除一個字符 nx //連續向後刪除n個字符 dd //刪除光標所在行(經常使用) ndd //刪除光標所在行開始n行 d1G //刪除光標所在行到第一行 dG //刪除光標所在行到尾行 yy //拷貝光標所在行(經常使用) nyy //拷貝光標所在行開始n行 d1G //拷貝光標所在行到第一行 dG //拷貝光標所在行到尾行 p,P //p爲將已複製的內容粘貼在光標下一行,P則爲粘貼在光標上一行 u //復原前一個工做 ctrl+r //重作上一個動做 . //重複前一個動做
:set nu //顯示行號 :set nonu //隱藏行號