ncurses相关内容

非阻塞 getch()、ncurses

我在阻止 ncurses 的 getch() 时遇到了一些问题.默认操作似乎是非阻塞的(或者我错过了一些初始化)?我希望它像 Windows 中的 getch() 一样工作.我试过各种版本的 超时(3000000);夜间休息();cbreak();诺拉();等等... (不是同时).如果可能,我宁愿不(明确地)使用任何 WINDOW.一个围绕 getch() 的 while 循环,检查特定的返 ..
发布时间:2022-01-23 20:27:22 服务器开发

使用 gdb 调试 ncurses 应用程序

我正在尝试使用 gdb 调试我的 ncurses 应用程序.我使用 tty 命令将程序的 I/O 重定向到另一个终端.输出就像一个魅力,但我遇到了输入问题.我正在使用 getch() 函数来检索我的应用程序中的符号.因此,例如,如果我在我的 gdb 会话中这样做: tty/dev/pts/5 我在终端窗口(gnome-terminal)的另一个选项卡中获得输出.我的 gdb 会话卡住了,等待输 ..
发布时间:2022-01-20 20:23:41 其他开发

使用 ncurses 时对“stdscr"的未定义引用

我正在尝试在 Ubuntu 11.10 中编译我的代码并遇到这些错误等等.到目前为止,通过谷歌搜索我认为这是一个链接错误.具体来说,有人建议确保您拥有正确的标题并链接 -lncurses 库.我已经这样做了.我仍然收到此错误.我还读到可能我应该安装 libncurses,但我已经安装了它. 我的 MakeFile:CPP = g++CPPFLAGS = -c -Wall -g链接 = g++LD ..
发布时间:2022-01-11 15:00:51 C/C++开发

python中跨平台控制台应用程序的类curses库

我正在研究用 python 开发一个控制台应用程序,它应该能够在 Windows 和 Linux 下运行.为此,我真的很想使用像 curses 这样的高级控制台库.但是,据我所知,curses 在 Windows 上不可用. 我还有什么其他选择?不幸的是,在 Windows 下使用 cygwin 不是一种选择... 感谢您的帮助! 解决方案 有一个wcurses.我从未尝试过, ..
发布时间:2022-01-11 08:42:32 服务器开发

