Vim(Vi IMproved)是一款強大的文本編輯器,廣泛用於Unix和Linux系統。它具有高度可定制性和豐富的功能集,使其成為程序員、系統管理員和文本編輯愛好者的首選工具之一。
正常模式(Normal Mode):
h
(左)、j
(下)、k
(上)、l
(右),以及其他命令如 w
(向前移動一個詞)、b
(向後移動一個詞)、gg
(跳轉到文件開頭)和 G
(跳轉到文件末尾)等。x
(刪除字符)、dd
(刪除整行)、yy
(復制整行)等。:
進入命令模式,執行各種命令,如保存文件 :w
、退出 :q
等。插入模式(Insert Mode):
i
:在光標前插入文本。I
:在當前行的開頭插入文本。a
:在光標後插入文本。A
:在當前行的末尾插入文本。o
:在當前行的下方插入新行並進入插入模式。O
:在當前行的上方插入新行並進入插入模式。Esc
鍵。可視模式(Visual Mode):
v
:按字符選擇。V
:按行選擇。Ctrl + v
:按塊選擇。命令模式(Command-Line Mode):
:
進入命令模式,用於執行各種命令。:w
:保存文件。:q
:退出 Vim。:q!
:強制退出 Vim,放棄未保存的更改。:wq
或 :x
:保存並退出。:e
:重新加載文件。:r
:在當前位置插入另一個文件的內容。:set
:配置 Vim 選項。替換模式(Replace Mode):
R
:按字符替換。r
:按需替換單個字符。從正常模式切換到插入模式:
i
:在光標前插入文本。I
:在當前行的開頭插入文本。a
:在光標後插入文本。A
:在當前行的末尾插入文本。o
:在當前行的下方插入新行並進入插入模式。O
:在當前行的上方插入新行並進入插入模式。Esc
鍵返回正常模式。從正常模式切換到可視模式:
v
:按字符選擇。V
:按行選擇。Ctrl + v
:按塊選擇。從插入模式返回正常模式:
Esc
鍵。按下 Esc
鍵會立即退出插入模式,並將光標定位回正常模式下的當前位置。基本導航命令:
h
:將光標向左移動一個字符。j
:將光標向下移動一行。k
:將光標向上移動一行。l
:將光標向右移動一個字符。詞級導航:
w
:將光標向前移動到下一個單詞的開頭。b
:將光標向後移動到當前單詞的開頭。e
:將光標移動到當前單詞的末尾。ge
:將光標移動到前一個單詞的末尾。行級導航:
0
(零):將光標移到當前行的開頭。$
:將光標移到當前行的末尾。^
:將光標移到當前行的第一個非空字符。文件級導航:
gg
:將光標移到文件的第一行。G
:將光標移到文件的最後一行。:<行號>
:將光標移到指定行號。滾動導航:
Ctrl + u
:向上滾動半屏。Ctrl + d
:向下滾動半屏。Ctrl + b
:向上滾動一屏。Ctrl + f
:向下滾動一屏。搜索導航:
/
進入搜索模式,輸入要搜索的文本,然後按 Enter
鍵開始搜索。使用 n
鍵和 N
鍵在搜索結果之間移動。書簽導航:
m<標記>
:將光標位置標記為指定的 <標記>
。'
或 ````:跳轉到上一個書簽。`:<標記>
:跳轉到指定的書簽。刪除文本:
x
:刪除光標下的字符。dd
:刪除整行。D
:刪除從光標位置到行末的文本。:n1,n2d
:刪除指定行范圍(n1 到 n2)的文本。復制和剪切文本:
yy
:復制當前行。y$
:復制從光標位置到行末的文本。p
:粘貼之前復制或剪切的文本。:n1,n2y
:復制指定行范圍(n1 到 n2)的文本。:n1,n2d
:剪切指定行范圍(n1 到 n2)的文本。粘貼文本:
p
命令可以粘貼最近復制或剪切的文本。粘貼操作會在光標位置後方插入文本。替換文本:
r<字符>
:用指定字符替換光標下的字符。R
:進入替換模式,可以連續替換多個字符,按 Esc
退出替換模式。插入文本:
i
:在光標前插入文本。I
:在當前行的開頭插入文本。a
:在光標後插入文本。A
:在當前行的末尾插入文本。o
:在當前行的下方插入新行並進入插入模式。O
:在當前行的上方插入新行並進入插入模式。撤銷和重做:
u
:撤銷最後的操作。Ctrl + r
:重做操作(撤銷的反操作)。全局替換:
:s
命令在文件中進行全局替換操作。例如,:s/old/new/g
將文件中的所有 old
替換為 new
。多光標編輯:
Ctrl + v
進入可視塊模式,選擇多個光標位置,然後同時編輯這些位置的文本。搜索文本:
/
進入搜索模式。輸入要搜索的文本,然後按 Enter
鍵開始搜索。使用 n
鍵移動到下一個匹配項,使用 N
鍵移動到上一個匹配項。?
進入反向搜索模式。輸入要搜索的文本,然後按 Enter
鍵開始反向搜索。使用 n
鍵移動到上一個匹配項,使用 N
鍵移動到下一個匹配項。:set hlsearch
或 :set nohlsearch
命令。/pattern/i
可以忽略大小寫,/pattern/n
可以禁用正則表達式匹配。
進行轉義,例如 /my_variable/
。*
可以尋找光標下的單詞,然後使用 #
尋找上一個匹配項。替換文本:
:s
命令來替換當前匹配項。例如,要將當前單詞 old
替換為 new
,可以輸入 :s/old/new/
。g
標志,如 :%s/old/new/g
。c
標志,如 :%s/old/new/gc
。:n1,n2s
命令來替換指定行范圍內的文本。例如,:10,20s/old/new/g
會在第 10 行到第 20 行之間進行全局替換。u
命令來撤銷替換。y
來確認替換當前匹配項,按下 n
來跳過當前匹配項。:w
命令,如 :%s/old/new/g | w
。打開和關閉窗口:
:split <文件路徑>
:創建水平分屏窗口並打開指定文件。:split
或 Ctrl + w
之後按 s
:創建水平分屏窗口,將當前文件分為上下兩個部分。:vsplit <文件路徑>
:創建垂直分屏窗口並打開指定文件。:vsplit
或 Ctrl + w
之後按 v
:創建垂直分屏窗口,將當前文件分為左右兩個部分。:q
:關閉當前窗口。:q!
:強制關閉當前窗口並放棄更改。:wq
或 :x
:保存並關閉當前窗口。:qall
。切換窗口:
Ctrl + w
,然後按 Ctrl + w
:循環切換焦點到下一個窗口。Ctrl + w
,然後按 h
、j
、k
或 l
:將焦點分別切換到左、下、上、右的窗口。Ctrl + w
,然後按 R
:旋轉當前窗口佈局,將水平分屏轉為垂直分屏或反之。調整窗口大小:
Ctrl + w
,然後按 <
或 >
:增加或減少當前窗口的寬度。Ctrl + w
,然後按 +
或 -
:增加或減少當前窗口的高度。Ctrl + w
,然後按 =
:將所有窗口均等分佈在 Vim 窗口中。多文件操作:
vim file1.txt file2.txt
來同時打開兩個文件。:sp
和 :vsp
命令來將一個窗口中的內容復制到另一個窗口。創建和編輯配置文件:
.vimrc
文件,可以使用文本編輯器創建一個。在終端中運行以下命令:touch ~/.vimrc.vimrc
文件,例如:vim ~/.vimrc,可以在配置文件中添加和編輯各種配置選項,以自定義 Vim 的行為。配置選項:
tabstop
、shiftwidth
和 expandtab
選項來控制縮進的方式。例如:set tabstop=4 set shiftwidth=4 set expandtabcall plug#begin('~/.vim/plugged')
Plug 'tpope/vim-fugitive'
call plug#end()
保存和應用配置:
.vimrc
文件後,使用 :w
命令保存更改。.vimrc
文件後,可以使用以下命令使配置生效,而無需退出 Vim::source ~/.vimrc,或者可以重新啟動 Vim 以應用新的配置。安裝插件:
.vimrc
文件中添加插件列表,然後運行 :PlugInstall
命令來安裝插件。.vimrc
配置文件來管理插件。可以使用 :PluginInstall
命令來安裝插件。常見插件用途:
vim-airline
:自定義狀態欄。YouCompleteMe
:強大的自動完成和代碼建議插件。NerdTree
:文件樹瀏覽器。gruvbox
:受歡迎的暗色調主題。solarized
:另一個受歡迎的顏色方案。lightline
:輕量級狀態欄插件。NERDTree
:文件樹瀏覽器。CtrlP
:快速文件搜索和切換插件。fzf
:模糊文件搜索和快速查找插件。vim-fugitive
:強大的 Git 插件。GitGutter
:顯示行內 Git 狀態信息。Ag
:快速搜索文本。Surround
:快速添加、更改和刪除文本周圍的符號。vim-easymotion
:快速移動光標。:help
命令:
:help
命令來訪問在線幫助系統。隻需在正常模式下鍵入 :help
,然後輸入想要瞭解的主題、命令或選項的名稱,然後按 Enter
鍵。例如::help
:打開幫助索引。:help :w
:查看 :w
命令的幫助。:help insert-mode
:查看插入模式的幫助。幫助索引:
:help
命令將打開幫助索引,該索引包含瞭關於 Vim 的廣泛文檔。可以使用以下鍵盤命令來導航和查找幫助文檔:j
和 k
鍵在不同主題之間導航。Ctrl + ]
鍵跳轉到當前選定主題的詳細信息。Ctrl + t
鍵返回到上一個主題。/
鍵來搜索關鍵字,然後按 Enter
鍵查找匹配項。:q
命令退出幫助系統。幫助標簽頁:
:help tab-page
:打開標簽頁幫助。:tabnew
或 :help :tabnew
:打開新標簽頁。:tabnext
和 :tabprev
:在標簽頁之間切換。:tabclose
或 :q
:關閉當前標簽頁。特定主題的幫助:
:help
命令,後跟主題名稱。例如::help motions
:查看有關移動命令的幫助。:help text-objects
:查看有關文本對象(如單詞、段落等)的幫助。內置教程:
:vimtutor
命令啟動。這是一個交互式的教程,可以幫助新用戶學習 Vim 的基本功能。離線幫助:
這些是 Vim 的基本概念和一些常用命令,Vim 具有豐富的功能和命令,允許用戶高效地編輯文本。要充分發揮 Vim 的威力,需要不斷練習和學習,並逐漸掌握更高級的功能和定制選項。可以在Vim內部查看幫助文檔來深入瞭解其功能和用法。
下一篇