有没有办法在新的shell窗口或标签中打开vim?我习惯做$ mate file
,它会在新窗口中打开文件。
我更喜欢有一个'中央shell',我可以根据需要在其他窗口或标签中发出命令和编辑文件。人们通常如何在本地打开vim文件?
答案 0 :(得分:199)
从vim内部,使用以下
之一在当前的下面打开一个新窗口:
:new filename.ext
在当前的旁边打开一个新窗口:
:vert new filename.ext
答案 1 :(得分:11)
您可以在vim中使用自己的窗口或标签。
一种方法是使用内置文件浏览器;通过:Explore
或:Texplore
激活标签式界面(我觉得最舒服)。
:Texplore
(以及:Sexplore
)也会防止您在浏览器内部意外退出:q
上的当前缓冲区(编辑器)。
使用标签页时,要在打开的标签页之间切换,请使用gt
或gT
(分别是下一个标签和上一个标签页)。
另请参阅vim wiki上的Using tab pages。
答案 2 :(得分:7)
我使用这个微妙的别名:
alias vim='gnome-terminal -- vim'
-x现已弃用。我们需要使用 - 而不是
答案 3 :(得分:5)
如果您不介意使用gVim,则可以启动单个实例,以便在使用它打开新文件时,它会在当前运行的实例的新选项卡中自动打开。
要执行此操作,您可以写:gVim --remote-tab-silent file
您始终可以为此命令创建别名,这样您就不必输入这么多单词。
例如,我使用linux和bash,在我的~/.bashrc
文件中我有:
alias g='gvim --remote-tab-silent'
所以我没有$ mate file
执行:$ g file
答案 4 :(得分:0)
我正在使用以下内容,尽管它已为gnome-terminal
进行了硬编码。它还会将vim的CWD和缓冲区更改为与当前缓冲区及其目录相同。
:silent execute '!gnome-terminal -- zsh -i -c "cd ' shellescape(expand("%:h")) '; vim' shellescape(expand("%:p")) '; zsh -i"' <cr>
答案 5 :(得分:-21)
查看gVim。您可以在自己的窗口中启动它。
gVim使得以图形方式管理多个开放缓冲区变得非常容易。
您也可以通常:e
打开一个新文件, CTRL + ^ 在缓冲区之间切换等等...
另一个很酷的功能是让您打开一个弹出窗口,列出您已经处理过的所有缓冲区。
这使您只需单击即可在打开的缓冲区之间切换。
要执行此操作,请单击顶部的缓冲区菜单,然后使用剪刀单击虚线。
否则,您只需从终端会话中打开一个新选项卡,然后从那里启动vi即可。
您通常可以通过 CTRL + T 或 CTRL + 从终端打开新标签页ALT + Ť
启动vi后,可以轻松打开新文件并在它们之间切换。