i3ステータスバー:バッテリー不足が赤色で表示されない

i3ステータスバー:バッテリー不足が赤色で表示されない

i3status.confで設定しました。

battery 0 {
  format = "%status %percentage - %remaining"
  low_threshold = 30
  threshold_type = time
  integer_battery_capacity = true
}

バッテリーインジケーターは low_threshold から赤色に変わらない点を除いて、うまく機能します。文書

赤ではないのはなぜですか?他のすべてのテキストは白です。

答え1

非常に基本的なi3status列を使用すると、オプションは非常に制限されます。しかし、この場合は「と言われたのが間違っているようですthreshold_type = time。これにより、電力時間が30分未満のままになると、i3statusに赤いテキストが表示されます(参照:i3status マンページ)。

threshold_type代わりにに設定すると、percentageバッテリーlow_threshold = 30残量が29%以下のときにバッテリーテキストが読み取りとして表示されます。

これがあなたの問題を解決したり、このページを探しているすべての人に役立つことを願っています。私もi3statusを使い始めましたが、今はお勧めできますコンキ素晴らしいステータスバーとして機能します。

答え2

数年後、このような文章を書いて申し訳ありません...

i3statusは、ラップトップが接続されていない場合にのみ赤で表示されるようです。充電中は、しきい値未満でも白で表示されます。

または問題は次のとおりですcolor_bad = "#FF0000"battery 0 {...}color_badを内部に設定するとgeneral {...}...よく覚えているなら。

答え3

ちょうどあなたの質問を偶然発見したが、答えがないので、試してみるかと思いました。

まずは編集しません/etc/i3status.conf。代わりにconkyとeditを使用してください~/.conkyrc。を変更すると、/etc/i3status.confシステムファイルが変更され、設定がシステム全体に適用されます。ファイルに以下を追加すると機能~/.conkyrcします。ただし、/sys/class/power_suply/AC0/onlineシステムに合わせてパスを変更する必要があるかもしれません。

${if_existing /sys/class/power_supply/AC0/online 0}
   ${if_match ${battery_percent} <= 20}
     {"full_text": "D ${battery_percent BAT0}%" , "color":"\#FB4646"},
   ${else}
     {"full_text": "D ${battery_percent BAT0}%" , "color":"\#909090"},
   ${endif}
${else}
   ${if_match ${battery_percent} <= 20}
     {"full_text": "

関連情報