产生原始输出的 ConEmu 和控制台 SSH 客户端(未处理 ANSI 转义)

产生原始输出的 ConEmu 和控制台 SSH 客户端(未处理 ANSI 转义)

我每天都使用 PuTTY,也大量使用 ConEmu(后者主要用于 Far Manager)。一周前,我停止使用 MTPuTTY,以便将 PuTTY 直接放入 ConEmu(因为 MTPuTTY 过于激进地获取焦点,导致我必须按Alt+Tab至少两次才能切换到另一个应用程序;ConEmu 具有出色的 Quake 风格控制台支持等等;等等)。但是,PuTTY 是一个 GUI 应用程序,其配置与 ConEmu 配置不匹配 + PuTTY 不允许使用我期望在 ConEmu 中使用的一些热键。

PuTTY 是 GUI 应用程序的原因非常明显:作为 GUI 应用程序实现,它可以克服 Windows 控制台子系统的限制。但 ConEmu 也克服了这些限制,所以我开始寻找可以在 Windows 控制台子系统中工作的 SSH 客户端,以便 ConEmu 可以拦截并改进它。像 Win32-OpenSSH 这样的解决方案实际上不起作用,因为它们已经处理了 ANSI 转义码并尝试将代码与 Windows 控制台限制保持一致(如果我没记错的话,AnsiColors256.ans来自 ConEmu 发行版的,在使用 Win32-OpenSSH 时几乎没有任何效果)。

我也尝试使用plink.exe,但它似乎无法处理 ANSI 转义码,因此 ConEmu 可以自行处理 ANSI 转义码。这似乎就是我想要的……但也有很多限制:光标和功能键被忽略,mc渲染非常混乱(没有框架字符,无法检测窗口大小等)。无论如何,我的自定义热键不再被阻止,ConEmu 配置现在可以在其基于真实控制台的选项卡中正常工作!

是否可以以plink.exe某种方式将 ConEmu 与(或其他东西)一起使用,以便我可以停止使用 PuTTY?还是我只是混淆了概念并尝试以错误的方式组合这些应用程序?

答案1

  1. 安装 cygwin 或 msys2 或 git-for-windows。在 Windows 10 中,您也可以在 Windows 上使用 Ubuntu 上的 Bash。
  2. 安装最新的 ConEmu alpha 版本。
  3. ConEmu 将使用连接器为新的 bash shell 创建新的默认任务。

只需运行它们并运行 ssh。


过去我做过一个链接叉虽然修复了一些问题(箭头键等),但它仍然不适合日常使用。

Win32-OpenSSH 也存在许多问题。

这就是为什么首选解决方案是连接器赛格威或者系统管理软件ssh 客户端的实现。适用于 Windows 的 Git基于msys2也是可以的。

相关内容