emacs company自动补全的候选来源

来源:互联网 发布:mac expect ssh 编辑:程序博客网 时间:2024/05/20 18:20

company的安装和配置,这里不再说明。spacemacs里,可以通过SPC h SPC快捷键,选择company的readme.org去阅读。

emacs company实现补全的候选来源,叫company-backends;是一个emacs变量,可以使用c-h v company-backends查看。如下所示:

company-backends is a variable defined in ‘company.el’.Its value is (company-bbdb company-files              (company-dabbrev-code company-gtags company-etags company-keywords)              company-oddmuse company-dabbrev)Original value was (company-bbdb company-nxml company-css company-eclim company-semantic company-clang company-xcode company-cmake company-capf company-files              (company-dabbrev-code company-gtags company-etags company-keywords)              company-oddmuse company-dabbrev)

1- 默认的company候选项有很多,有时候发现很多候选项对自己完全不适用,极大干扰了自动补全的效率。
2- 主要的是company-dabbrev,是依赖emacs当前打开的buffer作为自动补全候选项来源。很有作用。
3- 还有company-files,是文件系统的路径。很有作用。
4- company-keywords,是当前文件所属编程语言的语法关键词。
5- company-gtags、company-etags是依据ctags等生成TAGS,去寻找候选项。
6- 其它均可以在文件目录里找到其描述 d:/EDA-tools/emacs/emacs-25.1/.emacs.d/elpa/company-20170715.1035
7- 根据个人实践,去删减,达到优化目的;使得自动补全的候选项都是期望的内容。
如何判断,当前候选项,来自哪个company-backends?
回答:m-x diminish-undo,然后选择company-mode后,mode-line会显示当前补全的候选项来自哪个company-backends。
这里写图片描述

8- 修改配置的方法如下
c-h v company-backends,在显示信息的窗口最下方有customize,进入就可。最后在state按钮处,点击“Save for Future Sessions”,就会自动把改动的配置保存到emacs启动文件里。
这里写图片描述

company的小技巧

显示候选项的数字号。根据数字号选择候选项。

'(company-show-numbers t)
原创粉丝点击