问题标签 [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.
emacs - 在 Emacs 中修改 ansi-term 颜色
下面红色椭圆中的文字很难阅读
当我用C-u C-x =
(什么脸)检查脸时,我看到以下内容:
所以我去更新脸部term-bold
(见下文),但颜色似乎与我在上面屏幕上实际得到的不匹配(根据脸部定义,它应该是蓝色+黄色)。有什么想法吗?
ruby - 为 ANSI 转义序列构建一个非常简单的包装器
也许是不可能完成的任务。曾几何时,我SimpleDialog
为 DOS 窗口中的文本着色编写了一个 Ruby 模块。它通过与 Windows API 对话来实现。现在我想让它也适用于 Mac OS,甚至适用于整个 unix 世界。好的,目前只有 Terminal 和 xterm 可以满足我的需求。ANSI 转义序列似乎是适合这项工作的武器。但是使用它们我不能总是按照我的意愿处理事情。这是我尝试实现的功能:
该"\e[H\e[2J"
部分与clear
命令相同(这就是我找到此序列的方式[在一些实验后第二天编辑:"\e[2J"
不会删除序列之前发送的任何文本"\e[H"
,即使它在屏幕上可见])。终端和 xterm 仅清除屏幕的可见部分[问题 1]。该"\ec"
部分对终端不再有意义,但这次 xterm 确实成功清除了整个屏幕缓冲区。这样做时,它会响铃[问题 2],而终端保持沉默。由于"\ec"
序列会重置颜色,因此必须再次恢复最后的设置。完全不是很优雅。这clear
从命令行提交的命令通常会清除 xterm 的整个屏幕缓冲区。但是,它不能消除我试图通过仅从"\e[H\e[2J"
Ruby 发送来清除屏幕而留下的部分。
该color
方法几乎可以正常工作,只有一个令人失望。在 Windows 中,我可以更改矩形的颜色,而无需修改已放置在其中的文本。我看不出如何通过 ANSI 转义序列[issue 3]来做到这一点。当然,作为一种解决方法,我可以记住所涉及的文本并在之后恢复它。而这个真的让我很困惑:对"\e[6n"
(报告光标位置)的响应被打印到屏幕上,最后几个字符在命令提示符后重复。它可以被 Ruby [问题 4]拦截吗?
其他方法是小菜一碟:
MS-Windows 也允许我获取title
当前窗口标题,但我看不到它的真正用途(当参数是空字符串时,xterm 根本不听,顺便说一句)。该write
方法利用该color
方法。这里没有问题。所以,最后,要克服四个障碍。还是一起生活?
ruby - 从字符串中删除 ansi-escape-sequences 同时仍然尊重它们
如果我有一个带有 ansi 转义序列的字符串,当我将它们打印到终端时,它们可以为我移动光标,所以我最终得到以下结果:
如何编写一种方法来将字符串编码为最终输出。这种方法需要比仅仅剥离转义序列更复杂 - 因为它们实际上需要对最终字符串产生影响。
换句话说,我该如何写some_magic
才能给我这种任意输入字符串的输出。
linux - ansi-terminal:Windows 上的意外行为
我正在 Haskell 中试验ansi-terminal,与 Linux 相比,Windows 上的行为似乎有问题。在 Linux 上,我得到一个蓝色的“@”,我可以用 wasd 键移动它(如预期的那样),并且可以通过按任何其他键退出。在 Windows 上,我只是得到一个不会移动的白色“@”,并且根本无法移动角色。
如何在 Windows 中复制 Linux 行为?
几点注意事项:
- Windows,我的意思是我在 wine 下编译和运行
- 阴谋集团 1.18.0.3
- ghc 7.6.3
- 通过'wine cabal install'安装了ansi-terminal
- 如果可能的话,我宁愿不必使用 ncurses (hscurses)
更新:最小的失败代码是:
在 Linux 上,这样做是“正确”的事情,即打印了一个蓝色的“@”。在酒下,我看不到任何变化。我希望这只是 wine 的一个特性,而不是 Windows,因为我没有 Windows 盒子来尝试这个。
我试过的(原始)代码:
build - 如何从 Sublime Text 3 的构建输出中删除颜色?
我在 Sublime Text 3 中使用了一个默认输出颜色的构建系统,我想要一种简单的方法从构建窗口的输出中去除该颜色。
这是我的崇高项目文件:
我怎样才能完成我想做的事情?
c - ANSI 键序列
- 平台:Linux 3.2.0 x86 (Debian Wheezy)
- 编译器:GCC 4.7.2 (Debian 4.7.2-5)
我正在编写一个函数,它读取由键生成的 ANSI 转义序列并返回与输入的键对应的宏。我已经测试了我的功能,它可以正确读取箭头键。但是该功能目前只能读取箭头键,我想添加控制/备用组合、功能键、主页、插入等。但是我似乎找不到键的所有 ANSI 转义序列的列表。事实上,我找到了一份 ECMA-48 的副本,当没有提到密钥的转义序列时,我感到很困惑。那么有谁知道我在哪里可以获得与功能键、箭头键等相对应的 ANSI 转义序列列表?
redis - 控制台上奇怪的 REDIS 字符?
我已经从 MsOpenTech安装了最新版本的 Redis v2.8.9
服务器已启动,一切正常。
但是当我调用redis-cli.exe
并输入单词时info
:我看到每个 char {each click} 周围都有奇怪的信息:
对于 redis 的先前版本(2.8.4),它不会发生并且所有字符都正常显示。
问题
那些额外的字符是什么?我怎样才能让它正常显示?
nb - Windows 8 / 64位
io - Julia:控制光标在打印输出中的位置
我在 Julia 包(ProgressMeter)中发现了一些很酷的东西,它允许用户控制光标所在的位置以打印消息,即
这些"\u1b[1G"
作品叫什么,我在文档中查找它们时遇到了麻烦。还有哪些可能的事情?我可以将光标向上移动 1 行吗?
编辑:
我做了一些实验:
当我使用\u1b[1H
它时,它将光标带到控制台顶部u1b[1J
并将其带到控制台顶部并清除控制台的其余部分。
perl - Ansi-转义序列和重定向:意外行为
当我运行此脚本时,只要我不重定向STDOUT
到文件,它就可以正常工作。当我重定向STDOUT
到文件时,ENTER:
中断后的输出。如果我将 重定向到文件,为什么脚本不再起作用STDOUT
?
c# - 如何基于vt320更改TE的窗口标题?
我们正在开发基于套接字的应用程序。为了与服务器通信,我们使用基于 vt320 的终端。
例如,我们使用一些 ANSI 转义字符来清除屏幕、开始打印、结束打印。
现在我们正在寻找如何更改TE的窗口标题,但直到现在都没有成功。
有人可以帮助我吗?