I would suggest starting by reading this page in the docs :
https://docs.raku.org/language/create-cli

Covers how $*USAGE is created and the various options you have for
providing help data.

On Tue, 5 May 2020, 06:46 ToddAndMargo via perl6-users, <
perl6-us...@perl.org> wrote:

> Hi All,
>
> Just to prove I read the stinker:
> https://docs.raku.org/routine/MAIN
>
> I am trying to get the following to do
>
> #!/usr/bin/env perl6
> sub MAIN(:$these ="These", :$are="Are") { say "$these $are"; }
>
> This is working:
>
> $ MainTest.pl6 --are=our --these=those
> those our
>
>
> These two are not:
>
> 1) I am trying to get MAIN to give me an error I can
>     call my help sub if a stray entry is placed in
>     the run line
>
> $ MainTest.pl6 --are=our --these=those --saywhat=abc
> Usage:
>    MainTest.pl6 [--these=<Any>] [--are=<Any>]
>
> Here it find `--saywhat=abc` and MAIN writes out the above
> usage statement.
>
>     A) I want to write it out myself.  I would like the
>        string too, but don't have to have it.
>
>     B) I would like the stray entry.
>
>
> 2) Here I want to pick up the remainder (abc) at the end,
>     but can't figure out the syntax in the sub declaration.
>
>     Something like:
>           dnf --excluderepo=acb* install raku
>
> $ MainTest.pl6 --are=our --these=those abc
> Usage:
>    MainTest.pl6 [--these=<Any>] [--are=<Any>]
>
> Instead of MAIN writing out usage.
>
> Many thanks,
> -T
>

Reply via email to