运行`rails notes -a [“ anything”]时在CLI中看到的Rails Typos

问题描述

我正在使用最新版本

.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/railties-6.0.3.3/lib/rails.rb

如果您运行rails notes -a [" "],则会收到没有错别字的干净清单。但是,如果运行rails notes -a ["literally_any_single_letter"],则打印出的每一行都会丢失其描述的第一个字母。对我来说很奇怪。

我知道我可能没有正确使用“笔记”,但是我一直在努力学习,这就是我所观察到的。

解决方法

笔记匹配器的想法相对简单。它搜索以指定注释之一开头的任何注释。默认注释为TODOFIXMEOPTIMIZE,但是,您可以使用-a--annotations=tag1 tag2 ...指定所需的任何注释。如果指定了多个注释,为了清楚起见,它们会保留在输出中:

% rails notes -a TODO FOO
app/models/foo.rb:
  * [2] [TODO] Add stuff
  * [3] [TODO] even more missing stuff
  * [4] [FOO] this is foo

如果仅指定一个注释,它将“吃掉”注释以清理输出:

rails notes -a TODO
app/models/foo.rb:
  * [2] Add stuff
  * [3] colon is optional

因此,如果您定义一个单字母注释,您将a)获取以字母开头的每个注释,b)有助于“吃掉”输出中的字母。

% rails notes -a T
app/javascript/packs/application.js:
  * [  1] his file is automatically compiled by Webpack,along with any other files

app/models/foo.rb:
  * [  2] ODO: Add stuff
  * [  3] ODO colon is optional

由于您的示例包括将注释包装在方括号([])中,因此我应该注意,这样做可能会令您感到惊讶。使用notes命令可以在指定注释时至少以有限的方式使用正则表达式。在Ruby正则表达式中,[abc]的意思是“匹配a,b或c中的任何一个”。所以:

% rails notes -a [TD]ODO
app/models/foo.rb:
  * [2] [TODO] Add stuff
  * [3] [TODO] even more missing stuff
  * [4] [DODO] some dodo

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...