Go to file
enkore 5474980b11 Support for standalone operation
Specify standalone=True to the I3statushandler constructor
to run i3pystatus without i3status in the background.
i3pystatus won't read input from stdin or any other
file object specified with input_stream.

The keyword argument interval specifies how often output should
be generated. The default is 1 (second).


Sorry guys for changing the way i3pystatus "way of operation"
is set so often. If you're want the "self-contained" mode
(you execute i3pystatus, i3pystatus automatically starts
i3status), don't set the file attribute, but pass the file
descriptor of the pipe as input_stream like this:

process = subprocess.Popen(["i3status", "-c", "~/.i3/status"], stdout=subprocess.PIPE, universal_newlines=True)
status = i3pystatus(input_stream=process.stdout)

On a side note:
The main class name has been changed to i3pystatus, but I3statusHandler
is still available as an alias. Use whichever you prefer :-)
(Linux is about choice after all)
2013-02-22 21:23:58 +01:00
i3pystatus Support for standalone operation 2013-02-22 21:23:58 +01:00
.gitignore Create package i3pystatus 2013-02-12 01:07:26 +01:00
MIT-LICENSE Create package i3pystatus 2013-02-12 01:07:26 +01:00
README.md Readme 2013-02-15 18:43:20 +01:00

i3pystatus

i3pystatus is a (hopefully growing) collection of python scripts for status output compatible to i3status / i3bar of the i3 window manager.

Installation

To install it, follow these steps:

cd ~/.config/i3status/
git clone git@github.com:janoliver/i3pystatus contrib
cd contrib/i3pystatus
cp __main__.py.dist __main__.py

Add the following to ~/.config/i3status/config:

general {
    output_format = "i3bar"
    colors = true
    interval = 5
}

Change your i3wm config to the following:

# i3bar
bar {
    status_command    cd ~/.config/i3status/contrib ; i3status | python -m i3pystatus
    position          top
    workspace_buttons yes
}

And finally adjust the settings in ~/.config/i3status/contrib/i3pystatus/__main__.py as you like.

Modules

thunderbirdnewmail

Requires

  • python-dbus
  • python-gobject2

Settings

  • format

modsde

Settings

  • username
  • password
  • pause (delay between updates)
  • offset (subtract number of posts before output)
  • format

Contribute

To contribute a script, make sure it has a function output() that outputs valid json code that can be interpreted by i3status. The protocol is documented here: i3status Protocol.

Please add an example for how to configure it to wrapper.py.dist. It should be a python class that can be registered with the I3StatusHandler class.