SSH.NET 基于彩色终端模拟器

SSH.NET based colored terminal emulator

我正在使用 SSH.NET 创建我的 UWP 终端应用程序。

目前,我已经能够 send/receive 使用库中的数据,但我想做一些类似 PuTTY 应用程序的事情,它以不同的颜色显示文本,甚至能够编辑Linux vi 编辑器的文件。

有没有办法用这个库获取颜色/位置信息?

执行服务器发送的 terminal emulation, you primarily have to process ANSI escape codes 时。

SSH.NET 或 .NET Framework 不支持它。

自行实施是一项艰巨的任务。终端仿真 terminal.c 的 PuTTY 实现有将近 8000 行代码。而且那只是加工部分,画图另当别论。

快速 google 搜索 “c# 终端仿真” 结果:
https://github.com/munificent/malison-dotnet
(虽然我没有使用这个库的经验)


SSH.NET 方面的唯一部分是通过使用带有 terminalName 参数(及其同伴)的 SshClient.CreateShell 重载来请求终端仿真。