0

我已经安装了 winmanager、NERDTree 和 BufExplorer 插件。现在,我已<F8>设置切换 winmanager 显示,使用我的以下代码.vimrc

" mapping for triggering winmanager plugin
nnoremap <silent> <F8> :if IsWinManagerVisible() <BAR>WMToggle<CR><BAR> else<BAR> WMToggle<CR>:q<CR> endif <CR><CR>

这工作正常。

我想要做的是让 winmanager 自动显示,如果文件类型是.c.cpp. 我将此添加到我的.vimrc

autocmd FileType c,cpp nested "\<F8>"

但它不起作用

有什么帮助吗?提前致谢!

4

1 回答 1

2

<F8>是一个正常模式的映射,但:autocmd在它的右手边需要一个 Ex 命令。您需要使用:normal!此处不带a,以使映射生效),并:execute解释特殊键码:

:autocmd FileType c,cpp nested execute "normal \<F8>"

但我认为避免额外的重定向并复制映射的命令会更干净:

:autocmd FileType c,cpp nested if IsWinManagerVisible() |exe 'WMToggle'| else| exe 'WMToggle' | quit | endif
于 2013-10-22T06:33:25.323 回答