計算機工具基礎(五)——Vim
Vim
MIT《Missing in CS Class(2020):Class 3》筆記
注:
<>或^在本文中指Ctrl,如<c>或^c指Ctrl-c
Vim是終端環境中常用的純文本編輯器。Vim的默認配置文件位于~/.vimrc
模式
Vim有如下5種模式:
- 常規模式(Normal):進入Vim后的默認模式,用于閱讀文件。以
Esc自其他模式中退至此模式 - 插入模式(Insert):用于插入文本,以
i進入 - 替換模式(Replace):用于替換文本,以
r進入 - 可視模式(Visual):用于選中文本,與在其他編輯器中按
Shift+方向鍵選中文本等效。分為普通可視模式(以字符為單位,以v進入)、行可視模式(以行為單位,以V進入)、塊可視模式(縱向選擇,以<v>進入)。 - 命令模式(Command):用于執行某些命令,以
:進入
會話、緩存、標簽、窗口
- 會話(Session):保存了vim的完整工作狀態,包括緩存、窗口、標簽、選項等。
- 緩存(Buffer):緩存是加載進內存中的文件,每個文件對應一個緩存。關閉窗口不會清除緩存。
- 標簽(Tab):標簽負責組織窗口,每個標簽包含獨立的窗口布局。類似于桌面操作系統的一個桌面。Vim默認打開一個標簽頁,僅包含一個窗口。
- 窗口(Window):標簽頁內的視圖,顯示緩存內容。一個標簽可分割出多個窗口。
命令
以下命令適用于命令模式,不要與常規模式中的操作混淆。
-
q:退出所在窗口(但不退出緩存)qa:退出所有窗口(但不退出緩存)
q!:強制退出所在窗口(在緩存未寫入文件的情形下) -
w:保存緩存內容至文件 -
wq:保存緩存內容并退出窗口 -
e file_name:在此窗口覆蓋的打開文件file_name。 -
help command:查閱command的幫助手冊。注意若為命令,需為:command。 -
set options:用于設置選項 -
sp file_name:水平分割。將file_name加載進緩存,在同一標簽頁內,在此窗口的下方分離出新窗口,顯示內容為file_name。若不指定file_name,則分離當前窗口所顯示的緩存。vsp file_name:垂直分割。將file_name加載進緩存,在同一標簽頁內,在此窗口的右方分離出新窗口,顯示內容為file_name。若不指定file_name,則分離當前窗口所顯示的緩存。 -
tabnew file_name:將file_name加載進緩存,新建一個tab,顯示內容為file_name。 -
tabn:切換到下一個(next)標簽
tabp:切換到上一個(previous)標簽
快捷鍵
常規模式
G:跳到文尾gg:跳到文首H:左J:下K:上L:右w:word,跳至下個詞首b:begin,跳至上個詞首e:end,跳至下個詞尾0:移動至行首$:移動至行尾^:移動至本行首個非空字符<f>:向上翻一頁<b>:向下翻一頁<u>:向上翻半頁<d>:向下翻半頁/pattern:向后匹配模式串pattern?pattern:向前匹配字符串patternn:當前匹配方向的下個匹配N:當前匹配方向的上個匹配u:撤銷<r>:重做y:復制(默認復制當前光標字符,可通過進入可視模式選中內容)p:粘貼
命令模式
<w>+方向鍵:切換窗口
格式化代碼
常規模式下:gg=G

浙公網安備 33010602011771號