从Perl Critic中排除RequireRcsKeywords的正确方法是什么?

Sta*_*ish 7 perl perl-critic

我试图在单个Perl脚本中排除对Perl Critic的RequireRcsKeywords的检查.我不想在.perlcriticrc中更改我的默认策略,所以我在源代码的顶部添加了一个"no critic"行.尽管有这样的改变,Perl Critic仍然抱怨缺乏RCS关键词.

这是我的测试用例(critictest.pl):

#!/usr/bin/perl
## no critic (RequireRcsKeywords)
use warnings;
use strict;
print "Hello, World.\n";
Run Code Online (Sandbox Code Playgroud)

当我执行时,perlcritic -1 --verbose 8 critictest.pl我得到以下输出:

[Miscellanea::RequireRcsKeywords] RCS keywords $Id$ not found at line 1, column 1.  (Severity: 2)
[Miscellanea::RequireRcsKeywords] RCS keywords $Revision$, $HeadURL$, $Date$ not found at line 1, column 1.  (Severity: 2)
[Miscellanea::RequireRcsKeywords] RCS keywords $Revision$, $Source$, $Date$ not found at line 1, column 1.  (Severity: 2)
[Modules::RequireVersionVar] No package-scoped "$VERSION" variable found at line 1, column 1.  (Severity: 2)
[Miscellanea::ProhibitUselessNoCritic] Useless '## no critic' annotation at line 2, column 1.  (Severity: 2)
[InputOutput::RequireCheckedSyscalls] Return value of flagged function ignored - print at line 5, column 1.  (Severity: 1)
Run Code Online (Sandbox Code Playgroud)

我知道Perl Critic正在工作,因为如果我添加## no critic (RequireCheckedSyscalls)那么输出中的错误消失了.我也试过添加,`## no critic (Miscellanea::RequireRcsKeywords)但没有引起任何变化.告诉Perl Critic忽略我的文件中的RequireRcsKeywords策略而不必使用外部策略文件的正确方法是什么?

编辑:我使用的是Perl 5.10.1,Perl Critic 1.108和Debian 6.0.3.

mob*_*mob 5

您可以在命令行上.perlcriticrc使用--include和向文件添加一次性调整。--exclude

$ perlcritic --exclude RcsKeywords -1 --verbose 8 critictest.pl
[Modules::RequireVersionVar] No package-scoped "$VERSION" variable found at line 1, column 1.  (Severity: 2)
[InputOutput::RequireCheckedSyscalls] Return value of flagged function ignored - print at line 4, column 1.  (Severity: 1)
Run Code Online (Sandbox Code Playgroud)