【问题标题】:tmux in putty displays border as 'qqqqq' or 'xxxx'putty 中的 tmux 将边框显示为 'qqqqq' 或 'xxxx'
【发布时间】:2014-04-29 14:56:14
【问题描述】:

这篇文章类似于thisthis,但是没有putty,边框可以正常显示。因此,我怀疑这是由旧版本的tmux 引起的。

我正在运行 FreeBSD 9.2-releasetmux 1.9a(最新于 FreeBSD)。

我希望有人能给我解决这个问题的原因以及如何解决它。

【问题讨论】:

    标签: freebsd putty tmux


    【解决方案1】:

    我遇到了同样的问题。根本原因是 Linux 系统使用的是语言环境“POSIX”。 该问题已通过以下方式解决:

    # show system locale
    locale
    
    # using utf-8 as system locale
    export LC_ALL=en_US.UTF-8
    export LANG=en_US.UTF-8
    
    # attach tmux
    tmux a
    

    【讨论】:

    • 这对 tmux 产生了很大影响,但我仍然对 'lsblk' 感到奇怪。
    【解决方案2】:

    在 Linux 12.04 机器上启动 tmux 时,我遇到了与 Putty 相同的问题。即使在 PuTTY 中将字符集设置为 UTF-8(在 Window > Translation > Remote character set 下的设置中)也不能解决问题。

    使用 -u 选项启动 tmux 可以解决问题 (tmux -u)

    【讨论】:

    • 谢谢!这对我帮助很大。
    【解决方案3】:

    来自tmux FAQ

    我使用PuTTY 而我的tmux 窗格分隔符都是qqqqqqqqq's

    PuTTY 正在使用不支持 ACS 行的字符集转换 绘画。使用 Unicode 字体,尝试设置 PuTTY 以使用不同的翻译 在窗口 -> 翻译配置页面上。例如,将UTF-8 更改为 ISO-8859-1CP437。可能还需要调整PuTTY对待的方式 画线字符在同一配置页面的下部。

    话虽如此,我将tmux 1.8PuTTY 0.62、“UTF-8 翻译”、“Unicode 线条绘图代码点”和en_US.utf8 的远程语言环境一起使用,效果非常好。

    您可能已将 PuTTY 配置为使用 Unicode,而无需在您的 FreeBSD 机器上使用 UTF-8 区域设置,或者反过来(如果我将远程区域设置切换到 C 而不触及我的 PuTTY 设置我得到您描述的行为)。

    【讨论】:

    • 有同样的问题,这个答案是它的确切解决方案。我用命令locale 查询了远程主机的语言环境,发现它是C,所以我将Putty 的“远程字符集”设置更改为ISO-8859-15,tmux 行也很漂亮!感谢您的回答!
    【解决方案4】:

    在我的情况下,我可以通过启用 PuTTY 中的设置来修复它:

    Window ->
       Translation ->
          Adjust how PuTTY handles line drawing characters ->
             [X] Enable VT100 line drawing even in UTF-8 mode
    

    这是有道理的,因为“lqqqk”序列是 VT100 线条图的样子,如果它不被解释为这样。

    【讨论】:

      猜你喜欢
      • 2012-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多