如何更改vim菜单的加速键?
在我的vimrc中,我有如何更改vim菜单的加速键?,vim,Vim,在我的vimrc中,我有nnoremap。不幸的是,这失败了,因为Alt+h是帮助菜单的加速键,所以vim忽略我的映射并打开菜单。是否有任何方法可以更改菜单的加速键,甚至禁用它 我已经看了帮助文件,但至今找不到答案。我正在寻找一小段vimscript,而不是一个插件,因为我正在努力确保我理解文件中的所有内容。直观地说,我认为可能有一种方法可以设置映射,我只是不知道它会是什么。如果禁用菜单(set guioptions-=m),这将允许您映射所需的击键 或者,$VIMRUNTIME/menu.vi
nnoremap
。不幸的是,这失败了,因为Alt+h是帮助菜单的加速键,所以vim忽略我的映射并打开菜单。是否有任何方法可以更改菜单的加速键,甚至禁用它
我已经看了帮助文件,但至今找不到答案。我正在寻找一小段vimscript,而不是一个插件,因为我正在努力确保我理解文件中的所有内容。直观地说,我认为可能有一种方法可以设置映射,我只是不知道它会是什么。如果禁用菜单(set guioptions-=m
),这将允许您映射所需的击键
或者,$VIMRUNTIME/menu.vim
是用来创建菜单本身的源代码,它还定义了菜单的快捷键。您可以覆盖帮助菜单项的名称,以删除&
标记(定义快捷方式)
例如,我安装的$VIMRUNTIME/menu.vim
有以下内容:
" Help menu
an 9999.10 &Help.&Overview<Tab><F1> :help<CR>
an 9999.20 &Help.&User\ Manual :help usr_toc<CR>
an 9999.30 &Help.&How-to\ links :help how-to<CR>
an <silent> 9999.40 &Help.&Find\.\.\. :call <SID>Helpfind()<CR>
an 9999.45 &Help.-sep1- <Nop>
an 9999.50 &Help.&Credits :help credits<CR>
an 9999.60 &Help.Co&pying :help copying<CR>
an 9999.70 &Help.&Sponsor/Register :help sponsor<CR>
an 9999.70 &Help.O&rphans :help kcc<CR>
an 9999.75 &Help.-sep2- <Nop>
an 9999.80 &Help.&Version :version<CR>
an 9999.90 &Help.&About :intro<CR>
(请注意,如果您完全不使用&
,看起来将使用菜单的第一个字符,这将使您回到同一位置。)如果禁用菜单(设置guioptions-=m
),这将允许您映射所需的击键
或者,$VIMRUNTIME/menu.vim
是用来创建菜单本身的源代码,它还定义了菜单的快捷键。您可以覆盖帮助菜单项的名称,以删除&
标记(定义快捷方式)
例如,我安装的$VIMRUNTIME/menu.vim
有以下内容:
" Help menu
an 9999.10 &Help.&Overview<Tab><F1> :help<CR>
an 9999.20 &Help.&User\ Manual :help usr_toc<CR>
an 9999.30 &Help.&How-to\ links :help how-to<CR>
an <silent> 9999.40 &Help.&Find\.\.\. :call <SID>Helpfind()<CR>
an 9999.45 &Help.-sep1- <Nop>
an 9999.50 &Help.&Credits :help credits<CR>
an 9999.60 &Help.Co&pying :help copying<CR>
an 9999.70 &Help.&Sponsor/Register :help sponsor<CR>
an 9999.70 &Help.O&rphans :help kcc<CR>
an 9999.75 &Help.-sep2- <Nop>
an 9999.80 &Help.&Version :version<CR>
an 9999.90 &Help.&About :intro<CR>
(请注意,如果您完全不使用
&
,看起来将使用菜单的第一个字符,这将使您回到原来的位置。)谢谢,但我真正想要的是一种保留菜单的方法,但要覆盖加速器映射。在查看menu.vim之后,我找不到加速器的定义位置,我不想删除它,因为我对我的vim fu没有足够的信心安全地这样做。@theresawalrus我也这么想,所以我给大家举了一个例子,它比完全删除菜单的核解决方案花了我一点时间。加速器可以是菜单的第一个字符,也可以是“&”之后的字符。谢谢!这更有意义。不过,我必须使用与l
不同的东西,否则这又是一个相同的问题:)谢谢,但我真正想要的是保留菜单,但覆盖加速器映射的方法。在查看menu.vim之后,我找不到加速器的定义位置,我不想删除它,因为我对我的vim fu没有足够的信心安全地这样做。@theresawalrus我也这么想,所以我给大家举了一个例子,它比完全删除菜单的核解决方案花了我一点时间。加速器可以是菜单的第一个字符,也可以是“&”之后的字符。谢谢!这更有意义。不过,我必须使用不同于l
的东西,否则这又是同一个问题:)