问题标签 [rubocop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
11913 浏览

ruby - 如何将 rubocop 与 Rake 集成?

rubocop是 Ruby 的代码风格检查器。与 rubocop 类似的工具 Cane 可以与 Rake 集成。我更喜欢 rubocop 而不是 Cane,因为 rubocop 根据Ruby 样式指南进行检查,而且它似乎发现了更多问题。为了自动化样式检查过程,我想将 rubocop 与 Rake 集成,以便在缺乏代码质量时构建失败。

Gem 已经支持通过 Rake 向包添加测试。我想对样式检查做同样的事情,以便样式检查与测试一起运行。我怎样才能做到这一点?

如果从 Rakefile 开始有帮助的话,这里是一个:

0 投票
1 回答
7561 浏览

ruby-on-rails - html.erb 文件中的 Rubocop?

我很好奇是否有办法制作 Rubocop lint/stylecop html.erb 文件?我意识到 html 会使嵌入 Ruby 的样式变得困难。有没有人能让 Rubocop 做到这一点?如果没有,是否有用于此目的的等效工具?我使用了 rails_best_practices,但效果并不理想。

0 投票
4 回答
10655 浏览

ruby - Rubocop 错误“类定义太长 ruby​​”

我收到 rubocop 错误“类定义太长。[236/100]'。我的班级如下所示:

可能会出什么问题?rubocop docs ClassLength说“类的长度超过了某个最大值”。这是什么意思?

0 投票
1 回答
395 浏览

ruby - 如何防止rubocop在哈希后添加空格

Rubocop 更改#!/usr/bin/ruby

使用时在哈希后添加一个空格rubocop -a,如何避免这种情况

0 投票
2 回答
233 浏览

ruby-on-rails - Ruby Rubocop - 更喜欢使用 MatchData

我从另一个开发人员那里继承了一个 Ruby on Rails 项目(v 2.0),我试图通过在其上运行 rubocop 来清理它。对于那些不知道的人,rubocop 只是一个用于确保代码在整个项目中标准化和清洁的工具,它还能捕捉到一些格式错误和其他错误。下面的第 3 行(数据 = $1)显示了我受到攻击的函数:

Rubocop 在该行的消息指出:“更喜欢使用 MatchData 而不是 1 美元。”

我不确定如何有效地纠正这个偏好问题,因为我对 Ruby on Rails 及其语法和语义最熟悉。我所知道的是 $1 是一个全局变量。任何人都可以在这里指导我进行格式修复吗?我感谢任何人的高级帮助,如果这个问题真的很愚蠢,我深表歉意。

0 投票
2 回答
4920 浏览

ruby - Rubocop rule: Never use 'do' with multi-line 'while

I have the following code

it's not that important what's doing, although it should pretty obvious. The point is that Rubocop gives me a warning

Never use 'do' with multi-line 'while

Why should I not do that? How should I do it then?

0 投票
2 回答
995 浏览

ruby-on-rails - 如何将guard-rubocop 结果写入文件?

我已经实现了guard-rubocop gem。我尝试了没有防护的相同宝石。如果没有警卫,我可以将结果写入文件(rubocop -o/--out) rubocop without guard。但是有了 guard 我无法找到带有 guard 的选项 rubocop。任何人都可以教我如何将guard-rubocop 结果写入文件吗?

0 投票
2 回答
2023 浏览

ruby-on-rails - 使用 \ 而不是 + 或 << 来连接这些字符串

我正在使用 rubocop 基本上清理我凌乱的代码......

其中一个错误是:

使用 \ 而不是 + 或 << 来连接这些字符串。

为什么是这样?

我在Ruby 文档中找不到它。为什么我要使用\而不是+or <<

0 投票
5 回答
3336 浏览

ruby-on-rails - Rails - 在一项任务中进行 Rake 测试和 rubocop

我正在尝试设置我的 rails 项目,以便贡献者所需的所有验证都在一个命令中,目前我们一直在运行:

但是现在我们也想使用 rubocop 进行静态分析:

我希望这可以在一个简单的 rake 任务中执行。覆盖 'rake test' 来运行 rubocop 然后是 rails 项目的标准 rake 测试东西会很好,因为这样就没有人需要记住更改命令。但如果我必须创建一个单独的 rake 任务,那也可能没问题。

在底部看到了 rubocop rake 集成,但我不确定如何将它与“rake test”捆绑到一项任务中......有什么想法吗?

0 投票
2 回答
4825 浏览

ruby-on-rails - 将 shell 命令的输出逐行捕获到数组中

我想捕获 rubocop 攻击的总数,以确定我的代码库是变好还是变坏。我几乎没有 ruby​​ 脚本的经验。

到目前为止,这是我的脚本:

所以我./rails-app/script/code_coverage和我的终端显示

当我var.inspect得到一个长字符串时。我想rubocop ../ -f ...逐行读取输出(首选)或将每一行输出捕获到一个数组中。

我希望能够做这样的事情:

这可能吗?我想这类似于将输出写入文件然后逐行读取文件。