I'm having trouble getting tmux to display lines for borders. They are being created with x and q. It's a debian squeeze server and the locale is set to en_US UTF8. I also tried adding
我很难让tmux显示边界。它们是用x和q创建的,它是一个debian压缩服务器,本地设置为en_US UTF8。我也试过添加
# instructs tmux to expect UTF-8 sequences
setw -g utf8 on
set -g status-utf8 on
lines to .tmux.conf. Nothing seems to work. I'm not sure if it's a locale issue or not. It displays correctly on other servers, but not the debian. I appreciate any tips you could offer! Thanks...
行.tmux.conf。似乎没有什么工作。我不确定这是不是一个地区问题。它在其他服务器上正确显示,而不是debian。我很感激你能提供的任何建议!谢谢……
8 个解决方案
#1
54
There is some mismatch between your terminal emulator and the terminfo database entry being used by tmux (the one named by the TERM environment variable when you start/attach to a tmux server).
在您的终端模拟器和tmux使用的终端数据库条目之间存在一些不匹配(当您开始/附加到tmux服务器时,术语环境变量指定的一个)。
Per the VT100 User Guide, Table 3-9: Special Graphics Characters, when the “special graphics set” is selected, x
is used to draw the “Vertical bar” and q
is used to draw “Horizontal line - Scan 5”.
在VT100用户指南中,表3-9:特殊图形字符,当选择“特殊图形集”时,使用x绘制“竖线”,q被用于绘制“水平线-扫描5”。
Under terminfo, the VT100 special graphics characters are available as a part of the Alternate Character Set functionality; see the “Line Graphics” section of the terminfo(5) man page.
在终端下,VT100特殊图形字符作为替代字符集功能的一部分可用;请参阅终端(5)手册页的“行图形”部分。
Probably (on your Debian server) the effective terminfo database entry indicates that ACS is available, but your terminal emulator is not actually responding to the specified control sequences.
可能(在您的Debian服务器上)有效的终止数据库条目表明ACS是可用的,但是您的终端模拟器实际上并没有响应指定的控制序列。
The tmux CHANGES file indicates that some terminal emulators (e.g. Putty) do not respect the ACS control sequences when they are in UTF-8 mode. Thus, tmux 1.4 has a change that makes it always use UTF-8 characters instead of ACS sequences when the attaching client specifies that it can handle UTF-8 (i.e. when attaching, -u
was given or UTF-8
is present in LC_ALL, LC_CTYPE or LANG; the utf8
window option is about what tmux should expect from the programs it runs, not what it can send to the attached client).
tmux更改文件表明一些终端模拟器(例如Putty)在UTF-8模式下不遵守ACS控制序列。因此,tmux 1.4有一个变化,它总是使用UTF-8字符而不是ACS序列,当附加的客户端指定它可以处理UTF-8(即当附加时,-u被给定或UTF-8在LC_ALL、LC_CTYPE或LANG中出现;utf8窗口选项是关于tmux应该从它运行的程序中期望什么,而不是它可以发送给附加的客户端。
Debian “squeeze” only includes tmux 1.3, so your tmux probably does not have the “prefer UTF-8 line drawing” feature (unless it pulls from a backports source).
Debian“压缩”只包含tmux 1.3,所以您的tmux可能没有“更喜欢UTF-8线条图”的特性(除非它从一个backports源提取)。
If you can not fix your terminal emulator nor upgrade to at least tmux 1.4, then you might be able to use tmux’s terminal-overrides
option to unset the ACS-related capabilities so that tmux will fall back to ASCII line drawing. In your .tmux.conf
(on the Debian system):
如果您不能修复您的终端模拟器,也不能升级到至少tmux 1.4,那么您可能可以使用tmux的终端overrides选项来取消与acs相关的功能,这样tmux就会回到ASCII线图。在你.tmux。conf(在Debian系统上):
set-option -ga terminal-overrides ',*:enacs@:smacs@:rmacs@:acsc@'
#2
42
I had the same problem with PuTTY and Windows 8 when connecting to tmux running on a Debian Squeeze machine. Even when setting the charset to UTF-8 in PuTTY (in the settings under Window > Translation > Remote character set) I didn't get the correct line drawing.
当连接到Debian压缩机器上的tmux时,我遇到了同样的问题:PuTTY和Windows 8。即使将charset设置为PuTTY中的UTF-8(在窗口> Translation > Remote字符集下的设置中),我也没有得到正确的线条图。
Setting the Remote character set to "Use font encoding" did the trick for me.
将远程字符集设置为“使用字体编码”为我提供了一个技巧。
#3
37
Try setting the character set to "UTF-8" and "Use Unicode line drawing code points" under Window -> Translation in your putty settings.
尝试将字符集设置为“UTF-8”,并“在您的putty设置中使用Window ->翻译”的“使用Unicode线条绘制代码点”。
#4
10
I had the same problem with Putty when launching tmux on Linux 12.04 machine. Even setting the charset to UTF-8 in PuTTY (in the settings under Window > Translation > Remote character set) didn't solve the problem.
在Linux 12.04机器上启动tmux时,我遇到了与Putty相同的问题。即使将charset设置为PuTTY中的UTF-8(在窗口>转换>远程字符集下的设置中)也不能解决问题。
Launching tmux with -u option did the trick (tmux -u
)
使用-u选项启动tmux的技巧(tmux -u)
#5
5
I ran thru the gamut of suggestions including:
我对各种建议进行了讨论,包括:
- confirming locale and UTF-8 setting in PuTTY
- 确认地区和UTF-8设置在PuTTY。
- exporting NCURSES_NO_UT8_ACS=1
- 出口NCURSES_NO_UT8_ACS = 1
- manually trying various fonts and PuTTY translation selections
- 手动尝试各种字体和PuTTY翻译选择。
Above did not work. Dialog displays showed qqqq... and xxxx with various corner characters.
以上没有工作。对话框显示显示qqqq……和各种角字符的xxxx。
Changing all dialog calls to include --ascii-lines was an option but it would involve a lot of script changes.
更改所有对话框的调用包括-ascii-lines是一个选项,但它会涉及很多脚本更改。
Best recommendation was to change the Remote Character Set to Use font encoding.
最好的建议是更改远程字符集以使用字体编码。
PuTTY Change Settings --> Window --> Translation --> Remote Character Set --> Use font encoding
PuTTY更改设置——>窗口——>翻译——>远程字符集——>使用字体编码。
Left all other PuTTY settings default.
所有其他的PuTTY设置都默认了。
#6
3
I changed the setting in Putty for terminal to Latin-1 and that seemed to fix the problem.
我将Putty的设置改为Latin-1,这似乎解决了问题。
#7
1
under windows/ putty the font you use has to have the characters for it to display set translation "UTF-8" and "Use Unicode line drawing code points" and font to "courier-new" and most of those problems go away
在windows/ putty下,你所使用的字体必须有字符来显示设置的翻译“UTF-8”和“使用Unicode线条绘制代码点”和字体“courier-new”,这些问题大部分都消失了。
#8
0
For me the issue was I forgot to make a locale.conf
file when I setup this Arch Linux box. Below line fixed the issue, substitute your own language. A reboot was not required for me.
对我来说,问题是我忘了做locale。当我设置这个Arch Linux框时,conf文件。下面的问题解决了,用你自己的语言。我不需要重新启动。
echo "LANG=en_US.UTF-8" > /etc/locale.conf
#1
54
There is some mismatch between your terminal emulator and the terminfo database entry being used by tmux (the one named by the TERM environment variable when you start/attach to a tmux server).
在您的终端模拟器和tmux使用的终端数据库条目之间存在一些不匹配(当您开始/附加到tmux服务器时,术语环境变量指定的一个)。
Per the VT100 User Guide, Table 3-9: Special Graphics Characters, when the “special graphics set” is selected, x
is used to draw the “Vertical bar” and q
is used to draw “Horizontal line - Scan 5”.
在VT100用户指南中,表3-9:特殊图形字符,当选择“特殊图形集”时,使用x绘制“竖线”,q被用于绘制“水平线-扫描5”。
Under terminfo, the VT100 special graphics characters are available as a part of the Alternate Character Set functionality; see the “Line Graphics” section of the terminfo(5) man page.
在终端下,VT100特殊图形字符作为替代字符集功能的一部分可用;请参阅终端(5)手册页的“行图形”部分。
Probably (on your Debian server) the effective terminfo database entry indicates that ACS is available, but your terminal emulator is not actually responding to the specified control sequences.
可能(在您的Debian服务器上)有效的终止数据库条目表明ACS是可用的,但是您的终端模拟器实际上并没有响应指定的控制序列。
The tmux CHANGES file indicates that some terminal emulators (e.g. Putty) do not respect the ACS control sequences when they are in UTF-8 mode. Thus, tmux 1.4 has a change that makes it always use UTF-8 characters instead of ACS sequences when the attaching client specifies that it can handle UTF-8 (i.e. when attaching, -u
was given or UTF-8
is present in LC_ALL, LC_CTYPE or LANG; the utf8
window option is about what tmux should expect from the programs it runs, not what it can send to the attached client).
tmux更改文件表明一些终端模拟器(例如Putty)在UTF-8模式下不遵守ACS控制序列。因此,tmux 1.4有一个变化,它总是使用UTF-8字符而不是ACS序列,当附加的客户端指定它可以处理UTF-8(即当附加时,-u被给定或UTF-8在LC_ALL、LC_CTYPE或LANG中出现;utf8窗口选项是关于tmux应该从它运行的程序中期望什么,而不是它可以发送给附加的客户端。
Debian “squeeze” only includes tmux 1.3, so your tmux probably does not have the “prefer UTF-8 line drawing” feature (unless it pulls from a backports source).
Debian“压缩”只包含tmux 1.3,所以您的tmux可能没有“更喜欢UTF-8线条图”的特性(除非它从一个backports源提取)。
If you can not fix your terminal emulator nor upgrade to at least tmux 1.4, then you might be able to use tmux’s terminal-overrides
option to unset the ACS-related capabilities so that tmux will fall back to ASCII line drawing. In your .tmux.conf
(on the Debian system):
如果您不能修复您的终端模拟器,也不能升级到至少tmux 1.4,那么您可能可以使用tmux的终端overrides选项来取消与acs相关的功能,这样tmux就会回到ASCII线图。在你.tmux。conf(在Debian系统上):
set-option -ga terminal-overrides ',*:enacs@:smacs@:rmacs@:acsc@'
#2
42
I had the same problem with PuTTY and Windows 8 when connecting to tmux running on a Debian Squeeze machine. Even when setting the charset to UTF-8 in PuTTY (in the settings under Window > Translation > Remote character set) I didn't get the correct line drawing.
当连接到Debian压缩机器上的tmux时,我遇到了同样的问题:PuTTY和Windows 8。即使将charset设置为PuTTY中的UTF-8(在窗口> Translation > Remote字符集下的设置中),我也没有得到正确的线条图。
Setting the Remote character set to "Use font encoding" did the trick for me.
将远程字符集设置为“使用字体编码”为我提供了一个技巧。
#3
37
Try setting the character set to "UTF-8" and "Use Unicode line drawing code points" under Window -> Translation in your putty settings.
尝试将字符集设置为“UTF-8”,并“在您的putty设置中使用Window ->翻译”的“使用Unicode线条绘制代码点”。
#4
10
I had the same problem with Putty when launching tmux on Linux 12.04 machine. Even setting the charset to UTF-8 in PuTTY (in the settings under Window > Translation > Remote character set) didn't solve the problem.
在Linux 12.04机器上启动tmux时,我遇到了与Putty相同的问题。即使将charset设置为PuTTY中的UTF-8(在窗口>转换>远程字符集下的设置中)也不能解决问题。
Launching tmux with -u option did the trick (tmux -u
)
使用-u选项启动tmux的技巧(tmux -u)
#5
5
I ran thru the gamut of suggestions including:
我对各种建议进行了讨论,包括:
- confirming locale and UTF-8 setting in PuTTY
- 确认地区和UTF-8设置在PuTTY。
- exporting NCURSES_NO_UT8_ACS=1
- 出口NCURSES_NO_UT8_ACS = 1
- manually trying various fonts and PuTTY translation selections
- 手动尝试各种字体和PuTTY翻译选择。
Above did not work. Dialog displays showed qqqq... and xxxx with various corner characters.
以上没有工作。对话框显示显示qqqq……和各种角字符的xxxx。
Changing all dialog calls to include --ascii-lines was an option but it would involve a lot of script changes.
更改所有对话框的调用包括-ascii-lines是一个选项,但它会涉及很多脚本更改。
Best recommendation was to change the Remote Character Set to Use font encoding.
最好的建议是更改远程字符集以使用字体编码。
PuTTY Change Settings --> Window --> Translation --> Remote Character Set --> Use font encoding
PuTTY更改设置——>窗口——>翻译——>远程字符集——>使用字体编码。
Left all other PuTTY settings default.
所有其他的PuTTY设置都默认了。
#6
3
I changed the setting in Putty for terminal to Latin-1 and that seemed to fix the problem.
我将Putty的设置改为Latin-1,这似乎解决了问题。
#7
1
under windows/ putty the font you use has to have the characters for it to display set translation "UTF-8" and "Use Unicode line drawing code points" and font to "courier-new" and most of those problems go away
在windows/ putty下,你所使用的字体必须有字符来显示设置的翻译“UTF-8”和“使用Unicode线条绘制代码点”和字体“courier-new”,这些问题大部分都消失了。
#8
0
For me the issue was I forgot to make a locale.conf
file when I setup this Arch Linux box. Below line fixed the issue, substitute your own language. A reboot was not required for me.
对我来说,问题是我忘了做locale。当我设置这个Arch Linux框时,conf文件。下面的问题解决了,用你自己的语言。我不需要重新启动。
echo "LANG=en_US.UTF-8" > /etc/locale.conf