Hack #193: neocomplcacheの設定について知る 後編
Posted at 2011/01/06ツイート
後編では残りの設定について解説をします。
設定例
" Shell like behavior(not recommended).
"set completeopt+=longest
"let g:neocomplcache_enable_auto_select = 1
"let g:neocomplcache_disable_auto_complete = 1
"inoremap <expr><TAB> pumvisible() ? "\<Down>" : "\<TAB>"
"inoremap <expr><CR> neocomplcache#smart_close_popup() . "\<CR>"
" Enable omni completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
" Enable heavy omni completion.
if !exists('g:neocomplcache_omni_patterns')
let g:neocomplcache_omni_patterns = {}
endif
let g:neocomplcache_omni_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::'
"autocmd FileType ruby setlocal omnifunc=rubycomplete#Complete
Shell like behavior(not recommended).
set completeopt+=longest
let g:neocomplcache_enable_auto_select = 1
let g:neocomplcache_disable_auto_complete = 1
inoremap <expr><TAB> pumvisible() ? “\<Down>” : “\<TAB>”
inoremap <expr><CR> neocomplcache#smart_close_popup() . “\<CR>”
neocomplcacheをShellのような手動補完をするようにする設定です。 (not recommended)という文面からも分かる通り、オススメの設定ではありません。 要望が来たので対応させて、設定例として書いたものです。 これを設定すると自動補完が無効になる点に注意してください。
” Enable omni completion.
ここは、Vimに用意されているオムニ補完を有効化するものです。すでに設定されている場合は必要ありません。
neocomplcacheからオムニ補完を呼びたい場合には必要になります。
オムニ補完関数を設定するだけでは実際にはだめで、後述するg:neocomplcache_omni_patterns
も同時に設定する必要があります。
” Enable heavy omni completion.
g:neocomplcache_omni_patterns
は、neocomplcacheがオムニ補完の関数を呼び出すためのキーワードパターンを設定します。
主な言語にはデフォルトで対応していますが、RubyやPHPなど重いものは無効化されています。
設定例のようにすれば有効化できますが、Vimがフリーズする可能性もあります。自己責任で使用してください。
もどる
blog comments powered by Disqus