Visual Studio 代码 - 使用制表键缩进单行

Visual Studio Code - Indent single line with tabulator-key

我想知道是否可以在不删除标记文本的情况下使用 tab 键缩进一行。

在 GIF 的第一部分,您可以看到 Visual Studio 代码,在第二部分,您可以看到 Atom。 Atom 显示了所需的行为。

到目前为止,可以在 VS Code 中以这种方式缩进多行,它也适用于 backtab,但不适用于 tab 和单行。

这是错误还是正常现象??

我的设置:
Visual Studio 代码:版本 1.25.1 (MacOS 10.13.6 High Sierra)
Visual Studio 代码:版本 1.25.1(Ubuntu 18.04 LTS)

根据我的理解,这是预期的行为。要缩进一行,您需要:

  • 将光标放在行首,然后按 Tab
  • select 整行 (Mac: Command+i, Windows/Linux: Ctrl+i) 然后是 tab
  • 使用缩进行命令,可以用 selected 字样完成,如 GIF 中所示(Mac:Command+],Windows/Linux: Ctrl+])

尽管如此,可能 an extension 可以为您提供所需的行为。

You could use this default keybinding:

{
  "key": "ctrl+]",
  "command": "editor.action.indentLines",
  "when": "editorTextFocus && !editorReadonly"
}

选择单行或多行。如果你想绑定到 tab 你可以将它修改为:

{
  "key": "tab",
  "command": "editor.action.indentLines",
  "when": "editorHasSelection && editorTextFocus && !editorReadonly"
}

我添加了 editorHasSelection 子句,因此它仅在 在您的行上选择了某些内容时才起作用,但是您将失去正常的简单 选项卡 行为(您不喜欢)。

只是在这里添加另一种口味:

如果您希望 tab 像 shift-tab 一样工作(您不必突出显示任何内容),并且如果您使用 tab 作为接受自动完成建议的键,请使用此设置:

{
  "key": "tab",
  "command": "editor.action.indentLines",
  "when": "!suggestWidgetVisible && editorTextFocus && !editorReadonly"
}