allout-widgets

Homepage: https://www.gnu.org/software/emacs

Summary

Visually highlight allout outline structure

Commentary

This is an allout outline-mode add-on that highlights outline structure
with graphical widgets.

To activate, customize `allout-widgets-auto-activation'.  You can also
invoke allout-widgets-mode in a particular allout buffer.  When
auto-enabled, you can inhibit widget operation in particular allout
buffers by setting the variable `allout-widgets-mode-inhibit' non-nil in
that file's buffer.  Use Emacs *file local variables* to generally
inhibit for a file.

See the `allout-widgets-mode' docstring for more details.

Info about allout and allout-widgets development are available at
https://myriadicity.net/software-and-systems/craft/emacs-allout

The graphics include:

- icons for item bullets, varying to distinguish whether the item either
  lacks any subitems, the subitems are currently collapsed within the
  item, or the item is currently expanded.

- guide lines connecting item bullet-icons with those of their subitems.

- cue area between the bullet-icon and the start of the body headline,
  for item numbering, encryption indicator, and distinctive bullets.

The bullet-icon and guide line graphics provide keybindings and mouse
bindings for easy outline navigation and exposure control, extending
outline hot-spot navigation (see `allout-mode' docstring for details).

Developers note: Our use of Emacs widgets is unconventional.  We
decorate existing text rather than substituting for it, to
piggy-back on existing allout operation.  This employs the C-coded
efficiencies of widget-apply, widget-get, and widget-put, along
with the basic object-oriented organization of widget-create, to
systematically couple overlays, graphics, and other features with
allout-governed text.

Dependencies