nrepl completion source for Emacs auto-complete package
Deprecation notice: These days you probably want to use
or Cider's built-in
company completion support instead of this.
This plugin provides a completion source for the popular Emacs interactive auto-completion framework auto-complete.
Where nrepl provides it, pop-up documentation for completed symbols will be displayed.
Latest stable version: see the latest numbered tag, which will also be the latest version available via Marmalade.
You'll need both
cider to be enabled and
working, so please consult the corresponding documentation if you have
any trouble with this.
ac-nrepl. If you choose not to use the convenient
package in Melpa and Marmalade, you'll need to
add the directory containing
ac-nrepl.el to your
ac-nrepl provides an
nrepl-specific completion source,
auto-complete needs to be told to use them when
active. To do this, put the following code in your emacs init file to
(require 'ac-nrepl) (add-hook 'cider-repl-mode-hook 'ac-nrepl-setup) (add-hook 'cider-mode-hook 'ac-nrepl-setup) (eval-after-load "auto-complete" '(add-to-list 'ac-modes 'cider-repl-mode))
If you want to trigger
auto-complete using TAB in nrepl buffers, you may
want to put
auto-complete into your
(defun set-auto-complete-as-completion-at-point-function () (setq completion-at-point-functions '(auto-complete))) (add-hook 'auto-complete-mode-hook 'set-auto-complete-as-completion-at-point-function) (add-hook 'cider-repl-mode-hook 'set-auto-complete-as-completion-at-point-function) (add-hook 'cider-mode-hook 'set-auto-complete-as-completion-at-point-function)
You might consider using
ac-nrepl's popup documentation in place of
(eval-after-load "cider" '(define-key cider-mode-map (kbd "C-c C-d") 'ac-nrepl-popup-doc))
ac-nrepl should now automatically be enabled when you visit a buffer
cider-repl-mode is active and
auto-complete is enabled. (The
symbols "nrepl and "AC" should appear in the modeline.)
Simply trigger auto-completion, and completion candidates supplied by nrepl should be displayed, with symbols on the right hand side of the completion pop-up to indicate the "flavour" of the completion candidate, e.g. "v" for variables. After a short delay, popup documentation for the completed symbol should also be displayed.