如何防止Guile为每个错误启动调试器



我在Emacs下将Guile与Geiser结合使用,同时学习如何在Scheme中编程。我发现,每次我打字错误或输入错误的代码时,Guile都会进入调试器,这实际上是一个障碍。在Emacs下通过Geiser使用调试器时,我如何让Guile更能容忍我的打字错误并跳过调试器?

随着Scheme编程的深入,我将如何恢复默认行为,或者如何在调试器始终启动和仅按需启动之间切换?

您可以将on-error选项设置为report,它只会报告错误,而不会将您放入调试器(默认值为debug);例如

scheme@(guile-user)> ,option on-error 'report
scheme@(guile-user)> (/ 1 0)
ERROR: Throw to key `numerical-overflow' with args `("/" "Numerical overflow" #f #f)'.
scheme@(guile-user)> 

请参阅:https://www.gnu.org/software/guile/manual/html_node/System-Commands.html

我并没有写很多Scheme,但似乎你可以忽略调试器。

如果你用lispy做eval与e,你甚至看不到REPL窗口,你只是在回显区域中获取消息并显示结果。

如果设置了(setq geiser-impl--implementation 'guile),请按elispy-mode中,它将启动Geiser REPL自动(如果没有活动的)并评估表达式。

最新更新