https://gitlab.synchro.net/main/sbbs/-/commit/8d732cb540b7879d7c976f0e
Modified Files:
docs/v322_new.md exec/load/select_item.js shell_lib.js exec/text_sec.js uselect.js xtrn_sec.js
Log Message:
Find in the select_item.js lists: search by name with boolean terms
A caller of select_item() that passes the new 'search' option (a
function returning the text of an item) gets a Find command (issue
#1345):
- '/' or 'F' prompts, on the prompt's line, for a boolean search
expression (see bool_search()), using the SearchStringPrompt text and
defaulting to the previous search; '?' displays the textsrch help menu
and a syntax error is reported with InvalidSearchExpression, each
followed by the prompt again.
- 'N' and 'P' repeat the search forward and backward, once there has
been one.
- Each moves the selected item to the next (or previous) match, wrapping
around and changing page as needed; FindStringNotFound is displayed
when nothing matches.
The keys are named above the prompt: "/=Find" and, after a search,
"/=Find, Next, Prev", following the "more" indicator or, when the list
isn't paged, on the prompt's leading blank line. Those are gettext()
strings (keys find_hint and find_next_hint) displayed as mnemonics, the
command keys in the normal attribute and the rest in dark gray. A key
that is one of the caller's own command keys is left out.
Find is not offered in a list without a selected item (no_default), for
a menu file displayed in place of a list, or when bool_search() isn't available.
What is searched:
- area selection lists (shell_lib.js): description, name and, for
sub-boards and directories, internal code
- uselect.js: the item name
- text_sec.js: section name; file description and filename
- xtrn_sec.js: section or program name and internal code
Co-Authored-By: Claude Fable 5.2 <
noreply@anthropic.com>
---
■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net