微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vim – gccsense vs. clang_complete

我一直在使用omniCppComplete ctags一段时间,并希望进一步完善代码.

根据这里的建议[1],gccsense和clang_complete似乎是替代品.但是,我不知道哪一个更好.任何关于他们的表现的想法?
谢谢!

更新:在我尝试了clang_complete之后,我发现完成速度非常不能接受.
然后我尝试使用libclang.dylib,这加速了很多,但仍然让人感觉迟到.
我想我现在应该坚持ctags.

你应该使用clang_complete,而不是gccsense.

这里的要点是两者的架构.两个解决方案背后的想法非常相似:您无法获得正常的C完成,而无法访问内部编译器(gcc)信息(抽象语法树),而gcc不提供足够的接口.访问此信息的实现部分在这里是非常不同的:gccsense是一种“hack” – 它是一个定制的gcc,可以存储必要的信息,以提供给插件,而clang_complete通过使用替代方法编译器:clang,创建的主要目标之一正是使AST易于通过外部工具访问.

所以,在使用gccsense的情况下,您需要使用一种自定义的gcc编译器来编译代码,这个编译器现在已经有点过时了(gccsense正在使用gcc 4.4),并且将不断需要开发人员的功能支持.相反,clang_complete并不依赖于clang编译器,它将其用作外部工具.

至于表现:再次cl was被设计为比gcc快,而且是.在Windows上,Clang_complete可能会比MacOS / Linux稍慢,但是gccsense甚至无法在Windows时被编译.

原文地址:https://www.jb51.cc/vim/386055.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