Подтвердить что ты не робот

Слизь не работает в emacs24

Я использую emacs24 в archlinux. Если я использую пакеты slime из marmalade.org, тогда, когда я использую M-x slime, ошибка:

debugger invoked on a SB-INT:SIMPLE-FILE-ERROR in thread
#<THREAD "initial thread" RUNNING {AB007A9}>:
  Couldn't load
  "/home/sinners/.emacs.d/elpa/slime-20100404.1/swank-loader.lisp": file does
  not exist.

Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [ABORT] Exit debugger, returning to top level.

но если я использую пакеты slime-cvs с официального сайта, ошибка:

Debugger entered: (("Error in timer" slime-attempt-connection (#<process inferior-lisp> nil 2) (void-variable --cl-accu--)))
  #[257 "\302\303\304\300\301F\"\207" [slime-attempt-connection (#<process inferior-lisp> nil 2) debug nil "Error in timer"] 7 "\n\n(fn DATA)"]((void-variable --cl-accu--))
  funcall(#[257 "\302\303\304\300\301F\"\207" [slime-attempt-connection (#<process inferior-lisp> nil 2) debug nil "Error in timer"] 7 "\n\n(fn DATA)"] (void-variable --cl-accu--))
  slime-timer-call(slime-attempt-connection #<process inferior-lisp> nil 2)
  apply(slime-timer-call (slime-attempt-connection #<process inferior-lisp> nil 2))
  byte-code("r\301\302H\303H\"\210)\301\207" [timer apply 5 6] 4)
  timer-event-handler([t 20271 59188 161536 0.3 slime-timer-call (slime-attempt-connection #<process inferior-lisp> nil 2) nil])

Кто-нибудь может мне помочь?

4b9b3361

Ответ 1

Проблема с переменными знаков --cl-accu-- о поломке пакета emacs cl в присутствии лексического охвата. Попытайтесь перейти к slime.el в своем распределении слизи, найдите строку ;; lexical-binding: t в разделе ;; Local Variables: в конце файла и измените его на ;; lexical-binding: nil. И удалите старый slime.elc файл, если он у вас есть.

Ответ 2

У меня была та же самая проблема, которая была решена путем удаления файла slime.elc, который я ранее скомпилировал с помощью каталога byte-recompile. Я больше не пытался его компилировать.

Ответ 3

Я не уверен, но эта проблема может быть вызвана разными версиями SLIME и SWANK. Однако вы должны просто использовать pacman для установки реализации lisp (я думаю, что SBCL - самая популярная реализация в Linux) и затем используйте quicklisp, чтобы установить все остальное.

Смотрите этот блог, чтобы узнать, как установить SWANK и SLIME с помощью quicklisp.