我想映射< C-j>切换到当前窗口下方的下一个窗口
map <C-j> <C-w>j
但是,它进入插入模式而不是移动下面的窗口.为什么?
尝试解决方案
我安装了乳胶套件.所以我试着查询< C-j>被映射到
:map <C-j>
我得到以下输出:
v <NL> <Plug>IMAP_JumpForward n <NL> <Plug>IMAP_JumpForward o <NL> <C-W>j
这意味着我应该更改< Plug> IMAP_JumpForward的映射.我读了一下,发现它与< >您可以使用< C-j>跳转到的占位符在插入模式下.所以,根据我的阅读,我了解到我可以使用.vimrc中的以下行来更改映射:
imap <C-space> <Plug>IMAP_JumpForward
但不,它不起作用< C-j>以前.我会试着说明一下.我输入以下内容(_表示光标):
\documentclass{}_
然后我明白了
\documentclass{_}<++>
然后我尝试输入一些文字
\documentclass{article_}<++>
所以现在我按< C-space>.这是发生的事情:它退出插入模式,我将处于以下情况:
\documentclass{articl_e}<++>
问题摘要:
>在地图< C-j>之后< C-w> j,< C-j>进入插入模式.
>在imap< C-space>之后< Plug> IMAP_JumpForward,< C-space>不会跳到下一个< >占位符.它退出插入模式,光标备份一个字符.
怎么了?我错过了什么?
我建议两件事:
>首先,针对映射:
nnoremap <C-j> <C-w>j
>其次,通过干预找出映射干扰(以及它们来自何处)
verbose nmap <C-j> verbose nmap <C-w> verbose nmap j
另见:map,:imap,:vmap,:noremap等.