加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

DomTerm:一款为Linux打造的终端模拟器

发布时间:2019-05-07 09:06:03 所属栏目:Windows 来源:Per Bothner
导读:了解一下 DomTerm,这是一款终端模拟器和复用器,带有 HTML 图形和其它不多见的功能。 DomTerm 是一款现代化的终端模拟器,它使用浏览器引擎作为 GUI 工具包。这就支持了一些相关的特性,例如可嵌入图像和链接、HTML 富文本以及可折叠(显示/隐藏)命令。

包括可点击链接的错误消息: DomTerm 可以识别语法 filename:line:column 并将其转化成一个能在可定制文本编辑器中打开文件并定位到行的链接。(这适用于相对路径的文件名,如果你用 PROMPT_COMMAND 或类似的跟踪目录。)

编译器可以侦测到它在 DomTerm 下运行,并直接用转义字符发出文件链接。这比依赖 DomTerm 的样式匹配要稳健得多,因为它可以处理空格和其他字符并且无需依赖目录追踪。在图 4 中,你可以看到来自 Kawa Compiler 的错误消息。悬停在文件位置上会使其出现下划线,file: URL 出现在 atom-domterm 消息栏(窗口底部)中。(当不用 atom-domterm 时,这样的消息会在一个浮层的框中显示,如图 1 中所看到的 PAUSED 消息所示。)

点击链接时的动作是可以配置的。默认对于带有 #position 后缀的 file: 链接的动作是在文本编辑器中打开那个文件。

结构化内部表示:以下内容均以内部节点结构表示:命令、提示符、输入行、正常和错误输出、标签,如果“另存为 HTML”,则保留结构。HTML 文件与 XML 兼容,因此你可以使用 XML 工具搜索或转换输出。命令 domterm view-saved 会以一种启用命令折叠(显示/隐藏按钮处于活动状态)和重新调整窗口大小的方式打开保存的 HTML 文件。

内建的 Lisp 样式优美打印: 你可以在输出中包括优美打印指令(比如,grouping),这样断行会根据窗口大小调整而重新计算。查看我的文章 DomTerm 中的动态优美打印以更深入探讨。

基本的内建行编辑,带着历史记录(像 GNU readline 一样): 这使用浏览器自带的编辑器,因此它有着优秀的鼠标和选择处理机制。你可以在正常字符模式(大多数输入的字符被指接送向进程);或者行模式(通常的字符是直接插入的,而控制字符导致编辑操作,回车键会向进程发送被编辑行)之间转换。默认的是自动模式,根据 PTY 是在原始模式还是终端模式中,DomTerm 在字符模式与行模式间转换。

自带的分页器(类似简化版的 less):键盘快捷键控制滚动。在“页模式”中,输出在每个新的屏幕(或者单独的行,如果你想一行行地向前移)后暂停;页模式对于用户输入简单智能,因此(如果你想的话)你无需阻碍交互式程序就可以运行它。

多路复用和会话

标签和平铺: 你不仅可以创建多个终端标签,也可以平铺它们。你可以要么使用鼠标或键盘快捷键来创建或者切换面板和标签。它们可以用鼠标重新排列并调整大小。这是通过 GoldenLayout JavaScript 库实现的。图 1 展示了一个有着两个面板的窗口。上面的有两个标签,一个运行 Midnight Commander;底下的面板以 HTML 形式展示了 dormterm help 输出。然而相反在 Atom 中我们使用其自带的可拖拽的面板和标签。你可以在图 2 中看到这个。

分离或重接会话: 与 tmux 和 GNU screen 类似,DomTerm 支持会话安排。你甚至可以给同样的会话接上多个窗口或面板。这支持多用户会话分享和远程链接。(为了安全,同一个服务器的所有会话都需要能够读取 Unix 域接口和一个包含随机密钥的本地文件。当我们有了良好、安全的远程链接,这个限制将会有所放松。)

domterm 命令 类似与 tmux 和 GNU screen,它有多个选项可以用于控制或者打开单个或多个会话的服务器。主要的差别在于,如果它没在 DomTerm 下运行,dormterm 命令会创建一个新的顶层窗口,而不是在现有的终端中运行。

tmuxgit 类似,dormterm 命令有许多子命令。一些子命令创建窗口或者会话。另一些(例如“打印”一张图片)仅在现有的 DormTerm 会话下起作用。

命令 domterm browse 打开一个窗口或者面板以浏览一个指定的 URL,例如浏览文档的时候。

获取并安装 DomTerm

DomTerm 可以从其 Github 仓库获取。目前没有提前构建好的包,但是有详细指导。所有的前提条件在 Fedora 27 上都有,这使得其特别容易被搭建。

【编辑推荐】

  1. 从命令行关闭Linux计算机的5种方法
  2. 4种在Linux中检查默认网关或路由器IP地址的方法
  3. 如何在Linux上安装、配置NTP服务器和客户端?
  4. Linux初学者:如何在Ubuntu中重启网络
  5. 在Linux中如何使用iotop和iostat监控磁盘I/O活动?
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!