code: def get_description_with_cmd_summary(
      grp_short_descriptions, interface_groups, parser_description
  ):
      from .interface import (
          dedent_docstring,
      )
      from datalad.interface.base import get_cmd_summaries
  
      lgr.debug("Generating detailed description for the parser")
  
      console_width = get_console_width()
      cmd_summary = get_cmd_summaries(
          grp_short_descriptions, interface_groups, width=console_width
      )
      # we need one last formal section to not have the trailed be
      # confused with the last command group
      cmd_summary.append("\n*General information*\n")
      detailed_description = "{}{}\n{}\n".format(
          parser_description,
          "\n".join(cmd_summary),
          textwrap.fill(
              dedent_docstring(
                  """\
      Detailed usage information for individual commands is
      available via command-specific --help, i.e.:
      datalad <command> --help"""
              ),
              console_width - 5,
              initial_indent="",
              subsequent_indent="",
          ),
      )
      return detailed_description
  
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 4 for calling a global function with example usage: get_description_with_cmd_summary(grp_short_descriptions, interface_groups, parser_description) and returns: detailed_description