在 nodejs REPL 编辑器模式下打开 vim(或您选择的编辑器)

Open vim (or editor of your choice) in nodejs REPL editor mode

从 nodejs 6.6.0 开始,当使用 nodejs REPL 时,您可以在终端中输入多行文本:

.editor

我希望 nodejs REPL 打开一个 vim 的实例(与 git 在提示提交信息时的方式相同)以便我可以在那里输入多行文本。

有人知道怎么配置吗?我意识到我可以首先 运行 vim 或 neovim 中的 nodejs REPL ,但我正在寻找一个纯粹的修复这里。

似乎没有自定义此行为的简便方法。深入研究 nodejs 的代码,似乎编辑器模式只是将每一行流式传输在一起。

有关 GitHub 上的相关代码,请参阅 here

在此 NodeJS REPL 中最接近 "use" vim 的解决方案是在 bash 中启用 Vi(m) 模式(如果您使用 bash shell).

set -o vi

在 运行 完成此操作或将其放入您的 .bashrc 文件后,命令行界面将像 Vim 一样运行,并且具有您必须导航的编辑模式。

就个人而言,即使我是 Vim 用户,也不喜欢 bash 中的 Vi 模式,因为很难知道你处于哪种模式,即使我 go-to模式是普通模式。添加一些文本以指示您处于哪种模式 可能 是可能的,但我认为它不值得研究。但是你的里程会有所不同。

有关 bash 中 Vi 模式的更多信息,请参阅 https://sanctum.geek.nz/arabesque/vi-mode-in-bash/

我发现 运行 在 bash 中 VI 模式下的节点 REPL 工作得不是特别好(例如,在正常模式下按 0 什么都不做,而不是将光标发送到行的开头)。

然后我找到了this comment on github, which worked as desired. This won't open an instance of Vim for your editing, but it will let you navigate the node REPL (including under .editor) with vim controls. This is also in the node docs here