IntelliJ/WebStorm "Smart" 换行缩进/制表符

IntelliJ/WebStorm "Smart" Indenting / Tab on newline

所以这似乎是一个微不足道的问题。 在声明对象并赋值时:

let object = {
    myValue: "some value" <--- Now typically here I would hit <comma> <enter>
}

发生什么用处:

let object = {
    myValue: "some value",
    anotherValue: "some other value"
}

现在发生的事情:

let object = {
    myValue: "some value",
        anotherValue: "some other value" <--- What is with this additional tabspace?
}

快把我逼疯了,解释起来又奇怪又具体,google没用!

每次声明对象属性时,我都必须 <shift> <tab> 这个额外的 space 或 <backspace>。严重地让我发疯,完全摧毁了我的小树林。这已包含在新的 WebStorm 更新 (2017.2) 中。

更改此设置的位置在哪里?我怎么称呼它?

我整理好了。 所以它非常特定于以下条件:

  1. 您正在编辑的文件在 indents / tabs
  2. 上有 x space 个
  3. 您的默认 indent / tab spacingy

Webstorm,假定您要应用:y 缩进/制表符 spaces 在按下制表键时,或在制表符/缩进元素上创建换行符。所以它应用 y 缩进 spaces。但它也识别出文件每个缩进有 x spaces。

结果是,当您在缩进元素上点击 Tab 键时,它会缩进 x space 秒,而当您在缩进元素上创建换行符时,它会缩进 [=13] =] spaces.

要更改此设置,您可以将 Webstorm 配置为按 x space 制表符,或者配置它的动态文件制表符/缩进 space 检测。

禁用缩进/制表符Space检测File > Settings > Code Style | Indents Detection

调整制表符/缩进间距 File > Settings > Code Style > {Language}