目前bash提示显示为彩色版本,但没有字形,即:
?username???/???opt???path1???path2???
vim
按预期工作;硬分隔符的正确字形。
如果 最初它没有在vim中显示,直到我为putty安装了修补字体。即便如此,它仍然在shell提示符下不可见,但是我至少通过设置语言环境(参见结尾)并重新复制主配置来显示问号以显示: 到 使用以下方式拨打电力线: 这是在使用centos7映像的docker实例中,根据主电源线git存储库的设置说明使用 我将语言环境更改为: 感谢您尝试解决此问题的任何帮助,以及有关如何帮助诊断问题(甚至代码编辑)的任何提示都表示赞赏。 是否可以打印出当前主题以及正在使用的配置文件? 似乎这可能是渲染引擎的一个问题,或者可能与bash不兼容( GNU bash,版本4.2.46(2)-release(x86_64-redhat-linux-gnu) )? 编辑(1): 使用cat
powerline.json
个文件带有硬分隔符代码,
/usr/lib/python2.7/site-packages/powerline/config_files/config.json
~/.config/powerline/config.json
POWERLINE_BASH_CONTINUATION=1 POWERLINE_BASH_SELECT=1 source /usr/lib/python2.7/site-packages/powerline/bindings/bash/powerline.sh
pip
安装powerline。我确实必须将语言环境添加到裸骨图像中:localedef -i en_GB -c -f UTF-8 en_GB.UTF-8
LANG=en_GB.utf-8
LC_CTYPE="en_GB.utf-8"
LC_NUMERIC="en_GB.utf-8"
LC_TIME="en_GB.utf-8"
LC_COLLATE="en_GB.utf-8"
LC_MONETARY="en_GB.utf-8"
LC_MESSAGES="en_GB.utf-8"
LC_PAPER="en_GB.utf-8"
LC_NAME="en_GB.utf-8"
LC_ADDRESS="en_GB.utf-8"
LC_TELEPHONE="en_GB.utf-8"
LC_MEASUREMENT="en_GB.utf-8"
LC_IDENTIFICATION="en_GB.utf-8"
LC_ALL=en_GB.utf-8
echo $PS1 | od -c -t x1
,看起来问号就在提示中。电力线渲染引擎的问题可能是什么?
答案 0 :(得分:0)
这是由github.com/powerline/powerline上的 ZyX-I 提供的解决方案,请参阅我提出的以下问题a git issue on the powerline bug reporting page。
它基本上归结为我在将区域设置(export LC_ALL=en_gb.utf8
)更正为utf8编码之前启动的powerline守护程序,而不是使用ascii编码的默认POSIX语言环境。
为了我的目的,守护进程不是必需的,所以我只是将其杀掉,但是如果你使用它,那么你需要确保在执行之前适当地设置了语言环境。有关详细信息,请参阅前面提到的raised issue for more information。