Files
EchoHub/docs/changelog/v0.2.13.md
T

3.4 KiB

v0.2.13

A visual overhaul of the chat client: messages now line up in a WeeChat-style column layout with a timestamp gutter, right-aligned nicks, and a vertical rail; every user gets a stable nickname color; day boundaries and unread positions are marked with horizontal rules; the status bar gains an irssi-style activity segment and an animated connecting spinner; and an ASCII-art welcome banner greets you before you join a channel. Modern polish, old IRC soul.

New Features

  • Aligned message layout (WeeChat-style) — every message renders as HH:mm nickname │ text: a dim timestamp, the nick right-aligned in a fixed 12-column gutter, and a dim rail separating names from content. Word-wrapped continuation lines, multi-line messages, attachments, ASCII-art image previews, and link embeds all align under the text column and extend the rail, so conversations read as a clean two-column grid. Over-long nicks are truncated with in the gutter only — profiles, mentions, and the users panel always use the full name. System and status lines (joined, is now Away, …) show -- in the nick column, replacing the old ** prefix.
  • Deterministic nickname colors — users who haven't picked a /color now get an automatic, stable color derived from their nick (12-entry palette chosen to stay readable on dark and light backgrounds). The same user is the same color in message headers and the online-users panel, on every client, every session. An explicitly chosen nickname color still takes priority.
  • Date separator rules — a full-width ── Wed, Jul 16 2026 ───── rule is inserted whenever the calendar day changes (live, in loaded history, and when scrolling back through older messages). Timestamps are now a compact HH:mm — the date lives in the rules instead of being repeated on every line.
  • "New messages" marker — the first message that arrives in a channel you're not viewing gets an orange ── new messages ── rule above it (irssi-style). Switch to the channel and the marker shows exactly where you left off; it survives the history reload on channel switch and is consumed when you move away again.
  • Status bar activity segment — channels with unread messages appear in the status bar as │ Act: #dev,#random (up to 4, +n overflow). Channels where you were @mentioned show in orange, others in cyan.
  • Connecting spinner — transitional connection states (Connecting, Reconnecting, Authenticating…) now animate a braille spinner in the status bar instead of sitting on static text.
  • Mention-aware channel list — a channel where you were @mentioned turns orange in the channel list (name and unread badge), escalating above the cyan plain-unread highlight. The highlight clears when you view the channel.
  • Welcome banner — with no channel selected (fresh start, or after disconnecting) the chat pane shows a gold-gradient ASCII "ECHOHUB" logo with the version and key hints, instead of an empty box. Narrow panes get a compact variant.
  • Rounded frame borders — the channels, chat, input, and users panels draw with rounded corners.

Bug Fixes

  • The @mention highlight no longer drops off the second and later lines of a long mention message — wrapped continuation lines now inherit the highlight.
  • The unread-position marker is re-anchored after a channel switch reloads history, instead of being wiped by the reload before you could see it.