因為最近裝了 win10 + manjaro 雙系統,用 linux 幾乎避免不了使用 vim 編輯器。vim是從 vi 發展出來的乙個基於命令列的文字編輯器。vi是「visual inte***ce」的簡稱,它可以執行輸出、刪除、查詢、替換、塊操作等眾多文字操作,而且使用者可以根據自己的需要對其進行定製。
雖然vim有諸多有點,但因為其學習曲線陡峭很少有小白使用。
我在看過一些幫助文件之後總結了一些經驗在這裡分析給大家,希望能幫助快速入門。
vim模式
2 插入模式(insert mode)
最後一般教程可能都會講到有很多種模式,其實總的來說就兩種模式:
剛剛啟動 vi/vim,便進入了正常模式,此時敲擊鍵盤動作會被vim識別為命令。
按鍵操作
shift+箭頭()
跳過符號移動
ctrl+箭頭
跳過空格移動
[ctrl] + [d]
螢幕『向下』移動半頁
[ctrl] + [u]
螢幕『向上』移動半頁
+游標移動到非空格符的下一行
-游標移動到非空格符的上一行
0 或功能鍵[home]
移動到這一行的最前面字元處 (常用)
$ 或功能鍵[end]
移動到這一行的最後面字元處(常用)
g移動到這個檔案的最後一行
ng \ ng
n 為數字。移動到這個檔案的第 n 行
gg移動到這個檔案的第一行,相當於 1g
n+回車
n 為數字。游標向下移動 n 行
h 、m、l
移動游標到當前頁面頂部、中間、底部
f+x移動游標到當前行游標後第乙個x(字元)處
f+x移動游標到當前行游標前第乙個x(字元)處
nfx移動游標到當前行游標後第n個x(字元)處
t+x移動游標到當前行游標後第乙個x(字元)前
t+x移動游標到當前行游標前第乙個x(字元)前
ntx移動游標到當前行游標後第n個x(字元)前
刪除 / 剪下 / 修改
按鍵操作
x, x
x 為向後刪除乙個字元 , x 為向前刪除乙個字元
nx向前刪除n個字元
dw從游標當前位置刪除直到下乙個單詞起始處,不包括它的第乙個字元
ndw / dnw
刪除n個單詞
de從游標當前位置刪除直到單詞末尾,包括最後乙個字元
dd刪除游標所在的那一整行
nddn 為數字。刪除游標所在的向下 n 行
ndk刪除游標上方的n行
dgg刪除游標所在行到第一行
dg刪除游標所在到最後一行的所有資料
d0刪除游標所在處,到該行的第乙個字元
d$刪除游標所在處,到該行的最後乙個字元
dfx向後刪除到當前行游標後第乙個x(字元)處
r替換當前游標處字元
r從游標處替換到按退出為止
ctrl+a
游標處數值加1
ctrl+x
游標處數值減1
注意:用d刪除相當於剪下
複製 / 貼上
按鍵操作
yy複製游標所在的那一行
nyyn 為數字。複製游標所在的向下 n 行
yg複製游標所在行到最後一行的所有資料
y$複製游標所在的那個字元到該行行尾的所有資料
p, p
撤銷 / 縮排 / 大小寫轉換
按鍵操作
j將游標所在行與下一行的資料結合成同一行
c重複刪除多個資料
u,uu復原前乙個動作,u復原當前行的前乙個操作
[ctrl]+r
重做上乙個動作(反撤銷)
. (英文句號)
重複前乙個動作
>>
向後縮排
<<
向前縮排
==自動縮排
~反轉當前字元大小寫
u(可視模式選中後)全部轉換為大寫
u(可視模式選中後)全部轉換為小寫
guu當前行轉換為小寫
guw當前單詞轉換為小寫
視覺化在vim模式-mode中提到
按鍵操作
:w將編輯的資料寫入硬碟中
:w!檔案屬性為『唯讀』時,強制寫入(!強制)
:q離開
:q!強制離開不儲存
:wq儲存後離開
:w [filename]
將編輯的資料儲存成另乙個檔案
寫到這裡其實我們細看以上命令就會發現它們時有很明顯的規則的,即:
動詞 + 名詞
比如:dw
操作符 + [數字] + 動作 = 操作符+游標移動
比如:d2w(delete 2 word) 意為刪除後面兩個單詞
還有,注意到 f 、f ; p、p 即可歸納為:
1.小寫字母(進行)字元操作,大寫字母(進行)行操作
2.小寫字母游標後操作,大寫字母游標前操作
在正常模式下,按下 i, o, a 等字元就可以進入輸入模式了。
在編輯模式當中,你可以發現在左下角狀態列中會出現 –insert- 的字樣,那就是可以輸入任意字元的提示.這個時候,鍵盤上除了 esc 這個按鍵之外(按下esc回到正常模式),其他的按鍵都可以視作為一般的輸入按鈕了,所以你可以進行任何的編輯
在插入模式中,可以使用以下按鍵:
按鍵操作
字元按鍵以及shift組合
輸入字元
enter,回車鍵
換行back space,退格鍵
刪除游標前乙個字元
del,刪除鍵
刪除游標後乙個字元
方向鍵在文字中移動游標
home/end
移動游標到行首/行尾
page up/page down
上/下翻頁
insert,切換游標為輸入/替換模式
游標將變成豎線/下劃線
esc退出輸入模式,切換到命令模式
安裝了vim可以在命令列輸入vimtutor開啟vim訓練模式30分鐘就可以學會vim的基本操作。
附上一張 vim 鍵點陣圖:
vim高階戳這裡:
巨集marco
模式mode
配置vimrc
vim多視窗
Vim 編輯器之神
最近在編寫linux伺服器 瀏覽了許多適用於linux的編輯器。作為系統自帶vi的加強版,vim以其高 酷 效 炫 的編碼深深的吸引了我,既然決定在程式設計師的道路上一頭走到黑,於情於理,也該掌握一門跨平台且被無數前輩大牛誇讚的編輯器的使用。掌握以下基本操作,應付常見問題也就ok了 命令模式下 指令...
編輯器之神 VIM
大概從大學二年級的時候,聽說了vim的存在 這個編輯器之神。但是那時嘗試了許多次來使用他,都還是失敗了。還是說vim起點太高的。當時學個游標移動都感覺很難。真正使用他也是在去年的實習的時候,當時時間還算多,就又試著使用他。到現在為止,一年多點吧。不能真正的算是會使用了vim,還有太多的東西不了解。但...
編輯器之神 vim
vi是 visual inte ce 的簡稱,它在linux上的地位就彷彿edit程式在dos上一樣。它可以執行輸出 刪除 查詢 替換 塊操作等眾多文字操作,而且使用者可以根據自己的需要對其進行定製。vi不是乙個排版程式,它不象word或wps那樣可以對字型 格式 段落等其他屬性進行編排,它只是乙個...