in reply to Re^2: using \x in regex
in thread using \x in regex

... Which it appears that it is (1b)

Yes, 1b is the escape key, which introduces an escape sequence.

Still, it's somewhat tricky to handle, because sequences may have different lengths (e.g. my function keys (F1-F12) produce 5-bytes). What you could do is put all possible escape sequences into some lookup hash. Then, when you encounter the escape char, reset $buf and switch into an "escape mode", which means that for every char received from ReadKey(), you'd try to lookup the current buffer content in the hash. Once you succeed, you've reached the end of the escape sequence, and you can switch back to "normal mode". To be able to handle possibly unforeseen sequences, you'll probably want to switch back from escape mode anyway as soon as you've reached a certain buffer length without a successful lookup. Or some such...  (I could post some code, in case I should have failed to make it clear...:)