问题标签 [curses]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3435 浏览

select - ncurses 和标准输入阻塞

我有组标准输入,每当用户键入并点击时select(),我想从标准输入中获取一个字符串Enter

但是 select 正在触发stdin,因为它在被击中之前准备好读取Enter,并且在极少数情况下,在输入任何内容之前。这会挂起我的程序,getstr()直到我点击Enter.

我尝试了设置nocbreak(),它真的很完美,只是屏幕上没有回显,所以我看不到我在输入什么。设置echo()不会改变这一点。

我也尝试过使用timeout(0),但结果更加疯狂并且没有用。

0 投票
4 回答
3030 浏览

c++ - 在 Windows 终端中输出 unicode 字符

在过去的一周里,我一直在和一个朋友一起用 C++ 开发一个roguelike游戏。主要也是学习语言。

我正在使用:

  • 诅咒
  • Windows 7的
  • 视觉工作室 C++

wchar_t在控制台中我想输出的任何地方。我已经成功地输出了一些 unicode 字符,例如 \u263B (☻),但其他字符,例如 \u2638 (☸),最终只会变成问号 (?)。

这是我用于输出的相关代码。

我当然可以依靠无聊的 ANSI 字符。但是拥有完整的 unicode 字符集可以玩真的很棒。

总结一下:如何确保正确输出 unicode 字符?


编辑:

好的,所以我发现我的编码工作正常。问题是我需要强制终端切换到更丰富的 unicode 字体。有没有跨平台的方法来做到这一点?甚至有Windows特定的方法来做到这一点吗?

0 投票
1 回答
3767 浏览

python - 导入curses.ascii的问题

我正在尝试from curses.ascii import *django 项目,但我得到:No module named _curses,我使用的是 Python 2.5,有什么建议吗?无论如何,我只需要isalpha()使用功能....

0 投票
4 回答
7249 浏览

c - How to get a brightwhite color in ncurses?

How to init a color pair with light grey background, and bright white foregraound?

init_pair(number, COLOR_WHITE, COLOR_WHITE) creates a color pair with light grey foreground and backround, but I need foreground to be really white. I tried combining COLOR_WHITE with A_BLINK (through bitwise OR) but that doesn't work. Ncurses howto's/examples/documentaion couldn't help me either.

0 投票
3 回答
365 浏览

scripting - 我在哪里可以找到 Unix 的 TTY 和 curses 文档?

我正在为在 SCO Unix 上运行的 ERP 程序开发自动化工具。
请参阅我关于 Expect 的问题:

我在哪里可以找到(本地或网络)资源来了解会话中使用了哪些控制字符,更具体地说,在与 ERP 程序交互期间确定屏幕上的字段位置?

0 投票
2 回答
536 浏览

python - 如何禁用控制字符的shell拦截?

我正在UNIX下用Python编写一个curses应用程序。我想让用户能够使用 CY 从 Emacs 的杀戮环中拉出。

当然,问题是 CY 被我的 shell 捕获,然后将 SIGTSTP 发送到我的进程。此外,CZ 还会导致 SIGTSTP 被发送,因此捕获信号意味着 CY 和 CZ 无法区分(尽管即使没有这个,我能想到的唯一解决方案也是非常骇人听闻的)。

我知道我要问的是可能的(如果不是在 Python 中,在 C 中),因为 Emacs 做到了。如何禁用 shell 对从键盘发送的某些控制字符的特殊处理,并使有问题的字符出现在进程的标准输入中?

0 投票
1 回答
623 浏览

c - curses 中的多行菜单项描述

我有一个诅咒菜单,我想在上面添加多行描述。

我的代码将描述字段放在上面,但如果它们不适合就不会显示。

诅咒很高兴将多行文本打印为字符串(而不是菜单描述)

任何想法如何使多行描述起作用?

0 投票
3 回答
2264 浏览

python - 同时使用调试器和诅咒?

我正在调用python -m pdb myapp.py,当异常触发时,我通常会被扔回 pdb 解释器来调查问题。但是,在我调用curses.wrapper()并进入 curses 模式后,会引发此异常,从而使 pdb 解释器无用。我该如何解决这个问题?

0 投票
1 回答
3799 浏览

python - 在 curses 模式下,stdout 和 stderr 去哪里了?

当 curses 处于活动状态时,stdout 和 stderr 去哪里了?

实际输出为

更新0

预期输出为

进入,然后退出诅咒模式,终端中显示的最终文本没有改变。

0 投票
6 回答
4065 浏览

perl - 如何在 Perl 中从 telnet 屏幕抓取输出?

我可以在 Perl 中设置一个 telnet 连接没有问题,并且刚刚发现了 Curses,我想知道我是否可以一起使用这两者来抓取 telnet 会话的输出。

我可以使用下面的简单脚本在行、列的基础上查看 STDOUT 的内容:

并且使用下面我可以打开一个 telnet 连接并毫无问题地发送 \ 接收命令:

...但我真正想做的是获得 telnet 响应(其中将包括终端控制字符),然后使用 curses 在行 \ 列的基础上进行搜索。有谁知道我可以将两者连接在一起的方法吗?在我看来,curses 只能在 STDOUT 上运行