- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在使用 Ruby 和 Thor 构建一个 CLI,如果没有传递任何选项,我想在屏幕上打印命令用法。
下面伪代码行的内容:
Class Test < Thor
desc 'test', 'test'
options :run_command
def run_command
if options.empty?
# Print Usage
end
end
end
我目前正在使用以下 hack(我并不以此为荣!=P):
Class Test < Thor
desc 'test', 'test'
options :run_command
def run_command
if options.empty?
puts `my_test_command help run_command`
end
end
end
执行此操作的正确方法是什么?
最佳答案
您可以使用 command_help
显示命令的帮助信息:
require 'thor'
class Test < Thor
desc 'run_command --from=FROM', 'test usage help'
option :from
def run_command
unless options[:from]
Test.command_help(Thor::Base.shell.new, 'run_command')
return
end
puts "Called command from #{options[:from]}"
end
end
Test.start
然后不带任何选项运行:
$ ruby example.rb run_command
Usage:
example.rb run_command --from=FROM
Options:
[--from=FROM]
test usage help
并使用选项运行:
$ ruby example.rb run_command --from=somewhere
Called command from somewhere
关于ruby - 在 Ruby 的 Thor 上,如何显示应用程序中的命令用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46166799/
我已经创建了一个 .thor 脚本来按照我喜欢的方式设置一个新的 ruby 项目。我正在使用 Thor::Actions directory 命令完全从模板目录结构构建应用程序,而不是使用 her
我想访问 Thor::Actions ( http://textmate.rubyforge.org/thor/Thor/Actions.html) 中的一些很棒的辅助方法,但如果不使用 Thor C
我有一个基于 thor 的 Ruby 脚本,但我想将它作为 gem 部署在人们的 bin 目录中,人们无需执行 thor mytool 即可访问。 所以他们只会使用 mytool 这可能吗? 我知道使
有没有办法让雷神有两个互斥的选项?例如,我需要提供一个列表选项。我可能有一个选择 -l ent1 ent2 ent3 ent67 ,我可能有一个选项 -f我传递了一个包含内容的文件 ent1 ent2
我正计划制作我的第一个命令行工具,并且想知道命名和命令是如何工作的。 我希望我的工具的功能与 Git 类似,因为您只需安装它,然后只需输入 git clone 或 git commit 即可运行命令。
我必须使用这个命令来运行我的 ruby 程序: $ruby filename.rb NAME --from="People" --yell 我有这样的脚本: require 'thor' class
我正在使用 Thor 编写 CLI gem。现在我有两个子命令,我想用连字符连接它们的名称。但我不知道如何让它发挥作用。 这是主类 module CLI class Base Could not
当我运行 thor 任务时,是否可以先调用特定任务? 我的 Thorfile: class Db < Thor desc "show_Version", "some description ...
我正在使用 Thor 内置操作“copy_file”从我的模板源复制文件,覆盖现有文件。 我总是想覆盖,不想以交互方式确认这一点。 文档并未建议此操作的配置哈希中有强制选项,但 http://text
我想将一个值合并到一个 Thor option hash 中. 如果我只是使用合并,我会得到一个错误,HashWithIndifferentAccess 我已经阅读了文档,但我很难理解如何让它工作。我
我想使用 Thor 在 Ruby 中创建一个命令行工具。此工具应打包为 gem,以便轻松安装和卸载。 创建并发布 gem,我已经完成了。我还创建了几个同样有效的 Thor 脚本。但是,我不知道如何将它
是否可以创建一个接受命名空间的基于 Thor 的 Ruby 可执行文件?例如,允许从命令行执行以下操作:./thorfile greet:formal 鉴于我有以下 thorfile: #!/usr/
这是我的 Ruby 代码: require 'thor' require 'thor/group' module CLI class Greet :string, :description
我是 Thor(和 Ruby)的新手,我正在考虑在构建脚本中使用它,因为据说它可以替代 Rake(从而替代 Make)。然而,经过短暂的试用,我对它返回的错误状态感到困惑。我快速浏览了 wiki,但没
雷神维基页面,Making an Exectable , 向您展示了如何创建一个看起来像这样的 thor 支持的 CLI 命令: 庆典 ./mythorcommand foo 这需要您将 thor 任
我正在寻找一种在 thors 模板操作中将选项传递给 ERB 模板引擎的方法。 我偶然发现了像这样使用 thors 模板操作的 bundler cli 源代码: opts = {:name => na
my_gem 你好 name1 name2 name3 给我一个 my_gem hello requires at least 1 argument: my_gem hello name 我应该只解析
我正在使用 Thor 并尝试将 YAML 输出到文件。在 irb 中,我得到了我所期望的。 YAML 格式的纯文本。但是当 Thor 中的方法的一部分时,它的输出是不同的...... class Fo
是否可以使用 Thor Action 从文件中删除一行文本。例如我想删除 ruby 评论。到目前为止,我已经找到了 2 个操作:comment_lines - 注释行,以及 gsub_file 谢谢
我刚刚开始使用 Thor。我一直在查看文档,但找不到任何隐藏任务的代码示例。我想要的是这样的, desc "configure", "Do the configuration" def configu
我是一名优秀的程序员,十分优秀!