2

我有一个自定义 phpcs 规则集文件,其中包含几个规则集,并且还从某些目录(如测试或供应商)中排除了文件。

完整的 phpcs.xml 配置文件位于https://github.com/sudar/bulk-move/blob/master/phpcs.xml下面我提到了有趣的部分

<file>./</file>

<!-- Exclude test directories -->
<exclude-pattern>tests/*</exclude-pattern>

<!-- PHP Compatibility -->
<config name="testVersion" value="5.2-"/>
<rule ref="PHPCompatibility">
</rule>

现在,当我phpcs从项目的根目录运行命令时,它会从测试目录中排除文件并仅在其他文件上运行 phpcs。

在 PhpStorm 中,我在配置 phpcs 时选择了这个 phpcs.xml 文件作为自定义编码标准。但是当我从测试目录(排除)编辑文件时,PhpStorm 仍然使用自定义编码标准调用 phpcs 并显示警告。

所以我的问题是如何告诉 PhpStorm 排除 phpcs.xml 规则集文件中排除的文件?

4

2 回答 2

6

<exclude-pattern>目前不支持。

https://youtrack.jetbrains.com/issue/WI-22102 - 观看这张票(星号/投票/评论)以获取有关任何进展的通知。


现在您可以从 PHPCS 处理中排除文件.. 但必须在 IDE 中手动完成。

PHP CodeSniffer 集成(显示验证结果)是作为检查完成的.. 因此您可以在每个范围的基础上对其进行配置(启用/禁用) :

  • Settings/Preferences | Editor | Inspections
  • 定位 CodeSniffer 检查 ( PHP | PHP Code Sniffer validation)
  • 根据需要调整范围
    • 如果您已将tests文件夹标记为Tests Root“项目视图”面板(或Settings/Preferences | Directories.. 或者它可能是从 composer.json 文件中自动检测到的),那么此类文件夹已经是标准“测试”范围的一部分)
    • 如果没有 - 要么将其标记为这样......要么创建自定义范围Settings/Preferences | Appearance & Behavior | Scopes然后在那里使用它。

一些链接:

于 2017-12-19T10:35:24.943 回答
1

2020.2 将支持!请参阅上面的 Youtrack 链接。

于 2020-04-23T16:45:57.593 回答