将终端命令输出直接打印到 vim - macOS

Print terminal command output directly into vim - macOS

每当我在 vim 中输入终端命令(例如 !echo hello)时,我会立即被踢出去查看该终端命令的结果,然后提示 Press ENTER or type command to continue。这有点刺耳。我想留在 vim 内,并在底部打印命令输出。

我知道 vim :read 会获取终端输出并将其实际放入我的缓冲区,但这不是我想要做的。如果您对切线感兴趣,请点击这里 some reading

看起来当我 运行 vim 在 Screen 中时我得到了我正在寻找的东西,但我试图让它与 tmux 和股票 Mac 终端一起工作.

经过大量研究,可能太多了,我明白了!看起来 vim 将向终端发送命令,终端又定义了如何处理来自 vim 的终端命令的行为。将其放入您的 .vimrc 文件中:

set t_ti= t_te= " show results from terminal commands within vim!

据我了解,这只是确保不向终端发送任何内容,这会产生我想要的结果!

旁注:上述添加到 .vimrc 文件的内容还将防止 vim 缓冲区在退出 vim(例如 :wq)时被清除。我对此没意见!有时候看到你刚刚在做什么真是太好了:)。