2024年Clojure状态调查!分享您的想法。

欢迎!请查看关于页面,以了解更多此网站的工作方式。

+1
REPL
重新标记

在按回车键将表达式提交给REPL后,该行的提示符开始消失了

before

after

在上面的例子中,在按下Return后,Clojure版本号之后的第一个行仍然应该显示

user=> 123

但现实情况是,它只显示

123

也就是说,提示符消失了。

1 答案

+4

编辑
 
最佳答案

这是因为clj命令在内部使用rlwrap命令来提供传统的REPL键盘快捷方式。

rlwrap又使用readline库,该库的最新版本(8.1)暴露了rlwrap的bug,导致提示符消失

https://github.com/hanslub42/rlwrap/issues/108

在可用到修复了rlwrap命令的版本之前,可以通过将以下内容添加到您主目录中的.inputrc文件(即~/.inputrc — 如果尚不存在,请创建)来绕过此bug。

$if clojure
    set enable-bracketed-paste off
$endif

如果退出并重新启动clj命令不足以使新配置生效,请尝试也重新启动您的终端。


更新: 已发布 rlwrap 版本 0.44,上述解决方案已不再需要。请参阅此处了解各个包仓库中可用的 rlwrap 版本点击此处

谢谢!这让我很头疼!
...