这是重新发布的帖子。我尝试在Emacs-live和Clojure mailing列表中询问此问题,但猜测它不够相关。我的问题是:
M-x nrepl-jack-in
在repl中,我创建了一个var
使用者> (def thing(+ 1 1))
使用者>
然后在事物var上,我运行C-c C-i
。 Emacs给我的信息是:C-c TAB未定义。
但是,如果我打开 scratch 缓冲区,并且从live-pack init.el文件中手动运行A)下面的代码,我就可以执行C-c C-i
in我的代表,并得到一个工作结果,如B)所示。
A)
(load-file "<some-directory>/nrepl-inspect/nrepl-inspect.el")
(define-key nrepl-mode-map (kbd "C-c C-i") 'nrepl-inspect)
(require 'nrepl-inspect)
B)
Type: class java.lang.Long
Value: "2"
---
Fields:
"serialVersionUID" = 4290774380558885855
"SIZE" = 64
"value" = 2
"TYPE" = long
"MAX_VALUE" = 9223372036854775807
"MIN_VALUE" = -9223372036854775808
因为我的所有其他live-pack init.el代码(主要是ritz)都成功执行,所以我必须假设nrepl-inspect代码失败了。有没有人遇到过这个?如何在加载emacs时直接启用此功能?作为emacs lisp的新手,无论如何都要调试这个问题?
谢谢
添
答案 0 :(得分:1)
C-c C-i
与C-c TAB
相同。 Emacs告诉你它没有绑定到你正在使用它的缓冲区中的任何命令。
如果您希望它在缓冲区*scratch*
中执行的操作,那么请先查看它在*scratch*
中的作用:C-h k C-c TAB
。
如果您愿意,可以将任何您喜欢的密钥绑定到该命令,包括C-c TAB
。