Re: Command Line Parsing

2018-01-26 Thread ChrisPiker via Digitalmars-d-learn
On Wednesday, 12 April 2017 at 10:58:07 UTC, Nicholas Wilson 
wrote:
On Wednesday, 12 April 2017 at 09:51:34 UTC, Russel Winder 
wrote:
Are Argon https://github.com/markuslaker/Argon or darg  
https://github. com/jasonwhite/darg getting traction as the 
default command line handling system for D or are they just 
peripheral and everyone just uses std.getopt 
https://dlang.org/phobos/std_getopt.html ?


there is also Vladimir Panteleev's  ae.funopt

https://blog.thecybershadow.net/2014/08/05/ae-utils-funopt/
https://github.com/CyberShadow/ae/blob/master/utils/funopt.d


Thanks for mentioning this, looks to be just what the doctor 
ordered.


Coming in from python I've been disappointed by getopt and 
frustrated by Argon.  This looks like it might fit the bill.  
Meta-names for option arguments ( ex: --index=FILE ) are an 
efficient way to communicate intent to users, nice to see them 
included.


Thanks,


Re: Command Line Parsing

2017-04-15 Thread Jon Degenhardt via Digitalmars-d-learn

On Wednesday, 12 April 2017 at 09:51:34 UTC, Russel Winder wrote:
Are Argon https://github.com/markuslaker/Argon or darg  
https://github. com/jasonwhite/darg getting traction as the 
default command line handling system for D or are they just 
peripheral and everyone just uses std.getopt 
https://dlang.org/phobos/std_getopt.html ?


I use std.getopt in my tools. Overall it's pretty good, and the 
reliability of a package in the standard library has value. That 
said, I've bumped up against it's limits, and looking at the 
code, it's not clear to how extend it to more advanced use cases. 
There may be a case for introducing a next generation package.


--Jon


Re: Command Line Parsing

2017-04-12 Thread Basile B. via Digitalmars-d-learn

On Wednesday, 12 April 2017 at 09:51:34 UTC, Russel Winder wrote:
Are Argon https://github.com/markuslaker/Argon or darg  
https://github. com/jasonwhite/darg getting traction as the 
default command line handling system for D or are they just 
peripheral and everyone just uses std.getopt 
https://dlang.org/phobos/std_getopt.html ?


std.getopt always, also since a few weeks i think that a better 
version could be done. The expected options are defined in a 
run-time parameters. This can definitively be some template 
parameters, which would allow complex static checks and more 
optimal code.


Now:

GetOptResult r = getopt(args, "o|option", , "p|param", 
);


The future:

GetOptResult r = getopt!("o|option", o, "p|param", 
param))(args);






Re: Command Line Parsing

2017-04-12 Thread Nicholas Wilson via Digitalmars-d-learn

On Wednesday, 12 April 2017 at 09:51:34 UTC, Russel Winder wrote:
Are Argon https://github.com/markuslaker/Argon or darg  
https://github. com/jasonwhite/darg getting traction as the 
default command line handling system for D or are they just 
peripheral and everyone just uses std.getopt 
https://dlang.org/phobos/std_getopt.html ?


there is also Vladimir Panteleev's  ae.funopt

https://blog.thecybershadow.net/2014/08/05/ae-utils-funopt/
https://github.com/CyberShadow/ae/blob/master/utils/funopt.d


Re: Command Line Parsing

2017-04-12 Thread rikki cattermole via Digitalmars-d-learn

On 12/04/2017 10:51 AM, Russel Winder via Digitalmars-d-learn wrote:

Are Argon https://github.com/markuslaker/Argon or darg  https://github.
com/jasonwhite/darg getting traction as the default command line
handling system for D or are they just peripheral and everyone just
uses std.getopt https://dlang.org/phobos/std_getopt.html ?


std.getopt is a little clunky, but it is what I would prefer most of the 
time.
They are basically just different ways to do the same exact thing. So 
most of the time it is simply a preference thing.


Command Line Parsing

2017-04-12 Thread Russel Winder via Digitalmars-d-learn
Are Argon https://github.com/markuslaker/Argon or darg  https://github.
com/jasonwhite/darg getting traction as the default command line
handling system for D or are they just peripheral and everyone just
uses std.getopt https://dlang.org/phobos/std_getopt.html ?


-- 
Russel.
=
Dr Russel Winder  t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Roadm: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

signature.asc
Description: This is a digitally signed message part