使用 ncurses 时对 `stdscr' 的未定义引用

我正在尝试在 Ubuntu 11.10 中编译我的代码并出现这些错误等等.到目前为止,通过谷歌搜索,我认为这是一个链接错误.具体来说,有一些建议可以确保您拥有正确的标题并链接 -lncurses 库.我已经这样做了.我仍然收到此错误.我还读到可能我应该安装 libncurses,但我已经安装了它. 我的 MakeFile:CPP = g++CPPFLAGS = -c -Wall -g链接 = g ..
发布时间:2022-01-04 21:19:01 C/C++开发

将 Unicode/UTF8 字符添加到 C 中的 ncurses 显示

我正在尝试将 wchar_t Unicode 字符添加到 C 中的 ncurses 显示中. 我有一个数组: wchar_t characters[]={L'\uE030', L'\uE029'};//包含 2 个泰文字母,例如 然后我尝试将数组中的 wchar_t 添加到 ncurses 显示中: add_wch(characters[0]); 为了提供更多信息,使用 ASCII ..
发布时间:2021-12-28 16:50:14 其他开发

xterm-color & 和有什么不一样?xterm-256color?

我在尝试设置我的终端程序以使用颜色时遇到了 xterm-color 和 xterm-256color 作为选项 - 即你可以设置你的 TERM 环境变量之一. 我想知道是否有人可以描述两者之间的区别? 我在我的 Ubuntu 服务器和 Mac 上搜索过文档,但没有找到.我只能在 /usr/share/terminfo 中找到各种二进制文件. 解决方案 xterm-256colo ..
发布时间:2021-12-28 10:41:46 服务器开发

使用 Eclipse CDT 调试 ncurses

我正在 Eclipse CDT 中使用 ncurses 编写 C++ 应用程序,但是我无法在 Eclipse 中运行/调试我的应用程序,因为 Eclipse 中的控制台不适用于 Curses.如果我从终端运行,我的应用程序运行良好,但我刚刚添加了一些新代码,现在出现分段错误,因此我想在 eclipse 中使用调试器来帮助我解决问题.有没有办法让 eclipse 运行/调试我的应用程序,但使用不同的 ..
发布时间:2021-12-28 10:36:33 C/C++开发

读取设备状态报告 ANSI 转义序列回复

我正在尝试使用以下代码检索 VT100 终端中光标的坐标: void getCursor(int* x, int* y) {printf("\033[6n");scanf("\033[%d;%dR", x, y);} 我正在使用以下 ANSI 转义序列: 设备状态报告 - ESC[6n 将光标位置报告给应用程序(就像在键盘上输入一样)ESC[n;mR,其中 n 是行,m 是列. ..
发布时间:2021-12-28 10:34:29 其他开发

崩溃后清理终端中的 ncurses 混乱

我正在使用 ncurses 绘制 TUI.问题是每当我的程序出现段错误时,我的终端就会一团糟.我看不到我在输入什么.自从我在 ssh 上工作以来,这很痛苦.我通过使用屏幕减轻了一些影响. 我想知道是否有一个命令可以在 ncurses 出现段错误后刷新我的终端,以便我的终端开始正常运行. 解决方案 Command, stty sane 完成任务.如果输入不起作用,您可以使用^J. ..
发布时间:2021-12-28 10:29:44 其他开发

终端或控制台中的就地进度输出

当您运行 git clone 时,它会就地更新进度.例如,接收到的对象的百分比就地发生了变化. user@athena:~/cloj/src$ git clone git://git.boinkor.net/slime.git在/home/user/cloj/src/slime/.git/中初始化空的 Git 存储库远程:计数对象:15936,完成.远程:压缩对象:100% (5500/5500 ..
发布时间:2021-12-28 10:28:26 服务器开发

诅咒如何保留屏幕内容?

当您启动 (n)curses 程序时,它会从您的终端模拟器中移除滚动条,清除屏幕,滚动日志(历史记录)也会消失.退出程序时,屏幕内容重新出现,滚动条返回,滚动缓冲区返回. ncurses 是如何做到的?我已经研究了所有的 ANSI 转义码,我看不到任何可以做这样的事情的东西.这背后的技术是什么? 解决方案 该技术名为 备用屏幕缓冲区.终端仿真器提供两种模式:主模式和备用模式.备用屏幕 ..
发布时间:2021-12-28 10:23:57 其他开发

NCurses 中的鼠标移动事件

我想知道NCurses中是否有鼠标移动事件之类的东西,是否有办法捕捉它们.遵循与鼠标交互(来自NCurses 编程 HOWTO) 似乎通过在调用中启用 REPORT_MOUSE_POSITION 位mousemask,确实可以捕捉鼠标移动事件. 所以,我试过了,但它似乎不起作用.我有这样的事情: int ch, count=0;mmask_t 旧;initcr();没有回声();cbrea ..
发布时间:2021-12-28 10:15:26 服务器开发

在 Linux 终端应用程序中接收按键按下和按键释放事件?

我想编写一个简单的 C 程序,该程序将根据“按下键"和“按下键"事件执行不同的操作.该程序将从 rxvt 内部运行. 我应该使用什么库或机制来访问按键和释放?阅读 /dev/tty 是否真的只会提供关键版本?这对 termcap、terminfo、ncurses 和俚语也是如此吗?有没有办法从终端应用程序中实现这一点? 解决方案 以下链接可能对使用键盘原始模式有所帮助,该模式将使您能 ..
发布时间:2021-12-28 10:15:10 服务器开发

在 C 中打印 Unicode 符号

我正在尝试打印一个 unicode 星号字符 (0x2605) 在使用 C 的 linux 终端中.我遵循了站点上其他答案建议的语法,但没有得到输出: #include #include int main(){wchar_t 星 = 0x2605;wprintf(L"%c\n", star);返回0;} 我很感激任何建议,尤其是我如何使用 ncurses 库来完成这项工作. 解决方案 ..
发布时间:2021-12-26 13:57:46 其他开发

c - 如何检测使用C中的curses按下的箭头键?

在尝试通过curses (ncurses) 从箭头键获取输入时,它不会被捕获为KEY_UP 等.我使用带真参数的键盘函数但getch 仍然返回一个转义序列.如何切换 getch() 返回的值并专门抓住箭头键? 解决方案 我将 getch() 调用存储为 char 的,而它们应该是 int 的.切换后完美运行. ..
发布时间:2021-12-21 18:01:42 其他开发

使用 ncurses 创建一个函数来检查 unix 中的按键

我一直在寻找与 kbhit() 等效的方法,并且我已经阅读了几个关于此主题的论坛,大多数似乎都建议使用 ncurses. 我应该如何使用 ncurses 检查是否在 C++ 中按下了某个键. ncurses 提供的函数 getch() 从窗口读取字符.我想写一个函数,只检查是否有按键按下,然后我想做 getch(). 提前致谢. 解决方案 你可以使用 nodelay() ..
发布时间:2021-12-14 23:49:21 服务器开发