80

有没有办法在新的 shell 窗口或选项卡中打开 vim?我习惯于$ mate file在新窗口中打开文件。

我更喜欢有一个“中央外壳”,我可以根据需要在其他窗口或选项卡中发出命令和编辑文件。人们通常如何在本地打开vim文件?

4

6 回答 6

256

从 vim 内部,使用以下之一

在当前窗口下方打开一个新窗口

:new filename.ext

在当前窗口旁边打开一个新窗口

:vert new filename.ext
于 2012-05-26T00:15:06.657 回答
13

您可以在 vim 中执行此操作并使用它自己的窗口或选项卡。

一种方法是利用内置的文件资源管理器;通过,:Explore选项卡式界面(我觉得最舒服)激活它。:Texplore

:Texplore(and :Sexplore) 也将防止您在进入资源管理器后意外退出当前缓冲区(编辑器):q

要在使用选项卡页时在打开的选项卡之间切换,请使用gtgT(分别为下一个选项卡和上一个选项卡)。

另请参阅vim wiki 上的使用标签页。

于 2014-02-17T14:37:04.427 回答
11

我使用这个微妙的别名:

alias vim='gnome-terminal -- vim'

-x 现在已弃用。我们需要使用 -- 代替

于 2015-10-05T13:22:18.870 回答
4

如果您不介意使用 gVim,您可以启动单个实例,这样当使用它打开新文件时,它会自动在当前运行实例的新选项卡中打开。

为此,您可以编写:gVim --remote-tab-silent file

你总是可以给这个命令起一个别名,这样你就不必输入太多的单词了。例如,我使用 linux 和 bash,在我的~/.bashrc文件中我有:

alias g='gvim --remote-tab-silent'

所以$ mate file我不这样做:$ g file

于 2012-05-30T17:08:08.097 回答
1

我正在使用以下内容,尽管它是硬编码的gnome-terminal。它还将 vim 的 CWD 和缓冲区更改为与当前缓冲区及其目录相同。

:silent execute '!gnome-terminal -- zsh -i -c "cd ' shellescape(expand("%:h")) '; vim' shellescape(expand("%:p")) '; zsh -i"' <cr>
于 2020-04-02T12:32:52.207 回答
-37

查看 gVim。您可以在其自己的窗口中启动它。

gVim 使得以图形方式管理多个打开的缓冲区变得非常容易。

你也可以像往常一样:e打开一个新文件,CTRL+^在缓冲区之间切换,等等......

另一个很酷的功能可以让您打开一个弹出窗口,其中列出了您处理过的所有缓冲区。

这允许您通过单击在打开的缓冲区之间切换。

为此,请单击顶部的缓冲区菜单,然后单击带有剪刀的虚线。

在此处输入图像描述

否则,您可以从终端会话中打开一个新选项卡并从那里启动 vi。

您通常可以使用 CTRL+T CTRL+ ALT+从终端打开一个新选项卡T

一旦 vi 启动,就可以轻松打开新文件并在它们之间切换。

于 2012-05-25T19:46:29.213 回答