当前位置:   article > 正文

问题解决:VScode在使用中文输入法时出现vim insert模式变成vim normal的奇怪现象( jj 映射成esc)_vscode下面显示normal,不能编辑

vscode下面显示normal,不能编辑

一、问题描述

有时当我想打极客时,在VScode中用中文输入ji 空格 ke,然后会发现下面奇怪的现象
在这里插入图片描述

我是用了VScode vim插件的,然后当我输入ji ke后,vim居然在中文输入法下由insert模式变成了normal模式,然后我再输入中文,就完全打不出来了,因为这是相当于在normal命令下按键,这让我很蒙圈,想了很久,才想清楚原因

二、解决方法

在设置中我尝试把之前设置的 jk 按键映射注释掉
在这里插入图片描述
神奇的事情发生了,这是在打ji ke就不会出现上面的问题了

原来如此!!!

Vim把中文极(ji)和客(ke)的首字母jk组合起来了,然后映射成escape了,恍然大悟,因为当我试着打挤(ji)开(kai)也是出现了同样的情况

最后我改成了 ;; 映射成 escape,这样就基本不会出现上面的情况了
在这里插入图片描述
Monday, April 13, 2020 00:15:16 更新
我设置了a;;a映射成esc,这样只要同时按下这两个键即可

    "vim.insertModeKeyBindings": [
        {
            "before": [ // use jj will have a bug
                "a",
                ";"
            ],
            "after": [ // 缺点是行首时会移动两个光标
                "<esc>",
                "l"
            ]
        },
        {
            "before": [ // use a; or ;a can both be esc
                ";",
                "a"
            ],
            "after": [
                "<esc>",
                "l"
            ]
        }
    ],
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

Thursday, April 30, 2020 11:06:10 更新
我发现一种更加快速的方法,直接用cmd + K映射到esc,这样不会在屏幕中出现任何字母,而a;还会在屏幕上先出现a,然后再消失
的
思考:Why does ESC move the cursor back in vim?

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/918808
推荐阅读
相关标签
  

闽ICP备14008679号