slime幻想没有加载emacsbcl-slime窗口配置



我有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)

最新更新