gpt4 book ai didi

vim - 如何在 vim 中禁用 Esc 和光标键

转载 作者:行者123 更新时间:2023-12-04 02:42:29 25 4
gpt4 key购买 nike

有一种观点认为,在 vim 中工作时,不应使用 Esc 键(使用 ctrl+c 代替),也不应使用键盘上的箭头键(使用 h、j、k、l)。但是很难不使用这些键。我认为有一种方法可以禁用 .vimrc 中的这些键,因此除了使用 ctrl+c 和 hjkl 之外别无选择。

我搜索了一下,并在此 link 上找到了解决方案.
所以我在我的 .vimrc 文件中插入了以下内容:

 inoremap  <Up>     <NOP>
inoremap <Down> <NOP>
inoremap <Left> <NOP>
inoremap <Right> <NOP>
inoremap <Esc> <NOP>
noremap <Up> <NOP>
noremap <Down> <NOP>
noremap <Left> <NOP>
noremap <Right> <NOP>
noremap <Esc> <NOP>

但这不起作用。将此添加到我的 .vimrc 会破坏我到
功能键。另一个问题是它不会阻止箭头键的功能,而是当我在正常模式下按下时执行多个操作 - 光标向上移动一行,创建新行并插入字符“B”。

如何在我的 vim 7.2 中禁用光标键和 Esc 键而不破坏其他任何东西?

最佳答案

如果您在终端中使用 vim,则绝对不要重新映射 Escape .由于在 vim 中处理键的方式(通常也可能是终端),重新映射它会破坏您不打算更改的所有类型的键。要明白我的意思,请执行以下操作。

  • 在没有启动文件的情况下打开 vim:vim -u NONE --noplugin -N .
  • 进入插入模式。
  • Ctrl-v后跟任意功能键,例如 <F2> .

  • 注意输入的序列。它很可能以 ^[ 开头这是一个文字 Escape .

    现在打开尝试以下操作:
  • :inoremap <esc> NO ESCAPE FOR YOU
  • 进入插入模式。
  • 按任意功能键,例如 <F2> .

  • 如果前面的序列将转义字符显示为 <F2> 的一部分按键,您现在将看到我们的新字符串打印到屏幕上。事实上,既然您有了映射,请尝试使用光标键四处移动。你可能会注意到同样的奇怪行为。

    总之,不要重映射escape,我几乎保证你会有意想不到的后果。

    关于vim - 如何在 vim 中禁用 Esc 和光标键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8488232/

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