有没有办法在Pry中自定义帮助系统?
我想要的是显示我custom commands的说明。现在,在REPL中输入help
时,将打印所有Pry帮助文档。
例如:
当前的帮助输出:
Help
help Show a list of commands or information about a specific command
Context
cd Move into a new context (object or scope).
find-method Recursively search for a method within a Class/Module or the current namespace.
ls Show the list of vars and methods in the current scope.
etc...
我想要删除Pry帮助列表:
Commands
my-custom-command description
my-custom-command2 description
etc...
答案 0 :(得分:2)
“编辑帮助”将在lib / pry /上的磁盘上编辑命令。这不是一个非常便携的解决方案! :) Pry有一个“命令集”的概念,一组命令。可以在Pry.commands中找到默认命令集。关于命令集的一个很酷的事情是你可以取消命令,或者添加新命令:)
CommandSet API不是很好。你不能说Pry.commands [“help”] = other_command。不过你可以这样说:
# Solution 1 (add a Pry::ClassCommand).
Pry.commands.delete "help"
Pry.commands.add_command MyHelpCommand
# Solution 2 (replaces Pry's help with a Pry::BlockCommand).
Pry.commands.command "help" do
output.puts "Helpin'"
end
这个API绝对可以使用一些工作。如果#[] =可以工作但是需要一些工作会很好 - 命令在创建时封装它们的名字。密钥需要重新分配为命令名称。如果你想尝试混合和匹配不同的pry命令,你一定要看看Pry :: CommandSet。
答案 1 :(得分:1)
你很幸运,因为它只是Ruby。
继续并输入edit help
,它将打开Pry类进行编辑。修改了!
当然,欢迎您分叉项目,进行更改,创建gem并使用您的自定义将其安装到您的系统上。