【发布时间】:2011-08-18 11:44:51
【问题描述】:
在 ncurses 原始模式下检测转义序列的最佳方法是什么。
我想到的是做 getch 然后将它添加到某种缓冲区中,然后当 文本匹配已知的转义序列执行适当的命令,否则忽略序列。
但是,在这个算法中,如果我遇到了系统不知道的转义序列,即使继续输入其他字符,它们也会被视为转义序列的一部分。 是否有任何关于转义序列的长度或结束转义序列的标准字符的规则
或者当用户停止输入字符时,有没有办法在 ncurses 中检测?像转义序列通常以字符序列的形式出现,但我无法检测到最后一个字符,因为我有一个阻塞 getch,它只会在输入系统中没有字符时阻塞
例如,如果我按下 page down 和 c 按钮,我有连续的流 转义序列字符 ^[[6~ 然后是字符 c。如果我没有预定义的一组已知转义序列,我如何在这两者之间检测到用户先按下了转义序列,然后是 c 字符
【问题讨论】: