vim 自動補全

2021-07-08 10:15:49 字數 1654 閱讀 4613

一 .vim自帶的補全功能

ctrl+x ctrl+o全能補全(omnicomplete)

ctrl+x ctrl+l 整行補全

ctrl+x ctrl+n 根據當前檔案裡關鍵字補全

ctrl+x ctrl+k 根據字典補全

ctrl+x ctrl+t 根據同義詞字典補全

ctrl+x ctrl+i 根據標頭檔案內關鍵字補全

ctrl+x ctrl+] 根據標籤補全

ctrl+x ctrl+f 補全檔名

ctrl+x ctrl+d 補全巨集定義

ctrl+x ctrl+v 補全vim命令

ctrl+x ctrl+u 使用者自定義補全方式

ctrl+x ctrl+s 拼寫建議

補全視窗相關快捷鍵:

ctrl+p 向上切換成員,也可以直接開啟當前檔案關鍵字補全的列表

ctrl+n 向下切換成員,也可以直接開啟當前檔案關鍵字補全的列表

ctrl+e 關閉下拉視窗

ctrl+y 關閉下拉視窗,並使用當前選項

二 .外掛程式omnicomplete :為 c/c++ 自動補全

omnicppcomplete 就是專為 c/c++ 編寫的 omnicomplete 乙個補全指令碼

參考 omnicomplete

三 .**模板:snipmate外掛程式

snip可以設定**模板的自動輸入,如:輸入inc,按tab鍵,可以自動展開為#include<>,並把游標停在見括號中;

snipmate的安裝:使用vundle安裝,需要增加一行配置` bundle 'snipmate',參考使用vundle管理外掛程式

snipmate的目錄snipmate/snippets下已經自定義了一些模板,

如:c.vim中定義了for

snippet for

for ($ = 0; $2

< $; $2

$) }

其中,1:

coun

t、2分別表示第乙個輸入位置和第二個輸入位置,**模板展開後,tab鍵可以在這幾個位置切換, 1:

coun

t中的c

ount

,表示 1這個位置預設是count;定義模板很簡單,可以參考snipmate/snippets下的模板定義。

三 .supertab

vim的自動補全快捷鍵,需要的按鍵較多,安裝外掛程式supertab,可以使用tab鍵觸發補全,補全列表中可以使用tab鍵選擇。

supertab鍵和snipmate衝突的問題,可以通過如下配置解決, 參考:

兩個配置項:

g:supertabretaincompletiontype的值預設為1,意為記住你上次的補全方式,直到使用其它的補全命令改變它;如果把它設成2,意味著記住上次的補全方式,直到按esc退出插入模式為止;如果設為0,意味著不記錄上次的補全方式;

g:supertabdefaultcompletiontype的值設定預設的補全方式,預設為ctrl-p,可以設定為:

let g:supertabdefaultcompletiontype = ""

三 . neocomplete

neocomplete 的github

vim 自動補全

開啟終端 alt ctrl t 輸入 vim 這樣就開啟了該編輯器。要檢視自動補全,可以輸入 help compl generic help complete help ins completion任意乙個均可。ctrl n 向下補全 ctrl p 向上補全 其它補全方式 整行補全 ctrl x c...

vim自動補全

git clone vim bundle vundle.vim vi vimrc set nocompatible 去除vim一致性,必須 filetype off 必須 設定包括vundle和初始化相關的執行時路徑 set rtp vim bundle vundle.vim call vundle...

vim括號自動補全

發表於 2011年05月22日 分類 vim 括號是程式設計中最常接觸的特殊符,因其往往成對出現,成對刪除的特性,加上vim強大的自定義功能,實現括號的自動完成,成對刪除等各種功能,大大減少了程式設計手指負擔。本文介紹如何對小括號進行設計達到上述功能,加深對vim指令碼的理解。1.括號自動完成 功能...