如何拦截特殊(alt / ctrl)按键?

时间:2009-01-02 14:34:45

标签: python curses

如何捕捉 ALT + K CTRL + ALT + H等关键组合在python curses

1 个答案:

答案 0 :(得分:11)

终端将控制键与字母键组合转换为普通ASCII码。这可以从getch()函数中读取,就像任何其他按键一样。

CTRL-A: getch() returns 1
CTRL-B: getch() returns 2
...
CTRL-Z: getch() returns 26

此外,必须调用keypad()函数才能启用其他特殊功能键(例如左箭头,F1,主页等)。

我不相信有一种通过终端接收元密钥(例如ALT-H)的便携方式。有些发送转义(0x1B)后跟修改后的密钥,而其他发送高位,只发送一个字节。