Я нахожусь в процессе настройки слизи для Emacs. До сих пор я читал об основных функциональных возможностях для обычного lisp, такого как C-c C-q
который вызывает команду slime-close-parens-at-point
которая помещает правильное количество паренов, где находится ваша мышь. Другая команда, которая казалась классной, была вызвана C-c C-c
и она передаст код, который вы редактируете в буфере, в REPL и "скомпилирует" его.
Почему эти команды не работают для меня?
В любом случае, я скачал slime
через M-x list-packages
и, похоже, не обладаю этой функциональностью (C-h w
а затем любая из этих команд говорит мне, что эти команды не замечают существование). Итак, я видел множество других расширений слизи, таких как slime-repl', 'slime-fuzzy' and 'hippie-expand-slime'. So I again used
Mx list-packages` и скачал их.
До сих пор у меня не было этих команд. Вот содержимое моего файла emacs, относящегося к слизи:
;;;Common Lisp and Slime
(add-to-list 'load-path "/home/s2s2/.emacs.d/elpa/slime-20130626.1151")
(add-to-list 'load-path "/home/s2s2/.emacs.d/elpa/slime-repl-201000404")
(add-to-list 'load-path "/home/s2s2/.emacs.d/elpa/hippie-expand-slime-20130226.1656")
(add-to-list 'load-path "/home/s2s2/.emacs.d/elpa/slime-fuzzy-20100404")
(require 'slime)
(setq slime-lisp-implementations
`((sbcl ("/usr/bin/sbcl"))
(ecl ("/usr/bin/ecl"))
(clisp ("/usr/bin/clisp" "-q -I"))))
(require 'slime-repl)
(require 'slime-fuzzy)
(require 'hippie-expand-slime)
Когда я выполняю M-x slime
я получаю следующее сообщение в буфере inferior-lisp
где я могу выполнить обычный код lisp (однако, разве это не должно быть slime-repl
так как мне это нужно?):
STYLE-WARNING: redefining EMACS-INSPECT (#<BUILT-IN-CLASS T>) in DEFMETHOD
STYLE-WARNING:
Implicitly creating new generic function STREAM-READ-CHAR-WILL-HANG-P.
WARNING: These Swank interfaces are unimplemented:
(DISASSEMBLE-FRAME SLDB-BREAK-AT-START SLDB-BREAK-ON-RETURN)
;; Swank started at port: 46533.
Затем создается буфер slime-error
с содержимым:
Invalid protocol message:
Symbol "CREATE-REPL" not found in the SWANK package.
Line: 1, Column: 28, File-Position: 28
Stream: #<SB-IMPL::STRING-INPUT-STREAM {10056B9C33}>
(:emacs-rex (swank:create-repl nil) "COMMON-LISP-USER" t 5)
- Как мне изменить мой файл emacs, чтобы дать мне функциональность этих команд? В моем файле Emacs я не загружаю необходимые файлы? Нужно ли устанавливать дополнительный пакет?
Если вам нужно больше информации, дайте мне знать! Вся помощь очень ценится!