考虑以下 Bash 脚本:
#!/usr/bin/env bash
read -rp "> " INPUT
echo "Your input is: $INPUT"
echo "Done"
当我在常规 Vim 中打开这个文件并运行:!bash %
,我得到了预期的结果:
> 测试
您的输入是:测试
Done
按 ENTER 或键入命令继续
然而,在 Neovim 中,运行相同的:!bash %
命令似乎忽略了read
line:
您的输入是:
Done
按 ENTER 或键入命令继续
我正在运行 Vim 版本8.2.500
和 Neovim 版本v0.4.3
.
从命令行执行脚本工作正常,到目前为止我只在 Neovim 中运行它时遇到这个问题。
我缺少什么?
从手动输入:!
命令:
该命令在连接的非交互式 shell 中运行
到管道(不是终端)。使用 |:终端|运行一个
连接到终端的交互式 shell。
当它运行时bash
,它的标准输入连接到管道,而不是终端,因此不能使用终端来响应提示。
So try
!te bash %s
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)