【问题标题】:Guidance for how to add nicely formatted output to a custom rails generator关于如何将格式良好的输出添加到自定义 Rails 生成器的指南
【发布时间】:2012-05-01 20:48:34
【问题描述】:

就像标题所说的 - 我想将我的自定义输出添加到 rails 生成器 - 就像你看到的 identical - xxxforce - xxx

我想为我的自定义生成器添加特殊的、格式良好的警告 - 只是我没有看到任何指导,除了使用 puts

例如,我想看看:

 Warining: Missing Related Data File

警告一词将用红色书写。与您在典型的 Rails 生成器命令中看到的非常相似...

【问题讨论】:

  • 你能更具体地说明你想要什么样的格式吗?

标签: ruby-on-rails generator


【解决方案1】:

Rails 的生成器基于 Thor。当您提出Thor::Error 时,输出将自动变为红色。例如:

raise Error, "Warning: Missing related data file"

这会将整个消息染成红色(并抑制回溯以使输出更清晰)。

此外,您可以在生成器中使用任何 Thor 的 actions 和几个,例如sayyes?,支持第二个 color 参数,允许您执行例如:

say_status "OK", "Blue is my favorite color", :blue

可用颜色为shown here

最后,您可以直接调用set_color 对格式进行细粒度控制,例如:

say set_color( "STOP ",    :red ) +
    set_color( "CAUTION ", :yellow ) +
    set_color( "GO!",      :green, true )

(如果第三个参数为真,则输出为粗体。)

我希望这会有所帮助——但请负责任地使用它!

【讨论】:

  • 谢谢 - 这行得通。我开始使用colorize(这很棒,可以做我想做的事)但这似乎更“原生”......
猜你喜欢
  • 2010-11-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-25
  • 1970-01-01
  • 1970-01-01
  • 2014-03-03
  • 2013-06-11
相关资源
最近更新 更多