3

おそらく、スライムの仕組みにマイナー/メジャーな変更があると思いますが、それ以来、修正するのに苦労しました.

私は、起動時にREPLのようなスライムに慣れています

CL-USER>

*scratch*バッファと、開いているすべてのバッファと REPL の間の緊密な相互作用。

Ubuntuパッケージシステムではもうどこにも行けないことに気付いた後、指定されたマニュアルを使用して自分でemacs24.2と最新のスライム(cvs checkout)をインストールしました。

~/.emacs ファイルは次のようになります。

;;slime-setup 
(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl") 
(add-to-list 'load-path "/home/simkoc/emacs/slime/") 
(require 'slime-autoloads) 
(slime-setup '(slime-fancy slime-asdf))
  • (slime-setup '(slime-fancy slime-asdf))スライムのREPLバッファを初期化できるようにしました。
  • (load (expand-file-name "~/quicklisp/slime-helper.el"))使い慣れたすべてのショートカットを有効にして、パッケージをダウンロードしました (ql:quickload "quicklisp-slime-helper)

これらの手順により、開いているバッファーとまだ壊れている REPL の間の緊密な相互作用を除いて、すべてが修正されたようです。

例えば

タイピングするインタラクションに慣れている

(FORMAT t "foobar~%")

バッファ*scratch*にCMxを使用すると、replが「foobar」を出力します。代わりに、次のエラーが表示されます。

Debugger entered--Lisp error: (void-function FORMAT)
  (FORMAT t "foobar~%")
  eval-region(291 312 t (lambda (ignore) (goto-char 312) (quote (FORMAT t "foobar~%"))))  ; Reading at buffer position 310
  apply(eval-region (291 312 t (lambda (ignore) (goto-char 312) (quote (FORMAT t "foobar~%")))))
  eval-defun-2()
  eval-defun(nil)
  call-interactively(eval-defun nil nil)
  recursive-edit()

これは2つの点で私を混乱させます:

  1. 期待どおりにREPLに出力がありません
  2. 行にエラーが含まれているという (疑わしい) 仮定が与えられまし

私が得たもう1つの症状は、特定のマクロ式を展開することになっているcx cmがslime-repl sbclバッファーで機能することですが、他のバッファーでは「Cc RETが定義されていません」というメッセージが表示されます。

他の誰かが同様の問題を抱えていて、それを修正する方法を見つけましたか?

4

1 に答える 1