我来自Python背景,刚开始使用scala。
在python shell中,当我输入命令并在其中找到拼写错误时,我通常使用ctrl c生成键盘中断异常,以便我可以直接键入下一个语句。之前的语句不会被执行,我仍然在Python shell中。
但是在Scala REPL中,当我输入ctrl c时,我会立即退出Scala REP,这对我来说很烦人。
有没有让REPL像python shell一样工作?
我使用的Scala版本是2.11.7。我正在使用Mac。
我不认为Ctrl + C甚至是使用Python REPL放弃错误命令的正确方法,有几个快捷方式可能会让你的生活更轻松here。
Ctrl + U应该是您要查找的命令。
删除整行。
基本上Ctrl + U将删除光标前的任何内容,如果您正在键入,则应完全放弃现有行。 如果光标在中间,可以先使用Ctrl + E结束,然后按Ctrl + U.
我测试了shell,Python REPL和Scala REPL,它们都有效。对于好奇的头脑:
你可以试试李浩义的Ammonite-REPL。在许多其他改进中,它确实捕获了Ctrl + C.