Variable: magit-section-visibility-indicators

magit-section-visibility-indicators is a customizable variable defined in magit-section.el.

Value

((magit-fringe-bitmap> . magit-fringe-bitmapv) ("..." . t))

Documentation

Whether and how to indicate that a section can be expanded/collapsed.

If nil, then don't show any indicators. Otherwise the value has to be a list with two elements. The first controls the indicators used in graphical frames, the second the indicators in terminal frames. For graphical frames all of the following forms are valid, while terminal frames do not have fringes and thus do not support the first form.

(EXPANDABLE-BITMAP . COLLAPSIBLE-BITMAP)

  Both values have to be variables whose values are fringe
  bitmaps. In this case every section that can be expanded or
  collapsed gets an indicator in the left fringe.

  To provide extra padding around the indicator, set
  left-fringe-width in magit-mode-hook.

(EXPANDABLE-CHAR . COLLAPSIBLE-CHAR)

  In this case every section that can be expanded or collapsed
  gets an indicator in the left margin.

(STRING . BOOLEAN)

  In this case STRING (usually an ellipsis) is shown at the end
  of the heading of every collapsed section. Expanded sections
  get no indicator. The cdr controls whether the appearance of
  these ellipsis take section highlighting into account. Doing
  so might potentially have an impact on performance, while not
  doing so is kinda ugly.

This variable was added, or its default value changed, in magit-section version 3.0.0.

Source Code

;; Defined in ~/.emacs.d/elpa/magit-section-20260330.1102/magit-section.el
(defcustom magit-section-visibility-indicators
  `((magit-fringe-bitmap> . magit-fringe-bitmapv)
    (,(if (char-displayable-p ?…) "…" "...") . t))
  "Whether and how to indicate that a section can be expanded/collapsed.

If nil, then don't show any indicators.  Otherwise the value has to
be a list with two elements.  The first controls the indicators used
in graphical frames, the second the indicators in terminal frames.
For graphical frames all of the following forms are valid, while
terminal frames do not have fringes and thus do not support the first
form.

\(EXPANDABLE-BITMAP . COLLAPSIBLE-BITMAP)

  Both values have to be variables whose values are fringe
  bitmaps.  In this case every section that can be expanded or
  collapsed gets an indicator in the left fringe.

  To provide extra padding around the indicator, set
  `left-fringe-width' in `magit-mode-hook'.

\(EXPANDABLE-CHAR . COLLAPSIBLE-CHAR)

  In this case every section that can be expanded or collapsed
  gets an indicator in the left margin.

\(STRING . BOOLEAN)

  In this case STRING (usually an ellipsis) is shown at the end
  of the heading of every collapsed section.  Expanded sections
  get no indicator.  The cdr controls whether the appearance of
  these ellipsis take section highlighting into account.  Doing
  so might potentially have an impact on performance, while not
  doing so is kinda ugly."
  :package-version '(magit-section . "3.0.0")
  :group 'magit-section
  :type '(choice
          (const :tag "No indicators" nil)
          (list (choice :tag "In graphical frames"
                 (cons  :tag "Use +- fringe indicators"
                        :format "%{%t%}%v\n"
                        (const :format " " magit-fringe-bitmap+)
                        (const :format " " magit-fringe-bitmap-))
                 (cons  :tag "Use >v fringe indicators"
                        :format "%{%t%}%v\n"
                        (const :format " " magit-fringe-bitmap>)
                        (const :format " " magit-fringe-bitmapv))
                 (cons  :tag "Use bold >v fringe indicators"
                        :format "%{%t%}%v\n"
                        (const :format " " magit-fringe-bitmap-bold>)
                        (const :format " " magit-fringe-bitmap-boldv))
                 (cons  :tag "Use custom fringe indicators"
                        (variable :tag "Expandable bitmap variable")
                        (variable :tag "Collapsible bitmap variable"))
                 (cons  :tag "Use margin indicators"
                        (character :tag "Expandable char" ?+)
                        (character :tag "Collapsible char" ?-))
                 (cons  :tag "Use ellipses at end of headings"
                        (string :tag "Ellipsis" "…")
                        (choice :tag "Use face kludge"
                                (const :tag "Yes (potentially slow)" t)
                                (const :tag "No (kinda ugly)" nil))))
                (choice :tag "In terminal frames"
                 (cons  :tag "Use margin indicators"
                        (character :tag "Expandable char" ?+)
                        (character :tag "Collapsible char" ?-))
                 (cons  :tag "Use ellipses at end of headings"
                        (string :tag "Ellipsis" "…")
                        (choice :tag "Use face kludge"
                                (const :tag "Yes (potentially slow)" t)
                                (const :tag "No (kinda ugly)" nil)))))))