设置 company-backends 没有生效

我在 layer 的 config.el 中有如下设置:

(add-hook 'prog-mode-hook
          (lambda ()
            (setq-local company-backends
                        '((company-dabbrev-code
                           company-gtags
                           company-etags
                           company-keywords)
                          company-files
                          company-dabbrev))))

但是在打开 js 文件的时候,这个并没有生效,company-tern 位于第一个位置,导致了无法使用 etags 补全,但是打开 python 文件是可以的,请问这是什么问题?

spacemacs 的company-backend 要用一个专门的宏设置。 具体说明看关于如何写layer的文档。

1 个赞

packages.el 里加上 post-init-js2-mode ,在这里面设置 company-backends-js2-mode 变量就可以了。查了下,之前问题是因为 auto-completion layer 里面在 init-company-tern 的时候把 company-tern 加在了前面。

1 个赞