我有sbcl在emacs 24.1中工作的slime,但无法打开slime repl。
我可以使用M-x slime在劣质lisp缓冲区中连接sbcl,但在编辑lisp文件时,我无法调用slime repl或获得漂亮的lisp自动缩进,即使我正在.emacs中加载slime花式contrib。在启动期间,我不会收到任何错误消息。
当我尝试M-x黏液复制时,我得到了[不匹配]。
我的.emacs文件:
(setq inferior-lisp-program "sbcl")
(add-to-list 'load-path "c:/home/bin/emacs/site-lisp/slime/")
(require 'slime)
(require 'slime-autoloads)
(slime-setup '(slime-fancy))
我使用了这种方法进行安装:
http://www.pchristensen.com/blog/articles/installing-sbcl-emacs-and-slime-on-windows-xp
我注意到一种模式,我在Python和Clojure中尝试的几乎所有东西都能像描述的那样工作,而我尝试的几乎任何东西都与常见的lisp工作无关。我也尝试过使用eclipse。如果windows中常见的口齿不清有更新的解决方法,我愿意尝试另一种方法。
在玩了Sujoy的答案并将其裁剪以使其发挥作用后,我意识到我最初的问题是由(require 'slime)
语句引起的。下面的.emacs文件使slime repl按预期打开。
(setq inferior-lisp-program "sbcl")
(require 'slime-autoloads)
(slime-setup '(slime-fancy))
Only‘slime fancy不会设置REPL。试试下面的片段。将其放入缓冲区并进行评估。当然,您也不需要设置hyperspec根,但这有很大帮助:)
编辑:错过了我正在使用的自动加载,所以这里是完整的配置。
密钥绑定(使用次要模式密钥映射,全局映射也可以很容易地使用)
(define-key my-keys-map (kbd "<f5>") 'slime)
自动装载
;; slime mode
(autoload 'slime "my-slime" "Slime mode." t)
(autoload 'slime-connect "my-slime" "Slime mode." t)
这是my-slime.el
(provide 'my-slime)
(eval-after-load "slime"
(setq slime-lisp-implementations
(slime-setup '(slime-asdf
slime-autodoc
slime-editing-commands
slime-fancy
slime-fontifying-fu
slime-fuzzy
slime-indentation
slime-mdot-fu
slime-package-fu
slime-references
slime-repl
slime-sbcl-exts
slime-scratch
slime-xref-browser))
(slime-autodoc-mode)
(setq slime-complete-symbol*-fancy t
slime-complete-symbol-function 'slime-fuzzy-complete-symbol
slime-when-complete-filename-expand t
slime-truncate-lines nil
slime-autodoc-use-multiline-p t)
(add-hook 'lisp-mode-hook (lambda () (slime-mode t)))))
(require 'slime)