ansi-escape相关内容

Python 模块在 Windows 上为标准输出启用 ANSI 颜色?

我正在寻找可以在 Windows 下添加 ANSI 支持的 Python 模块. 这意味着导入模块后,如果你输出ANSI转义字符串,它们会相应出现. 解决方案 有两个 python 模块可以做到这一点 colorama 和 tendo.ansiterm 模块,最初是为 编写的waf. 初步测试表明 colorama 更加成熟,即使它需要两行代码而不是一行. 导入系统尝试:进口 ..
发布时间:2022-01-11 08:30:33 Python

从输出中删除颜色

我有一些产生颜色输出的脚本,我需要删除 ANSI 代码. #!/bin/bash执行>>(tee log) # 将输出重定向到文件,但保留在标准输出上执行 2>&1./somescript 输出是(在日志文件中): java (pid 12321) 正在运行...@[60G[@[0;32m OK @[0;39m] 我不知道怎么把 ESC 字符放在这里,所以我把 @ 放在它的位置. 我 ..
发布时间:2022-01-11 08:12:47 服务器开发

想在 python 中调整终端窗口的大小,工作但不太正确

我试图在启动 python 脚本时调整终端窗口的大小,以确保显示为静态大小.它正在工作,但并不完全符合我的预期.我尝试了几种方法: 导入系统sys.stdout.write("\x1b[8;40;120t") 和 导入子流程subprocess.call(["echo","-e","\x1b[8;40;120t"]) 甚至只是 打印“\x1b[8;40;80t" 它们都可以工作并调整真 ..
发布时间:2021-12-28 10:37:01 Python

读取设备状态报告 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 其他开发

诅咒如何保留屏幕内容?

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

保存和恢复终端内容

我正在编写自动化脚本 (perl/bash).他们中的许多人受益于一些基本的终端 GUI.我想我会使用标准的 ANSI 序列进行基本绘图.在终端中绘制之前,我会 clear 但这样做会丢失一些终端命令历史记录.我希望能够在我的程序存在时恢复终端命令历史记录.许多终端程序(例如less、man、vim、htop、nmon、whiptail、dialog 等)正是这样做的.所有这些都恢复了终端窗口,将 ..
发布时间:2021-12-28 10:23:36 服务器开发

用于在 Windows 上为标准输出启用 ANSI 颜色的 Python 模块?

我正在寻找可以在 Windows 下添加 ANSI 支持的 Python 模块. 这意味着导入模块后,如果输出ANSI转义字符串,它们会相应出现. 解决方案 有两个 Python 模块可以做到这一点 colorama 和 tendo.ansiterm 模块,最初是为 编写的waf. 初步测试表明 colorama 更加成熟,即使它需要两行代码而不是一行代码. 导入系统尝试:进 ..
发布时间:2021-12-28 10:11:30 Python

ANSI 颜色转义序列列表

在大多数终端上,可以使用 \033 ANSI 转义序列对输出进行着色. 我正在寻找所有支持的颜色和选项(例如明亮和闪烁)的列表. 由于支持它们的终端之间可能存在差异,我主要对兼容 xterm 的终端支持的序列感兴趣. 解决方案 您要查找的 ANSI 转义序列是 Select Graphic Rendition 子集.所有这些都有形式 \033[XXXm 其中 XXX 是一系 ..
发布时间:2021-12-28 10:00:07 其他开发

从输出中去除颜色

我有一些脚本可以生成带有颜色的输出,我需要删除 ANSI 代码. #!/bin/bash执行 >>(tee log) # 将输出重定向到一个文件,但将其保留在标准输出上执行 2>&1./一些脚本 输出是(在日志文件中): java (pid 12321) 正在运行...@[60G[@[0;32m OK @[0;39m] 我不知道如何把 ESC 字符放在这里,所以我把 @ 放在了它的位置. ..
发布时间:2021-12-05 23:09:23 服务器开发

如何让 win32 控制台识别 ANSI/VT100 转义序列?

我正在构建 ncurses 库的轻量级版本.到目前为止,它在兼容 VT100 的终端上运行良好,但 win32 控制台无法将 \033 代码识别为转义序列的开头: # include # 包括“term.h"int main(void) {puts(BOLD COLOR(FG, RED)“粗体文字"NOT_BOLD“很酷!"清除);返回0;} 需要在 C 代码级别做什么才能加载 ANSI.SY ..

如何确定 ANSI 终端的大小?

标准输入和输出连接到一个终端,该终端实现了 ANSI 转义序列,但维度未知. 我需要知道终端有多大,以便于在其上绘制全屏文本 UI.我如何获得尺寸? 正确的大小没有加载到环境变量中.我不能使用 TIOCGETS;调用将返回成功但值不正确——内核也不知道大小. 搜索 stackoverflow 有很多答案,但它们都取决于操作系统以一种或另一种方式提供答案;但这一次不是真的. ..
发布时间:2021-11-28 17:46:49 其他开发

是否可以让 Tkinter 识别 ANSI 转义字符?

我正在尝试在 tk.Text 框中打印一条消息.该消息是返回搜索结果的函数的结果.我希望消息的格式设置为只有标题为粗体,结果为普通文本: search_results.append(self.text.BOLD + "Top Tracks for " + Artist_found + ":" + self.text.END)用于 top_tracks['tracks'] 中的轨道:search_ ..
发布时间:2021-09-08 19:44:22 Python

在 Python 3 中使用 ANSI 序列确定终端光标位置

我想写一个小脚本,用/usr/lib/w3mimgdisplay(如在mac osx lsi 中)将图像打印到终端.因此,当脚本启动时,我需要实际的光标位置(或插入符号位置).到目前为止,我想通过 ANSI 序列在 shell 中获取光标位置: $ echo -en "\e[6n"^[[2;1R$ 1R 这是这个 ANSI 序列的响应的样子(urvxt 和 bash - 不知道这是否重要).所 ..
发布时间:2021-09-05 20:33:08 Python

ANSI 转义序列

我需要帮助确定这些 ANSI 转义序列代表什么.我目前正在编写的终端屏幕阅读器中过滤/评估 ANSI 代码,但我不确定这些是什么. 转义序列: [0;1mm [0;1;;4m 我使用下面的转义序列图表作为参考:http://ascii-table.com/ansi-escape-sequences-vt-100.php 解决方案 ECMA-48 是这些的主要来源. ..
发布时间:2021-09-04 20:38:17 其他开发

如何清除Scala中的终端/屏幕

我需要在Scala中清除控制台屏幕 我尝试了标准的ANSI透明屏幕,它由rosettacode.org “端子控制/清除屏幕" /Clear_the_screen#Scala"rel =" nofollow noreferrer“>此处 对象Cls扩展了App {print("\ 033 [2J")} 我遇到以下错误: 错误:不支持(8,14)八进制转义文字:请改用\ u001bpr ..
发布时间:2021-04-24 18:42:49 其他开发

ANSI问题:"\ x1B [?25h"和"\ x1BE"

"\ x1B [?25h" 会做什么? "\ x1BE" 与"\ n" 有何不同?根据 http://ascii-table.com/ansi-escape-sequences-vt-100.php 它是否“移至下一行"?好像就是"\ n" 做什么? 我在PHP中尝试了 echo"xxx \ nxxx \ n" 和 echo"xxx \ x1BExxx \ n" ,它们都输出相同的内容 ..
发布时间:2021-04-14 19:52:49 其他开发

支持ANSI转义序列光标移动

我正在制作一个简单的ASCII动画,我需要能够将光标放置在控制台屏幕上的任意点。 在搜索时,我发现此博客这可以通过执行以下操作来实现: (print(str(char 27)“ [2J”));清除屏幕 (print(str(char 27)“ [; H”));将光标移到屏幕的左上角 ,它使用ANSI转义序列。 第一行按预期方式工作,但是很遗憾,我无法找到允许第 ..
发布时间:2020-06-06 19:15:57 其他开发