Version 1.0.0 of package Indent-Bars has just been released in GNU ELPA.
You can now find it in M-x list-packages RET.

Indent-Bars describes itself as:

  ===============================
  Highlight indentation with bars
  ===============================

More at https://elpa.gnu.org/packages/indent-bars.html

## Summary:

  indent-bars highlights indentation with configurable vertical
  graphical bars, using stipples.  The color and appearance (weight,
  pattern, position within the character, zigzag, etc.) are all
  configurable.  Options include depth-varying colors and
  highlighting the indentation depth of the current line.  Bars span
  blank lines, by default.  indent-bars works in any mode using fixed
  tab or space-based indentation.  In the terminal (or on request) it
  uses vertical bar characters instead of stipple patterns.  Optional
  treesitter support is also available; see indent-bars-ts.el.

  For Developers:

  To efficiently accommodate simultaneous alternative bar styling, we
  do two things:

## Recent NEWS:

                       ━━━━━━━━━━━━━━━━━━━━━━━━━
                        INDENT-BARS - CHANGELOG
                       ━━━━━━━━━━━━━━━━━━━━━━━━━


1 DEVELOPMENT
═════════════

  • Implement /bar-skipping/ in multiply-nested list contexts (with
    `indent-bars-no-descend-lists' set to `skip').
  • Breaking change: `indent-bars-no-descend-lists' can no longer be set
    to a list of list opening characters.  If you need this
    functionality, set the local variable
    `indent-bars-ppss-syntax-table'.
  • Work correctly with `whitespace-mode' and other modes which change
    the character display tables to prevent display spaces on blank
    lines from showing.
  • New mode support:
    ⁃ `yaml-pro-ts-mode'
    ⁃ `r-ts-mode'
    ⁃ `ess-mode'
    ⁃ modes which derive from `typescript-ts-base-mode' (like
      `typescript-tsx-mode')


2 v0.9.2 (2025-07-19)
═════════════════════

  • Support `haml-mode'.
  • Fix bug with variable width detection in terminal.


3 v0.9.1 (2025-06-30)
═════════════════════

  • Guard against invalid font `space-width'.


4 v0.9 (2025-06-29)
═══════════════════

  • Add compatibility for variable pitch fonts, per window.


5 v0.8.5 (2025-06-24)
═════════════════════

  • Allow `indent-bars' to work in modes where `font-lock' keywords are
    not set (e.g. fundamental/text).
  • Additional support for java, scala and rust TS modes, as well as TCL
    mode.


6 v0.8.4 (2025-05-08)
═════════════════════

  • `BUGFIX' avoid `args-out-of-range' errors in TS modes.


7 v0.8.3 (2025-04-09)
═════════════════════

  • Improve bar highlight logic when using
    `indent-bars-starting-column=0' (see #100).
  • Perform depth calculation current depth for highlight just in time
    (see #101).


8 v0.8.2 (2024-11-07)
═════════════════════

  • Support `makefile-mode'.
  • `BUGFIX' Prevent infloop and correctly display all appropriate bars
    when `indent-tabs-mode=t' and `tab-width' is small (see #86).
  • `BUGFIX' When blank line display is enabled, prevent the `display'
    property on blank newlines from temporarily leaking into newly
    inserted text (e.g. certain re-indentation modes, #82).


9 v0.8.1 (2024-10-19)
═════════════════════

  • Guard against unspecified `default' (backup) face
    foreground/background colors, as on TTY with `tty-color-mode=no'.
  • Improve compatibility with other packages that directly call
    `font-lock-flush'.
  • Ensure `indent-bars--ts-mode' is disabled when toggling off
    `indent-bars-treesit-support' in a buffer.


10 v0.8 (2024-10-09)
════════════════════

  • New configuration setting `indent-bars-display-on-blank-lines=least'
    which specifies using the /minimum/ bar depth of adjacent non-blank
    lines for blank line bar display (by default, when enabled, the
    /maximum/ is used).
  • `BUGFIX' Guard against custom-set errors when tree-sitter is
    enabled, but no scope stanza is present for the buffer's language.
  • Make `indent-bars-no-descend-lists=nil' by default (to avoid
    confusion in brace and paren languages).
  • Allow `indent-bars-no-descend-string=all' to inhibit /all/ bars
    inside multi-line strings.
  • `BUGFIX' Use correct offset guess when derived from
    `python-base-mode'.
  • Be more careful when replacing/restoring
    `font-lock-fontify-region-function'.
  • Ensure `indent-bars--ts-mode' is fully disabled when `indent-bars'
    is disabled.


11 v0.7.6 (2024-09-28)
══════════════════════

  • Improve speed of disabling indent-bars.
  • `BUGFIX' Eliminated introduced bug leading to args-out-of-range
    error.
  • `BUGFIX' Correctly enable font-lock inhibit.


12 v0.7.5 (2024-09-26)
══════════════════════

  • Allow configuring `indent-bars-no-descend-lists' with a list of
    list-open chars to consider (e.g. in c-modes, where {})
  • Protect against frame unavailability in daemon server mode.
  • Handle empty stipple `:pattern' strings.
  • Cancel current depth timer on tear-down.
  • `BUGFIX' Ensure `indent-bars--ts-mode' is fully removed when
    indent-bars is disabled.
  • `BUGFIX' Fix issue where bar faces would be unspecified on new
    frames after resetting or customizing.


13 v0.7.4 (2024-09-18)
══════════════════════

  • Include NEWS and badge for ELPA


14 *v0.7.3* (2024-09-17)
════════════════════════

  • Released on ELPA


15 *v0.7.1* (2024-09-14)
════════════════════════

  • Added ADA, GPR, and `typescript-ts' support.
  • Avoid issues when mixing TS and non-TS modes.
  • Ensure colors work with themes that do not specify background or
    foreground of specified bar faces.


16 *v0.7* (2024-07-24)
══════════════════════

  • New optimized jit-lock approach for treesit scope.
  …  …

Reply via email to