VscodeVim 遇到的奇葩bug

VscodeVim 遇到的奇葩bug

bug已经提交至github
https://github.com/VSCodeVim/Vim/issues/3864
当使用插件VscodeVim和auto rename tag,新建文件
在第一行输入:

1
<% if(get_config('toc') === true && (post.layout === 'page' || post.layout === 'post' )) {

输入到第三个 ‘===’ 的时候编辑器就会开始卡,输入一个字符很卡,但是能正常进行其他操作
太奇葩了
关掉其中任意一个插件都能够正常运行

Bub 描述

  • 操作系统: Windows 10 1903
  • Vscode 插件: VscodeVim, Auto Rename Tag
  • Vscode 版本: 1.36.0

问题:

  • 在文件中输入以下的代码会卡住键盘不能输入,但是仍然能够使用方向键移动光标

    1
    <% if(get_config('toc') === true && (post.layout === 'page' || post.layout === 'post' )) {
  • 在输入第三个 “===” 会产生卡顿

  • 卡顿后仍然能够移动光标

  • 只有在安装过vim和auto rename tag 插件后才会有冲突

    Actually I’m really confused how it would work, Are my PC broken…
    说实话我真不知道这玩意的原理是什么,开始我怀疑我系统问题,后来找了几个朋友测试都这样。真实个奇葩的问题

重现bug
Steps to reproduce the behavior:
步骤

  1. 打开Vscodej

  2. 按Ctrl+Shift+P 打开command line

  3. 输入ext: disable all

  4. 选择

    Extensions: Disable All Installed Extensions

  5. 点击左侧插件

  6. 安装 vim 和 auto rename tag 插件 (两个都得启用)

  7. 创建新文件命名为 “test” (命名随便)

  8. 打开文件, 按i进入vim插入模式

  9. 输入以下的代码 *(! 注意不能忽视空格 ) *
    <% if(get_config('toc') === true && (post.layout === 'page' || post.layout === 'post' )) {

Expected behavior
当输入到第三个 “===” 的时候就会开始卡顿

  • 会明显感受到输入延迟, 有种打不动字的感觉
  • 当完成输入后, 按backspace退格也会产生相同的感觉
  • 卡顿时可能无法输入任何文字, 但能够使用方向键移动

Screenshots
bugs

运行环境

  • Running Extensions
    • Node Debug Auto-attach
    • Emmet
    • Git
    • Merge Conflict
    • Auto Rename Tag 0.1.0
    • Vim
  • Extension (VsCodeVim) version: 1.8.1
  • VSCode version: 1.36.0
  • OS: Windows 10 1903

提交原文

Describe the bug

  • System: Windows 10 1903
  • Vscode Plugins: VscodeVim, Auto Rename Tag
  • Vscode Version: 1.36.0

bug:

  • type the following code in a line will likely freeze your keyboard but you still can move caret with arrow key.

    1
    <% if(get_config('toc') === true && (post.layout === 'page' || post.layout === 'post' )) {
  • You will get stuttering when you type to the third “===”

  • You can still move your caret when you get stuttering

  • You can only produce the behavior when you installed both vim and auto rename tag extensions

    Actually I’m really confused how it would work, Are my PC broken…

To Reproduce
Steps to reproduce the behavior:

  1. Open Vscode

  2. Press Ctrl+Shift+P open command line

  3. Type ext: disable all

  4. Select

    Extensions: Disable All Installed Extensions

  5. Go to Extensions

  6. Install vim and auto rename tag (both should be enabled)

  7. Create a new file named “test”

  8. In the file, press i enter the vim insert mode

  9. Type the following code (! Can not ignore spaces)
    <% if(get_config('toc') === true && (post.layout === 'page' || post.layout === 'post' )) {

Expected behavior
When reach the third “===” stuttering would occur

  • you can continue type but it feel lag and stutter
  • when you finished and press backspace produce the same behavior
  • you may can’t type any word but you can still move your caret with arrow key

Screenshots
bugs

Environment

  • Running Extensions
    • Node Debug Auto-attach
    • Emmet
    • Git
    • Merge Conflict
    • Auto Rename Tag 0.1.0
    • Vim
  • Extension (VsCodeVim) version: 1.8.1
  • VSCode version: 1.36.0
  • OS: Windows 10 1903

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×