首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VS代码PHP自动格式化/美化与Stroustrup风格大括号(K&R变体)和括号中的空格?

VS代码PHP自动格式化/美化与Stroustrup风格大括号(K&R变体)和括号中的空格?
EN

Stack Overflow用户
提问于 2020-06-10 09:47:53
回答 1查看 2K关注 0票数 5

帮我堆积如山,你是我唯一的希望。

我想用以下规则将VS代码中的自动格式化应用于PHP文件:

  • Stroustrup型支撑(K&R变体)
  • 条件前的空格
  • 空间后函数
  • 括号中的空格

截图中的例子。

我不想应用PSR-1或PSR-2或PSR-12或CakePHP或WordPress标准.

我一直在努力:

  • VS代码内部PHP格式化程序
  • phpfmt (最近一次更新是在2018年,并在GitHub上存档)
  • PHP (据我所知,这与格式化没有什么关系)

phpfmt是最近的,但超级车。

与“代码设置”相比,我使用:

  • Files.autoSave:"onFocusChange",
  • "editor.formatOnSave":没错,

因此,我想立即美化我的PHP文件,请。

谢谢你的任何想法!

EN

回答 1

Stack Overflow用户

发布于 2022-06-16 20:08:56

我终于坐下来想出了实现这一目标的方法。这是从Ubuntu的角度来看的,但我认为它也可以在其他平台上工作。

我测试了一堆linter/fixer扩展,直到我在上才取得真正的进展。

安装phpcs/phpcbf版本以及扩展可以使用的规则集涉及到一些问题,所以我将其打包到一个码头集装箱中(当然,所有这些都可以在本地完成,当然也可以通过composer完成)。

我还没有找到能够在OP中强制执行两个空格规则的规则(条件前的空格和函数后的空格),但是还有很多定制的可能,包括编写自己的嗅探(老实说,我看起来并不难)。但是上面链接的项目中的默认规则集/标准允许额外的空白,所以这是我感觉到的一半。

对于其他规则,以下是所需的显式部分,但请查看相关资源:12,并在创建自定义规则集时启用"phpsab.snifferShowSources": true"phpsab.debug": true

  • Stroustrup型支撑(K&R变体)
代码语言:javascript
复制
<rule ref="Generic.Functions.OpeningFunctionBraceKernighanRitchie">
</rule>
<rule ref="Drupal.ControlStructures.ControlSignature.SpaceAfterCloseParenthesis">
</rule>
  • 括号中的空格
代码语言:javascript
复制
<rule ref="PSR2.ControlStructures.ControlStructureSpacing">
  <properties>
    <property name="requiredSpacesAfterOpen" value="1" />
    <property name="requiredSpacesBeforeClose" value="1" />
  </properties>
</rule>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62300584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档