ncurses

简单的 ncurses 应用程序对箭头键没有反应

我编译了这个简单的 ncurses 程序,向上向下键没有响应。 知道为什么这不起作用吗? 我使用的是 Fedora Linux 5.7.16-200.fc32.x86_64,默认的终端模拟器是 XTerm(351)。在构建 ncurses 或制作应用程序时,我没有收到任何错误或警告。 cc -o test test.c -lncurses /* test.c */ #include <s... »

安装 Vim:“--with-local-dir”和“includedir”有什么区别

我的主要目标是我想了解./configure 中的参数是如何工作的。所以,我决定在$HOME/local/安装ncurses和vim,以免影响我的系统。 在配置 vim 时,我查看了 --with-local-dir 和 includedir。我想知道它们之间有什么区别。 当我查看vim-git-INSTALL-script 时,它说: Unix: LOCAL HEADERS AND LIB... »

python + curses中窗口的最后一个字符

以下程序引发错误: import curses def test(scr): top = curses.newwin(1, 10, 0, 0) top.addstr(0, 9, "X") curses.wrapper(test) 看起来每当我尝试使用 addstr() 在窗口最后一行的最后一列中写入一个字符时(即使它小于屏幕),它都会引发错误。我不想滚动,我不在乎光标的位置。我想... »

[Qemu][Cross Compile for windows][Mingw] 启用curses时找不到langinfo.h

目前我们正在尝试在 Ubuntu 机器上为 Xilinx 设备编译 Qemu,并且我们按照 link 使用 Mingw64 为 Windows 交叉编译它。 当 Curses 功能被禁用时 Qemu 编译成功,但是当我们通过添加 --enable-curses 启用 Curses 功能时它会失败并出现错误 Blockquote 错误:用户请求的功能 curses 配置无法找到它。安装 ncurs... »

ncurses如何搜索终端描述

出于某些原因,我正在从源代码构建 ncurses 6.1。首先,我使用配置源 ./configure 然后我用它构建它 make 两者都没有参数。当我尝试运行测试时,我收到错误消息 Error opening terminal: xterm-256color. 在我的本地系统(Ubuntu 17.10)和 Error opening terminal: xterm 在构建服... »

如何使用 ncurses 在不同的终端上以相同的方式呈现 Unicode?

用户 MGetz 在 this 帖子中告诉我使用 ncurses 在我的程序中呈现 unicode 级别。所以,我更新了我的代码以使用ncurses,但它在不同终端中的呈现方式仍然不同。我使用g++ file.cpp -o file -std=c++11 -lncursesw 编译了我的代码说到我的代码,就在这里。 #include <iostream> #include <s... »

c++

如何让 ncurses 输出星体平面 unicode 字符

我有以下一段非常简单的代码,它应该输出(除其他外)三个 unicode 字符: /* * To build: * gcc -o curses curses.c -lncursesw * * Expected result: display these chars: * http://www.fileformat.info/info/unicode/char/2603/index... »

c

如何更改 ncurses 表单中的光标颜色?

我找不到任何将 ncurses 表单库中的光标颜色从绿色更改为其他颜色的方法。谷歌搜索并在手册页中搜索光标或颜色没有帮助。有人知道这是怎么做到的吗? ... »

Python 诅咒 - 无法获得 TAB 键

我需要在 Python 中捕获 TAB 键。对于我做的任何其他键: x = self.myscreen.getch() if( x == curses.KEY_DOWN ): # and so.. TAB 键的常量是什么?我搜索了here(页面底部)并尝试了每个 TAB 内容。 我也试过'\t'。是否可以?谢谢... »

getch 和 putchar 不返回就无法工作

我一直试图让getch 在另一个程序中工作,但没有成功。所以我制作了最基本的程序,我可以使用getch,按照我希望它在主程序中的工作方式。 我研究过noecho、cbreak、initscr和nodelay的需求,我也尝试过使用newscr()但没有成功。 我遇到的问题是,在我点击“输入”之前,字符不会被打印到屏幕上,而每个循环它们应该是put 到屏幕上。为什么会这样?此外,光标不会在新行返回... »

c

调整终端大小时,ncurses 中断系统调用

我遇到了 ncurses 的问题,在网上找不到解决方案,所以我编写了以下小程序来演示该问题。 您可以通过以下方式编译它: sudo aptitude install ncurses-dev g++ -lncurses -o resize resize.cpp 它显示一个整数计数器,它通过分叉到一个定时器进程中每秒递增一次,该进程通过套接字对定期向父进程发送一个字节。你可以按CTRL+C退出... »

如何使文本适合 python 诅咒文本框?

我尝试了很多方法试图使文本保持在其边界内,但我找不到方法。以下是我已经尝试过的。 #!/usr/bin/env python import curses import textwrap screen = curses.initscr() screen.immedok(True) try: screen.border(0) box1 = curses.newwin(20, ... »

在 curses 窗口中执行 bash 命令

这个问题是肯定存在的,但是我在任何地方都找不到... 我有一个 (n)curses 窗口,我想将其专用于 bash shell(窗口 2),同时在窗口 1 中显示项目: +-------------------------------+ | | | | | | | WINDOW... »

c

如何以及是否在没有 Ncurses 的情况下为文本着色

Ncurses 可以为文本着色,但像 ls 和 diff 这样的 GNU 实用程序显然可以在不调用 Ncurses 的情况下为文本着色。我也可以在不调用 Ncurses 的情况下对文本进行便携式着色吗?例如,在 C 中: printf("the word \033[32mgreen\033[0m is printed in color\n"); 这适用于我的安装,但看起来不太便携。另一方面,... »

使用 gdb 调试 ncurses 应用程序

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

c

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

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

c++

如何正确使用curses/调试一个简单的c程序

我正在尝试学习如何使用 curses 来处理我即将完成的任务的输入。 我得到了一个名为 test-curses.c 的 c 程序,其中包含以下代码... #include <curses.h> #include <stdio.h> #include <stdlib.h> // brief example of using curses. // man 3 n... »

c

PDCurses getmaxxy 函数总是返回相同的值

环境: PDCurses 最新版本 Windows 10 Visual Studio 2015 更新 2 问题 PDCurses 提供了一个函数getmaxxy 来获取屏幕的最大x 和y 坐标。这会在启动时返回正确的值,但如果我用鼠标调整窗口大小然后再次调用getmaxxy,我会返回相同的值。 这是 pdcurses 中的错误/限制吗?是否有特定于 Windows 的方法来获取此信息? 我也尝... »

c++

在 ncurses 中捕获 control+key 的正确方法

在 ncurses 中捕获 control+key 的正确方法是什么? 目前我正在这样做定义这样的控制: #define ctl(x) ((x) & 0x1f) 它工作正常,但问题是我无法同时捕捉 C-j 和 ENTER,这是因为: j = 106 = 1101010 0x1f = 31 = 0011111 1101010 & 0011111 = 0001010 = ... »