vim 的優勢純文字編輯和 Linux 完美的融合提供了命令行。只能假設 ssh 至server進行操做,那麼這樣的狀況就僅僅能使用 vim 了。vim 也是最爲強大的通用文本編輯器之中的一個,對於需要編輯不一樣文本的情景,vim 也是至關有優點的。因此,熟練掌握一下 vim 的基本使用仍是很是有必要的。前端
vim 是在 vi 基礎上加很是多新特徵發展而來。gvim 則給 vim 加上了圖形前端。假設在 Windows 下使用 vim,可以直接安裝最新的 gvim。python
"----------------------------------------------------------------------------------- :imap ii <Esc> " 按鍵映射 <ESC> -> ii "外觀 colorscheme evening " 配置顏色主題 set guifont=Consolas:h12 " 設置字體和大小 set number " 顯示行號 set guioptions-=T " 隱藏工具欄 set ruler " 打開狀態欄標尺 set cursorline " 突出顯示當前行 set syntax=on " 語法高亮 set showmatch " 高亮顯示匹配的括號 set matchtime=3 " 匹配括號高亮的時間(單位:0.1s) set scrolloff=10 " 光標到屏幕底端保留 10 行 (光標位於屏底看着很是不舒服的) set lines=35 columns=118 " 啓動時的大小 :winpos 177 51 " 啓動時的位置 "搜索 set ignorecase smartcase " 搜索忽略大寫和小寫,但有大寫字母時仍保持大寫和小寫敏感 set hlsearch " 高亮搜索 set incsearch " 增量式搜索,逐字符高亮 "操做 set clipboard+=unnamed " 共享剪切板 set showcmd " 輸入的命令顯示出來 set iskeyword+=_,$,@,%,#,- " 帶有例如如下符號的單詞不要被換行切割 set noexpandtab " 不用空格取代Tab (makefile是會經常常使用Tab的) set tabstop=4 " Tab 鍵的寬度 set shiftwidth=4 " 行交錯寬度 set mouse=a " 鼠標可用 set autoindent " 繼承前一行的縮進方式。特別適用於多行凝視 "備份 set confirm " 未保存或者僅僅讀時,彈出確認 set nobackup " 不生成備份文件 setlocal noswapfile " 不生成 swap 文件 set bufhidden=hide " 當 buffer 被丟棄的時候隱藏 set noerrorbells " 不發出警告聲 "解碼 set fenc=utf-8 set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936
# 效率 . # 反覆近期的文本操做 # 文件 :q # 退出 q->quit :w # 保存 w->write :q! # 強制退出不保存 :wq # 保存後退出 ZZ # 保存後退出,同 :wq # 光標移動 hjkl # 最主要的左下上右。移動一個字符 zz # 光標作在行移動到屏幕中間 w # 向前移動一個單詞。光標停在單詞首部 b # 向後移動一個單詞, 光標停在單詞首部 e # 同 w, 光標停在單詞尾部 ge # 同 b, 光標停在單詞尾部 0 # 本行第一個字符 (同 <HOME> 鍵) ^ # 本行第一個非空白字符 $ # 移動到行尾 (同 <END> 鍵) gg # 移動到文件頭 G # 移動到文件尾 :n # 跳轉到第 n 行 fx # 移動到光標後第一個爲 x 的字符 find Fx # 同 f,反向移 Ctrl+d # 向下滾動半屏 Ctrl+u # 向上滾動半屏 Ctrl+f # 向下滾動半屏 Ctrl+b # 向上滾動半屏 % # 跳轉到配對的括號 (常常使用) ( # 移動到當前句子開始 ) # 移動到下一句子開始 H # 移動頁面頂部 H->High M # 移動頁面中部 M->Middle L # 移動頁面底部 L->Low # 查找 /test # 查找 text ,(記得用正則表達式), 而後 n 向下。 N 向上 n->next ?test # 查找 text 。反向 * # 向下查找和光標所在單詞同樣的詞 # # 向上查找和光標所在單詞同樣的詞 :nohlsearch # 關閉當前高亮顯示的結果 (輸入 :noh 按下 <Tab> 鍵 就能夠本身主動補全) # 替換 ra # 當前字符替換爲 a , r->replace :%s/old/new/g # 替換全文的所有的匹配 g->global :%s/old/new/ # 替換所有行第一個匹配 :s/old/new/g # 替換當前行所有匹配 :s/old/new/ # 替換當前行第一個匹配 # 插入 a # 在當前位置後插入 a->append A # 在當前行尾插入 i # 在當前位置插入 i->insert I # 在當前行首插入 o # 在當前行以後插之中的一個行 O # 在當前行以前插入一行 s # 刪除光標所在字符,並進入插入模式 S # 刪除光標所在的行,並進入插入模式 # 選中 v # 從光標當前位置開始,光標所通過的地方會被選中,再按一下 v 結束 (類似 <shift>+方向建) v->view 可視模式 V # 從光標當前行開始,光標通過的行都會被選中,再按一下 V 結束 # 刪除 d # 刪除選中 (刪除內容到了緩衝區可以被粘貼,至關於剪切) d->delete x # 刪除當前字符 3x # 刪除當前光標向後三個字符 (vim 經常常使用 <數字>+<命令> 組合) dd # 刪除當前行 dw # 刪除光標所在字符至下個單詞開頭 dw -> delete word d$ # 刪除當前字符到行尾 %->正則中就是行尾 3d # 刪除當前行開始三行 J # 合併兩行 (即刪除當行尾換行符) J->join # 撤銷 u # 撤銷 u->undo U # 撤銷對正行的操做 Ctrl+r # 恢復撤銷 # 複製粘貼 y # 複製選中 yy # 複製當前行 p # 在當前光標後粘貼。假設複製了一行則粘貼到下一行 p-paste P # 在當前光標前粘貼 ddp # 交換當前行和下一行 (巧妙運用了剪切粘貼) xp # 交換當前字符和下一個
版權聲明:本文博主原創文章,博客,未經贊成不得轉載。vim
[http://blog.csdn.net/thisinnocence]app