Xtermjs 如何组合节点pty和xterm
我使用服务器上的node pty、客户端上的ng termianl(xterm.js)和用于通信的socket.io向web应用程序添加了一个终端。我基本上能工作,但我有一些问题,可能我把事情弄得很复杂,所以这里有一些问题:Xtermjs 如何组合节点pty和xterm,xtermjs,node-pty,Xtermjs,Node Pty,我使用服务器上的node pty、客户端上的ng termianl(xterm.js)和用于通信的socket.io向web应用程序添加了一个终端。我基本上能工作,但我有一些问题,可能我把事情弄得很复杂,所以这里有一些问题: 我需要在xterm中实现哪些任务,以及我应该期望node pty处理哪些任务 创建历史缓冲区以处理上/下箭头 创建终端提示 左右手箭头 当在node pty中列出数据事件时,我会得到回显命令、响应和新的终端行。过滤掉任何不是已发出命令响应的数据事件的最佳方法是什么?有时
- 创建历史缓冲区以处理上/下箭头
- 创建终端提示
- 左右手箭头
这是PTY输入数据的写入位置Terminal.write
包含用户数据的事件(终端上的键盘输入)。应写信给PTYTerminal.onData
主机端的PTY主要有两个有趣的接口部分——IO字节流(现在可以假定为UTF8)和获取/设置终端大小的方法
- 创建历史缓冲区以处理上/下箭头
- 创建终端提示
- 左右手箭头
是的,
列x行的大小
在xterm.js和PTY上应该始终相同,否则会出现奇怪的输出错误。重新发明轮子需要大量的工作。另一种选择是将xterm.js连接到节点pty进程,并提供一个实际的终端。