vscode:从多个游标中转义时,将光标保持在*最后一个*实例上(cmd-d)

vscode: Keep the cursor on the *last* instance when escaping from multiple cursors (cmd-d)

我经常在 VSCode (cmd-d/ctrl-d) 中使用多个光标。

要退出多光标模式并进入正常的单光标模式,您可以使用esc

但是,这会将光标移回第一个 选定的单词。 我希望光标停留在 最后 个选定的单词。

有快捷方式/设置吗?

示例:

L01   foobar = 42
...
L99   foobar = 99

当我从 L01 开始,ctrl-d 在 foobar 上,再次 ctrl-d 我在 L01 和 L99 上有多个光标。在 esc 之后,我将在 L01 上返回单个光标。我想在 L99 上使用单光标。

注意: 对我的情况没有帮助(它不适用于多个游标)

使用扩展名 Select By v1.3.1 和命令 moveby.calculation 您可以计算光标的新位置。通过使用 VSC 的折叠功能,您只剩下 1 个光标。

定义这个键绑定

  {
    "key": "ctrl+i escape",
    "when": "editorTextFocus",
    "command": "moveby.calculation",
    "args": {
      "lineNrEx": "selections[selections.length-1].start.line",
      "charNrEx": "selections[selections.length-1].start.character"
    }
  }