vim最實用的操作命令

          筆者只記錄最常用的vim命令,相信也很少有人能夠將其全部記住,畢竟這只是一個編輯工具。也不值得我們投入大量的精力。只求以最小的精力,儘可能滿足我們的需要。

目錄

一. vim常用模式

二.vim打開方式

三.vim文檔操作

四.光標移動

五.vim文本插入

六.查找替換

7.多文件編輯

七.撤銷與重做

八.文件加密

九.文件編碼


一. vim常用模式

正常模式:按:即可進入,此模式下可輸入命令進行操作

插入模式:按 i ,可對內容進行編輯,在光標處進行插入,退格以及回車操作

可視模式:按v以字符精度進行選中,按V以行精度進行選中,ctrl+v以塊精度進行選中。

                  可視模式下可進行d刪除,y複製,p黏貼

​​​​​​​二.vim打開方式

vim file  正常打開

vim + file 從文件的末尾開始

vim num file 從某一行開始

三.vim文檔操作

:w 保存修改

:wq 保存並退出

:q 退出

:q! 強制退出

:e file  關閉當前文件,並打開其他文件

:e! file  放棄對當前文件的修改,編輯新的文件。

:e#或ctrl+^   回到上一個編輯的文件

:Sex  水平分割,並瀏覽文件系統。在文件系統回車直接進入vim模式

:Vex  垂直分割

四.光標移動

(1)基本移動

0 移動到行首

shift + 4 移動到行尾

gg 文件頭部

G 文件尾部

ctrl+f: 下翻一屏。

ctrl+b: 上翻一屏

ctrl+e: 向下滾動一行。

ctrl+y: 向上滾動一行

(2)標記

m{a-z}: 標記光標所在位置,局部標記,只用於當前文件。

m{A-Z}: 標記光標所在位置,全局標記。標記之後,退出Vim, 重新啓動,標記仍然有效。

`{a-z}: 移動到標記位置。

:marks 顯示所有標記

:delmarks a 

:delmarks!  刪除所有標記

五.vim文本插入

指定數量插入字符 eg:按8,再按i,進入插入模式,輸入=, 按esc進入命令模式,就會出現8個=。 這在插入分割線時非常有用,如30i+<esc>就插入了36個+組成的分割線。

o: 在下面新建一行插入;

O: 在上面新建一行插入;

:r filename在當前位置插入另一個文件的內容。

:r !date 在光標處插入當前日期與時間。同理,:r !command可以將其它shell命令的輸出插入當前文檔。

六.查找替換

:/something: 在後面的文本中查找something

:?something: 在前面的文本中查找something。

n: 向後查找下一個。

N: 向前查找下一個

:s/old/new - 用new替換當前行第一個old。

:s/old/new/g - 用new替換當前行所有的old。

7.多文件編輯

分屏編輯

vi -o filenames 在水平分割的多個窗口中編輯多個文件。

vi -O filenames 在垂直分割的多個窗口中編輯多個文件。

ctrl+w 窗口切換

qall – 關閉所有窗口,退出vim。

:wall – 保存所有修改過的窗口。

:only – 只保留當前窗口,關閉其它窗口。

ctrl+w + –當前窗口增高一行。也可以用n增高n行。

ctrl+w - –當前窗口減小一行。也可以用n減小n行。

ctrl+w < –當前窗口減少一列。也可以用n減少n列。

ctrl+w > –當前窗口增寬一列。也可以用n增寬n列。

多標籤編輯

vim -p files: 打開多個文件,每個文件佔用一個標籤頁。

tabn – 切換到下一個標籤。Control + PageDown,也可以。

:tabp – 切換到上一個標籤。Control + PageUp,也可以。

七.撤銷與重做

[n] u: 取消一(n)個改動。

:undo 3– 撤銷3個改變。

:undolist – 你的撤銷歷史。

ctrl + r: 重做最後的改動。

U: 取消當前行中所有的改動。

:earlier 3m – 回到3分鐘前

:later 5s – 前進5秒

八.文件加密

vim -x file: 開始編輯一個加密的文件。

:X – 爲當前文件設置密碼。

:set key= – 去除文件的密碼

九.文件編碼

:e ++enc=utf8 filename, 讓vim用utf-8的編碼打開這個文件。

:w ++enc=gbk,不管當前文件什麼編碼,把它轉存成gbk編碼。

:set fenc或:set fileencoding,查看當前文件的編碼。

在vimrc中添加set fileencoding=ucs-bom,utf-8,cp936,vim會根據要打開的文件選擇合適的編碼。 注意:編碼之間不要留空格。 cp936對應於gbk編碼。 ucs-bom對應於windows下的文件格式。

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章