https://gitlab.synchro.net/main/sbbs/-/commit/5570309165c07a55a622f27f
Modified Files:
exec/uselect.js
Log Message:
uselect: page lists longer than the screen, add arrow-key navigation
The uselect module printed every item in one pass, so a list longer than
the terminal scrolled off the top (and tripped the screen pause). Now it
shows only as many items as fit between the header and the prompt, with a
dark gray "[first-last of total]" indicator on the prompt's blank line, configurable via the new modopts more_fmt option.
Up/Down move the default item (scrolling the page as needed), PgUp/PgDn
move by a page, and Home/End jump to the first/last item. A number may
still be typed to select any item, on-screen or not.
Number entry is now handled by a local getnum() mirroring
sbbs_t::getnum(): Ctrl-C quits, a leading zero is rejected, and
type-ahead suppresses auto-submit. Item names are padded to a common
width, and hotspots are cleared before each redraw.
Co-Authored-By: Claude Opus 5.5 <
noreply@anthropic.com>
---
■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net