Visual Studio代码:如何优先考虑一个格式提供程序而不是另一个格式提供程序

时间:2017-09-06 18:33:51

标签: php visual-studio-code

我正在编写PHP并使用一些非常有用的扩展:

在这种情况下,它们都是格式化提供程序,因此您可以在编辑器中右键单击并选择“格式化文档”,所有内容都将缩进且美观....您明白了。

这里的事情是由PHP Intelephense(我不喜欢)完成的格式化是保留的格式。

例如,如果我禁用Intelephense扩展,则格式化看起来不错。

让我告诉你两种格式之间的视觉差异:

Intelephense(坏):

    if ($condition) {
        doSomthing();
    }
    else {
        doAnotherThing();
    }

PHP格式化程序(好)[剔除其他]

    if ($condition) {
        doSomthing();
    } else {
        doAnotherThing();
    }

提前Zanks

2 个答案:

答案 0 :(得分:1)

没有通用的方法来选择其中一种。这留给扩展作者按照文档here

中的说明处理通过设置
  

当一种语言有多个格式化程序时会发生什么?这个   当不同的格式化程序的动作相互矛盾时,可能会出现问题。在里面   10月发布,我们添加了启用或禁用默认设置   随VS代码一起提供的格式化程序。最佳做法是扩展   作者添加一个类似于我们在VS Code中所做的设置,如图所示   下方。

"html.format.enable": true,
"javascript.format.enable": true,
"typescript.format.enable": true,
"json.format.enable": true

您可以在github issue中阅读有关他们如何实现这一目标的更多讨论。

那么这对你意味着什么?这意味着intelliphense扩展需要添加一个设置来禁用格式。您可以创建an issue并等待他们修复它或尝试制作PR以自行修复它。

答案 1 :(得分:1)

“ intelephense.format.enable”:否 这将完成您的工作。