Grey
全部学习内容汇总:GitHub - GreyZhang/editors_skills: Summary for some common editor skills I used.
1842_emacs使用company-irony实现c语言的自动补全
irony-mode是一个自动补全的实现方案,配合company集成之后效果非常好。简单调试完了之后,基本上能够确定这是我这么多年来使用emacs所实现的一个最好的自动补全功能状态。至少,这让我看到了一丝期待。
irony 以及 company-irony
其实,前面已经接触了这些插件,只不过之前我寻找的一个解决方案是为了实现C语言中#include操作的时候头文件补全。不过,既然涉及到了 irony 插件,那么不妨简单了解一下。
irony-mode
从这里看,irony-mode 其实是一个编码体验提升的加强插件。插件支持自动补全、语法检查等功能。还提供了跟多种框架的集成。出于好奇,我还去查了陈斌、purcell、spacemacs等几个不通的配置,都没有发现使用了这个插件的迹象。只有spacemacs中的cache目录中有,但是大概率也是没激活使用。当然,上面的这些配置只是我自己安装或者简单配置后的情况。
这是 irony-server的安装依赖情况,前面经过一系列的尝试,我自己机器上终于已经安装成功了。
company-irony
根据上面的文档提示,找到了一个自动补全的集成插件: company-irony
这里的介绍内容很少,但是从这里的一个效果图看得出来,这还是很让我期待的一个功能。效果如下:
这个效果看上去还是很不错的。
实际探索体验以及效果
上面是插件配置的一个简单的说明,我看了下在之前配置头文件的时候其实已经把这个backend给加上去了。当时只是一路抄,也并不知道我现在的配置中其实没有这个功能。简单的配置之后,看看我自己的效果:
这个效果还是不错的,而且响应处理速度比较快。这是我之前使用emacs一直没有体验到的效果,尤其是在Windows的平台上。
小结
总体看,现在的这个配置状态对我自己一直使用emacs以来的体验算是一个小飞跃。很多操作场景都有了新一步的改善。不过,在测试尝试的过程中也遇到了一些不奏效的地方。比如说,上面例子中的结构体现在并没做到跨文件在整个project中都奏效。不过,我觉得这可能是配置实现问题,后续应该是有解决的可能的。
一直以来培养幼苗种子,今天终于看到叶片了! Happy hacking!