Os candidatos do yasnippets não se apresentam no preenchimento automático da empresa.
Embora eu possa vê-los de SPC s i
e usá-los bem.
o resultado de describe-variable
para company backends
é mostrado na imagem a seguir
quando eu insiro ifm
, o preenchimento automático deve apresentar candidatos de ifmain
para mim.
Clique para expandir
- OS: darwin (x86_64-apple-darwin14.5.0)
- Emacs: 26.1 (May 31, 2018)
- Doom: 2.0.9 (develop cdf745e72a3e8bf9bef1f0fa4d051b00aab351e3)
- Graphic display: nil (daemon: nil)
- System features: NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES THREADS
- Details:
```elisp
elc count: 0
uname -a: Darwin machw 18.0.0 Darwin Kernel Version 18.0.0: Wed Aug 22 20:13:40 PDT 2018; root:xnu-4903.201.2~1/RELEASE_X86_64 x86_64 i386 MacBookPro10,1 Darwin
modules: (:feature (evil +everywhere) file-templates (lookup +docsets) snippets spellcheck (syntax-checker +childframe) workspaces :completion (helm +fuzzy) :ui doom-dashboard doom-modeline doom-quit evil-goggles fci hl-todo nav-flash treemacs (popup +all +defaults) unicode vc-gutter vi-tilde-fringe window-select :editor rotate-text :emacs ediff electric hideshow imenu vc :tools magit :lang emacs-lisp markdown (org +attach +babel +capture +export +present) python rust (sh +fish) :config)
packages: n/a
exec-path: (/usr/local/opt/coreutils/libexec/gnubin /usr/local/opt/python/libexec/bin /usr/local/bin /usr/local/sbin /usr/bin /bin /usr/sbin /sbin ~/.cargo/bin ~/bin /usr/local/opt/fzf/bin /Applications/Emacs.app/Contents/MacOS/bin-x86_64-10_10 /Applications/Emacs.app/Contents/MacOS/libexec-x86_64-10_10 /Applications/Emacs.app/Contents/MacOS/libexec /Applications/Emacs.app/Contents/MacOS/bin)
```
Isto é esperado. A empresa usará apenas company-anaconda
. (:separate company-capf company-yasnippet)
é um fallback, no caso de o anaconda falhar.
Você pode acessar a conclusão do snippet por meio de C-x C-s
ou alterando os back-ends do python:
(set-company-backend! 'anaconda-mode '(company-anaconda company-yasnippet))
Isso mudará os back-ends da empresa para:
((company-anaconda company-yasnippet)
(:separate company-capf company-yasnippet)
company-capf)
No modo python.
só funciona para o novo buffer, o buffer existente não é afetado.
você pode ajudar com isso?
Depois de verificar os códigos de destruição, descobri que o back-end da empresa foi modificado aqui: https://github.com/hlissner/doom-emacs/blob/develop/modules/lang/python/config.el#L64
Para habilitar company-yasnippet
por padrão, os seguintes códigos funcionam.
(after! anaconda-mode
(set-company-backend! 'anaconda-mode '(company-anaconda company-yasnippet)))
Comentários muito úteis
Depois de verificar os códigos de destruição, descobri que o back-end da empresa foi modificado aqui: https://github.com/hlissner/doom-emacs/blob/develop/modules/lang/python/config.el#L64
Para habilitar
company-yasnippet
por padrão, os seguintes códigos funcionam.