I've implemented a Python module for communication with i3; it makes
communicating easy by doing socket stuff for the user and it also supports
subscribing to events with custom callbacks.

For example, the following Python code

import i3
i3.layout('tabbed')

changes the layout of the current workspace.

The user can still work with sockets and send messages to i3 as described
on the IPC interface page <http://i3wm.org/docs/ipc.html>, so it also works
as an i3-ipc library.
There's also an i3-ipc script, which is more or less just a clone of
i3-msg, and an i3wsbar implementation (still early in development though).

Source code is hosted at https://github.com/jzib/i3-py. The
README<https://github.com/jzib/i3-py/blob/master/README.md>contains
much more information about i3-py's features.

Criticism, feature requests, bug reports, contributions and insults are
welcome!

Jure Ziberna

Reply via email to