docs: def option_parser():
      """
      :return: Option parsing object :: optparse.OptionParser
      """
      defaults = dict(template_paths=[], contexts=[], schema=None, output='-',
                      engine=None, list_engines=False, verbose=1)
  
      psr = argparse.ArgumentParser()
      psr.set_defaults(**defaults)
  
      psr.add_argument("template", type=str, nargs="?",
                       help="Template file path")
      psr.add_argument("-T", "--template-path", action="append",
                       dest="template_paths",
                       help="Template search path can be specified multiple "
                            "times. Note: Dir in which given template exists is "
                            "always included in the search paths (at the end of "
                            "the path list) regardless of this option. ")
      psr.add_argument("-C", "--context", action="append", dest="contexts",
                       help="Specify file path and optionally its filetype, to "
                            "provides context data to instantiate templates. "
                            " The option argument's format is "
                            " [type:]<file_name_or_path_or_glob_pattern>"
                            " ex. -C json:common.json -C ./specific.yaml -C "
                            "yaml:test.dat, -C yaml:/etc/foo.d/*.conf")
      psr.add_argument("-s", "--schema",
                       help="JSON schema file in any formats anyconfig "
                            "supports, to validate context files")
      psr.add_argument("-E", "--engine",
                       help="Specify template engine name such as 'jinja2'")
      psr.add_argument("-L", "--list-engines", action="store_true",
                       help="List supported template engines in your "
                            "environment")
      psr.add_argument("-o", "--output", help="Output filename [stdout]")
      psr.add_argument("-v", "--verbose", action="store_const", const=0,
                       help="Verbose mode")
      psr.add_argument("-q", "--quiet", action="store_const", const=2,
                       dest="verbose", help="Quiet mode")
      return psr