我知道这个选项:!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+ w,w在两者之间切换(我发现这是区分屏幕分割和 vim 分割的好方法)。