大きなC ++プロジェクトでは、dabberv-expand(別名M- /)を使用します。Rtags、ctags、csopeなどは、さまざまな理由で機能しません。あいにく、あいまい検索を使用するようにdabbrevを強制する方法がわかりません。そこで、ツタを使うことにしました。次のコードは、私が望むほとんどすべてを行います:
(defun ivy-complete ()
(interactive)
(dabbrev--reset-global-variables)
(let* ((abbrev (dabbrev--abbrev-at-point))
(candidates (dabbrev--find-all-expansions abbrev t)))
(when (not (null candidates))
(let* ((found-match (ivy-read "matches " candidates
:preselect (thing-at-point 'word)
:sort t))
(abbrev-length (length abbrev)))
(insert (substring found-match abbrev-length))))))
一つは見逃されています。補完候補はミニバッファーに候補を表示します。エントリーポイント近くのポップアップウィンドウに表示させたい。ivy-display-function-popupとivy-display-function-overlayを使用しようとしましたが、失敗しました。
質問:ポップアップウィンドウまたはオーバーレイウィンドウに候補を表示するにはどうすればよいですか?会社のような他のパケットのバックエンドとしてivyを使用することは可能でしょうか?