Doom-emacs: pythonモードで会社に存在しないスニペット候補

作成日 2018年10月10日  ·  3コメント  ·  ソース: hlissner/doom-emacs

観察された行動

yasnippets候補は、会社のオートコンプリートには存在しません。
SPC s iから見ることができますが、うまく使います。
company backendsに対するdescribe-variableの結果を次のスクリーンショットに示します。
snipaste_2018-10-10_17-40-07

予想される行動

ifmを入力すると、オートコンプリートによってifmain候補が表示されます。

システムインフォメーション


クリックして展開

- 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)
  ```

:completion company :editor snippets :lang python question elisp resolved-elsewhere

最も参考になるコメント

運命のコードを確認した後、会社のバックエンドがここで変更されていることがわかりました: https

デフォルトでcompany-yasnippetを有効にするには、次のコードが機能します。

(after! anaconda-mode
  (set-company-backend! 'anaconda-mode '(company-anaconda company-yasnippet)))

全てのコメント3件

これは予想されることです。 会社はcompany-anacondaのみを使用します。 (:separate company-capf company-yasnippet)は、anacondaが失敗した場合のフォールバックです。

C-x C-sを介して、またはPythonのバックエンドを変更することにより、スニペット補完にアクセスできます。

(set-company-backend! 'anaconda-mode '(company-anaconda company-yasnippet))

これにより、会社のバックエンドが次のように変更されます。

((company-anaconda company-yasnippet)
 (:separate company-capf company-yasnippet)
 company-capf)

Pythonモードで。

新しいバッファに対してのみ機能し、既存のバッファは影響を受けません。
あなたはこれを手伝ってもらえますか?

運命のコードを確認した後、会社のバックエンドがここで変更されていることがわかりました: https

デフォルトでcompany-yasnippetを有効にするには、次のコードが機能します。

(after! anaconda-mode
  (set-company-backend! 'anaconda-mode '(company-anaconda company-yasnippet)))
このページは役に立ちましたか?
0 / 5 - 0 評価