187
185

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

neocomplcache.vim まとめ

Last updated at Posted at 2013-07-10

neocomplcache.vim とは

入力補完機能を提供する Vim のプラグイン。

GitHub で公開されている。
Shougo/neocomplcache.vim

なお、 neocomplcache は "neo-completion with cache" の略。

操作イメージ

文字を入力すると、自動で補完候補が表示される。
(下の絵の水色の文字が補完候補。)

image1.png

文字を入力する毎に、補完候補が絞られていく。

image2.png

そして補完候補を選択すると、 neocomplacache が残りの文字を自動で入力してくれる。

image3.png

導入方法

NeoBundle を導入済みの場合は、まずは以下を .vimrc に記述し、 Vim を起動する。

NeoBundle 'Shougo/neocomplcache'

そしてノーマルモードで以下のコマンドを実行すると、 neocomplcache.vim をインストールできる。

:NeoBundleInstall

設定

以下は、私の .vimrc に書いてある neocomplcache.vim の設定。
neocomplcache.vim の README に書いてある設定をほぼそのまま利用した。

Shougo/neocomplcache.vim

.vimrc
"" neocomplcache
NeoBundle 'Shougo/neocomplcache'
" Disable AutoComplPop.
let g:acp_enableAtStartup = 0
" Use neocomplcache.
let g:neocomplcache_enable_at_startup = 1
" Use smartcase.
let g:neocomplcache_enable_smart_case = 1
" Set minimum syntax keyword length.
let g:neocomplcache_min_syntax_length = 3
let g:neocomplcache_lock_buffer_name_pattern = '\*ku\*'

" Define dictionary.
let g:neocomplcache_dictionary_filetype_lists = {
    \ 'default' : ''
    \ }

" Plugin key-mappings.
inoremap <expr><C-g>     neocomplcache#undo_completion()
inoremap <expr><C-l>     neocomplcache#complete_common_string()

" Recommended key-mappings.
" <CR>: close popup and save indent.
inoremap <silent> <CR> <C-r>=<SID>my_cr_function()<CR>
function! s:my_cr_function()
  return neocomplcache#smart_close_popup() . "\<CR>"
endfunction
" <TAB>: completion.
inoremap <expr><TAB>  pumvisible() ? "\<C-n>" : "\<TAB>"
" <C-h>, <BS>: close popup and delete backword char.
inoremap <expr><C-h> neocomplcache#smart_close_popup()."\<C-h>"
inoremap <expr><BS> neocomplcache#smart_close_popup()."\<C-h>"
inoremap <expr><C-y>  neocomplcache#close_popup()
inoremap <expr><C-e>  neocomplcache#cancel_popup()

上記設定の場合、 insert モードで以下の操作ができる。

キー 操作
<Tab> 補完候補の選択。
Ctrl + g 前回行われた補完をキャンセル。補完した文字を消す。
Ctrl + l 補完候補の中から、共通する部分を補完。

各設定の意味は、以下のページで詳しく説明されている。

Vim-users.jp - Hack #177: neocomplcacheの設定について知る 前編
Vim-users.jp - Hack #185: neocomplcacheの設定について知る 中編
Vim-users.jp - Hack #193: neocomplcacheの設定について知る 後編

参考

187
185
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
187
185

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?