如何自定义 gvim 工具栏?

如何自定义 gvim 工具栏?

我想删除一些默认图标,也许添加一两个我自己的图标。例如,如果有 NerdTree 和 Taglist 的图标就好了。

答案1

路德维希的回答让我开始思考,但这并不是我真正希望得到的答案。所以我把这个问题放到了社区维基上,并留下了这个答案,记录下我发现的内容。随着我的研究,答案会不断改进。

了解工具栏当前由哪些内容组成

:tmenu ToolBar

这将为您提供当前工具栏上的命令列表。它将列出每个条目的位置、名称和工具提示。

从默认工具栏中删除一些内容

您可以使用.gvimrc删除默认工具栏中的条目。例如,要删除 make 命令:

:aunmenu ToolBar.Make

您需要指定菜单(“ToolBar”)和命令的名称(“Make”)。

向工具栏添加新条目

要向工具栏添加新命令,请使用 tmenu 和 amenu 命令。例如,以下命令将添加一个图标,该图标将切换标记列表的显示(当然,您需要安装标签列表插件第一的):

:tmenu ToolBar.taglist Toggle display of the Taglist
:amenu ToolBar.taglist :TlistToggle<CR>

再次,您需要指定菜单的名称(“ToolBar”)和新菜单项的名称(“taglist”)。新项的名称也将用于搜索图标。您可以将图标放在 ~/.vim/bitmaps/ 目录中(如果尚不存在,只需创建它)。据说,在 Windows 上您需要一个 .bmp 文件,在其他地方则需要一个 .xpm 文件。图标的大小需要为 18 x 18 像素。

tmenu负责悬停在图标上时显示的工具提示。用于amenu决定单击图标时应发生什么。

答案2

我发现本教程很有帮助。最有趣的部分引述如下:

:tmenu 1.190 ToolBar.b2u beta2unicode
:imenu ToolBar.b2u <Esc>:source ~/.vim/scripts/beta2unicode<CR>

第一行 1.190 表示工具栏上的位置。在 ToolBar.b2u 中,“b2u”是图像的名称(不带 bmp 扩展名)。第一行的最后一项是与工具栏上的图标(或按钮,你想这样称呼它)相关的操作的简短描述。

在第二行中,ToolBar.b2u 遵循与第一行相同的逻辑。最后一部分,

:源〜/.vim/scripts/beta2unicode.vim

首先将 Vim 模式更改为命令行模式。命令是“source”(解释和执行)脚本。这里的 VIMHOME 是 ~/.vim/。VIMHOME 中的文件夹是 scripts|,\verb|beta2unicode.vim 是脚本的名称。相当于按下 Enter 键。

它基本上就像添加其他菜单一样工作。您可以在 vim 的帮助 ( ) 中找到详细信息:help menu

相关内容