【问题标题】:PhpStorm Coding Style: align anonymous functionPhpStorm 编码风格:对齐匿名函数
【发布时间】:2019-01-14 21:05:49
【问题描述】:

我目前正在尝试使用 PEAR 编码标准,但无法让匿名函数在函数调用中正确对齐。这是一个例子:

标准推荐的内容:

test(
    function () {
        return "";
    }
);

这是默认的。

但是,只要我有多个参数,PhpStorm 就会取消缩进函数内容和右大括号:

test(
    "test", function () {
return "";
}
);

但标准推荐的内容如下:

test(
    "test", function () {
        return "";
    }
);

注意: 当启用“函数声明参数”>“多行对齐”时,如果我将每个参数放在自己的行上,我就有正确的对齐方式:

test(
    "test", 
    function () {
        return "";
    }
);

如果不必将每个参数放在自己的行上,我无法找到一种方法来实现这一点,如果可能/如何做到这一点,有人会吗?

注意 2:我使用已经在 PhpStorm 中开箱即用的“预定义样式”加载 PEAR 编码样式,并且只进行了少量调整。

注意 3:我正在使用 PHPCS 来检查我的代码。以下是我使用 PhpStorm 格式的代码时遇到的错误:

4 |错误 | [x] 行缩进不正确;预计至少 8 个空格,找到 4 个(PEAR.WhiteSpace.ScopeIndent.Incorrect)

5 |错误 | [x] 行缩进不正确;预期 4 个空格,发现 0 (PEAR.WhiteSpace.ScopeIndent.IncorrectExact)

5 |错误 | [x] 多行函数调用没有正确缩进;预期 4 个空格,但找到 0 个 | | (PEAR.Functions.FunctionCallSignature.Indent)

5 |错误 | [x] 右大括号缩进不正确;预期 4 个空格,找到 0 个 (PEAR.WhiteSpace.ScopeClosingBrace.Indent)

第 4 行是 return ""; 所在的行。

【问题讨论】:

  • 你能链接你所指的编码标准吗?我查看了pear.php.net/manual/en/standards.php,找不到关于匿名函数的部分。
  • 说实话,我还没有仔细阅读标准。我正在使用 PHPCS 检查我是否遵循 PEAR 标准。 (因此这篇文章更多的是关于能够缩进关于function 关键字开头的匿名函数。)我更新了这篇文章以包含我从 PHPCS 得到的错误。

标签: php phpstorm


【解决方案1】:

很遗憾,没有针对这种情况进行调整的设置。它看起来像一个类似于https://youtrack.jetbrains.com/issue/WI-32914https://youtrack.jetbrains.com/issue/WI-25700https://youtrack.jetbrains.com/issue/WI-35221 的错误。随时在您的示例中添加评论,例如https://youtrack.jetbrains.com/issue/WI-32914 或提交您自己的错误报告

【讨论】:

  • 感谢您向我展示这些。第一个链接中的anonymous function structures 正是这种情况。这些帖子是几年前发布的,我猜他们手头有更紧急的事情。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 2018-03-20
  • 2017-08-20
相关资源
最近更新 更多