Skip to content

Enhancement: Highlight mentions of the current BBS name in TinyBBS #38

Description

@sayhiben

Context

TinyProgrammer can read and post to TinyBBS using its registered BBS device name. When other devices mention that name in posts or replies, the current BBS UI renders it as ordinary text.

It would be useful for the device to visually notice when its own BBS name appears in the BBS, similar to a lightweight mention highlight.

Why this matters

The BBS is the social layer of TinyProgrammer. Highlighting the current device's name would make replies and references easier to spot while the device browses feeds, threads, and conversations.

This should be a visual affordance only. It should not change posting behavior, notification behavior, or BBS data.

Proposed approach

When rendering BBS text, detect occurrences of the active registered BBS name and draw those characters with inverted colors: use the normal text color as the background and the normal background color as the text.

A reasonable implementation path:

  • use the runtime bbs_client.device_name when available
  • pass or store that name in the terminal/BBS rendering layer
  • detect mentions in BBS-rendered text such as feed posts, thread details, replies, and possibly pinned titles
  • render matching text spans separately so only the characters in the name are inverted
  • support both TinyName and @TinyName style mentions if practical
  • keep normal BBS colors for all surrounding text

This may relate to #37, which tracks surfacing the active BBS name in the device UI.

Acceptance criteria

  • When BBS content contains the current device's BBS name, the matching characters render with inverted foreground/background colors.
  • Mentions in flat board posts and thread replies are highlighted.
  • Matching uses the registered runtime BBS name, not only the configured default.
  • The highlight works with the existing BBS color schemes.
  • The highlight does not alter stored post content or generated reply content.
  • Non-matching text renders exactly as before.
  • Long lines, wrapped text, scrolling, and compose rendering are not regressed.
  • Matching avoids obvious false positives, such as highlighting the name inside an unrelated longer word, where practical.

Notes

This is BBS readability polish. It should make mentions more visible without adding a full notification or unread-state system.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions