IT技術
PR

tmux に powerline-status が反映されなかったので調べてみた

kawa.xxx
記事内に商品プロモーションを含む場合があります

これまでは powerline-status を使っていたのですが、 tmux を3.0に更新したあたりから、 powerline-staus を認識してくれなくなってしまいました。

結論から言うと、私のMacは上記の更新をしたタイミングでメインの言語を日本語から英語に変更していました。加えて、環境変数の LC_ALL が定義されていなかったことが原因のようでした。

export LANG='en_US.UTF-8'
export LC_ALL='en_US.UTF-8’  #これが書いてなかった!

どうやって特定したか?

tmux の設定ファイルを変更して、リロードコマンド

$ tmux source-file path/to/.tmux.conf

を打ったら poworline xxx returned 1 という文字列が表示された。これはおそらく何らかのエラーが起きている証だと思いました。

そこで、シェルから直接 powerline-damon を起動させてみると、locale 周りでエラーが出ていました。
Shell の設定ファイルを確認してみると LANG は設定しているけど LC_ALL を設定していないことに気づいたので、LANG 同様に追記して Shell を再起動してtmux を起動してみるときれいなステータスラインが表示されました。

エラーコードとかしっかり書かなくては。とおもって LC_ALL を削除してすべて再起動しても powerline-status はきれいに表示されたままでエラーが再現せず。。。内部でキャッシュしてるのかなぁ。。。?

tmux 2: Productive Mouse-Free Development

tmux 2: Productive Mouse-Free Development

  • 作者:Hogan, Brian P.
  • 発売日: 2016/11/27
  • メディア: ペーパーバック
ABOUT ME
kawa.xxx
都内のIT系企業に勤める会社員。自分の備忘録的なアウトプット用の場所で、ボルダリングやガシェッド、セキュリティ、カメラの話題が中心です。
記事URLをコピーしました