如何解决Vim中'UltiSnips'插件的TAB键映射冲突

如何解决Vim中'UltiSnips'插件的TAB键映射冲突,vim,ultisnips,Vim,Ultisnips,我已按如下方式设置映射键: " Easy indent for code blocks nmap <tab> v> nmap <s-tab> v< vmap <tab> >gv vmap <s-tab> <gv “代码块的轻松缩进 nmap v> nmap v< vmap>gv vmap通过:h UltiSnips触发器查看UltiSnips文档时说: You can def

我已按如下方式设置映射键:

" Easy indent for code blocks
  nmap <tab>      v>
  nmap <s-tab>    v<
  vmap <tab>      >gv
  vmap <s-tab>    <gv
“代码块的轻松缩进
nmap v>
nmap v<
vmap>gv

vmap通过
:h UltiSnips触发器查看UltiSnips文档时说:

You can define the keys used to trigger UltiSnips actions by setting global
variables. Variables define the keys used to expand a snippet, jump forward
and jump backwards within a snippet, and list all available snippets in the
current expand context. The variables with their default values are: >
   g:UltiSnipsExpandTrigger               <tab>
   g:UltiSnipsListSnippets                <c-tab>
   g:UltiSnipsJumpForwardTrigger          <c-j>
   g:UltiSnipsJumpBackwardTrigger         <c-k>

您可以将默认的expand触发器更改为other键,但我认为最好使用以下映射:

nnoremap > v>
nnoremap < v<
vnoremap > >gv
vnoremap < <gv
nnoremap>v>
nnoremap>gv

vnoremap<在我的例子中
选项卡
与supertab插件冲突。请注意,如果您使用vim而不是putty,则某些键组合可能无法直接使用,例如
,在这种情况下,请尝试类似于
let g:UltiSnipsExpandTrigger='
的方法,这也有比更易于键入的优点de>
@PeterRincker当我使用任何功能键时,例如
,它只是在插入模式下键入
。但是它在gvim中工作。但我的Putty问题仍然存在:/
:h >>
:h .
:h u
nnoremap > v>
nnoremap < v<
vnoremap > >gv
vnoremap < <gv