50得票4回答
使用 ANSI / VT100 代码在 PowerShell 控制台中输出彩色文本

我写了一个程序,它打印一个包含 ANSI转义序列的字符串,以使文本变色。但是在默认的Windows 10控制台中,它并没有按预期工作,正如您在截图中所看到的那样。 程序输出出现了转义序列作为打印字符。 如果我通过变量或管道将该字符串提供给PowerShell,则输出将按预期显示(红色文本)。...

36得票7回答
如何在bash中获取光标位置?

在一个bash脚本中,我想将光标列数存储到一个变量中。使用ANSI转义码{ESC}[6n似乎是唯一的获取方法,例如以下方式: # Query the cursor position echo -en '\033[6n' # Read it to a variable read -d R C...

13得票3回答
TERM=linux中,ctrl + 箭头(左、右...)的终端转义序列是什么?

我正在浏览器中构建一个终端窗口(类似于ajaxterm),但不知道要发送哪个转义序列到ssh隧道(通过paramiko.SSHClient().invoke_shell(term='linux')打开)。 我已经找到了一个键盘记录器,并在$TERM == 'linux'的终端中尝试使用它,但...

13得票2回答
Java终端仿真器

有没有一个模拟vt100终端的库或类(无论是否有图形界面)?我想要的基本上是一个实现vt100终端逻辑的类(例如,接收到“删除”代码时会调用删除函数,如果是基于GUI的,则会删除一个字符)。

11得票3回答
Python正则表达式匹配VT100转义序列

我正在编写一个Python程序,用于记录终端交互(类似于script程序),我想在将其写入磁盘之前过滤掉VT100转义序列。我想使用以下函数:def strip_escapes(buf): escape_regex = re.compile(???) # <--- this is...

10得票1回答
在VT100/xterm终端(Mac OS X的终端)中向Emacs发送“C-(”?

有没有任何方式可以通过VT100/xterm终端(Mac OS X Terminal)向Emacs发送键盘按键“C-(”?是否存在一种可发送的转义序列以达到相同的效果? 我怀疑根本问题在于控制字符与括号(和其他使用Shift产生的字符)的组合概念不存在。 注意:不考虑使用Cocoa Ema...

8得票3回答
支持ANSI/VT100的AJAX控制台窗口?

我计划编写一个网关Web应用程序,需要支持VT100/ANSI转义码的“终端窗口”。有没有基于AJAX的替代方案? 我想要的是类似这样的东西:http://tryruby.hobix.com/ 我的首选后端系统是Python/Twisted/Pylons,但由于我只是在规划阶段,所以我将探...

8得票4回答
在Windows WPF或Silverlight中的VT100终端仿真

我正在考虑创建一个类似终端窗口的WPF或Silverlight应用程序。但由于它是在WPF/Silverlight中,所以可以通过效果、图像等方式“增强”终端体验。 我正在尝试找出模拟终端的最佳方法。我知道如何处理VT100仿真,例如解析等。但如何显示呢?我考虑使用RichTextBox,并...

8得票2回答
Python 中是否有类似于 Perl 模块 Term::VT102 的等效模块?

在Perl中,有一个非常方便的模块Term::VT102,它允许您在内存中创建一个屏幕。这对于爬取数据非常方便,因为您可以跟踪屏幕部分的所有更改,然后将屏幕导出为纯文本以进行处理。Python中是否有相应的模块? 跟进问题:有像Pexpect这样的模块可以帮助您屏幕抓取VT100屏幕,但是V...

7得票1回答
VT100 ANSI转义序列:获取屏幕大小,条件性ANSI

当我在终端上调整大小时,它会保持全屏状态。我猜想,有一种方法可以找出终端的屏幕尺寸。我该如何在VT100中实现这个功能? 使用“ls”命令列出文件夹时,文件夹以蓝色(或者说不同颜色)显示。但是,如果你将输出保存到文本文件中(ls > out.txt),你看不到任何ANSI代码,只有纯文...