Update i3pystatus to be prettier.

This commit is contained in:
Ian Adam Naval 2014-08-08 01:44:19 -04:00
parent 8a728e75ca
commit fb4fd434e8

View File

@ -1,67 +1,82 @@
# -*- coding: utf-8 -*-
import subprocess
import os.path
import multiprocessing
from i3pystatus import Status
status = Status(standalone=True)
# Displays clock like this:
# Tue 30 Jul 11:59:46 PM KW31
# ^-- calendar week
COLORS = {
'Black': '#252525',
'DarkRed': '#f92672',
'DarkGreen': '#a6e22e',
'DarkYellow': '#f4bf75',
'DarkBlue': '#66d9ef',
'DarkMagenta': '#ae81ff',
'DarkCyan': '#a1efe4',
'LightGrey': '#f8f8f2',
'DarkGrey': '#75715e',
'Red': '#f92672',
'Green': '#a6e22e',
'Yellow': '#f4bf75',
'Blue': '#66d9ef',
'Magenta': '#ae81ff',
'Cyan': '#a1efe4',
'White': '#f9f8f5',
}
status.register("clock",
format="%a %Y-%m-%d %H:%M:%S",)
format="%a %Y-%m-%d %H:%M:%S",
color=COLORS['Magenta'])
# Shows the average load of the last minute and the last 5 minutes
# (the default value for format is used)
status.register("load", critical_limit=4)
status.register("load",
critical_limit=multiprocessing.cpu_count(),
critical_color=COLORS['Red'])
# # Shows your CPU temperature, if you have a Intel CPU
# status.register("temp",
# format="{temp:.0f}°C",)
status.register("disk",
path="/",
format="{avail}G",
display_limit=15,
critical_limit=10,
critical_color=COLORS['Red'])
# The battery monitor has many formatting options, see README for details
status.register("pulseaudio",
format="{volume}%{muted}",
muted="M")
# This would look like this, when discharging (or charging)
# ↓14.22W 56.15% [77.81%] 2h:41m
# And like this if full:
# =14.22W 100.0% [91.21%]
#
# This would also display a desktop notification (via dbus) if the percentage
# goes below 5 percent while discharging. The block will also color RED.
status.register("battery",
if os.path.exists("/sys/class/power_supply/BAT1"):
status.register("battery",
battery_ident="BAT1",
format="{status}/{consumption:.2f}W {percentage:.2f}% [{percentage_design:.2f}%] {remaining:%E%h:%M}",
format="{consumption:.1f}W {percentage_design:.1f}%{status} {remaining:%E%h:%M}",
alert=True,
alert_percentage=5,
alert_percentage=20,
charging_color=COLORS['Yellow'],
full_color=COLORS['Green'],
critical_color=COLORS['Red'],
status={
"DIS": "",
"CHR": "",
"FULL": "=",
},)
})
# Has all the options of the normal network and adds some wireless specific things
# like quality and network names.
#
# Note: requires both netifaces and basiciw
status.register("wireless",
if os.path.exists("/sys/class/net/wlp0s29u1u7i2"):
status.register("wireless",
interface="wlp0s29u1u7i2",
format_up="{essid} {quality:03.0f}%",)
format_up="{essid} {quality:.0f}%",
color_up=COLORS['Green'],
color_down=COLORS['Red'])
# Shows disk usage of /
# Format:
# 42/128G [86G]
status.register("disk",
path="/",
format="{avail}G",)
if os.path.exists("/sys/class/net/eth0"):
status.register("network",
interface="eth0",
color_up=COLORS['Green'],
color_down=COLORS['Red'])
status.register("mem")
# Shows pulseaudio default sink volume
#
# Note: requires libpulseaudio from PyPI
status.register("pulseaudio",
format="{volume}%",)
status.register("mem",
color=COLORS['Green'])
status.run()