首先:raku (perl6) 非常棒。克罗也是如此。只花了一个周末就坠入爱河。然而现在我偶然发现了一些非常简单的事情。
如果我在多重调度 MAIN 中使用 slurpy 参数,则会被识别并完美运行:
multi MAIN( 'config', 'add', *@hostnames ) {
但是,如果我将其设为非 slurpy 数组,则该数组要么无法识别,要么我不知道如何从命令行提供它:
multi MAIN( 'config', 'add', @hostnames ) {
我希望这些调用之一能够起作用:
$ cli.raku config add www.example.com example.com
$ cli.raku config add www.example.com,example.com
$ cli.raku config add www.example.com, example.com
类似的构造用于Cro CLI https://github.com/croservices/cro/blob/master/lib/Cro/Tools/CLI.pm6但是没有示例如何使用数组调用命令之一docs https://github.com/croservices/cro/blob/master/docs/cro-tool.md.
我还尝试使用数组作为命名参数:
my %*SUB-MAIN-OPTS = :named-anywhere;
multi MAIN( 'config', 'add', :@hostnames) {
鉴于中的例子乐文档 https://docs.raku.org/language/create-cli#%25*SUB-MAIN-OPTS我希望这能起作用:
$ cli.raku config add --hostnames=www.example.com example.com
但它没有,也没有用逗号或空格逗号分隔的变体。在所有情况下我都会获取使用信息。