1

目前 bash 提示显示为彩色版本,但没有字形,即:

?username???/???opt???path1???path2???

vim正在按预期工作;硬分隔符的正确字形。

如果我使用硬分隔符代码的文件,可以看到预期的字形。catpowerline.json

最初它没有在 vim 中显示,直到我为 putty 安装了修补字体。即便如此,它在 shell 提示符下仍然不可见,但是我至少通过设置语言环境(见最后)并重新复制主配置来显示问号:

/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

这是在一个使用 centos7 映像的 docker 实例中pip,根据主 powerline git 存储库的设置说明安装了 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

感谢您尝试解决此问题的任何帮助,以及有关如何帮助诊断问题(甚至是代码编辑)的任何提示。

例如,是否可以打印出当前主题以及正在使用哪些配置文件?

看起来这可能是渲染引擎的问题,或者可能是与 bash(GNU bash,版本 4.2.46(2)-release (x86_64-redhat-linux-gnu))不兼容?

编辑(1): 使用echo $PS1 | od -c -t x1它看起来好像问号在提示本身中。可能是电力线渲染引擎的问题?

4

1 回答 1

0

这是 github.com/powerline/powerline 上的ZyX-I提供的解决方案,请参阅以下问题我在 powerline 错误报告页面上提出了一个 git 问题

它本质上归结为我在将语言环境 ( export LC_ALL=en_gb.utf8) 更正为 utf8 编码而不是使用 ascii 编码的默认 POSIX 语言环境之前启动的电力线守护程序。

出于我的目的,守护程序不是必需的,所以我只是将其杀死,但如果您使用它,那么您需要确保在执行它之前正确设置了区域设置。有关更多信息,请参阅前面提到的更多信息。

于 2017-11-20T12:40:41.437 回答