I noticed that too, Howard.
Rex, here's the behavior I expect for the different variations of the function:
1. When invoked without the 'keymask' parameter, the list box should react to navigational keys, Enter, Escape as expected. Normal character key presses and backspace should go directly to the Search box, and filter the list as expected, regardless of current focus within the list box.
2. When invoked with 'keymask', the list box should react to navigational keys as usual. When the user clicks on the search box, it allows normal typing only while the focus is in the box. Leaving the box keeps the filter active, but re-applies the keymask filter. Any other key is ignored, unless it is listed in the 'keymask'. When the user presses any key or key combination listed in keymask, it will immediately terminate @SELECT, and return the current line that was selected (or empty if all lines were filtered, or no line was supplied in the first place), and _SELECT_KEY holding the key/combination pressed, similar in format to INKEY's return value in its provided variable. One last note which I would add is that @SELECT should react to Ctrl-C just like any other command in TCC would - it should immediately close it, and pass the break to the batch file, just as a fail-safe mechanism to protect the user from his mistakes.