【问题标题】:How to return Ctrl+M from ncurses getch()?如何从 ncurses getch() 返回 Ctrl+M?
【发布时间】:2020-04-05 16:38:01
【问题描述】:

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

我怎样才能让它在没有翻译的情况下给我原始按键?

FWIW 我在 Linux 上使用 ncurses,在 xfce4-terminal 中运行 bash。我的术语是 xterm-256color。我在 Google 上搜索并检查了 ncurses 文档,但在此问题上找不到任何内容。

【问题讨论】:

    标签: c linux ncurses


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2012-04-02
      • 1970-01-01
      • 2010-10-28
      • 1970-01-01
      • 2011-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-11
      相关资源
      最近更新 更多