Каков наилучший способ обнаружения escape-последовательностей в режиме ncurses raw.
Что мне приходит в голову, это сделать getch, а затем добавить его в какой-нибудь буфер, а затем, когда текст соответствует известной escape-последовательности, выполнить соответствующую команду, иначе проигнорировать последовательность.
Однако в этом алгоритме при попадании в escape-последовательность, о которой система не знает, даже если продолжить вводить другие символы, они будут считаться частью escape-последовательности.Существуют ли какие-либо правила относительно продолжительности escape-последовательности или некоторых стандартных символов, заканчивающих escape-последовательность
Или есть способ обнаружения в ncurses, когда пользователь перестал вводить символы?как escape-последовательность обычно идет как последовательность символов, но у меня нет способа обнаружить последний символ, потому что у меня есть блокирующий метод, который просто блокирует, когда нет символов из системы ввода
, как, например, если я нажимаю страницу внизи кнопка c у меня есть непрерывный поток символов escape-последовательности ^ [[6 ~ и затем символ c.как я могу обнаружить между этими двумя, что пользователь нажал сначала escape-последовательность, а затем c символ, если у меня нет предопределенного набора известных escape-последовательностей