plac icon indicating copy to clipboard operation
plac copied to clipboard

No abbreviation but double dashes

Open rezahousseini opened this issue 2 years ago • 2 comments

It seems not possible to define an optional argument with only double dashes:

@plac.annotations(
    debug=("Enable debug mode", "flag")
    using=("Use additional signals", "option", None, str)
)
def main(debug=False, using=None):
    pass

prints

-debug       Enable debug mode
-using None  Use additional signals

but instead I want

--debug       Enable debug mode
--using None  Use additional signals

Is this somehow possible with plac?

rezahousseini avatar Apr 01 '22 14:04 rezahousseini

the recommended way to use plac is:

import plac

@plac.flg('debug', "Enable debug mode", )
@plac.opt('using', "Use additional signals")
def main(debug=False, using=None):
    print (debug, using)

plac.call(main)

and that will print:

usage: test.py [-h] [-d] [-u None]

options:
  -h, --help            show this help message and exit
  -d, --debug           Enable debug mode
  -u None, --using None
                        Use additional signals

so you have both single dash short form and double dash long form options

ialbert avatar Apr 01 '22 15:04 ialbert

So there is no possibility to have options with only double dahses?

rezahousseini avatar Apr 04 '22 06:04 rezahousseini

I don't foresee adding that option.

ialbert avatar Sep 19 '23 14:09 ialbert