DomTerm:一款为Linux打造的终端模拟器
副标题[/!--empirenews.page--]
DomTerm 是一款现代化的终端模拟器,它使用浏览器引擎作为 “GUI 工具包”。这就支持了一些相关的特性,例如可嵌入图像和链接、HTML 富文本以及可折叠(显示/隐藏)命令。除此以外,它看起来感觉就像一个功能完整、独立的终端模拟器,有着出色 xterm 兼容性(包括鼠标处理和 24 位色)和恰当的 “装饰” (菜单)。另外它内置支持了会话管理和副窗口(如同 图 1: DomTerminal 终端模拟器。 在以下部分我们将看一看这些特性。我们将假设你已经安装好了 前端 vs. 后端DomTerm 大部分是用 JavaScript 写的,它运行在一个浏览器引擎中。它可以是像例如 Chrome 或者 Firefox 一样的桌面浏览器(见图 3),也可以是一个内嵌的浏览器。使用一个通用的网页浏览器没有问题,但是用户体验却不够好(因为菜单是为通用的网页浏览而不是为了终端模拟器所打造),并且其安全模型也会妨碍使用。因此使用内嵌的浏览器更好一些。 目前以下这些是支持的:
图 2:在 Atom 编辑器中的 DomTerm 终端面板。 目前,Electron 前端可能是最佳选择,紧随其后的是 Qt 前端。如果你使用 Atom,atom-domterm 也工作得相当不错。 后端服务器是用 C 写的。它管理着伪终端(PTY)和会话。它同样也是一个为前端提供 Javascript 和其它文件的 HTTP 服务器。 一个稳健的可兼容 xterm 的终端模拟器DomTerm 看上去感觉像一个现代的终端模拟器。它处理鼠标事件、24 位色、Unicode、倍宽字符(CJK)以及输入方式。DomTerm 在 vttest 测试套件 上工作地十分出色。 其不同寻常的特性包括: 展示/隐藏按钮(“折叠”): 小三角(如上图 2)是隐藏/展示相应输出的按钮。仅需在提示符中添加特定的转义字符就可以创建按钮。 对于 readline 和类似输入编辑器的鼠标点击支持: 如果你点击输入区域(黄色),DomTerm 会向应用发送正确的方向键按键序列。(可以通过提示符中的转义字符启用这一特性,你也可以通过 用 CSS 样式化终端: 这通常是在 一个更好的 REPL 控制台一个经典的终端模拟器基于长方形的字符单元格工作的。这在 REPL(命令行)上没问题,但是并不理想。这里有些通常在终端模拟器中不常见的 REPL 很有用的 DomTerm 特性: 一个能“打印”图片、图形、数学公式或者一组可点击的链接的命令: 应用可以发送包含几乎任何 HTML 的转义字符。(HTML 会被剔除部分,以移除 JavaScript 和其它危险特性。) 图 3 显示了来自 gnuplot 会话的一个片段。Gnuplot(2.1 或者跟高版本)支持 DormTerm 作为终端类型。图形输出被转换成 SVG 图片,然后被打印到终端。我的博客帖子在 DormTerm 上的 Gnuplot 展示在这方面提供了更多信息。 图 3:Gnuplot 截图。 Kawa 语言有一个创建并转换几何图像值的库。如果你将这样的图片值打印到 DomTerm 终端,图片就会被转换成 SVG 形式并嵌入进输出中。 图 4:Kawa 中可计算的几何形状。 (编辑:西双版纳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |