如何从 ncurses getch() 中 return Ctrl+M?

How to return Ctrl+M from ncurses getch()?

我正在使用 ncurses 编写应用程序并尝试从键盘获取 CTRL-M 按键。每当我按 CTRL-M(又名 \r)时,Ncurses 都会返回 CTRL-J(又名 \n),所以我怀疑它在某处进行 CRLF 翻译。我的程序在 raw() 模式下是 运行,所以我认为它不应该进行任何翻译。这是 ncurses 问题还是来自上游某个地方,比如终端驱动程序?

如何让它在没有翻译的情况下给我原始按键?

FWIW 我在 xfce4 终端的 Linux、运行 bash 上使用 ncurses。我的学期是 xterm-256color。我搜索了 Google 并查看了 ncurses 文档,但找不到关于此问题的任何内容。

您需要致电nonl()。虽然它在 outopts 手册部分中有记录,但它也会影响输入。