https://gitlab.synchro.net/main/sbbs/-/commit/9c924cc2abf225d820686b01
Modified Files:
src/doors/syncretro/main.c syncretro_binds.c
Log Message:
syncretro: stop the PAUSED badge bleeding red, and make the version legible
Three fixes to the pause/help screen, all of them visible in a screenshot.
THE BADGE BLED. A background attribute is STICKY, and the SGR that followed
the badge (A_FRAME) names only a foreground -- so the red stayed set, and the rule glyphs after the badge, up to and including the corner, were drawn on
it. Reset before returning to the frame color, and never leave a background live across a glyph. Verified on the wire: zero box glyphs are now emitted while a background attribute is set.
THE VERSION WAS DARK BLUE ON BLACK, which is to say it was not readable at
all. Light gray, with synchro.net in cyan.
THE KEY SEPARATOR WAS '|', WHICH IS A KEY. In a legend that says "press
this", a pipe between two key names reads as a third thing to press --
"W A S D | arrows" invites the question. It is now the charset's box-drawing vertical bar, which cannot be misread as something to type.
That last one is why the separator is not simply a character in the bind tables: it is one byte in CP437 and three in UTF-8, and the tables are shared by both. They carry a marker ('\1') instead, and the help renderer expands it to the client's glyph and counts it as one column, so the padding still lands.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net