From 8e0a84c90175cc2fedff0272abda073ee270b876 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Tue, 22 Dec 2015 17:02:54 +1300 Subject: scripts: print usage in argparse-using scripts when a command-line error occurs For scripts that use Python's standard argparse module to parse command-line arguments, create a subclass which will show the usage the usage information when a command-line parsing error occurs. The most common case would be when the script is run with no arguments; at least then the user immediately gets to see what arguments they might need to pass instead of just an error message. (From OE-Core rev: d62fe7c9bc2df6a4464440a3cae0539074bf99aa) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- scripts/recipetool | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'scripts/recipetool') diff --git a/scripts/recipetool b/scripts/recipetool index 791a66aaca..1198cc25d7 100755 --- a/scripts/recipetool +++ b/scripts/recipetool @@ -27,6 +27,7 @@ scripts_path = os.path.dirname(os.path.realpath(__file__)) lib_path = scripts_path + '/lib' sys.path = sys.path + [lib_path] import scriptutils +import argparse_oe logger = scriptutils.logger_create('recipetool') plugins = [] @@ -45,9 +46,9 @@ def main(): logger.error("This script can only be run after initialising the build environment (e.g. by using oe-init-build-env)") sys.exit(1) - parser = argparse.ArgumentParser(description="OpenEmbedded recipe tool", - add_help=False, - epilog="Use %(prog)s --help to get help on a specific command") + parser = argparse_oe.ArgumentParser(description="OpenEmbedded recipe tool", + add_help=False, + epilog="Use %(prog)s --help to get help on a specific command") parser.add_argument('-d', '--debug', help='Enable debug output', action='store_true') parser.add_argument('-q', '--quiet', help='Print only errors', action='store_true') parser.add_argument('--color', choices=['auto', 'always', 'never'], default='auto', help='Colorize output (where %(metavar)s is %(choices)s)', metavar='COLOR') -- cgit v1.2.3-54-g00ecf