有没有办法在 Scala 的 REPL 中使用 ctrl-d 作为前向删除?
所以在 Scala REPL 中,我可以使用 ctrl-{p,n,a,e} 来执行上一个、下一个、行首和行尾。然而,如果我不能使用 ctrl-d 进行转发删除,我很快就会发疯。
是否有可能以某种方式实现这一目标?
我使用的是 Mac。
更新
将以下行添加到接受的答案中以获取 ctrl-{a,e}。可以在 jline2 存储库中找到更大的键绑定文件 GitHub 上的 jline2 存储库。
# CTRL-A: move to the beginning of the line
1=MOVE_TO_BEG
# CTRL-E: move the cursor to the end of the line
5=MOVE_TO_END
Update2
我刚刚安装了 Scala 2.9.0.final,我可以确认 ctrl-d 现在可以正常工作。它是向前删除,除非它在终止 shell 时是空行。
So in the Scala REPL, I can use the ctrl-{p,n,a,e} to do previous-, next-, beginning of- and end of line. However, I'll soon go crazy if I can't use ctrl-d to forward-delete.
Is it possible to achieve this in some way?
I'm using a Mac.
Update
Add the following lines to the accepted answer to get ctrl-{a,e}. A larger keybindings file kan be found in the jline2 repo jline2 repo at GitHub.
# CTRL-A: move to the beginning of the line
1=MOVE_TO_BEG
# CTRL-E: move the cursor to the end of the line
5=MOVE_TO_END
Update2
I just installed Scala 2.9.0.final and I can confirm that the ctrl-d is now working as it should. It's forward delete unless it's an empty line when it terminates the shell.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是一个非常小的键绑定属性文件,包括您想要的
^D
:将其放入文件中,然后像这样调用 scala:
或者通过
JAVA_OPTS
传递它。您必须在 Internet 上查找存在的键绑定,并尝试使用 Scala 中的:keybindings
来查看默认值(但它不会反映您实际的键绑定)。Here's a very minimal keybinding property file, including your desired
^D
:Put it in a file, and call scala like this:
Or pass it through
JAVA_OPTS
. You'll have to look up on the Internet what keybindings exist, and try:keybindings
from Scala to see what are the defaults (it won't reflect your actual keybindings, though).在 scala 2.9 的 REPL 中,您有一个新的 :keybindings 命令。这表明:
在 macbook 笔记本电脑上,可以通过
Fn + BACKSPACE
访问DELETE
。in scala 2.9's REPL you have a new :keybindings command. This reveals:
on the macbook laptops,
DELETE
can be accessed viaFn + BACKSPACE
.