Как обновить сидр в загрузочном emacs 'brave clojure'

У меня есть (за исключением некоторых дополнений, таких как company-mode мой emacs 24.5, настроенный в соответствии с рекомендациями в главе clojure для смелых и правда.

К сожалению, я столкнулся с проблемой, когда пытался работать с некоторыми катами Alice in Wonderland clojure и REPL не запустится в правильном пространстве имен. Я мог переключиться на пространство имен с помощью C-c M-n, и REPL показал пространство имен, однако любая оценка после этого выдавала мне ошибку «пространство имен не существует».

Пробовал обновить cider-nrepl (просто изменив в ~/.lein/profiles.clj, но потом выдало ошибку, что номера версий Cider и Cider-nREPL несовместимы. Пробовал обновить простым package-install cinder что тоже не сработало но выдало вот это предупреждения по строкам the function cider-find-var is not known и функции, вызываемые с неправильным количеством аргументов.

Как поддерживать пакеты в актуальном состоянии? Связана ли моя проблема с пространством имен с этим?


person heyarne    schedule 14.10.2015    source источник


Ответы (1)


Ваша проблема с пространством имен звучит как другая проблема. Это происходит, если у вас есть пространство имен в файле, и этот файл не загружается автоматически при запуске cider.

Вы можете переключить реплику на это имя, хотя ни одно содержимое не будет загружено, пока вы не загрузите файл, нажав Ctrl-cCtrl-k. Если вы добавите требование в core.clj (или что-то еще, что ваш проект использует в качестве начального пространства имен), для которого требуется рассматриваемое пространство имен, то это пространство имен будет загружено при запуске cider.


к вашей проблеме с соответствием версии cider nrepl. Это может произойти, когда выпущена новая версия cider, и вы делаете что-то в emacs, что обновляет пакеты. тогда ваша версия сидра опережает версию nrepl. У меня был самый приятный опыт, когда я всегда устанавливал версию cider-nrepl в ~/.lein/profiles.clj на версию, указанную в верхней части экрана, при запуске cider.


Обновление: конфигурация cider nrepl больше не требуется!

Мир стал лучше, и вам больше не нужно ничего устанавливать в ~/.lein/profiles.clj. Вы должны удалить все ссылки на cider и nrepl из этого файла, а затем установить последнюю версию cider.el, и все это начнет работать. В частности, cider.el теперь объявляет правильную зависимость от lein при автоматическом запуске cider-jack-in. Так что, если у вас последняя версия и вы начинаете лейн через сидр, вам больше не нужно делать ничего особенного.

person Arthur Ulfeldt    schedule 14.10.2015
comment
Я хотел бы попробовать новый отладчик в cider v0.9.0, но у меня такая же конфигурация Emacs на основе Brave Clojure, что и у OP. Если вы знаете, как обновить пакет, не могли бы вы также включить это в свой ответ? Спасибо :) - person Botond Balázs; 23.06.2016
comment
Спасибо, что напомнили мне об этом ответе. Теперь ситуация даже лучше, и вам вообще не нужно делать эти шаги. просто скачайте последнюю версию cider.el через менеджер пакетов emacs - person Arthur Ulfeldt; 23.06.2016