def _print_help(self):
options = self._print_usage('<STR_LIT>', file=sys.stdout)<EOL>if self.docstring:<EOL><INDENT>print()<EOL>try:<EOL><INDENT>doc_string = self.docstring.format(**self._variables)<EOL><DEDENT>except KeyError:<EOL><INDENT>doc_string = self.docstring<EOL><DEDENT>for doc in doc_string.split('<STR_LIT:\n>'):<EOL><INDENT>doc = doc.strip()<EOL>if len(doc) > <NUM_LIT:2>:<EOL><INDENT>print(textwrap.fill(textwrap.dedent(doc).strip(),<EOL>width=<NUM_LIT>, initial_indent='<STR_LIT:U+0020>',<EOL>subsequent_indent='<STR_LIT:U+0020>'))<EOL><DEDENT><DEDENT><DEDENT>print()<EOL>if options:<EOL><INDENT>print('<STR_LIT>')<EOL>width = max(len(k) for k in self._options)<EOL>for x, t in self._options.items():<EOL><INDENT>print(self._format_option(x, t, width))<EOL><DEDENT>if self._get_variable('<STR_LIT>'):<EOL><INDENT>print('<STR_LIT>'.format(self._version_options[<NUM_LIT:0>], width), end='<STR_LIT:U+0020>')<EOL>print('<STR_LIT>' + '<STR_LIT>'.join(self._version_options[<NUM_LIT:1>:]), '<STR_LIT>',<EOL>'<STR_LIT>' % self._get_variable('<STR_LIT>'))<EOL><DEDENT>print('<STR_LIT>'.format(self._help_options[<NUM_LIT:0>], width), end='<STR_LIT:U+0020>')<EOL>print('<STR_LIT>' + '<STR_LIT>'.join(self._help_options[<NUM_LIT:1>:]), '<STR_LIT>')<EOL>print()<EOL><DEDENT>
Help is automatically generated from the __doc__ of the subclass if present
and from the names of the args of run(). Therefore args names selection
is more important than ever here !