问题标签 [ansi-escape]

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 投票
2 回答
5364 浏览

linux - 输出中的 bash 程序“watch”和 ANSI 转义序列

可能重复:
unix 命令“watch”的颜色?

在我的一个程序中,我想使用彩色文本作为输出,所以我为此使用 ANSI 转义序列,例如:

它以蓝色打印“Hello World”。(实际上它是一个使用“打印”的 Python 程序,但这对问题无关紧要)

现在我想使用 bash 程序“watch”重复执行程序。但是当我使用“watch”执行与上面相同的行时,即

文本不是蓝色的,输出变为“-e 033[34mHello World033[0m”。所以 ANSI 转义序列不会以某种方式解码。

有没有办法让程序“watch”尊重转义序列,或者有没有替代“watch”来获得相同的效果?

如果它只适用于 Linux 就可以了,因为我只使用它。

更新:所以一种解决方案是安装一个更新版本的“watch”,它知道 --color 选项。但是有没有其他方法,也许是一个类似的程序来“观看”?(我不是那台机器的管理员。)

0 投票
0 回答
817 浏览

python - ansi 颜色未显示在 emacs 窗口中

我知道以前有人问过这个问题的变体......但我一定遇到了不同的问题,因为解决方案对我不起作用。我有一个使用 ANSI 代码的文本文件,当我cat将文件发送到终端时,它可以很好地显示。但是,当我对文件进行 emacs 23.2.1 时,我看到如下内容:

如果重要的话,^[那一行中的两个都是红色的(emacs 将其视为一个字符),而该文本的其余部分是黑色的。我希望该行在 emacs 编辑器中为浅蓝色。提到我正在使用 python 代码制作这个文件可能会有所帮助

生成该文本。环顾四周,我尝试了几种解决方案:

但这些都不起作用。我不是 emacs/lisp 专家......所以我在这里很无助。我还尝试清除.emacs文件中的所有其他内容,以防万一发生冲突。

关于我可以尝试什么的任何其他想法?

0 投票
1 回答
396 浏览

windows - xterm 转义序列(如“Esc | 112 m”)在哪里定义?

在 ConEmu 中实现 xterm-256-colors 时,我发现了一些未知的转义序列(由 Vim 使用),例如

从 Vim 来源我意识到这些代码用于更改粗体或反转属性,但我找不到任何关于它们的文档。

Esc | N m序列有规范吗?这里没有提到它们。

0 投票
7 回答
78988 浏览

python - 如何从 python 中的字符串中删除 ANSI 转义序列

这是我的字符串:

我正在使用代码从 SSH 命令检索输出,并且我希望我的字符串仅包含“examplefile.zip”

我可以用什么来删除额外的转义序列?

0 投票
4 回答
9199 浏览

tostring - c# stringbuilder tostring双引号问题

将字符串从 stringbuilder 转换为字符串时出现问题。该问题与此问题相似,但略有不同:

这是我的代码简化:

现在在调试器中 sb 值为:

在调试器中,测试字符串值更改为:

当将测试字符串值返回给浏览器时,velue 仍然被转义:

我试过使用字符串替换:

不走运,我尝试附加 ASCII 字符而不是 \" 并且我还尝试了不同的附加

所有这些都没有运气。有人可以指出我为什么仍然获得转义字符以及如何摆脱它的正确方向。

感谢并感谢任何意见。

0 投票
1 回答
26854 浏览

bash - ANSI 问题:“\x1B[?25h”和“\x1BE”

  1. 做什么"\x1B[?25h"

  2. 有什么"\x1BE"不同"\n"?根据http://ascii-table.com/ansi-escape-sequences-vt-100.php它“移动到下一行”?好像是这样的"\n"

    我在 PHP 中尝试过echo "xxx\nxxx\n",它们都输出相同的东西。echo "xxx\x1BExxx\n"

有任何想法吗?

谢谢!

0 投票
1 回答
649 浏览

emacs - Ansi彩色文件编辑

语境

有一些来自终端交互的脚本文件,使用传统的 Unix 命令“脚本”获得。

这些脚本包含大量控制字符(如编辑 shell 命令时的退格),以及运行各种命令的结果的大量颜色代码序列。有时,甚至会运行诸如“emacs -nw”或“aptitude”之类的彩色全终端(基于 ncurses)的应用程序。

在程序运行时,TERM 环境变量被设置为“xterm”。

需要1:阅读(或多或少解决)

我需要再次阅读这些文件,有时还需要复制粘贴一些小部分。

问题是:虽然这里改变了一种颜色并没有太大问题,但它们的实际密度使输出几乎不可读。更糟糕的是,编辑过的命令行(带有光标跳转和编辑过的单词)完全不可读。

“好的”解决方案

使用例如“less -r”浏览文件。在同一终端设置中向前翻页可再现各种颜色和字符样式。

但是许多其他功能或多或少都被破坏了,例如向后搜索会产生混乱的终端输出,通常必须按“Ctrl-L”来清理。

需求2:编辑

我首选的编辑器是 emacs。有些人在 emacs 中运行 shell 时也遇到过类似的情况,例如,Emacs shell 有问题

这里的情况不一样。差异示例:这里我们不必运行实际的 shell,但我们需要像通常的编辑一样自由移动光标。

在这里编辑意味着在编辑器中轻松打开这样的脚本文件,然后:

  • 随时通过编辑,查看终端代码所传达的字符变化(颜色、属性)
  • (可选)一些在终端网格上相邻但在文件中被一些控制字符分隔的字符将对此有视觉提示
  • 插入一些文本的能力,
  • 删除部分,
  • 使用所有编辑器功能,如搜索/替换等。
  • 从文件复制和粘贴(包括到外部程序,它只接收纯文本)
  • 在我最疯狂的梦想中,某种“扁平化”动作,比如选择一个带有大量编辑命令行的序列,然后用一系列简单的字符替换它,就好像它是在一次运行中键入的一样。上面提到的“视觉提示”会消失。
0 投票
2 回答
1765 浏览

c - 我怎样才能抑制 readline 打印一些东西然后恢复它?

我正在尝试仅使用readline和 ANSI 转义码编写控制台聊天客户端。

我的目标是让终端处理聊天历史记录的回滚和滚动,同时始终在消息后提供readline提示以供新输入。

我已经用我的两个线程尝试了以下操作。我的控制台输入线程:

我的消息接收线程会:

只要readline输入不换行,上述方法就可以工作。当它包装恢复保存的光标位置时,它不能按预期工作,它似乎只恢复水平位置,而不是垂直位置。

即使输入行换行,我如何调整上述代码工作?

0 投票
2 回答
13534 浏览

putty - PuTTy 能否与 ANSI/VT100 转义序列一起正常工作?

我正在为飞思卡尔 MC9S12C32 处理器的 HC12 汇编中的一个类编写程序。我使用 PuTTy 作为通过串行(-over-USB)连接到设备的终端。对于这个分配,我们应该使用 VT100/ANSI 转义序列将光标移动到任意位置并写入当前时间,然后返回它,以便用户可以键入并让他们的输入回显。

我正在使用以下序列来保存光标、移动它并返回它。然而由于某种原因,PuTTy 只是将光标放在左上角并且无法返回它。

我是否对转义序列进行了错误编码,或者 PuTTy 没有按我的预期处理它们?

0 投票
6 回答
36092 浏览

ansi-escape - ANSI 颜色特定 RGB 序列 Bash

我知道在 bash 终端中更改颜色的可靠方法是使用 ANSI 转义序列。例如:

应该输出

有没有办法使用带有 ANSI 的特定 RGB 集输出颜色?说我想要鲜红色:

这种事情存在吗?

我只想使用标准 bash。