i3ipc

i3 IPC client library


Keywords
library, i3, i3wm, nim, nim-lang
License
LGPL-3.0
Install
nimble install i3ipc

Documentation

i3ipc

badge badge badge

A Nim client library for the i3 IPC interface

Can be used in sync or async applications.

Installation

nimble install i3ipc

Usage

Refer to the i3 documentation on how to use the interface.

Run "nim doc2" to generate docs for the library.

Usage example:

import i3ipc

let i3 = newI3Conn()
echo "version:", i3.get_version()
echo "focused window: ", i3.get_tree().get_focused_window()
echo "outputs: ", i3.get_outputs()
echo "workspaces: ", i3.get_workspaces()

# Subscribe to window notifications:
i3.subscribe(I3Event.window)

i3.close()

See the functional tests for more examples.