Ruby on rails 运行'Rails notes-a[";anything";]时在CLI中看到的Rails打字错误`

Ruby on rails 运行'Rails notes-a[";anything";]时在CLI中看到的Rails打字错误`,ruby-on-rails,ruby,rubygems,command-line-interface,rbenv,Ruby On Rails,Ruby,Rubygems,Command Line Interface,Rbenv,我正在使用最新的版本 .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[“字面上的任何单个字母”]打印出来的每一行都缺少其描述的第一个字母。我觉得很奇怪 我知道我可能没有正确地使用“notes”,但我一直在努力学习,这就是我观察到的。notes matcher的思维相对

我正在使用最新的版本

.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[“字面上的任何单个字母”]
打印出来的每一行都缺少其描述的第一个字母。我觉得很奇怪


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

notes matcher的思维相对简单。它搜索以指定注释之一开头的任何注释。默认注释是
TODO
FIXME
OPTIMIZE
,但是,您可以使用
-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

非常感谢。我现在可以更清楚地了解这一点了