问题标签 [lintr]

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 投票
1 回答
854 浏览

r - Specify linters in lintr::lint

I cannot figure out how to turn off specific linters using lintr. The documentation offers an example (for vim/syntastic, which is what I'm using), which is not very clear:

Apparently all this does is change a default. Do I need to list all the linters I want to use here? Is there a way to exclude just a couple?

I assume there's something like

but I can't find the right syntax.

Apparently g:syntastic_r_lintr_linters is supposed to be a list of linters. But it's not clear what syntax is supposed to work.

If we forget about the vim syntax and head right to the R package lintr (which vim/syntastic calls) and the linters argument of lint then this works:

lint(file.R, linters=assignment_linter)

This doesn't (no error, but doesn't catch mistakes in code):

lint(file.R, linters=list(assignment_linter, single_quotes_linter))

Nor does this (errors out):

lint(file.R, linters=list('assignment_linter', 'single_quotes_linter'))

But this does:

lint('file.R',linters=list('assignment_linter'=assignment_linter,'single_quotes_linter'=single_quotes_linter))

So maybe it's supposed to be a named list?

0 投票
1 回答
416 浏览

r - Atom linter-lintr 找不到 lintr

我正在使用 Atom 编写 R 代码,并尝试使用 lintr,但 linter-lintr 找不到它。R 在我的身上$PATHlintr安装在 R 中。

每当我键入时,都会发生以下错误。

我已经尝试卸载并重新安装 linter、linter-lintr、linter-minimap 和相关的 R 包。此设置在另一台计算机上运行良好。

0 投票
1 回答
466 浏览

r - lintr 对全局变量“.SD”没有可见的绑定

lintrdata.table使用 ,等函数时抛出错误.SD.SDcols例如:

我怎样才能解决这个问题?

0 投票
2 回答
201 浏览

r - 如何将 lintr 输出导出到文件?

我正在用 R 编写一些脚本,我们的标准是使用 lintr 来标准化代码。请建议我如何将 lint 函数的输出导出到 txt 文件中。提前致谢!

0 投票
0 回答
216 浏览

r - Emacs 对 R 程序进行快速检查

我想flycheck在用 R 编写程序时发现基本的编码问题。

带有一个.emacs包含

我可以M-x R得到 ESS 控制台。在那个控制台中,我运行了install.packages("lintr")因为flycheck使用lintrR 文件。

但是如果我现在跑步M-x flycheck-verify-setup,我会得到

R.exe正式可用c:/Program Files/R/R-3.4.3/bin,或者至少 ESS 可以找到它就好了。

如何初始化 Emacs 以使用 lintr 运行 flycheck?我用其他几种语言运行 flycheck,没有问题。

0 投票
1 回答
1599 浏览

r - 如何使用 Visual Studio Code 启用 lintr

正如标题所说...

我已经为 VSC 安装了 R 扩展。每次我.R在 VSC 中保存文件时,都会弹出一个说lintr未安装的弹出窗口(它肯定是;我一直在使用它)。如果单击安装按钮,终端会确认lintr已下载并安装,但在编辑和保存后.R再次出现相同的弹出窗口。

即使安装后 lintr 也会失败

我已经多次lintr从 VSC、RStudio 和 R重新安装,并且在这样做之后我已经重新启动了 VSC 和我的计算机。cmd我唯一能想到的另一件事是我需要用我的用户设置来改变一些东西。我r.lintr.executable明确设置,即使文档说它将默认为r.term.windows(在我的情况下)。

如果有人对如何使这项工作有想法,我将不胜感激。谢谢你。

0 投票
0 回答
43 浏览

r - 从 Lintr 生成 SQALE 评级(用于 R 语言)

是否可以从 lintr 结果中生成 SQALE 评级(或 sonarqube 语言中的可维护性评级),或者是否有任何其他工具可以为 R 语言执行此操作?

0 投票
2 回答
345 浏览

r - Lintr - 有没有办法抑制大写的数据框列名警告?

我一直在写一个 R 包并用lintr它来整理它的风格。

我经常看到的一个问题是我的data.frame列是从 CSV 命名的,并且是大写的,例如MyVariableName. 这不在我的控制范围内,输出的数据需要遵循相同的样式。因此,我不想在导入时重命名它们,因为在从输入数据中跟踪代码时会导致混淆。

我正在使用tidyverse和 NSE。我也倾向于在代码中使用大量准引用的东西(我正在从引用的构建块构建分析,即定义包含以下内容的列表:

我尝试使用.data$它们来确定它们的范围,但仍然收到警告:

我发现对于dplyr选择命令,您可以将列名引用为字符串 - 这样可以解决一些警告。

有没有办法抑制有关数据框列名的警告?

0 投票
1 回答
1122 浏览

r - 为什么 lintr 会说“警告:全局变量 'Cloaked' 没有可见绑定”?

我敢肯定这是对我的误解,因为我不是真正的 R 程序员......

我在这里有我的代码:https ://gist.github.com/bnsh/3839c4eb2c6b31e32c39ec312014b2b8

它有效......但是,lintr 抱怨:“cloak_class.R:19:8: 警告:全局变量 'Cloaked' 没有可见绑定”

实际上,这与课程无关,真的,因为这也抱怨:

这段代码也可以运行,但是 lintr 说:cloak_function.R:13:3: warning: no visible global function definition for 'cloaked'</p>

为什么?没有做一些像/这样的钝器,我能做些什么来满足 lintr # nolint start# nolint end

谢谢!

0 投票
2 回答
218 浏览

r - 如何使用 lintr::lint() 获得非零退出状态以使构建失败

我试图通过lintr在编写 R 代码时使用包来帮助我们的开发人员组获得类似的代码样式。为了自动化这一步,如果代码中有任何错误(错误的样式),我希望我们的构建失败。如果这很重要,我们将使用 Jenkins 作为我们的构建管道。

我知道我们可以使用该expect_lint_free功能,但我们不制作包,只制作脚本文件。该lint函数的输出看起来不错,但即使 linter 返回改进建议,构建也会通过。如何获得非零退出状态,这将使 Jenkins 构建失败?

(简化的)代码在命令行上运行

没有返回错误,但有很多建议。

注意:我目前对“创建 R 包”解决方案不感兴趣。