code: def __call__(self, parser, namespace, values, option_string=None):
      # Lets use the manpage on mature systems but only for subcommands --
      # --help should behave similar to how git does it:
      # regular --help for "git" but man pages for specific commands.
      # It is important since we do discover all subcommands from entry
      # points at run time and thus any static manpage would like be out of
      # date
      interactive = is_interactive()
      if (
          interactive
          and option_string == "--help"
          and " " in parser.prog
      ):  # subcommand
          self._try_manpage(parser)
      if option_string == "-h":
          helpstr = self._get_short_help(parser)
      else:
          helpstr = self._get_long_help(parser)
  
      # normalize capitalization to what we "always" had
      helpstr = f"Usage:{helpstr[6:]}"
  
      if interactive and option_string == "--help":
          import pydoc
  
          pydoc.pager(helpstr)
      else:
          print(helpstr)
      sys.exit(0)
  
imports: import argparse
  import os
  import re
  import sys
  import gzip
  import textwrap
  from textwrap import wrap
  from datalad import __version__
  from datalad.support.exceptions import CapturedException
  from datalad.ui.utils import get_console_width
  from datalad.utils import is_interactive
  from platformdirs import AppDirs
  from logging import getLogger
label_desc: Use image node_id 1 for calling the HelpAction obj's underlying member method code with example usage: obj.__call__(parser, namespace, values, option_string) without return types