1

現在、bash プロンプトはカラー バージョンで表示されていますが、グリフはありません。

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

vim期待どおりに動作しています。ハードセパレータの正しいグリフ。

ハードセパレーターコードを含むファイルの場合、予想されるグリフ表示されます。catpowerline.json

パテ用のパッチを適用したフォントをインストールするまで、もともとはvim内に表示されませんでした。それでもシェルプロンプトには表示されませんでしたが、ロケールを設定し(最後を参照)、メイン構成を再コピーして、少なくとも疑問符を表示します。

/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あり、メインの電力線 git リポジトリのセットアップ手順に従って電力線がインストールされています。ベアボーン イメージにロケールを追加する必要がありました。

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) ) との非互換性に問題があるようです。

EDIT(1): 疑問符がプロンプト自体にあるかのように使用します。echo $PS1 | od -c -t x1おそらくパワーラインレンダリングエンジンの問題ですか?

4

1 に答える 1

0

これは、github.com/powerline/powerline のZyX-Iによって提供されるソリューションです。次の問題を参照してください。私は powerlineバグ報告ページで git issue を提起しました

それは本質的に、ロケール ( export LC_ALL=en_gb.utf8) を ascii エンコーディングを使用するデフォルトの POSIX ロケールではなく、utf8 エンコーディングに修正する前に開始した電力線デーモンに要約されます。

私の目的ではデーモンは不要だったので、単純に削除しましたが、使用する場合は、実行する前にロケールが適切に設定されていることを確認する必要があります。詳細については、前述の提起された問題を参照してください。

于 2017-11-20T12:40:41.437 に答える