From 5f2f642956248ac9732218f1679d0bbd231a717d Mon Sep 17 00:00:00 2001 From: nickb <nickb@ssec.wisc.edu> Date: Fri, 12 Feb 2021 19:27:40 +0000 Subject: [PATCH] make our help text return the name of the script that was actually called --- gridded_glm/bin/cspp-geo-gglm-make-grids.sh | 1 + gridded_glm/bin/cspp-geo-gglm.sh | 1 + gridded_glm/libexec/_make_glm_grids.py | 4 +++- gridded_glm/libexec/_minute_gridder.py | 10 +++++++--- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/gridded_glm/bin/cspp-geo-gglm-make-grids.sh b/gridded_glm/bin/cspp-geo-gglm-make-grids.sh index f0e5362..afbff79 100755 --- a/gridded_glm/bin/cspp-geo-gglm-make-grids.sh +++ b/gridded_glm/bin/cspp-geo-gglm-make-grids.sh @@ -29,4 +29,5 @@ fi source $CSPP_GEO_GGLM_HOME/libexec/env.sh # Call the python module to do the processing, passing all arguments +export PROG_NAME="${BASH_SOURCE[0]}" python3 $CSPP_GEO_GGLM_HOME/libexec/_make_glm_grids.py "$@" diff --git a/gridded_glm/bin/cspp-geo-gglm.sh b/gridded_glm/bin/cspp-geo-gglm.sh index f554eec..1dee9dc 100755 --- a/gridded_glm/bin/cspp-geo-gglm.sh +++ b/gridded_glm/bin/cspp-geo-gglm.sh @@ -29,4 +29,5 @@ fi source $CSPP_GEO_GGLM_HOME/libexec/env.sh # Call the python module to do the processing, passing all arguments +export PROG_NAME="${BASH_SOURCE[0]}" python3 $CSPP_GEO_GGLM_HOME/libexec/_minute_gridder.py "$@" diff --git a/gridded_glm/libexec/_make_glm_grids.py b/gridded_glm/libexec/_make_glm_grids.py index 1dac45b..b31dc87 100644 --- a/gridded_glm/libexec/_make_glm_grids.py +++ b/gridded_glm/libexec/_make_glm_grids.py @@ -2,6 +2,7 @@ # This example was provided by GLMTools # https://github.com/deeplycloudy/glmtools/blob/master/examples/grid/make_GLM_grids.py import argparse +import sys parse_desc = """Grid GLM flash data. The start and end times can be specified independently, or if not provided they will be inferred from the filenames. @@ -24,7 +25,8 @@ structure by specifying a path like so: -o {start_time:%%Y/%%b/%%d}/{dataset_name}""" def create_parser(): - parser = argparse.ArgumentParser(description=parse_desc) + prog = os.getenv('PROG_NAME', sys.argv[0]) + parser = argparse.ArgumentParser(prog=prog, description=parse_desc) parser.add_argument(dest='filenames',metavar='filename', nargs='*') parser.add_argument('-o', '--output_path', metavar='filename template including path', diff --git a/gridded_glm/libexec/_minute_gridder.py b/gridded_glm/libexec/_minute_gridder.py index 3e63eee..e54301a 100644 --- a/gridded_glm/libexec/_minute_gridder.py +++ b/gridded_glm/libexec/_minute_gridder.py @@ -3,8 +3,9 @@ parse_desc = """Create one minute NetCDF4 grids (and, optionally, AWIPS-compatible tiles) from GLM flash data. -Example usage:\n - cspp-geo-gglm.sh \\ +Example usage: + + %(prog)s \\ --goes-sector conus \\ --create-tiles \\ -vv \\ @@ -37,7 +38,10 @@ log = logging.getLogger(__name__) def create_parser(): import argparse - parser = argparse.ArgumentParser(description=parse_desc, formatter_class=argparse.RawTextHelpFormatter) # RawTextHelpFormatter preserves our newlines in the example usage message + prog = os.getenv('PROG_NAME', sys.argv[0]) + parser = argparse.ArgumentParser(prog=prog, + description=parse_desc, + formatter_class=argparse.RawTextHelpFormatter) # RawTextHelpFormatter preserves our newlines in the example usage message parser.add_argument('-v', '--verbose', dest='verbosity', action="count", default=0, help="each occurrence increases verbosity 1 level through ERROR-WARNING-INFO-DEBUG\n" "(default: ERROR)") -- GitLab