Skip to content

DWM-Terminal v0.2

Choose a tag to compare

@github-actions github-actions released this 19 Sep 18:34
· 4 commits to main since this release
5439df3

What's Changed in v0.2

Features & Protocol Improvements

  • DECSTBM Scrolling Margins: Added ANSI margin bounds (\e[top;bottomr), bounded linefeed, and CSI S / T sequence handlers to support modern fixed-footer TUI applications and status bars.
  • Two-Pass Row Rendering: Decoupled cell backgrounds and mouse selection highlights from glyph and overlay drawing in render_frame(), preventing adjacent backgrounds from clipping wide Nerd Font icons.
  • Multi-Click Mouse Selection: Double-click expands across word/token boundaries and triple-click selects the full row, with automatic PRIMARY and CLIPBOARD synchronization.
  • Modifier Keypress Isolation: Standalone modifier presses (Super, Shift, Ctrl, Alt) no longer clear active selections or reset scrollback before key combinations (such as Super+C) are completed.
  • ECMA-48 Private CSI Handling: Parser now recognizes private prefixes (?, >, <, =) and guards SGR dispatch, preventing sequences like \e[>4m (modifyOtherKeys) from triggering stray underlines.
  • Configurable Keybindings & Styling: Support for custom key combinations, configurable cursor shapes (block, bar, underline), blinking toggles, and asymmetric padding via ~/.config/dwmterm/config.

Testing & Verification

  • Test suite expanded to 39/39 passing unit & integration tests (make test).

Full Changelog: v0.1...v0.2