Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/whitelynx/i3ipc

Python IPC library for i3 window manager.
https://github.com/whitelynx/i3ipc

Last synced: 3 months ago
JSON representation

Python IPC library for i3 window manager.

Awesome Lists containing this project

README

        

i3ipc - An Library for i3 IPC Communication

Current Status:
* Send commands by IPC to i3 window manager.
* Recieve parsed JSON responses from sent commands.
* Subscribe to i3 events using an evented model.
* Works with i3 window manager version 4.1.2; may work with other 4.x
versions, but will probably be missing functionality on older versions.


Dependencies (tested, may work with others):
* python 2.7.1

Optional Dependencies:
* pyxdg 0.19 (http://freedesktop.org/wiki/Software/pyxdg)
* xpyb 1.2 (http://cgit.freedesktop.org/xcb/xpyb/)

Events:
Events are subscribed to by passing a callable method along with a message
type to the subscribe module method. From then on any generated events will be
passed to the method and handled by that code.
Filters can be subscribed along with the original call. A "filter" is
simply a text string based on change arguments passed along with the events.
According to http://i3.zekjur.net/docs/ipc.html the following events can be
filtered with these arguments:

WORKSPACE Event:
focus
init
empty
urgent

OUTPUT Event:
unspecified

A comma-seperated list of options can be passed in to the i3ipc program;
i3ipc -S WORKSPACE,init

Comments:
Please let me know by email or github submissions if you find any errors or
have any suggestions. I am interested in improving this library to meet all
kinds of i3 use-cases.

Author:
Nathan Middleton - nathan/dot/middleton\at\gmail/dot/com