Rubocop Linelength:如何忽略带注释的行?
使用Rails 4应用程序时,我想要Rubocop在检查一行是否很长时忽略包含注释的行(只是一个注释或一些带行尾注释的代码)。 有没有办法做到这一点?
有一种方法可以在每行的基础上忽略警察。
还有一种方法可以通过configuration文件来完成。
运行rubocop --auto-gen-config
,它会生成一个文件,可以用来禁用这个rubocop --auto-gen-config
。
该命令还提供了如何加载这些选项的提示。
在每行的基础上,您也可以启用和禁用警察。
# rubocop:disable RuleByName This is a long line # rubocop:enable RuleByName
您也可以在代码中一次执行多个规则。
# rubocop:disable BlockComments, AsciiComments
通过使用内联指令,该指令只对该行有效,它看起来像这样:
# Thanks to @jnt30 for the comment! method(argument) # rubocop:disable SomeRule, SomeOtherRule
您可以在官方手册中阅读更多关于RuboCop的内容。
要find所有规则名称,在rubocopconfiguration文件中查找它的值得
cyberwiz说 – “当我需要规则名称而不是查看文档时运行rubocop -D
。”
可以定义正则expression式来自动忽略rubocop.yml
某些行,因此您可以select忽略以#
开头的所有行:
Metrics/LineLength: Max: 80 IgnoredPatterns: ['\A#']
这可以改进,以便“缩进”的注释行(即空格后跟一个#
字符)也被忽略,如果这是你想要的。
请注意,这不包含以评论结尾的代码行,但是:
some_code(that_does_something) # This line would NOT be ignored by Rubocop.
我认为这里的基本思想是你要强制行长,不pipen字符后面是什么。 默认为80个字符是一些旧的terminal窗口,只能容纳这个字符数的货物邪教。 我在代码中看到的唯一选项是允许可能超出字符数限制的URL。
你可以忽略整个文件 ,我想这不是你要找的。