Как правильно настроить завершение кода CIDER в Emacs?

Я установил CIDER в мой Emacs, а когда я в cider-mode (Также в clojure-mode) и я пытаюсь использовать M-TAB для завершения кода, которое я получаю

Не является объектом nREPL dict: %

где % это произвольная функция. Например, если я пытаюсь сделать завершение кода для map в этом ряду:

(ma

Я вижу следующее в буфере сообщений:

завершение - кое-что: не объект диктовки nREPL: карта

Я сделал Tabula Rasa в моем Emacs, так что мой init.el выглядит так:

(require 'package)

(add-to-list 'package-archives
             '("marmalade" . "http://marmalade-repo.org/packages/") t)
(add-to-list 'package-archives
             '("tromey" . "http://tromey.com/elpa/") t)
(add-to-list 'package-archives
             '("melpa" . "http://melpa.milkbox.net/packages/") t)

(package-initialize)

(when (not package-archive-contents)
  (package-refresh-contents))

(defvar my-packages
  '(paredit
    clojure-mode
    clojure-mode-extra-font-locking
    cider))

(dolist (p my-packages)
  (when (not (package-installed-p p))
    (package-install p)))

Я заметил одну интересную вещь. Когда я делаю cider-jack-in Я подключаюсь к nREPL и в буфере REPL вижу следующее:

ВНИМАНИЕ: Версия CIDER (снимок 0.13.0) не соответствует версии cider-nrepl (nil). Вещи сломаются!

Что я делаю неправильно? Я не могу заставить завершение кода CIDER работать. Он также не работает даже с простой опцией M-TAB.

Я использую Emacs 24.3.1.

1 ответ

Решение

Это именно проблема:

ВНИМАНИЕ: Версия CIDER (снимок 0.13.0) не соответствует версии cider-nrepl (nil). Вещи сломаются!

Cider состоит из двух частей: пакета emacs (CIDER) и закрытой части cider-nrepl. Второй - промежуточное ПО для закрытия (etwork)-repl

Поскольку разработка сидра идет быстро, обе версии должны совпадать. (А также вы должны всегда использовать последнюю версию, что вы делаете сейчас:))

Вы можете добавить это в свой project.clj или oder profiles.clj

:plugins [[cider/cider-nrepl "0.13.0-SNAPSHOT"]]

есть также много документации по адресу https://cider.readthedocs.io/en/latest/ и по репозиторию github https://github.com/clojure-emacs/cider

Другие вопросы по тегам