在Emacs Inferior Lisp中读取用户输入

时间:2012-04-25 01:15:24

标签: emacs lisp common-lisp user-input

我正在尝试通过阅读Practical Common Lisp来学习Lisp,并且在尝试阅读用户输入时,我在早期遇到了一个小绊脚石。我已经定义了prompt-read来提示用户输入:

(defun prompt-read (prompt)
  (format *query-io* "~a: " prompt)
  (force-output *query-io*)
  (read-line *query-io*))

当我尝试评估提示读取时,按[Enter]运行语句似乎被接受为输入,因此结果输入为空白

>(prompt-read "Test")
Test: 
""
NIL

我完全按照这个例子,所以我假设这与我的环境有某种关系。我在Windows中使用Emacs Inferior Lisp,为了获得我期望的行为,是否需要对我的代码进行一些调整?

1 个答案:

答案 0 :(得分:3)

您的代码似乎没有任何问题,并且它也可以正确运行MS Windows上的SBCL。为什么不尝试使用SLIME在Emacs中编辑和运行你的CL代码,而不是劣质的lisp模式(那真的很差)?您可以按照以下指南快速安装它: