我正在UNIX下用Python编写一个curses应用程序。我想让用户能够使用 CY 从 Emacs 的杀戮环中拉出。
当然,问题是 CY 被我的 shell 捕获,然后将 SIGTSTP 发送到我的进程。此外,CZ 还会导致 SIGTSTP 被发送,因此捕获信号意味着 CY 和 CZ 无法区分(尽管即使没有这个,我能想到的唯一解决方案也是非常骇人听闻的)。
我知道我要问的是可能的(如果不是在 Python 中,在 C 中),因为 Emacs 做到了。如何禁用 shell 对从键盘发送的某些控制字符的特殊处理,并使有问题的字符出现在进程的标准输入中?