gpt4 book ai didi

editor - Vim : How to remap in insert mode?

转载 作者:行者123 更新时间:2023-12-04 04:48:00 26 4
gpt4 key购买 nike

我想为插入模式下的导航映射以下内容:

  • <c-h> # 向左移动
  • <c-j> # 向下移动
  • <c-k> # 向上移动
  • <c-l> # 向右移动

因此,我将以下内容添加到我的 .vimrc 中:

inoremap <c-h> <left>
inoremap <c-j> <down>
inoremap <c-k> <up>
inoremap <c-l> <right>

现在,

  • Left 不起作用 [ 相反,它会删除左侧字符 ]
  • 正确的作品!
  • 成功了!
  • 下来了!

据我了解,<c-h>默认 deletes left character 。但我无法覆盖它。

我什至尝试过这个:

 inoremap <c-j> <down>
inoremap <c-k> <up>
inoremap <c-l> <right>
" Re-mapping <c-h> for insert-mode
autocmd InsertEnter call RemapCtrlH()
function RemapCtrlH()
iunmap <c-h>
inoremap <c-h> <left>
endfunction

但即使这样也不起作用。

最佳答案

So, I added the following to my .vimrc :

inoremap <c-j> <down>
inoremap <c-j> <down>
inoremap <c-k> <up>
inoremap <c-l> <right>

你的第一行和第二行是相同的!将第一个更改为以下内容:

inoremap <C-H> <Left>

您可以通过以下方式确认您的映射:

:verbose imap <C-H>

更新问题、评论和接受的更新

我保留了上面的信息,但为了回复评论......

  1. 与“autoclose”插件的冲突解释了为什么它在编辑器中有效,但在 $MYVIMRC 中不起作用。 。您可以通过将映射放入 after-directory 中的插件文件中来解决此问题。 .

  2. 我使用了 <C-H> 的标题大小写映射与notation一致在官方文档中。 The documentation states :

    The case of {char} does not matter; thus CTRL-A and CTRL-a are equivalent.

    如果您希望映射CTRL-Shift-H,请使用inoremap <C-S-H>相反。

  3. 我很高兴 :verbose map 帮助您找到问题的根源! :verbose 是调试 Vim 脚本时的一个方便工具。

祝你好运!

关于editor - Vim : How to remap <c-h> in insert mode?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17894149/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com