1 插入類命令
i // 在當前字元前插入
i // 在當前行首插入
a // 在當前字元後寫入
a // 在當前行尾寫入
o // 在當前行下面新增一行
o // 在當前行上面新增一行
r // 替換當前字元,替換之後立即退出編輯模式變成命令模式
r // 從當前字元開始替換,知道按esc才退出編輯模式變成命令模式
esc // 退出編輯模式,進入命令模式
2 移動類命令
h // 左移
j // 下移
k // 上移
l // 右移
0 // 移動到本行第乙個字元
$ // 移動到本行的最後乙個字元
g // 移動到最後一行
gg // 移動到第一行
ctrl + f // 向下翻一頁
ctrl + b // 向上翻一頁
h // 移動到螢幕最上方那一行的第乙個字元
m // 移動到螢幕中間那一行的第乙個字元
l // 移動到螢幕最下方那一行的第乙個字元
3 搜尋替換類命令
/word // 向後搜尋word
n // 繼續向後搜尋下乙個
n // 繼續向前搜尋下乙個
:%s/w1/w2/g // 全文件把搜尋w1替換為w2,如果不加g,則只替換每行的第乙個匹配
:1,10s/w1/w2/g // 在1~10行內搜尋w1替換為w2
:8,$s/w1/w2/gc // 從第八行到最後一行搜尋w1替換為w2,並且請求確認
4 刪除複製貼上類命令
x // 刪除當前字元
nx // 向後刪除n個字元
dd // 刪除當前行
ndd // 從當前行開始,刪除n行,包括當前行
dgg // 刪除當前行到開始行
dg // 刪除當前行到結束行
d$ // 刪除當前字元到行尾
d0 // 刪除到行首,但不刪除當前字元
yy // 複製當前行
nyy // 從當前行向下複製n行
ygg // 複製當前行直到第一行
yg // 複製當前行直到最後一行
y0 // 複製到行首,但是不包括當前字元
y$ // 從當前字元複製到行尾
p // 在下一行貼上,如果不是複製了整行,則是在當前字元後面貼上
p // 大寫p,在上一行貼上,如果不是複製了整行,則在當前字元前面貼上
u // 還原前乙個動作,歷史向後退
ctrl + r // 重做上乙個動作,歷史向前進
. // 重複前乙個動作
5 儲存退出類命令
:w // 將編輯的內容寫入
:w! // 當為唯讀時,強制寫入,但不一定能成功
:q // 退出vim
:q! // 強制退出vim而不儲存資料
:wq // 寫入,然後退出
:wq! // 強制寫入,然後退出
:w newfile // 另存為檔案,但是仍舊在編輯當前檔案,和ms word不同
:n1,n2 w newfile // 把n1到n2另存到newfile,但仍編輯當前檔案
:r filename // 讀入filename中內容,新增到當前行下面
:! cmd // 暫時離開vim介面,執行cmd命令,退出命令之後仍然回到vim
:r ! cmd // 把cmd執行的輸出,寫到當前行下面
:set nu // 顯示行號
:set nonu // 不顯示行號
6 選擇類命令
v // 字元選擇,會把游標所經過的字元反白選擇
v // 行選擇,會把游標經過的行反白選擇
ctrl + v // 選擇乙個長方形的區域
y // 複製選擇的區域
d // 刪除選擇的區域
r // 把選中區域全部字元替換為某個字元
i // 前面插入整列
a // 後面插入整列
7 多文件編輯
:n // 編輯前乙個文件
:files // 列出當前vim開啟的所有文件
8 多視窗編輯
對於同乙個文件,如果拆分成多個視窗,則在記憶體中只有乙份文件,兩個視窗只是顯示部分不同而已,對應的是記憶體中同樣的文件,在任何乙個視窗中寫入資料,另乙個視窗也會顯示。
對於不同的文件,兩個視窗則分別顯示了記憶體中不同的快取區域。但是兩個文件之間的某些vim命令是共享的,例如搜尋,複製等等。但是w和q命令並不共享。
sp // 把當前文件分為兩個視窗來顯示
sp newfile // 新增乙個視窗顯示另乙個文件
ctrl + w + j // 移動到下面的視窗
ctrl + w + k // 移動到上面的視窗
9 vim設定
在家目錄中,自動生成 .viminfo檔案,用來儲存操作歷史,以便在下次開啟文件的時候,能快速重現文件的最後狀態。
對所有使用者都生效的vim設定放置在/etc/vimrc中,一般不做修改。
個性化的設定,可以放在 ~/.vimrc中。 vim在啟動時,首先會執行 /etc/vimrc中的配置命令,然後執行 ~/.vimrc中的配置命令。
10 字元編碼
編碼,即把有含義的文字和符號轉換成資料來表示。
解碼,即把資料解釋為有含義的文字和符號。
~/.vimrc中可以設定規則:
set encoding=utf-8 // 設定vim的內部編碼規則是utf-8,即記憶體中存放的資料是按照utf-8編碼規則轉換而來的
set fileencodings=utf-8,gb2312 // 設定vim怎樣理解檔案的編碼規則
在使用vim開啟檔案後,如果想檢視檔案的編碼規則,可以使用
:set fileencoding
如果想更改檔案的編碼規則,則可以使用
:set fileencoding=***
w儲存檔案後,檔案的編碼格式就改變了(慎重使用)。
也可以使用iconv命令,轉換檔案的編碼規則。
vim 快捷鍵 Vim快捷鍵,按鍵彙總
第一部分 一般模式可用的游標移動 複製貼上 搜尋替換等 移動游標的方法 h 或 向左箭頭鍵 游標向左移動乙個字元 j 或 向下箭頭鍵 游標向下移動乙個字元 k 或 向上箭頭鍵 游標向上移動乙個字元 l 或 向右箭頭鍵 游標向右移動乙個字元 如果你將右手放在鍵盤上的話,你會發現 hjkl 是排列在一起...
terminal快捷鍵以及vim快捷鍵
1.linux,mac終端快捷鍵 linux mac輸入terminal命令的快捷鍵 ctrl c,停止執行 ctrl s,暫停螢幕輸出 ctrl q,恢復螢幕輸出 ctrl a,跳到行開始ctrl e,跳到行endctrl left,跳到上乙個單詞ctrl right,跳到下乙個單詞 mac下是a...
vim快捷鍵大全
vim是乙個多模式的編輯器。就目前來看,主要有以下幾個主要模式。1.通常模式 n 在其它任何乙個模式下,用esc或者 ctrl c 鍵可以退到通常模式。2.插入模式 i 在這個模式下,vim像乙個常見的編輯器.在通常模式下,用i或者a可以進行本模式,當然,還有一些其它命令也可以。3.可視模式 v 在...