根据jshell文档:
在命令提示符上进行编辑的一种替代方法是使用外部编辑器。该编辑器可用于编辑和创建片段,并且对多行摘要特别有用。您可以配置Jshell使用您选择的编辑器。
为了实现此目的,我使用以下命令:
jshell> /set editor sublime
| Editor set to: sublime
然后,我尝试编辑片段如下:
jshell> /edit printName
| Edit Error: process IO failure: Cannot run program "subllime": error=2, No such file or directory
但是,我得到了上述错误。那么,是设置编辑器还是需要其他内容的正确方法?我还尝试将Microsoft Word设置为编辑器,并从Mac的应用程序文件夹中指定了确切的应用程序路径,如下所示:
jshell> /set editor /Users/karan.verma/Applications/Microsoft Word.app
| Editor set to: /Users/karan.verma/Applications/Microsoft Word.app
甚至当我将编辑器设置为"原子"时,我都得到了相同的结果:
jshell> /set editor atom
| Editor set to: atom
,但仍然显示出相同的错误。有帮助吗?
可能对OP不起作用。但为我工作。因此,在这里发布它希望它可以帮助某人。
如果您可以在终端上键入subl
,并且如果打开崇高的文本(表示subl
在PATH
中),请尝试:
/set editor subl -w
如果在终端上键入subl
时未打开文本,但是运行"/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl"
确实打开了崇高的文本(意味着subl
不在PATH
中),请尝试:
/set editor "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" -w
-w
标志是等待文件在返回之前以崇高的文本关闭。
它通过提供崇高可执行文件的完整路径来对我有用。例如,在Windows上。
jshell> /set editor c:sublime3sublime_text.exe
您可以通过jshelleditor用户/系统变量指定JSHELL编辑器
Windows设置完整路径:
jshell> /set editor C:Program FilesNotepad++notepad++.exe
请不要在路径中包含倒置逗号(")在MacOS中,使用路径倒置逗号。
即使我面临的问题也与给命令相同的问题
jshell>/设置编辑器"/applications/sublime text.app"
但是缺少的是sublime内容文件夹中bin目录的确切路径。
解决方案:
jshell>/SET编辑器"/applications/sublimetext.app/contents/sharedsupport/bin/subl"
尝试一下它将100%起作用。