i3status(1)
===========
Michael Stapelberg <michael+i3@stapelberg.de>
-v2.1, April 2010
+v2.4, December 2011
== NAME
== SYNOPSIS
-i3status [-c configfile]
+i3status [-c configfile] [-h] [-v]
== OPTIONS
-c::
-Specifies an alternate configuration file path (default is /etc/i3status.conf
-or ~/.i3status.conf).
+Specifies an alternate configuration file path. By default, i3status looks for
+configuration files in the following order:
+
+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
*Example order*: +run_watch DHCP+
+*Example format*: +%title %status+
+
=== Wireless
Gets the link quality and ESSID of the given wireless network interface. You
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