Vim 學習曲線陡峭,但掌握核心操作後效率指數級提升。本文針對系統管理員場景,精選 Vim 五大模式、九大高頻操作、配色與會話管理,構建最小必要知識集。
| 模式 | 進入鍵 | 核心用途 |
|---|---|---|
| Normal (普通) | 啟動預設 / Esc | 導航、刪除、複製、執行命令 |
| Visual (可視) | v (字符) / V (行) / Ctrl+v (塊) | 選取高亮區域操作 |
| Insert (插入) | i (光標前) / a (光標後) / o (新行) | 文字輸入編輯 |
| Select (選擇) | GVim 滑鼠拖選 / gh | 類 Windows 選取即替換 |
| Command-line (命令行) | : (單行) / Q (Ex 多行) | 執行 Ex 命令、搜尋、替換、存檔 |
:e filepath " 開啟檔案 (支援 Tab 補全)
:bd " 關閉當前緩衝區
:bn / :bp " 下一個/上一個緩衝區
gg " 檔案首行
G / Shift+g " 檔案尾行
:n " 跳轉第 n 行
:split " 水平分割
:vsplit " 垂直分割
Ctrl+w + 方向鍵 " 切換焦點
Ctrl+w w " 循環切換
" ~/.vimrc
set encoding=utf-8
set fileencodings=utf-8,gbk,gb2313,cp936
set termencoding=utf-8
set mouse=v " 可視模式滑鼠複製
:make " 執行 Makefile
:cw " 開啟錯誤列表視窗
:cn / :cp " 下一個/上一個錯誤跳轉
" ~/.vimrc 末尾添加
colorscheme evening " 或 desert, molokai, solarized, gruvbox
" 方案檔位置: /usr/share/vim/vimXX/colors/*.vim
:123 " 跳轉第 123 行
:123 " 同上
" 僅安裝 vim-gtk/vim-gnome 即可支援 +clipboard
" 或使用 gvim -v 啟動 (需 alias)
alias vim='gvim -v'
:mksession session.vim " 保存佈局、緩衝區、游標位置
:mkviminfo info.vim " 保存歷史、暫存器、標記
:source session.vim " 恢復會話
:rviminfo info.vim " 恢復 viminfo
set nocompatible
set encoding=utf-8
set fileencodings=utf-8,gbk
set number
set tabstop=4 shiftwidth=4 expandtab
set autoindent smartindent
set incsearch hlsearch ignorecase smartcase
set clipboard+=unnamed
set mouse=v
set history=1000
set nobackup noswapfile
syntax on
colorscheme desert

練習建議:每天強迫用 Vim 編輯 1 個配置檔、寫 1 個腳本、閱讀 1 個日誌,兩週形成肌肉記憶。