配置company时始终无法实现按下点(英文句号)激活补全(属性、方法),详细研究了Centaur_Emacs的配置(逐条关闭相关配置语句),但没有找到问题所在,各位有解决过的,望指教
company会获取光标前的一个 word, 英文句号是不能属于word的
楼主说的太笼统了,至少说明是哪个 major-mode 下配置 company,有的 major-mode 会定制 syntax table,同一个句号在不同的 major-mode 当中会有不同的语义。
在js2-mode下输入document.(这里有英文句号)希望补全相关方法,但无法实现,必须进一步输入关键词或快捷键手动激活才能显示出补全列表
还需要提供两方面的信息:
- 查看一下变量
company-backends
的值 用describe-char
查看一下js2-mode
下句号的语义
看描述不像是句号的问题,估计是那个特定的 backend 的问题,js2-mode 的补全需要外部程序配合吗?如果不需要我可以试试看你的那个 backend,如果需要就爱莫能助了。
首先谢谢解答,我用到了tern,自己感觉是backend设置问题的可能性大,backends的设置我理解的还不透彻,目前这种设置能满足我的需要,我看标准配置下大家都使用了Group,但我通过Group分组的话有时候无法显示出我需要的补全项
先不要 group,单独测试你的 backend 更容易些
你可以可以参考一下 company-anaconda 的写法,就是 python-mode 的 backend
好的,我再详细排查一下这部分,十分感谢