Linux gvim和vim的区别

19
在Linux机器上,gvim和vim有什么区别吗?
我安装了增强版的VIM编辑器,其中包括最近的改进:
vim-enhanced-2:7.2.411-1.8.el6(x86_64)
安装后,在我的主目录中可以看到.viminfo和.vimrc。我甚至在.vimrc中进行了更改,并故意添加了一些错误代码,结果出现了错误。因此,当调用vim时,我确信它正在调用.vimrc。
我还从过去的GVIM中拥有一个.vimrc文件,并将该文件复制到这个新的.vimrc中,但没有任何抱怨。
到目前为止都很好。
但是现在,当我打开VIM时,它会在终端中打开文件!而且它没有为GVIM打开一个新窗口。但我可以看到它几乎具备所有GVIM的功能!
如何让它在打开文件时在一个单独的窗口中打开?

2
通常情况下,vim打开一个命令行程序,而gvim打开一个图形界面程序(通常是二进制文件的别名,例如vim-gnome)。你曾经使用过将vim打开图形界面程序的设置吗?另外,在vim中检查:help ex以了解启动vim的不同别名。 - Conspicuous Compiler
2
你的问题是什么?你想知道gvim和vim之间的区别吗?还是想要在输入“vim foo.txt”时获得一个gvim窗口? - Kent
2个回答

37

如果您询问vim和gvim之间的区别...这里有一些(个人意见):

颜色支持

vim在终端运行,如果您正确设置了终端,vim支持256(或88)种颜色。但是gvim可以支持从000000-FFFFFF的颜色。

某些按键映射的难度

同样,这取决于您使用的终端。有些按键映射可能很难实现。例如我想在vim中映射插入模式下的alt-i/j/k/l,我试了很多次,不幸的是到目前为止还不起作用。但在gvim中,这就容易多了。

gvim更容易被其他GUI应用程序启动

(可能需要插件) 像浏览器或其他IDE

Gvim需要X

只要您能获取终端,您就可以开始vim。即使是tty或pts。但使用Gvim必须安装GUI。

使用vim可以从ctrl-Z受益

如果您想在shell /终端中测试代码或在编辑过程中执行一些shell命令。在vim中,您可以通过ctrl-z返回终端进行操作,然后fg返回vim。但在Gvim中,您无法这样做。

在tmux/screen中使用vim非常好

当您处于gvim状态时,您只有一个窗口,切换到其他程序/应用程序不像在tmux / screen下的vim那样容易(也就是说舒适)。

可能还有更多,但目前我只想到这些。个人90%的时间我使用vim。


最后两点(Ctrl-Z和tmux)的好处完全是主观的。当我只使用终端时,我会使用它们;但通常我会同时使用终端和MacVim(gVim),并在它们之间使用Command-Tab(Alt-Tab)- 对我来说比tmux导航和Ctrl-Z / fg更容易。 - Amadan
@Amadan。是的,它们是主观的。我大多数时间使用x环境,但对我来说,tmux比alt tab更方便。 - Kent
我也无法在vim中使map <M-k> dd工作,而map <M-Down> dd可以。 - Sridhar Sarnobat
1
哇,我不知道ctrl+Z和fg,这个东西相当重要,因为我经常关闭和打开vim来运行命令(在ssh服务器上)。是的,我也使用tmux。 - IvRRimUm

5
在一些系统中,gvim就是vim -g:你可以通过$ vim -g filename或者$ gvim filename在GVim窗口中编辑文件。
在其他系统中,例如RedHat IIRC,vimgvim是两个不同的可执行文件,同时使用相同的功能构建:你可以通过$ gvim filename在GVim窗口中编辑文件。
无论哪种方式,你都应该尝试获取更多的最新版本,因为7.2.411几乎已经四年了,在这段时间内发生了很多事情。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接