termcap相关内容

如何使用termcap获取C程序中的光标位置,而不写字符?

我想知道如何在我的程序中获取光标位置 (x, y),而不在屏幕上写任何东西,也不会一直跟踪它. 我找到了一种使用此函数获取其位置的方法(我在这里不检查读取、写入等的返回来编写有关此主题的较小代码,但我在我的程序中这样做): void get_cursor_position(int *col, int *rows){int a = 0;int i = 0;字符缓冲区[4];写(1,“\033 ..
发布时间:2021-12-28 10:34:56 其他开发

如何确定终端是否支持彩色?

我想更改一个程序以自动检测终端是否支持颜色,因此当我从不支持颜色的终端(例如 (X)Emacs 中的 Mx shell)中运行所述程序时,颜色是自动关闭. 我不想硬编码程序来检测 TERM={emacs,dumb}. 我认为 termcap/terminfo 应该能够帮助解决这个问题,但到目前为止,我只设法拼凑了这个 (n)curses-using 代码片段,当它找不到终端: #in ..
发布时间:2021-12-28 10:19:30 服务器开发

Termcaps : 获取光标位置

我需要使用 C 中的 termcaps 获取终端光标的 (Y, X) 位置. 使用 ioctl() 我得到了终端屏幕的大小,但我仍然需要得到我的光标所在的位置. 我发现了这个: CSI 6 n DSR – 设备状态报告将光标位置报告给应用程序(就像在键盘上输入一样)ESC[n;mR,其中 n 是行,m 是列.(可能不适用于 MS-DOS.) 但我不知道如何在 C 中使用它. ..
发布时间:2021-09-14 20:00:18 服务器开发

术语“cl"命令不清除屏幕

我似乎无法让 termcap 的“cl"命令起作用,但终端转义码可以. 例如: #include #include int main(){tputs(tgetstr("cl", NULL), 1, putchar);} 这不会改变终端.但是当我跑步时: #include int main(){printf("\e[2J");} 或者如果我调用 echo `tput cl`终端清零. ..
发布时间:2021-09-05 20:36:27 其他开发

从终端读取屏幕字符

据我研究,terminfo/termcap 和 ioctl 不允许在终端的 (x,y) 位置查询字符屏幕.这是相当出乎意料的,因为: 可以阅读例如终端的屏幕尺寸(例如 tput co、tput li)、 可以从终端读取输入 ——两者表示与终端的通信是双向的.真的没有办法在给定位置查询字符,比如 *inch*, *in_wch* 诅咒函数(仅适用于诅咒窗口)? 解决方案 这是意 ..
发布时间:2021-09-05 20:28:12 其他开发

为什么我无法检索从反引号内部暂停的程序?

我创建了一个程序,该程序使用参数列表并将其放在新tty的网格中,我可以在其中移动并从中选择所需的内容. 当我运行程序时没有这样的反引号... $> ./ft_select arg_1 arg_2 ... arg_N 打开一个新的tty并显示一个网格... arg_1 arg_2 arg_3 arg_4 arg_5 arg_6 arg_7 ... arg_N ..
发布时间:2020-07-26 00:10:26 其他开发

在终端上使用python显示反视频文本

Python有一个curses模块.有没有简单的方法可以使用此模块显示反视频文本?我不想做一个成熟的curses应用程序,只希望文本带有反色(或彩色). 解决方案 如果使用如果您想要较低的级别(无需优化,请自己完成),则必须使用该库的 terminfo 级别,即以下功能: initscr和filter(因为Python curses显然没有与 newterm ) tigetstr ..
发布时间:2020-07-26 00:10:22 Python

Unix屏幕实用程序错误:找不到'xterm-256color'的termcap条目

我通过Mac上的ssh连接在NetBSD系统上工作,我想使用screen实用程序,以便我可以启动过程并在终端连接中断后返回到它们.当我键入screen时,我收到错误消息: Cannot find termcap entry for 'xterm-256color' 浏览论坛帖子后,我认为这与远程计算机上的termcap有关,但事实并非如此.我可以启动屏幕,而另一台计算机(通常是我无法访问 ..
发布时间:2020-07-26 00:08:19 其他开发

为什么terminfo [kcuu1] ='\ EOA'?

据我所知,阅读terminfo(5)时,kcuu1应该是终端在按下向上箭头时发送的序列.我从未见过除^[[A以外的任何内容(现在谈论cat,弄乱终端设置等).因此,考虑到我使用的终端(rxvt,gnome-terminal,iTerm)全部默认为TERM = xterm,为什么kcuu1 \E[A不是? 我看到cuu1 是 \E[A,但是(再次从手册页开始),那是我应该发送给终端以移动光标的 ..
发布时间:2020-07-26 00:08:15 其他开发

如何在不使用字符的情况下使用termcap在C程序中获取光标位置?

我想知道如何在程序中获得光标位置(x,y),而无需在屏幕上写任何东西,也不能一直跟踪它. 我找到了一种使用此功能获取位置的方法(我不检查读,写等的返回情况来在此主题上编写较小的代码,但我在程序中做到了): void get_cursor_position(int *col, int *rows) { int a = 0; int i = 0; char buf[ ..
发布时间:2020-07-26 00:08:13 其他开发

& =是什么意思?

我正在使用termcaps,但我不理解&=在此示例中的含义: term.c_lflag &= ~(ICANON); 有人可以告诉我这是如何工作的吗? 解决方案 这是将表示位域的整数中的特定位设置为0的常用方法. unsigned a = ...; // ... unsigned int mask = 1 ..
发布时间:2020-07-26 00:08:07 其他开发

如何确定终端是否支持颜色?

我想更改一个程序以自动检测终端是否支持颜色,所以当我从不支持颜色的终端(例如(X)Emacs中的Mx shell)运行该程序时,颜色为自动关闭. 我不想对程序进行硬编码以检测TERM = {emacs,dumb}. 我认为termcap/terminfo应该可以解决这个问题,但到目前为止,我仅设法使用代码片段将这(n)个curses拼凑在一起,当找不到该代码时,该方法将严重失败终端: ..
发布时间:2020-07-26 00:08:05 服务器开发

ncurses是否支持斜体?

某些终端(例如urxvt)通过sitm和ritm terminfo条目支持以斜体显示文本: echo `tput sitm`italics`tput ritm` 我想在我想要将真实的斜体显示到控制台的应用程序中使用它.不幸的是,该应用程序是基于ncurses的,并且ncurses似乎没有斜体的属性---它包含了很多内容,包括不可见的文本(我相信对某些东西有用),但是没有斜体. 是否有人 ..
发布时间:2020-05-16 23:09:30 其他开发

在哪里获取termios.h

在我的特定情况下,我正在使用MinGW/MSys.它不包含termios.h.事实证明,它不是可以下载和安装的库(Google找不到任何库). Termcap也不包含termios.h. 从何处获取此文件? 解决方案 MinGW不完全支持POSIX,因此缺少termios.h. 另一方面,Cygwin具有POSIX和termios.h的功能. ..
发布时间:2020-05-09 22:22:15 其他开发

颜色termcaps Konsole?

我在OpenSuse 13.2上的我的终端中有一个ANSI转义码的问题。 我的Makefile用于显示漂亮的颜色在OSX上班,但在家里,当我使用它我得到litteral termcaps如\033 [1; 30m ... \033 [0m 我知道termcaps什么也没有,我只是发现这些转义字符似乎工作正常!最奇怪的是,我的OSX和Linux终端配置了TERM = xterm-256col ..
发布时间:2016-12-18 02:19:08 其他开发

TERMCAP与参数

我编码一个壳状的C和我要实现的在线编辑功能,我已经实现了它的基本的,现在我要实现Ctrl + L键从而清除然后屏幕显示提示和行我正在研究。 我需要使用的termcap: “CM”字符串将光标定位在直线l,列c。 我的问题是如何将我传递变量L和C的的termcap? 解决方案 假设你有厘米存储能力 term_cm 变量。然后,你将替代使用 tgoto 函数的参数: 的char * S ..
发布时间:2016-08-24 13:42:55 C/C++