我放弃了。这个
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 设置 omni 自动完成。如果我键入 C-x C-y 它会起作用,但在我编写代码时不起作用。它适用于 php、html、css 等
最佳答案
虽然我不使用 neocomplcache,但我对 vim-ruby 相当满意,包括代码完成。 只是让 Vim 编译了 ruby 支持,添加到 .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 的高度动态特性,代码完成总是会受到一定程度的限制,但上面确实有助于完成标准类和方法,甚至是您自己的大部分。
关于ruby-on-rails - Vim ruby 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14333508/