我正在尝试使用诡计和简单的web开发。我有一些使用Common和Slime的经验。我是互动发展的超级粉丝。Geiser是一个很好的IDE,但是当我从REPL运行简单的web服务器时,我就失去了交互性:
(use-modules (web server))
(define (hello-world-handler request request-body)
(values '((content-type . (text/plain)))
"hello"))
(run-server hello-world-handler)在那之后,如果我试图评估定义,什么都不会发生,Emacs会挂起。当我再次点击C时,情况会变得更糟--在REPL中,每个Geiser函数都挂起--例如,如果我按TAB或C来完成符号。我只能键入文本并按回车。唯一的解决方案是用C杀死Scheme解释器,然后重新启动它.为什么?我做错了什么吗?
在Guile v2.2 +最新的Geiser和Guile v2.0 + Geiser v0.8.1上进行了测试。
发布于 2018-11-11 20:52:22
解决方案是使用--listen参数从命令行运行单独的Guile进程,即:
guile --listen=1661 web-test.scm并使用M-x geiser-connect或M-x connect-to-guile,从Emacs连接它,在这里的“连接到外部方案”中解释了这一点:3.html#Starting-the-REPL。
在Geiser维护者的帮助下解决了。
https://stackoverflow.com/questions/53224346
复制相似问题