當前位置: 華文星空 > 知識

vim/gvim 有哪些實用技巧?

2014-12-25知識

來點新鮮的,部份我收集整理的:

- 永遠不要用 CTRL - C 代替 < ESC > 完全不同的含義 ,容易錯誤中斷當前指令碼 - 很多人使用 CTRL - [ 代替 < ESC > ,左手小指 CTRL ,右手小指 [ 熟練後很方便 - SecureCRT 中使用 Vim 8 內嵌終端如看到奇怪字元 ,使用 :set t_RS = t_SH = 解決 - SecureCRT 中使用 NeoVim 如看到奇怪字元 ,使用 :set guicursor = 解決 - * 和 # (以及 g */g #)是十分重要的尋找命令 - 多使用 ciw , ci [, ci ", ci( 以及 diw, di[, di" , di ( 命令來快速覆寫 /刪除文本 - 使用 @: 重復執行上一次 Ex 命令 ,比如 :nohl < cr >, @:, @:, @: - SHIFT 相當於移動加速鍵 , w b e 移動光標很慢 ,但是 W B E 走的很快 - 自己要善於總結新技巧 ,比如移動到行首非空字元時用 0 w 命令比 ^ 命令更容易輸入 - 在空白行使用 dip 命令可以刪除所有臨近的空白行 - 在空白區使用 viw 可以選擇所有空白字元 - 縮排時使用 > 8 j > } < ap = i } == 會方便很多 - 越重復的工作 ,越需要努力的將其自動化 - 編程時可以使用 [{ 和 ]} 快速在函數間移動 - 插入模式下 ,當你發現一個單詞寫錯了 ,應該多用 CTRL - W 這比 < BackSpace > 快 - 插入模式下 ,CTRL - X CTRL - F 可以方便的補全當前目錄的檔名 - 插入模式下 ,可用 CTRL - V u 輸入 unicode ,如 < C - V > u1234 輸入16進制 unicoode - 插入模式下 ,CTRL - R = 可以用來簡單計算 ,比如 < C - R >= 12 *3 .5 /10 < cr > 會插入 4 .2 - 如果在插入模式下移動光標 ,那麽就不能使用 . 來重復之前的插入了 - y d c 命令可以很好結合 f t 和 /X 比如 dt) 和 y/ end < cr > - c d x 命令會自動填充寄存器 "1 到 " 9 , y 命令會自動填充 "0 寄存器 - 用 v 命令選擇文本時 ,可以用 o 掉頭選擇 ,有時很有用 - ca ) 和 yi } 很容易記憶 ,但是他們等同於 cab yiB 後者很容易輸入 - 寫文章時 ,可以寫一段程式碼塊 ,然後選中後執行 :! python 程式碼塊就會被替換成結果 - 搜尋後經常使用 :nohl 來消除高亮 ,使用很頻繁 ,可以 map 到 < BackSpace > 上 - 搜尋時可以用 CTRL - R CTRL - W 插入光標下的單詞 - Vim 有一千零一種移動光標的方法 ,有時候就連 H M L 也是很有用的 - 不需要記憶上一次選擇區域 ,'< 和 ' > 可以跳到上次選擇的開始和結束 - 如需編輯同一個檔的不同地方 ,可以用 :vs 或者 :split 將檔分為兩個視窗 - 有六種方法來改變一個布爾設定 : :set list nolist list ! invlist list ? list & - 對映按鍵時 ,應該預設使用 noremap ,只有特別需要的時候使用 map - 當你覺得做某事很低效時 ,你應該停下來 ,u u u u 然後思考正確的高效方式來完成 - 用 y復制文本後 ,命令模式中 CTRL - R 然後按雙引號 " 可以插入之前復制內容 - 如果你想全螢幕閱讀幫助的話 ,使用 :tab help < keyword > 命令 - 貼上文本時應該思考下前後是否包含空格 - :x 和 ZZ 命令和 :wq 類似 ,但是不會寫入沒有改變的檔 ,並且更快 - 多閱讀 :h index 學習新的快捷鍵 ,讓你更加高效 - Vim 幫助系統裏有一個使用技巧集合 ,使用 :h tips 閱讀 - Windows 下的 GVim 可以用 CTRL - INSERT 和 SHIFT - INSERT 作業系統剪貼簿 - 思考題 :知道下面控制程式碼 ^I ^M ^J ^[ ^H ^@ 分別代表什麽意思麽 ?

更多技巧見:

https:// github.com/skywind3000/ awesome-cheatsheets/blob/master/editors/vim.txt

全網最全的 Vim 速查表