问题标签 [termcap]

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 回答
78 浏览

c - 程序中的终端行为

我正在为我的 UI 使用 termcaps 库。我想知道是否有某种方法可以改变模拟器的行为?

例如:启用终端回滚缓冲区(termcap 标志 'da' 和 'db' 设置为 1)

谢谢

0 投票
1 回答
439 浏览

c - Termcaps 下划线改变字符

我目前正在学习Termcaps Library,我想强调一条线。我的问题,当我这样做时,我的角色变成了C. 有人知道为什么吗?我用这编译了-lcurses 我的 termcaps :

这就是我强调的方式:

0 投票
2 回答
2604 浏览

c - Termcaps:获取光标位置

我需要使用 C 中的 termcaps 获取终端光标的 (Y, X) 位置。

随着ioctl()我得到我的终端屏幕的大小,但我仍然需要得到我的光标所在的位置。

我找到了这个 :

CSI 6 n DSR – 设备状态报告 将光标位置报告给应用程序(就像在键盘上键入一样)ESC[n;mR,其中 n 是行,m 是列。(可能不适用于 MS-DOS。)

但我不知道如何在 C 中使用它...

0 投票
1 回答
180 浏览

c - 为什么空的 printf 允许我继续从标准输入读取数据?

代码

好的,所以这段代码处理屏幕上文本的重绘。某些文本行使用 加下划线或突出显示termcaps (tputs(tgetstr("us, NULL")......)。一切都打印得很好,但是在第一次重绘文本之后,while 显然会冻结,除非 adprintf/printf存在。该函数只是从 中key_hook读取并将它们转换为.4 bytesstdinint

0 投票
0 回答
241 浏览

terminal - 是否有任何终端支持 \r(回车)和 \b(退格)?

我写了很好的PS1格式化程序:

显示如下提示:

我使用技巧\r将光标返回到第一行位置,所以输出====...像字符串一样。

是否有任何终端支持 \r(回车)和 \b(退格)?

如果返回true ,我是否需要查询支持termcapterminfoisatty()

当实用程序显示进度时,我在wget / curl / git / hg / 等中看到\r了用法。

\b当应用程序在单个旋转位置显示进度序列时也使用:

注意请不要使用打字机发布图像。想想现代硬件或软件模拟器。

0 投票
2 回答
39 浏览

c - 使用 backcote 打开时屏幕大小为 NULL

我正在用 编写一个 C 程序termcaps,我需要通过执行以下命令来返回一个值:

get_winsize如果我的屏幕太小,我的功能有一个条件。

当我在没有反引号的情况下启动程序时,我没有问题。但是我有反引号:

知道为什么吗?也许反引号复制了一个没有屏幕的环境?!

0 投票
1 回答
1532 浏览

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

Python有一个curses模块。有没有一种简单的方法可以使用这个模块来显示反向视频文本?我不想做全面的诅咒应用程序,只想让文本带反色(或彩色)。

0 投票
1 回答
172 浏览

linux - 如果我使用串口控制台登录linux,是使用terminfo还是termcap?

由linux内核的VT子系统实现的linux控制台,当我从串口控制台登录时,是使用terminfo还是termcap?

0 投票
1 回答
1054 浏览

c - 使用 TermCaps 捕捉箭头键

我目前正在开发一个用 C 构建的完整 shell。

我想通过我的双链表使用箭头键实现 bash 历史记录和导航,但我在使用 TermCaps 和正确设置read()功能时遇到了一些问题。

这是我设置终端的方式:

当按下左键或右键时我可以捕捉到,然后我用它\r来擦除线(这实际上不起作用)但主要问题是我不能再使用返回键(仅显示^?)我该如何解决这个问题?

0 投票
1 回答
591 浏览

terminal - 从终端读取屏幕字符

据我研究,terminfo/termcap并且ioctl不允许在终端屏幕上的 (x,y) 位置查询字符。这是相当出乎意料的,因为:

  • 可以从终端读取例如屏幕尺寸(例如tput cotput li),
  • 可以从终端读取输入

– 两者表示与终端的通信是双向的。真的没有办法查询给定位置的字符,比如 with *inch**in_wch*curses 函数(仅适用于 curses windows)?