是否可以在 vim 中创建用于命令行的分割视图?

是否可以在 vim 中创建用于命令行的分割视图?

我知道这个选项:!ls,但我想使用其中一个分割界面(使用后:sp)作为命令行窗口。这可能吗?如果可以,我该怎么做?

答案1

与 Emacs 不同,Vim 在使用 shell 时尽量简化。它没有在选项卡或缓冲区中包含交互式 shell 的选项。

虽然有解决方法。就像你一样,我真的很喜欢bash在运行 Vim 的同一个终端会话中有一个窗口。这在编辑源文件时非常有用。就我而言,我真的很喜欢运行 Ruby REPL 环境,这样我就可以先测试语句,然后再将它们放入源文件中。

我用多路复用完成分割窗口。在多路复用我创建了一个分割窗口(默认键是 ctrl+b,“)。这将打开 2 个交互式 shell 会话,就像 Vim 中的分割窗口一样。然后我在其中一个会话中运行 Vim,一切就绪了。

从下面的图片中你可以看到,我将窗口水平分割在bash顶部,Vim 在底部。

在此处输入图片描述

我也用多路复用支持与他人结对编程。您可以在我的博客上阅读有关我的设置的更多信息http://jjasonclark.com/Remote-Pairing-with-SSH-and-Tmux-on-a-Mac

答案2

Vim 8 内置有终端模式。

您可以输入内容:ter来访问终端。

要浏览默认 shell 中的命令,请使用j,k

:h ter您可以通过输入VIM8 来获取更多信息。

笔记:你的 VIM8 必须具备+terminal此功能才能工作。

答案3

不确定您是否在寻找 GNU 屏幕解决方案,还是使用 Vim 内置分割的解决方案,但如果您正在寻找后者,那么这对我有用:

vim -O file_a.js file_b.js

这会以垂直分割打开两个文件。对于常规(水平分割),只需使用小写字母-o即可。

PS Ctrl+ ww在两者之间切换(我发现这是区分屏幕分割和 vim 分割的好方法)。

答案4

我找这个很久了,但我觉得没什么好办法。我试过很多 vim 插件/附加组件,但没有一个能达到我想要的效果。

不过这个很好:征服术语

但是颜色有些不一致。试试看,也许对你有用。

相关内容