+1 for more tools for working with CLIs but that's definitely outside of
the scope of the language itself. For more information, we have a document
on the development guidelines and team:
https://elixir-lang.org/development.html - Discussions about additional
tooling to the ecosystem are probably better suited to ElixirForum, because
a wider community will be able to jump in and participate.

On Sat, Apr 29, 2023 at 6:36 PM Zach Daniel <zachary.s.dan...@gmail.com>
wrote:

> You could consider using Spark :)
>
> https://github.com/ash-project/spark
>
> Its used for Ash Framework, as well as ChannelHandler:
> https://felt.com/blog/pheonix-channel-routing-patterns
>
> On Sat, Apr 29, 2023 at 12:00 PM Brandon Gillespie <bran...@cold.org>
> wrote:
>
>> I realize CLI tooling isn't elixir's focus, but what I'd give for a nice
>> argparser!
>>
>> Something in-code like python's argparser would be phenomenal, which
>> handles syntax and user experience for you. I think it wouldn't be hard,
>> with macros:
>>
>> ```
>>
>> defmodule MyParser do
>>    use ArgParser
>>
>>    parser do
>>      command("d?hcp") do
>>        command("l?ist|ls") do
>>          option("--all|-a", :boolean, store: true)
>>          option("--mon?itor|-m", :boolean, store: true)
>>        end
>>      end
>>
>>      command "g?enerate" do
>>        option("--f?orce|-f", :boolean, store: true)
>>        command("w?edge") do
>>           argument("slot", :integer, choices: [0, 1])
>>           option("--r?restart|-r", :boolean, store: true)
>>        end
>>      end
>>    end
>> ```
>>
>> Then just `MyParser.parse(args)`
>>
>> I hear erlang's "argparse" is coming into OTP, but I haven't looked at
>> it. I expect like most things erlang it's highly eldritch :D
>>
>> I'll add it to the end of my todo list, just after ∞ unfortunately. But
>> maybe I'll get to it.
>>
>> Sidebar to this:
>>
>> I know Elixir isn't focused on CLI, and there are few if any CLI things
>> out there, but I'd contend it's a chicken-and-egg thing. There aren't
>> CLI things out there because it's such a PITA to do it (having just
>> wrestled with escript and others trying to do this I can assure you this
>> is the case). I've seriously considered wrapping my elixir thing with a
>> python script, just to make it more user-friendly and manageable.
>> That's... well, it says something.
>>
>> -Brandon
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "elixir-lang-core" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to elixir-lang-core+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/elixir-lang-core/d969eddb-c7bf-8cf8-99ee-c4fa16a5f52e%40cold.org
>> .
>>
> --
> You received this message because you are subscribed to the Google Groups
> "elixir-lang-core" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to elixir-lang-core+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/elixir-lang-core/CAK-yb0CZzfsuxknkAz0SuvE_Lxh3V0ceEqssBkC2_hm9WbkwpQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/elixir-lang-core/CAK-yb0CZzfsuxknkAz0SuvE_Lxh3V0ceEqssBkC2_hm9WbkwpQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/CAGnRm4LvHXO5QXqDMC%2Bapzznyf9vHpzFt2wkTbGLm_uKqe5-pg%40mail.gmail.com.

Reply via email to