VSVim - 转义映射破坏光标位置行为
VSVim - Escape mapping breaks cursor position behavior
我将 _vsvimrc 文件缩减为一行:
inoremap jk <esc>
现在,每当我直接点击 jk
或 esc
时,它会返回正常模式,但也会将光标放在第 0 列:gif showing the behavior.
删除 jk
的映射可解决问题。
这是预期的行为吗?我在 Gvim 中做了同样的测试,它似乎没有同样的问题。
此行为是设计使然。在此示例中,当您点击 <Esc>
(直接或通过 jk
)时,插入符号处于虚拟 space。当发生这种情况时,VsVim 会将插入符号放在同一行的最后一个真正的 space 中。
如果您在 Visual Studio 中启用白色 space 查看功能,则更容易看到此行为:
- 编辑 -> 高级
- 检查视图白色 Space
我将 _vsvimrc 文件缩减为一行:
inoremap jk <esc>
现在,每当我直接点击 jk
或 esc
时,它会返回正常模式,但也会将光标放在第 0 列:gif showing the behavior.
删除 jk
的映射可解决问题。
这是预期的行为吗?我在 Gvim 中做了同样的测试,它似乎没有同样的问题。
此行为是设计使然。在此示例中,当您点击 <Esc>
(直接或通过 jk
)时,插入符号处于虚拟 space。当发生这种情况时,VsVim 会将插入符号放在同一行的最后一个真正的 space 中。
如果您在 Visual Studio 中启用白色 space 查看功能,则更容易看到此行为:
- 编辑 -> 高级
- 检查视图白色 Space