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

时间:2018-08-23 17:52:49

标签: macos vim terminal tmux gnu-screen

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

image of getting kicked out of vim to view and respond to a terminal command that was run within vim

我知道vim :read将接收终端输出并将其实际放入我的缓冲区中,但这不是我想要的。如果对切线感兴趣,这里是some reading

当我在Screen中运行vim时,看起来像是我想要的东西,但是我试图将其与tmux和Mac终端股票一起使用。

1 个答案:

答案 0 :(得分:1)

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

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

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

image of terminal command run within vim showing output in vim

附注:.vimrc文件中的上述添加内容还将防止退出vim(例如:wq)时清除vim缓冲区。我对此还可以!有时候,很高兴能看到您正在做的事情:)。