我的vimrc上有以下映射
nnoremap <TAB> gt
nnoremap <S-TAB> gT
然后我映射ESC以清除亮点:
noremap <silent> <ESC> :noh<return>
然后<S-TAB>
不再工作了。如果我从<silent>
映射中删除<ESC>
,当我按下:noh
时,我会看到<S-TAB>
。我不知道<S-TAB>
和<ESC>
是否有共同之处。我在Linux上,在gnome-terminal上使用vim。
你认为<S-TAB>
和<ESC>
有一些共同之处是对的。 S-TAB
是一个以转义为前缀的键码。
ESC
键码是^[
,而S-TAB
是^[[Z
。您可以看到与S-TAB
键码匹配的ESC
密钥代码的第一部分。
看到full table of combinations here。
因此,您无法重新映射转义键,同时还会重新映射其中一个键代码(包括它)。选择一个不同的键来清除高光或切换标签的不同方式。