【问题标题】:Vim clang_complete auto popupVim clang_complete 自动弹出
【发布时间】:2013-05-26 05:12:54
【问题描述】:

在使用 XCode 一段时间(几年)后,我正尝试转向 MacVim 进行开发/代码编辑。大多数情况下,我这样做是因为我正在启动一些非 obj-c 项目,并且我不想在代码编辑器之间不断切换。

我已经用一些方便的插件设置了 MacVim:

  • Janus(我知道这是很多插件)
  • cocoa.vim
  • clang_complete,这对我来说是最重要的,因为它模仿了 XCode 的代码完成。

到目前为止一切正常,只是我似乎无法将其配置为自动弹出完成框。每次我想查看代码完成时,我都必须使用“选项卡”。我宁愿在输入一定数量的单词字符后打开它,比如 3 个字符。我已经搜索了一段时间(几个小时),但无法让它工作。

任何帮助将不胜感激。谢谢!
这是我的 .vimrc 文件:

""
"" Janus setup
""

" Define paths
let g:janus_path = escape(fnamemodify(resolve(expand("<sfile>:p")), ":h"), ' ')
let g:janus_vim_path = escape(fnamemodify(resolve(expand("<sfile>:p" . "vim")), ":h"), ' ')
let g:janus_custom_path = expand("~/.janus")

" Source janus's core
exe 'source ' . g:janus_vim_path . '/core/before/plugin/janus.vim'

" You should note that groups will be processed by Pathogen in reverse
" order they were added.
call janus#add_group("tools")
call janus#add_group("langs")
call janus#add_group("colors")

""
"" Customisations
""

if filereadable(expand("~/.vimrc.before"))
  source ~/.vimrc.before
endif


" Disable plugins prior to loading pathogen
exe 'source ' . g:janus_vim_path . '/core/plugins.vim'

""
"" Pathogen setup
""

" Load all groups, custom dir, and janus core
call janus#load_pathogen()

 colorscheme Wombat256

 "clang_autocomplete options
 set conceallevel=2
 set concealcursor=vin
 let g:clang_use_library=1
 let g:clang_library_path='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib'
 let g:clang_complete_auto=1
 let g:clang_periodic_quickfix=1
 let g:clang_snippets=1
 let g:clang_conceal_snippets=1
 let g:clang_snippets_engine='clang_complete'
 " Show clang errors in the quickfix window
 "let g:clang_complete_copen = 1
 set completeopt=longest,menuone,preview

【问题讨论】:

  • 在为时已晚之前摆脱 Janus。
  • @romainl 您可能想解释一下为什么使用像 Janus 这样的 vim 发行版可能是个坏主意。
  • 这似乎不是 MacVim 特有的。您可能想更改问题的标题。
  • @timss 我实际上并不确定它是 MacVim 还是 Vim 相关的,这就是我把它放在那里的原因。但是,奇怪的是,我不知道如何编辑标题。

标签: vim autocomplete macvim clang-complete


【解决方案1】:

这可以使用AutoComplPop (vimscripts, old / Github, somewhat old) 来实现。
还可以设置在尝试关键字完成之前需要输入的字符数。

let g:acp_behaviorKeywordLength = 3

请注意,较新的版本需要L9 library。 vimscripts 的旧版本没有。
这有点令人困惑,因为所有不同站点(vimscripts、github、bitbucket)上都有不同的版本。

使用您最喜欢的插件管理器安装插件。
我个人更喜欢Vundle,但 Janus 使用 Pathogen。

【讨论】:

    猜你喜欢
    • 2011-12-12
    • 2012-05-02
    • 2013-02-12
    • 2023-03-20
    • 2014-06-04
    • 2014-01-06
    • 2018-12-08
    • 2012-11-25
    • 2012-09-21
    相关资源
    最近更新 更多