Tab键的Taglist映射

时间:2016-09-05 12:49:05

标签: vim taglist

我已经映射了TAB键以在窗口之间移动,如下所示。

map <TAB> ^W^W

除标签列表窗口外,它适用于所有窗口(例如分屏)。当我按下标签列表窗口中的TAB键时,它不会转到下一个窗口。我该如何覆盖呢?

我还在.vimrc中配置了以下选项:

let Tlist_Show_One_File = 1
let Tlist_Exit_OnlyWindow = 1
let Tlist_WinWidth = 30

如果我在taglist.vim插件文件

中注释掉以下行,则会有效
nnoremap <buffer> <silent> <Tab> :call <SID>Tlist_Window_Move_To_File(1)<CR>

我尝试在.vimrc文件中添加以下行,但它无效。

nnoremap <buffer> <silent> <Tab> ^W^W

有更简洁的方法吗?

1 个答案:

答案 0 :(得分:2)

你是对的,Taglist插件为其侧边栏创建了自己的缓冲区本地映射。

没有通用的方法来撤消/覆盖它。幸运的是,Taglist插件创建了带有特定名称(__Tag_List__)的侧边栏,因此您可以使用:autocmd挂钩:

:autocmd BufEnter __Tag_List__ silent! nunmap <buffer> <Tab>

如果映射已被清除,silent!会抑制错误。