termcap相关内容
我想知道如何在我的程序中获取光标位置 (x, y),而不在屏幕上写任何东西,也不会一直跟踪它. 我找到了一种使用此函数获取其位置的方法(我在这里不检查读取、写入等的返回来编写有关此主题的较小代码,但我在我的程序中这样做): void get_cursor_position(int *col, int *rows){int a = 0;int i = 0;字符缓冲区[4];写(1,“\033
..
我想更改一个程序以自动检测终端是否支持颜色,因此当我从不支持颜色的终端(例如 (X)Emacs 中的 Mx shell)中运行所述程序时,颜色是自动关闭. 我不想硬编码程序来检测 TERM={emacs,dumb}. 我认为 termcap/terminfo 应该能够帮助解决这个问题,但到目前为止,我只设法拼凑了这个 (n)curses-using 代码片段,当它找不到终端: #in
..
我需要使用 C 中的 termcaps 获取终端光标的 (Y, X) 位置. 使用 ioctl() 我得到了终端屏幕的大小,但我仍然需要得到我的光标所在的位置. 我发现了这个: CSI 6 n DSR – 设备状态报告将光标位置报告给应用程序(就像在键盘上输入一样)ESC[n;mR,其中 n 是行,m 是列.(可能不适用于 MS-DOS.) 但我不知道如何在 C 中使用它.
..
我似乎无法让 termcap 的“cl"命令起作用,但终端转义码可以. 例如: #include #include int main(){tputs(tgetstr("cl", NULL), 1, putchar);} 这不会改变终端.但是当我跑步时: #include int main(){printf("\e[2J");} 或者如果我调用 echo `tput cl`终端清零.
..
据我研究,terminfo/termcap 和 ioctl 不允许在终端的 (x,y) 位置查询字符屏幕.这是相当出乎意料的,因为: 可以阅读例如终端的屏幕尺寸(例如 tput co、tput li)、 可以从终端读取输入 ——两者表示与终端的通信是双向的.真的没有办法在给定位置查询字符,比如 *inch*, *in_wch* 诅咒函数(仅适用于诅咒窗口)? 解决方案 这是意
..
我想在终端中创建一个叠加层 此Q& D在右/下显示时间 #include #include #include #include #include #include #include static char termbuf[2048];
..
我创建了一个程序,该程序使用参数列表并将其放在新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
..
Python有一个curses模块.有没有简单的方法可以使用此模块显示反视频文本?我不想做一个成熟的curses应用程序,只希望文本带有反色(或彩色). 解决方案 如果使用如果您想要较低的级别(无需优化,请自己完成),则必须使用该库的 terminfo 级别,即以下功能: initscr和filter(因为Python curses显然没有与 newterm ) tigetstr
..
XTerm控制序列指定以下键序列: CSI ? 1 h → Application Cursor Keys (DECCKM) CSI ? 1 l → Normal Cursor Mode (DECOM) CSI ? 66 h → Application keypad (DECNKM) CSI ? 66 l → Numeric keypad (DECNKM) 和 Terminfo源格式
..
我正在尝试将嵌入式Pod作为ANSI文本输出到终端.在Perl 5中,我可以使用 Pod::Text::Termcap : use strict; use warnings; use Pod::Text::Termcap; my $str = do {local $/; }; my $parser = Pod::Text::Termcap->new(); $parser->pa
..
我通过Mac上的ssh连接在NetBSD系统上工作,我想使用screen实用程序,以便我可以启动过程并在终端连接中断后返回到它们.当我键入screen时,我收到错误消息: Cannot find termcap entry for 'xterm-256color' 浏览论坛帖子后,我认为这与远程计算机上的termcap有关,但事实并非如此.我可以启动屏幕,而另一台计算机(通常是我无法访问
..
据我所知,阅读terminfo(5)时,kcuu1应该是终端在按下向上箭头时发送的序列.我从未见过除^[[A以外的任何内容(现在谈论cat,弄乱终端设置等).因此,考虑到我使用的终端(rxvt,gnome-terminal,iTerm)全部默认为TERM = xterm,为什么kcuu1 \E[A不是? 我看到cuu1 是 \E[A,但是(再次从手册页开始),那是我应该发送给终端以移动光标的
..
我想知道如何在程序中获得光标位置(x,y),而无需在屏幕上写任何东西,也不能一直跟踪它. 我找到了一种使用此功能获取位置的方法(我不检查读,写等的返回情况来在此主题上编写较小的代码,但我在程序中做到了): void get_cursor_position(int *col, int *rows) { int a = 0; int i = 0; char buf[
..
我正在使用termcaps,但我不理解&=在此示例中的含义: term.c_lflag &= ~(ICANON); 有人可以告诉我这是如何工作的吗? 解决方案 这是将表示位域的整数中的特定位设置为0的常用方法. unsigned a = ...; // ... unsigned int mask = 1
..
我想更改一个程序以自动检测终端是否支持颜色,所以当我从不支持颜色的终端(例如(X)Emacs中的Mx shell)运行该程序时,颜色为自动关闭. 我不想对程序进行硬编码以检测TERM = {emacs,dumb}. 我认为termcap/terminfo应该可以解决这个问题,但到目前为止,我仅设法使用代码片段将这(n)个curses拼凑在一起,当找不到该代码时,该方法将严重失败终端:
..
某些终端(例如urxvt)通过sitm和ritm terminfo条目支持以斜体显示文本: echo `tput sitm`italics`tput ritm` 我想在我想要将真实的斜体显示到控制台的应用程序中使用它.不幸的是,该应用程序是基于ncurses的,并且ncurses似乎没有斜体的属性---它包含了很多内容,包括不可见的文本(我相信对某些东西有用),但是没有斜体. 是否有人
..
在我的特定情况下,我正在使用MinGW/MSys.它不包含termios.h.事实证明,它不是可以下载和安装的库(Google找不到任何库). Termcap也不包含termios.h. 从何处获取此文件? 解决方案 MinGW不完全支持POSIX,因此缺少termios.h. 另一方面,Cygwin具有POSIX和termios.h的功能.
..
我在OpenSuse 13.2上的我的终端中有一个ANSI转义码的问题。 我的Makefile用于显示漂亮的颜色在OSX上班,但在家里,当我使用它我得到litteral termcaps如\033 [1; 30m ... \033 [0m 我知道termcaps什么也没有,我只是发现这些转义字符似乎工作正常!最奇怪的是,我的OSX和Linux终端配置了TERM = xterm-256col
..
我编码一个壳状的C和我要实现的在线编辑功能,我已经实现了它的基本的,现在我要实现Ctrl + L键从而清除然后屏幕显示提示和行我正在研究。 我需要使用的termcap: “CM”字符串将光标定位在直线l,列c。 我的问题是如何将我传递变量L和C的的termcap? 解决方案 假设你有厘米存储能力 term_cm 变量。然后,你将替代使用 tgoto 函数的参数: 的char * S
..