我想在网络浏览器中实现ssh终端客户端。我需要在ruby中为ssh连接实现服务器。有一个net / ssh库,但我不知道如何处理像vim或午夜指挥官这样的全屏程序。
答案 0 :(得分:3)
让我尝试重新解析您的问题:您正试图在Web浏览器上模拟SSH控制台会话。您似乎已经为大多数命令实现了简单的控制台输入/输出,但是当您尝试使用“vim”或午夜指挥官等全屏命令时,似乎会出现垃圾。
您遇到的问题与UN * X机器如何处理终端上的全屏控制台输出有关。全屏控制台应用程序查询terminfo / termcap库以确定清除屏幕,删除行,插入行,将光标放在特定点等所需的转义序列。您所看到的是这些的原始输出转义序列出现在默认的终端类型中,这很可能是基于ANSI的。
要解决您的问题,您必须:
根据您用于实现浏览器应用程序的技术堆栈,您可能能够找到其他人可能已经开发的库来解决此问题。