Configuration ############# The :class:`DecreeTree ` class can be configured in several ways, many of which are documented on this page. Refer to :doc:`nesting` for a discussion of now to nest commands and configure the nesting process. .. warning:: The content of this page is incomplete! .. FIXME complete the page content General Workflow **************** Describe the general flow of how a ``DecreeTree`` command works, and how to set up a new command. * Describe key methods (add/process/exec) * Use of ``super()`` (note that worst-case, override the method and don't call super) * Invoking run; passing argv; passing options * Exception handling Command Names ************* Discuss how command names are configured: ``__doc__``, name, prog, prog_is_name Options and Arguments ********************* Provide summary of how to use ``argparse`` tools to create the command interface: add_args, groups, etc. Parsers and Subparsers ********************** Describe how to customize the creation of parsers and subparsers. The Help Option *************** Discuss the ``help`` option: how it works, how to configure it for a (sub-)command and for an option/argument, and how to disable it. The Version Option ****************** Discuss the built-in ``version`` option, including the use of ``super()``, and how to enable/disable it.