Mercurial > hg > MakeItSo
comparison makeitso/python_package/{{package}}/{{main}}.py @ 188:1bcf60bcc455
update to argparse
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Fri, 11 Apr 2014 18:50:40 -0700 |
parents | 74f41d53b057 |
children | 3cb66c9e5ce8 |
comparison
equal
deleted
inserted
replaced
187:74f41d53b057 | 188:1bcf60bcc455 |
---|---|
4 """ | 4 """ |
5 {{description}} | 5 {{description}} |
6 """ | 6 """ |
7 | 7 |
8 # imports | 8 # imports |
9 import optparse | 9 import argparse |
10 import os | 10 import os |
11 import subprocess | 11 import subprocess |
12 import sys | 12 import sys |
13 | 13 |
14 __all__ = ['main'] | 14 __all__ = ['main'] |
15 here = os.path.dirname(os.path.realpath(__file__)) | 15 here = os.path.dirname(os.path.realpath(__file__)) |
16 string = (str, unicode) | |
16 | 17 |
17 def add_options(parser): | 18 class PlainDescriptionFormatter(optparse.IndentedHelpFormatter): |
18 """add options to the OptionParser instance""" | 19 """description formatter for console script entry point""" |
20 def format_description(self, description): | |
21 if description: | |
22 return description.strip() + '\n' | |
23 else: | |
24 return '' | |
25 | |
26 | |
27 class Parser(argparse.ArgumentParser): | |
28 """CLI option parser""" | |
29 def __init__(self): | |
30 argparse.ArgumentParser.__init__(self, description=__doc__) | |
31 | |
19 | 32 |
20 def main(args=sys.argv[1:]): | 33 def main(args=sys.argv[1:]): |
34 """CLI""" | |
21 | 35 |
22 # parse command line options | 36 # parse command line options |
23 usage = '%prog [options] ...' | 37 parser = Parser() |
24 class PlainDescriptionFormatter(optparse.IndentedHelpFormatter): | 38 options = parser.parse_args(args) |
25 """description formatter for console script entry point""" | |
26 def format_description(self, description): | |
27 if description: | |
28 return description.strip() + '\n' | |
29 else: | |
30 return '' | |
31 parser = optparse.OptionParser(usage=usage, description=__doc__, formatter=PlainDescriptionFormatter()) | |
32 options, args = parser.parse_args(args) | |
33 | 39 |
34 if __name__ == '__main__': | 40 if __name__ == '__main__': |
35 main() | 41 main() |