文章目錄
- 配置
- 最有用的命令
- 有用的外掛程式
- 為Python做設定
Technorati 標籤: vim
彙集網上各位兄台的內容,自己做了個筆記
配置最常用配置
set nocompatible "使得vim避免了原始vi的一些漏洞和限制
set autoindent "使用你當前行的縮排來設定你下一行的縮排
set smartindent "自動根據當前行的縮排,預測下一行的縮排
"在文本縮排時使用4格定位字元(自動或者手動調整縮排)
set tabstop=4
set shiftwidth=4
set expandtab "將輸入的TAB自動延伸成空格。開啟後要輸入TAB,需要Ctrl-V<TAB>
set softtabstop=4 "方便在開啟了et後使用退格(backspace)鍵,每次退格將刪除X個空格
set nobackup "取消備份檔案
set showmatch "游標快速定位到匹配的括弧
set guioptions-=T "去掉工具條
set guioptions-=m "去掉功能表列
set vb t_vb= "屏蔽遇到無效命令時發出的蜂鳴聲,而用一個快速的閃爍取而代之
set ruler "確保每一個視窗都包行一個顯示當前游標位置的狀態列
set nohls "預設情況下,尋找到的內容會被高亮顯示。這個命令關閉了高亮顯示尋找內容
set incsearch "當輸入字元時,快速將游標定位到相應的位置
最有用的命令
. |
輸入‘.’(一個句號)能重複上一條執行的命令 |
K |
進入當前游標下字串的命令解釋頁面(例如如果你游標在sleep上,按下K鍵你就能看到sleep的命令解釋頁面) |
% |
將游標定位在大括弧,中括弧...上,然後按下輸入%,將能讓游標定位於該大括弧或是中括弧的另一半上 |
CTRL-V |
塊操作,如給每行加註釋#: 1, Ctrl + V (windows 下為Ctrl + Q) 進入 VIM 的塊操作模式. 2, 使用 j, k 鍵上下移動,選中這三行,需要確保每行的首列包含在選中塊中。 3, 鍵入 I (大寫 i),即在行首插入。 輸入 Python 的注釋符 ‘#’。 4, 按下 ESC 鍵。 |
:%!xxd |
查看檔案的十六進位編碼, 返迴文本狀態 :%!xxd -r |
|
|
|
|
:help options |
查看所有VIM提供的選項 |
有用的外掛程式
NERD Commenter |
協助你成塊的注釋和反注釋代碼 |
snipMate |
實現程式碼片段,如在 c 檔案中輸入 for <tab> , 則自動輸入整個for迴圈需要的程式碼片段。 為了不和pydiction 爭用 <tab> 鍵,改plugin/snipMate.vim,使得snipMate用ctrl+j : ino <silent> <c-j> <c-r>=TriggerSnippet()<cr> "ino <silent> <tab> <c-r>=TriggerSnippet()<cr> snor <silent> <c-j> <esc>i<right><c-r>=TriggerSnippet()<cr> "snor <silent> <tab> <esc>i<right><c-r>=TriggerSnippet()<cr> |
Snippetsemu |
實現程式碼片段,和snipMate一樣 |
為Python做設定
autocmd FileType python setlocal et sta sw=4 sts=4
"4個空格替代TAB
程式碼摺疊功能
python_fold
命令: zo 展開; zc 折起; zn 全部展開; zN 全部折起
代碼補全(pydiction)
- 拷貝檔案python_pydiction.vim到 C:\Program Files\Vim\vimfiles\ftplugin 或 ~/.vim/after/ftplugin/
- 拷貝檔案 pydiction.py和complete-dict到 C:\Program Files\Vim\vimfiles\ftplugin\pydiction 或 ~/.vim/after/ftplugin/pydiction(當然,放到任何地方都可以,你只要在接下的vimrc檔案中把位置配對即可
- 編輯 vimrc檔案
filetype plugin on
let g:pydiction_location='C:\Program Files\Vim\vimfiles\ftplugin\pydiction\complete-dict'
<tab> 鍵 呼出待選項
待選項列表菜單出來後,可以通過tab 向下選擇,shift+tab反向選擇(上下箭頭也可)
不滿意就前點別的鍵(自己試試便知)
代碼補全(pysmell)
這個東東和pydiction用處差不多,選一個搞就行了。大概的區別是:
- 按鍵沒有pydiction方便
- 字典資訊放在項目目錄裡,不汙染全域,這個想法不錯
easy_install pysmell
copy pysmell.vim to ~/.vim/plugins
編輯vimrc:
autocmd FileType python setlocal omnifunc=pysmell#Complete
imap <F4> <C-X><C-O> “把預設的Ctrl – X + O 改為 F4
到Python 目錄下
pysmell . -x site-package test -o PYSMELLTAGES.pythonlib;
pysmell site-package/django -o PYSMELLTAGES.django
項目目錄下
pysmell . -o PYSMELLTAGS
就可以使用Vim 的自動補全了,按鍵:
F4 呼出待選視窗
Ctrl – N 向下選擇
Ctrl – P 向上選擇
代碼檢查
pyflakes-vim ,安裝很簡單,懶得翻了:
1. Make sure your vimrc has "filetype plugin indent on" so that pyflake-vim's ftplugin files are loaded automatically when you open a Python buffer.
2. Drop extracted files in ~/.vim/ftplugin/python.
有問題的代碼下面會有破浪號,游標移過去就可以在狀態列看到錯誤資訊了。
ctag 和 taglist
拷貝ctags.exe 到vim可執行檔所在目錄,確認這個目錄在系統路徑中
vimrc中配置taglist
let Tlist_Ctags_Cmd="ctags.exe"
map <F2> :Tlist<CR>
F2 開啟、關閉瀏覽視窗的快速鍵
Ctrl – 兩個w 切換在Tag視窗和源碼視窗中切換
懶人的方法
上述的東東挨個配起來很麻煩,有個懶人的辦法,把所有上述外掛程式和配置都搞定了:
- 下一個gvim72裝上
- 下這個壓縮包vim.rar (for windows),然後解壓去覆蓋你的vim安裝目錄
注意事項:
- 這個包裡使用的vim和gvim編譯為支援Python2.5, 如果你安裝的是2.6,請到這裡去下載對應的vim和gvim
- python環境中需要安裝pysmell
匯總一下快速鍵:
pydiction |
在插入編輯模式下按<tab> |
tab 向下選擇,shift+tab反向選擇(上下箭頭也可) |
pysemll |
在插入編輯模式下按F4 |
Ctrl – N 向下選擇; Ctrl – P 向上選擇 |
taglist |
F2 開啟、關閉瀏覽視窗 |
Ctrl – 兩個w 切換在Tag視窗和源碼視窗中切換 在瀏覽視窗通過 j,k鍵上下選擇,斷行符號就使源碼視窗跳到對應節,如函數 |