funpack.config
This module contains functions for parsing funpack command line
arguments and configuration files.
A funpack configuration file is simply a plain-text file which contains
command-line options, sans-hyphens.
- funpack.config.loadConfigFile(cfgfile, namespace=None)[source]
Loads arguments from the given configuration file, returning an
argparse.Namespaceobject.- Parameters:
cfgfile – Path to configuration file
namespace – Existing
argparse.Namespaceobject to merge arguments into.
- funpack.config.makeEpilog()[source]
Generates an epilog for the command line help.
The epilog contains an overview of available plugin functions.
- funpack.config.makeParser(include=None, exclude=None)[source]
Creates and returns an
argparse.ArgumentParserfor parsingfunpackcommand line arguments.- Parameters:
include – Configure the parser so it only includes the specified arguments.
exclude – Configure the parser so it excludes the specified arguments - this overrides
include.
- funpack.config.parseArgs(argv=None, namespace=None)[source]
Parses
funpackcommand line arguments.- Parameters:
argv – List of arguments to parse.
namespace – Existing
argparse.Namespace- if not provided, an empty one will be created.
- Returns:
A tuple containing:
an
argparse.Namespaceobject containing the parsed command-line arguments.A list of the original arguments that were parsed.
- funpack.config.parseArgsWithConfigFile(argv=None)[source]
Checks the command line arguments to see if one or more configuration files has been specified. If so, loads the arguments in the configuration file(s), and then parses the rest of the command line arguments.
- Returns:
see
parseArgs().
- funpack.config.sanitiseArgs(argv)[source]
Sanitises command-line arguments to work around a bug in
argparse.The
argparsemodule does not work with non-numeric optional argument values that begin with a hyphen, as it thinks that they are argument names (see https://bugs.python.org/issue9334).This function searches for relevant optional argument names, and prepends a space to their values to make sure that
argparsedoesn’t fall over.- Parameters:
argv – Command-line arguments
- Returns:
Sanitised command-line arguments