tmuxはステータスバーにANSI色を印刷しません。

tmuxはステータスバーにANSI色を印刷しません。

私はMac OSX Yosemiteを使用しており、これを使用してistatsCPU温度を取得します。 統計出力

CPUの温度をtmuxステータスバーに表示したいので、次のようにtmuxを設定します。

tmux_conf

ご覧のとおり、:source-file ~/.tmux.conftmuxを実行すると、色をレンダリングする代わりにANSIコードをテキストとして印刷します。カラーコードをテキストとして印刷する代わりにtmuxでレンダリングするにはどうすればよいですか?

ベストアンサー1

ANSIコードをtmuxカラー変数に置き換える簡単なPythonスクリプトを書くことでこの問題を解決しました。

#!/usr/local/bin/python

s = raw_input("")

s = s.replace('\x1b[32m', '#[fg=colour10]')
s = s.replace('\x1b[93m', '#[fg=colour11]')
s = s.replace('\x1b[0m', '#[fg=colour255]')

print s

出力をスクリプトにパイプします。istats | grep "CPU temp" | ansi2tmuxcolors.py

おすすめ記事