Skip to content

Improve CLI interface #16

@jendrikseipp

Description

@jendrikseipp

The current CLI interface is

./loki
-D: required.
Usage: AStar search. [--help] [--version] --domain-filepath VAR [--problem-filepath VAR] [--out-domain-filepath VAR] [--out-problem-filepath VAR] [--strict] [--quiet] [--remove-typing]

Optional arguments:
  -h, --help                   shows help message and exits 
  -v, --version                prints version information and exits 
  -D, --domain-filepath        The path to the PDDL domain file. [required]
  -P, --problem-filepath       The path to the PDDL problem file. [nargs=0..1] [default: ""]
  -OD, --out-domain-filepath   The path to the output PDDL domain file. [nargs=0..1] [default: ""]
  -OP, --out-problem-filepath  The path to the output PDDL problem file. [nargs=0..1] [default: ""]
  -S, --strict                 Enable strict parsing mode. 
  -Q, --quiet                  Disable quiet mode. 
  -T, --remove-typing          Enable removal of typing.

I see the following possible improvements:

  • Replace "AStar search." with "loki".
  • Make DOMAIN a mandatory argument (without dashes). If possible, make PROBLEM a second positional argument, but make it optional, just like VAL does.
  • Remove "-filepath" suffixes.
  • Use lower-case argument abbreviations.
  • Document what strict mode and quiet mode do. Ideally, the behaviour is simple enough to be documented in the help output.
  • --quiet disables quiet mode?
  • I find it odd that -T removes typing. I'd remove "-T" and only keep the long form.
  • There should be a way to suppress writing any output (for pure linting purposes). I'd only write the domain/problem if --out-domain or --out-problem are given. Passing "-" prints to stdout.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions