i3status(1)
===========
Michael Stapelberg <michael+i3@stapelberg.de>
-v2.2, September 2010
+v2.3, July 2011
== NAME
Specifies an alternate configuration file path. By default, i3status looks for
configuration files in the following order:
-1. ~/.config/i3status/config (or $XDG_CONFIG_HOME/i3status/config if set)
-2. /etc/xdg/i3status/config (or $XDG_CONFIG_DIRS/i3status/config if set)
-3. ~/.i3status.conf
-4. /etc/i3status.conf (or SYSCONFDIR/i3status.conf if set at compile-time)
+1. ~/.i3status.conf
+2. ~/.config/i3status/config (or $XDG_CONFIG_HOME/i3status/config if set)
+3. /etc/i3status.conf
+4. /etc/xdg/i3status/config (or $XDG_CONFIG_DIRS/i3status/config if set)
== DESCRIPTION
-i3status is a small program (less than 1000 SLOC) for generating a status bar
-for dzen2, xmobar or similar programs. It is designed to be very efficient by
-issuing a very small number of system calls, as one generally wants to update
-such a status line every second. This ensures that even under high load, your
-status bar is updated correctly. Also, it saves a bit of energy by not hogging
-your CPU as much as spawning the corresponding amount of shell commands would.
+i3status is a small program (about 1500 SLOC) for generating a status bar for
+i3bar, dzen2, xmobar or similar programs. It is designed to be very
+efficient by issuing a very small number of system calls, as one generally
+wants to update such a status line every second. This ensures that even under
+high load, your status bar is updated correctly. Also, it saves a bit of energy
+by not hogging your CPU as much as spawning the corresponding amount of shell
+commands would.
== CONFIGURATION
interval = 5
}
-order = "ipv6"
+order += "ipv6"
order += "disk /"
order += "run_watch DHCP"
order += "run_watch VPN"
ethernet eth0 {
# if you use %speed, i3status requires the cap_net_admin capability
- format = "E: %ip (%speed)"
+ format_up = "E: %ip (%speed)"
+ format_down = "E: down"
}
battery 0 {
format = "%status %percentage %remaining"
+ path = "/sys/class/power_supply/BAT%d/uevent"
}
run_watch DHCP {
cpu_temperature 0 {
format = "T: %degrees °C"
+ path = "/sys/devices/platform/coretemp.0/temp1_input"
}
disk "/" {
hexadecimal triplet (with no separators between the colors), prefixed by a hash
character ("#").
-*Example color_good*: +#00FF00+
+*Example configuration*:
+-------------------------------------------------------------
+color_good = "#00FF00"
+-------------------------------------------------------------
Likewise, you can use the +color_separator+ directive to specify the color that
will be used to paint the separator bar. The separator is always output in
xmobar is a minimalistic, text based, status bar. It was designed to work
with the xmonad Window Manager.
none::
-Does not use any color codes. Separates values by the pipe symbol.
+Does not use any color codes. Separates values by the pipe symbol. This should
+be used with i3bar and can be used for custom scripts.
=== IPv6
want to see it this way, because it tells me how worn off my battery is.),
just specify +last_full_capacity = true+.
+If your battery is represented in a non-standard path in /sys, be sure to
+modify the "path" property accordingly. The first occurence of %d gets replaced
+with the battery number, but you can just hard-code a path as well.
+
*Example order*: +battery 0+
*Example format*: +%status %remaining+
*Example format*: +T: %degrees °C+
+=== CPU Usage
+
+Gets the percentual CPU usage from +/proc/stat+.
+
+*Example order*: +cpu_usage+
+
+*Example format*: +%usage+
+
=== Load
Gets the system load (number of processes waiting for CPU time in the last
-5, 10 and 15 minutes).
+1, 5 and 15 minutes).
*Example order*: +load+
-*Example format*: +%5min %10min %15min+
+*Example format*: +%1min %5min %15min+
=== Time
== Using i3status with dzen2
-After installing dzen2, you can directly use it with i3status:
+After installing dzen2, you can directly use it with i3status. Just ensure that
++output_format+ is set to +dzen2+.
*Example for usage of i3status with dzen2*:
--------------------------------------------------------------
== Using i3status with xmobar
To get xmobar to start, you might need to copy the default configuration
-file to +~/.xmobarrc+.
+file to +~/.xmobarrc+. Also, ensure that the +output_format+ option for i3status
+is set to +xmobar+.
*Example for usage of i3status with xmobar*:
---------------------------------------------------------------------
-i3status-xmobar | xmobar -o -t "%StdinReader%" -c "[Run StdinReader]"
+i3status | xmobar -o -t "%StdinReader%" -c "[Run StdinReader]"
---------------------------------------------------------------------
+== External scripts/programs with i3status
+
+In i3status, we don’t want to implement process management again. Therefore,
+there is no module to run arbitrary scripts or commands. Instead, you should
+use your shell, for example like this:
+
+*Example for prepending the i3status output*:
+--------------------------------------------------------------
+#!/bin/sh
+# shell script to prepend i3status with more stuff
+
+i3status | while :
+do
+ read line
+ echo "mystuff | $line"
+done
+--------------------------------------------------------------
+
+Put that in some script, say +.bin/my_i3status.sh+ and execute that instead of i3status.
+
== SEE ALSO
+strftime(3)+, +date(1)+, +glob(3)+, +dzen2(1)+, +xmobar(1)+
Thorsten Toepper
Baptiste Daroussin
+
+Axel Wagner
+
+Fernando Tarlá Cardoso Lemos