使用 ctrl+arrow 在 VSCode 中的标点符号之间跳转?

Using ctrl+arrow to jump between punctuation in VSCode?

VSCode 有一个方便的键绑定,可以使用 ctrl+arrow 按标识符跳转。但是,我想稍微改变一下它的行为。

比如我的代码是这样的:(|代表光标)

|bar(foo.baz)

ctrl+右:

bar(|foo.baz)

我希望 VSCode 在我按 ctrl+arrow 时将括号和其他标点符号(例如 . )视为标识符,以便每个都有自己的“停止”。在我之前的示例中,我希望在重复按 ctrl+右键后发生这种情况:

|bar(foo.baz)
bar|(foo.baz)
bar(|foo.baz)
bar(foo|.baz)
bar(foo.|baz)
bar(foo.baz|)
bar(foo.baz)|

实际情况是这样的:

|bar(foo.baz)
bar(|foo.baz)
bar(foo.|baz)
bar(foo.baz)|

我发现 Stack Exchange 文本编辑器具有我想要的行为,因此您可以尝试自己使用 ctrl+箭头在答案框中导航一些代码,看看我的意思。

是否有设置或什至扩展可以做到这一点?我试过谷歌搜索,但这个问题很难用简短的查询来描述。

您可以使用扩展程序 Select By

定义以下键绑定:

  {
    "key": "ctrl+right",  // or any other key combo
    "when": "editorTextFocus",
    "command": "moveby.regex",
    "args": {
      "regex": "(\w+|.)",
      "properties": ["next", "end"]
    }
  }

如果您想要不同的行为,您可以调整正则表达式。

我找到了解决方案:

在键绑定中绑定到 cursorWordPartLeftcursorWordPartRight