tmux: pane dividing line display difference between terminals

Your terminal emulator (Google Chrome Secure Shell) does not support the alternate character set (ASC) capability that is advertised by the terminfo database entry specified by the TERM environment variable in effect when you connected to (or started) your tmux session.

The Chromium project has an issue concerning character set support in the terminal emulator that the Chrome app uses.


Per the VT100 User Guide, Table 3-9: Special Graphics Characters, when the “special graphics set” is selected, q is used to draw “Horizontal line - Scan 5”.

Under terminfo, the VT100 special graphics characters are available as a part of the Alternate Character Set (ACS) functionality; see the “Line Graphics” section of the terminfo(5) man page.


If you are using tmux 1.4 or later, and Google Chrome Secure Shell supports UTF-8, then you should be able to get UTF-8 line drawing characters by giving -u to your tmux clients (or by having UTF-8 present in LC_ALL, LC_CTYPE or LANG when you run a tmux client).

Alternatively, you could configure tmux to unset the ACS-related terminfo capabilities (in your ~/.tmux.conf):

# Google Chrome Secure Shell does not (yet) support ACS; do not use it (for now).
set-option -ga terminal-overrides ',*:enacs@:smacs@:rmacs@:acsc@'

tmux will fall back to ASCII line drawing (e.g. -, |, and +) if the attached client does not support UTF-8, and its TERM’s terminfo database entry (as adjusted by terminal-overrides) does not advertise ACS capabilities.

Note: You will basically need to restart your tmux server (exit out of all the sessions) before the configuration change will take effect.


I had same issue (Putty) and fixed it by changing LANG environment variable using following command

export LANG="en_US:en"

then i run tmux and lines were shown correctly

hope it helps

Tags:

Terminal

Tmux