khard.cli

Command line parsing and configuration logic for khard

Module Contents

khard.cli.logger
khard.cli.field_argument(orignal: str) → List[str]

Ensure the fields specified for ls -F are proper field names. Nested attribute names are not checked.

Parameters

orignal – the value from the command line

Returns

the orignal value split at “,” if the fields are spelled correctly

Throws

argparse.ArgumentTypeError

khard.cli.create_parsers() → Tuple[argparse.ArgumentParser, argparse.ArgumentParser]

Create two argument parsers.

The first parser is manly used to find the config file which can than be used to set some default values on the second parser. The second parser can parse the remainder of the command line with the subcommand and all further options and arguments.

Returns

the two parsers for the first and the second parsing pass

Return type

(argparse.ArgumentParser, argparse.ArgumentParser)

khard.cli.parse_args(argv: List[str]) → Tuple[argparse.Namespace, Config]

Parse the command line arguments and return the namespace that was creates by argparse.ArgumentParser.parse_args().

Parameters

argv – the command line arguments

Returns

the namespace parsed from the command line

khard.cli.merge_args_into_config(args: argparse.Namespace, config: Config) → Config

Merge the parsed arguments from argparse into the config object.

Parameters
  • args – the parsed command line arguments

  • config – the parsed config file

Returns

the merged config object

khard.cli.init(argv: List[str]) → Tuple[argparse.Namespace, Config]

Initialize khard by parsing the command line and reading the config file

Parameters

argv – the command line arguments

Returns

the parsed command line and the fully initialized config