32 lines
996 B
XML
32 lines
996 B
XML
<snippet>
|
|
<content><![CDATA[
|
|
import argparse
|
|
import sys
|
|
|
|
def $1_argparse(args):
|
|
return $1()
|
|
|
|
def main(argv):
|
|
parser = argparse.ArgumentParser(description=__doc__)
|
|
subparsers = parser.add_subparsers()
|
|
|
|
p_$1 = subparsers.add_parser('$1')
|
|
p_$1.add_argument('required_positional')
|
|
p_$1.add_argument('optional_positional', nargs='?', default=None)
|
|
p_$1.add_argument('-k', '--kwarg', dest='kwarg', default=None)
|
|
p_$1.add_argument('-b', '--boolkwarg', dest='boolkwarg', action='store_true')
|
|
p_$1.set_defaults(func=$1_argparse)
|
|
|
|
args = parser.parse_args(argv)
|
|
return args.func(args)
|
|
|
|
if __name__ == '__main__':
|
|
raise SystemExit(main(sys.argv[1:]))
|
|
|
|
]]></content>
|
|
<tabTrigger>argparse_multi</tabTrigger>
|
|
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
|
|
<!-- <tabTrigger>hello</tabTrigger> -->
|
|
<!-- Optional: Set a scope to limit where the snippet will trigger -->
|
|
<!-- <scope>source.python</scope> -->
|
|
</snippet>
|