我想编写一个简单的C程序将执行基于两个“键按下”和“键向上”事件不同的动作。 这项计划将从内部运行的rxvt 。
我应该使用什么库或机制来访问这两个按键和释放? 这是真的读/dev/tty
将只提供关键的版本? 这也适用于的termcap,terminfo的,ncurses的,和俚语? 有没有办法从终端应用程序中实现这一目标?
我想编写一个简单的C程序将执行基于两个“键按下”和“键向上”事件不同的动作。 这项计划将从内部运行的rxvt 。
我应该使用什么库或机制来访问这两个按键和释放? 这是真的读/dev/tty
将只提供关键的版本? 这也适用于的termcap,terminfo的,ncurses的,和俚语? 有没有办法从终端应用程序中实现这一目标?
下面的链接可能会有一些帮助的使用键盘原始模式,这将给你访问键盘事件,而不仅仅是按键松开。
原始模式确实有,你必须做你自己的转换从扫描码字符虽然缺点。
这不会在一般情况下工作。 ANSI终端(所有的模拟器下降)代表键“按”唯一事件。 他们没有单独记录下/上事件。
如果你需要低级别的键盘事件访问,适当的环境确实是一个GUI程序。 即使是一个Web应用程序将不得不比终端的关键事件吸尘器访问。
我不认为会ncurses的工作。 链接Basilevs提供了有关“向上箭头”键和“向下箭头”键,而不是一个按键和释放的会谈。