我将这个代码片段添加到我的stumpwmrc文件中:
(defun load-swank ()
"Load a swank server"
(ql:quickload 'swank)
(require 'swank)
(setq swank:*use-dedicated-output-stream* nil)
(setq slime-net-coding-system 'utf-8-unix)
(swank:create-server :port 4006))
(load-swank)我希望打开一个套接字服务器,接受"swank“协议。因此,我可以用emacs连接到它(多亏了Slime)。
但是,当我登录和stumpwm正在读取它的配置文件时,下面是我得到的错误消息:
15:00:34 Outputting a message:
^B^1*Error loading ^b/home/ybaumes/.stumpwmrc^B: ^nThe name "SWANK" does not designate any package.我怎么才能解决呢?我调用'require,甚至'quickload函数。这里有什么问题?
发布于 2014-01-06 14:41:31
一个典型的错误是:
加载该文件,读者将看到以下代码:
斯旺克没有上膛
(defun load-swank ()
"Load a swank server"斯旺克没有上膛
(ql:quickload 'swank)SWANK没有加载-记住,我们仍在阅读表单。
(require 'swank)SWANK没有加载-记住,我们仍在阅读表单。
现在给我们一个不存在的符号.读者抱怨:
(setq swank:*use-dedicated-output-stream* nil) ; the package SWANK does not exist yet.
(setq slime-net-coding-system 'utf-8-unix)
(swank:create-server :port 4006))现在您要加载SWANK:
(load-swank)您不能从不存在的包中使用符号。
例如,在函数中起作用的是:
(setf (symbol-value (read-from-string "swank:*use-dedicated-output-stream*")) nil)诸若此类。
您需要在运行时找到该函数的符号。使用(find-symbol "FOO" "SWANK") (记住Common是内部大写的)或(read-from-string "SWANK::FOO")。
https://stackoverflow.com/questions/20951970
复制相似问题