2

我放弃。这个

 51   if !exists('g:neocomplcache_omni_patterns')
 52        let g:neocomplcache_omni_patterns = {}
 53   endif
 54
 55   if !exists('g:neocomplcache_omni_functions')
 56        let g:neocomplcache_omni_functions = {}
 57   endif
 58   let g:neocomplcache_omni_patterns['ruby'] = '[^. \t]\.\w*'
 59   let g:neocomplcache_omni_functions['ruby'] = 'rubycomplete#Complete'
 60   autocmd FileType ruby set omnifunc=rubycomplete#Complete

是我的 .gvimrc 文件的一部分。

问题是我无法为 ruby​​ 设置全向自动完成功能。如果我输入 Cx Cy 它可以工作,但在我编写代码时却不行。它适用于 php、html、css 等

4

1 回答 1

7

虽然我不使用 neocomplcache 我对vim-ruby相当满意,包括代码完成。只需使用 ruby​​ 支持编译 Vim,添加到 .vimrc

autocmd FileType ruby,eruby let g:rubycomplete_buffer_loading = 1 
autocmd FileType ruby,eruby let g:rubycomplete_classes_in_global = 1
autocmd FileType ruby,eruby let g:rubycomplete_rails = 1

由于 Ruby 的高度动态特性,代码完成总是会受到一定程度的限制,但以上确实有助于完成标准类和方法,甚至是您自己的大部分。

于 2013-01-15T14:37:17.050 回答