shift+h 屏幕開頭 shift+m 屏幕中間 shift+l 屏幕結尾 nG 跳轉到第n行 . 重複前一個操做 J 合併下一行 ?word 向上搜索 :n1,n2s/word1/word2/g 替換字符串, 全文替換則指定行爲1,$s, 或者%s x 刪除字符 dd 刪除行 yy 複製行 d1G 刪除光標行至首行 y1G dG 刪除光標行至末行 yG d$ 刪除光標至行末 y$ d0 刪除光標至首字母 y0 ctrl + f 下翻一頁 ctrl + b 上翻一頁 crtl + d 下翻半頁 ctrl + u 上翻半頁
i 當前插入 I 行首插入 a 下一字符插入 A 行末插入
:N 跳轉到第N行 :w[filename] 另存爲文件 :r[filename] 讀取文件並追加到光標下行 :!command 臨時執行shell命令 :set backup 設置備份, 文件名爲 filename~ :set paste 進入粘貼模式 :set list 顯示換行符(\n), 具體的在vim環境下顯示爲 $ 符號。 此命令同時會顯示製表符, 在vim環境中顯示爲 ^I 符號 :e ++ff=unix % 顯示回車符(\r), 具體的在vim環境中會顯示爲 ^M 符號 :%s/\r//g 刪除windows回車符
v # 字符選擇 V # 行選擇 ctl + v # 塊選擇 ctl + v -> d # 列刪除 ctl + v -> I -> 輸入 -> ESC 2 # 列插入
vim file1 file2 ... :n 編輯下一個 :N 編輯上一個 :files 當前編輯列表
:sp filename 水平切割窗口。沒有filename則重複打開當前文件 :vs filename 垂直切割窗口。沒有filename則重複打開當前文件 (ctrl + w) + j/下箭頭 下切窗口 (ctrl + w) + k/上箭頭 上切窗口 (ctrl + w) + q 退出窗口, 亦可 :q
:set all
查看當前環境配置shell
我習慣的Vim初始化配置,vim /etc/vimrc
末尾追加以下配置vim
%retab! set nu "顯示行號 set ic "搜索時忽略大小寫 set nowrap "禁止自動換行 set ffs=unix,dos,mac set expandtab "製表符以空格組合展現 set tabstop=4 "讀取時製表符長度 set softtabstop=4 "編輯時製表符長度 set ai shiftwidth=4 "設定縮進4。注意:粘貼縮進文本需退出縮進set noai,不然粘貼結果會 自動縮進+剪貼板文本已有縮進