自定义phpcs规则集不尊重排除模式声明

问题描述 投票:1回答:1

我有一个自定义的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命令时,它从tests目录中排除了文件,并仅在其他文件上运行phpcs。

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

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

php phpstorm phpcs
1个回答
4
投票

<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创建自定义范围然后在那里使用它。

一些链接:

© www.soinside.com 2019 - 2024. All rights reserved.