2017-06-14 82 views
3

我正在使用SSH.NET为UWP创建我的终端应用程序。基于SSH.NET的彩色终端仿真器

现在,我已经能够与库发送/接收数据,但是我想要做一些类似于应用程序的putty,它显示具有不同颜色的文本,甚至可以编辑文件与Linux“vi”编辑器。

有没有一种方法获得这个库的颜色/位置信息?

谢谢!

回答

4

执行terminal emulation时,您首先必须处理服务器发送的ANSI escape codes

在SSH.NET或.NET Framework中没有对此的支持。

自己实现它是一项艰巨的任务。终端仿真的PuTTY实现terminal.c拥有超过6500行代码。这只是一个处理部分,绘图是分开的。

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


这对SSH.NET侧的唯一部分,是通过使用SshClient.CreateShell的过载请求终端仿真,该过载需要terminalName参数(及其伴侣)。