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