VScode 格式化程序,将左括号保持在同一行 (PHP)

VScode formatter, keep open bracket at same line (PHP)

我启用了 "editor.formatOnSave" 设置,但在 php 文件中,当代码为甲酸盐时,所有左括号都将换行。我只想让他们留在同一条线上 ex

function test{

}

不是

function test
{

}

我整天都在寻找解决方案,但我找不到任何东西

intelephence 中有默认的格式化程序,没有太多可供自定义的选项。您可以在 php 语言特定设置中禁用它:

~/.config/Code - OSS/User/settings.json:
----------
...
"[php]": {
    // "editor.defaultFormatter": "bmewburn.vscode-intelephense-client"
    "editor.defaultFormatter": "kokororin.vscode-phpfmt"
},
...

然后你可以使用其他支持自定义的格式化程序,例如phpfmt。这是我的设置:

"phpfmt.exclude": [
    "AllmanStyleBraces"
],
"phpfmt.smart_linebreak_after_curly": true,
"phpfmt.psr2": false,
"phpfmt.detect_indent": true

如果您希望 php 代码格式如下

function test {

}

然后使用具有以下设置的 intelephense

  "intelephense.format.braces": "k&r"

编辑

正如@Pinonirvana 在他的回答中所说,您现在可以通过 GUI 执行此操作。
您将在 du 用户设置下找到此信息:

快捷键 -> Ctrl+,

文件 > 首选项 > 设置

VScode 的新版本已经包含此功能。

您只需在 VScode 设置中搜索“intelephense”,然后查找名为“Braces”的设置。