我通过观看截屏视频来学习Vim。我想知道为什么很多人使用gVim或MacVim?鼠。但这不符合“ Vim理念”吗?

谁能解释GUI Vim版本与基于终端的Vim相比提供哪些附加功能?

评论

Gui vim允许使用256种以上的颜色,以及其他文本格式,因此可能很吸引人。我个人看不到为什么人们喜欢gui vim,因为我发现终端vim更方便。但这是我的意见。

#1 楼

一些仅适用于gVim的功能:开箱即用的24位颜色支持(要在终端vim中获得相同数量的颜色,您必须更加努力一点,看看这个)。对于真正的斜体,同样适用(请参阅本节和本节)。请注意,您应该使用支持真实斜体的字体。
其他一些更高级的图形功能,例如用于拼写检查的“摆动线”,更灵活的光标形状等。终端只能执行“等距块字符”。
启用鼠标支持(如果不保留的话)(包括文件拖放)。终端Vim也可以很好地处理鼠标,但不能拖放。
提供了一个不错的,可自定义的菜单系统,其中每个选项都列出了相应的Vim命令。
gVim可以为您提供滚动条,滚动Vim缓冲区(而不是终端回滚)。
可以弹出“气球”(又名“工具提示”)。
具有集成的字体支持。
有些键绑定可以带有CTRL + Space,Meta + e ...等gVim的框,而在其他情况下,它们需要对终端进行更多的调整。如果没有gVim,则无法进行其他操作,例如CTRL + Tab。

自动选择:如果设置了此选项,则任何视觉选择都将自动拉到主面板/剪贴板。

其次,即使您宁愿使用Vim,安装GUI版本也可能比不使用Vim版本提供更多的编译时功能,至少在某些发行版中(例如clipboardclientserver中基于Debian的系统上的vim-noxvim-gnome支持)。 Windows,gVim窗口比控制台Vim窗口更容易调整大小。
gVim不能做的事情:使用很多终端功能的设备将无法很好地工作。例如,尝试使用gVim中的:!vim:!mutt:!irssi,或在单词上按K(默认情况下,会打开该单词的联机帮助页)。另请参阅此。


评论


如果您打算大量使用SSH,则常规vim也会更加方便,因为它可以放在tmux或screen下,并且不需要两端都支持X11。

–凯文
16 Mar 23 '16 at 4:03

实际上,由于后来的8.0补丁之一,gvim包含了一个终端。因此,您可以启动终端,并且应该能够在其中运行交互式程序。

–克里斯蒂安·布拉班特(Christian Brabandt)
18年2月28日在16:18

菜单在GUI vim中当然更好,也更加集成,但是它们确实存在并且可以在控制台vim中使用。必须先获取menu.vim,然后可能使用set wildmenu和:emenu 来以类似于菜单的方式导航。

–brhfl
18年2月28日在19:22

@brhfl我会说“几乎”可用。

–muru
18年3月1日在1:52

@ChristianBrabandt社区Wiki!继续编辑它。:)

–muru
18年3月1日在1:52

#2 楼

我只是可以谈谈gVim。除了基本的区别外,我发现使用gVim从一开始就可以通过阅读菜单上显示的每个快捷方式对基本命令(例如,使用“ + y”将所选文本复制到剪贴板的一种方法)有很多帮助。听起来很傻,但您确实应该花一些时间遍历菜单,而不仅仅是单击一个项目,而是实际测试它显示的快捷方式。个人意见。

#3 楼

我们中的某些人被困在Windows领域中,因此终端选项不太方便。这比打开终端(cygwin或其他工具),导航到目录并为文件添加图片更加容易和快捷。

(在我的工作PC上,gVim和MinGW bash满足了我的大部分编辑需求)

评论


它也适用于Linux世界。如果要直接从Nautilus打开vim中的文件,则gvim可用,而vim不可用。

–kuldeep.kamboj
2015年3月10日,下午5:32

@ kuldeep.kamboj这仅仅是配置Nautilis的问题;您可以使用xterm -e vim%或诸如此类...

–马丁·图尔诺伊(Martin Tournoij)
2015年3月10日在9:28

这就是为什么我安装了gVim。 Windows终端字体使您流血。

– Shahbaz
15年3月10日在13:29

#4 楼

要添加一个琐碎的东西:使用gvim时,我的桌面窗口列表显示一个漂亮的Vim符号而不是Xterm符号,这使得在打开许多xterm时更容易切换到编辑器。

评论


您可以使用xseticon更改窗口图标:-)

–马丁·图尔诺伊(Martin Tournoij)
2015年3月10日23:54



#5 楼

使用gVim可以根据模式更改光标形状(例如,普通与插入)。在像Konsole这样的终端程序中使用vim时,这应该可以工作,但是我从未见过它能工作。

评论


我不太倾向于在Linux上使用特别高级的终端仿真器,但是我可以确认它在Mac上的mintty / cygwin和iTerm2中能很好地工作。

–brhfl
18年2月28日在19:29

这是一个很好的补充。显然,XTerm不支持​​更改光标。

–Quasímodo
20年8月26日在22:17

#6 楼

对我来说,至关重要的一点是继续让我使用MacVim而不是终端机+ vi是速度。我有各种各样的vim插件,语言提示和语法检查器,它们令人惊讶地使终端vi陷入困境,而MacVim的已编译bin可以很好地处理所有语法糖。