为什么这个 vim 绑定不起作用?

为什么这个 vim 绑定不起作用?

我有将这两行添加到我的 vimrc 中

:nnoremap <silent><C-j> m`:silent +g/\m^\s*$/d<CR>``:noh<CR>
:nnoremap <silent><A-j> :set paste<CR>m`o<Esc>``:set nopaste<CR>

保存并重新加载 vimrc ( :so $MYVIMRC) 后,只有第一个绑定有效。第二个无效。我看到的行为就像A-j只是注册为j,光标向下移动一行。我预期的行为是看到在光标下方添加一个新行并返回正常模式。

作为上下文:我正在使用 OS X 的 Terminal.app,并且在其设置中打开了“使用选项作为元键”。

答案1

我从来没有在 OSX 上成功使用 alt/meta。不过,你可以使用默认映射到的多字节字符(当选项为 meta 时)不是选择)。对于 option-j 来说,它是

:nnoremap <silent>∆ :set paste<CR>m`o<Esc>``:set nopaste<CR>

相关内容