我正在使用 Mac OS X Lion、Terminal.app 和 Tmux 1.6 版。当我使用同一终端 ssh 进入同一台计算机上的 Debian 虚拟机时,我得到一条虚线作为窗口边框,而不是一条实线。如何将虚线更改为实线?
4 回答
我找到了问题的根源。是字体。我使用的是Monaco,它以垂直窗格分隔符为虚线的方式显示垂直破折号。然而,对于Menlo,它是可靠的。
我在 Mac 上使用 iTerm 登录红帽时遇到了类似的问题。突然垂直线没有显示,水平线被虚线。
我通过取消签"Treat ambiguous-width characters as double width"
入解决了问题iTerm->Preferences->Profiles->Text
实际上,您喜欢的某些字体只包含少量字形来显示常用字符,而没有包含其他 unicode 字符的字形,例如 tmux 用作垂直分割线的 U+2502。所以系统通常默认使用后备字体,然而,不幸的是,后备字体不提供适合绘制连续线的字形。
一种可能的解决方案是使用支持选择备用字体的终端,例如 iTerm2,然后选择 Menlo 作为非 ascii 字体,同时使用原始字体。
另一个解决方案需要更多的工作,使用 fontforge 或其他字体编辑器使用正确显示的字体(如 Menlo)来修补丢失的字形。这是我所做的链接,使用 Menlo 的字形修补 Inconsolata for Powerline:https ://github.com/Determinant/inconsolata_for_powerline_mod
迟到但可能有用:
- 为非 ASCII 字符选择不同的字体
- 减少垂直间距,直到垂直分隔符加入单行