这篇文章类似于this和this,但是,没有putty
,边界可以正常显示。因此,我怀疑这是由旧版本的tmux
造成的。
我正在运行FreeBSD 9.2-release
和tmux 1.9a
(最新的FreeBSD
)。
我希望有人可以给我解决为什么会发生这种情况以及如何解决它。
来自tmux
FAQ:
我使用
PuTTY
和我的tmux
窗格分隔符都是qqqqqqqqq's
!
PuTTY
正在使用不支持ACS线条绘制的字符集转换。使用Unicode字体时,请尝试将PuTTY
设置为在窗口 - >翻译配置页面上使用不同的翻译。例如,将UTF-8
更改为ISO-8859-1
或CP437
。可能还需要调整PuTTY
处理同一配置页面下部的线条绘制字符的方式。
话虽这么说,我使用tmux 1.8
与PuTTY 0.62
,“UTF-8
翻译”,“Unicode线条绘制代码点”和en_US.utf8
的远程区域设置,工作得非常好。
您可能将PuTTY
配置为使用Unicode而不使用FreeBSD框中的UTF-8
语言环境,或者反过来(如果我将远程语言环境切换到C
而不触及我的PuTTY
设置,我会得到您描述的行为)。
在Linux 12.04机器上启动tmux时,我遇到了与Putty相同的问题。甚至在PuTTY中将charset设置为UTF-8(在Window> Translation> Remote character set下的设置中)并没有解决问题。
用-u选项启动tmux就可以了(tmux -u
)
我有同样的问题。根本原因是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