No description
Find a file
Federico Ceratto 0f5f68d32c Add send_command
2018-05-04 22:04:37 +01:00
private Add missing file 2018-04-27 10:25:13 +01:00
tests Initial commit 2017-04-29 22:37:22 +01:00
.gitignore Initial commit 2017-04-29 22:37:22 +01:00
i3ipc.nim Add send_command 2018-05-04 22:04:37 +01:00
i3ipc.nimble Initial commit 2017-04-29 22:37:22 +01:00
LICENSE Initial commit 2017-04-29 22:37:22 +01:00
README.adoc Add badges 2018-03-06 19:34:44 +00:00

== i3ipc

image:https://img.shields.io/badge/status-alpha-orange.svg[badge]
image:https://img.shields.io/badge/version-0.1.0-orange.svg[badge]
image:https://img.shields.io/badge/License-LGPL%20v3-blue.svg[badge]

A Nim client library for the https://i3wm.org[i3] https://i3wm.org/docs/ipc.html[IPC] interface

Can be used in sync or async applications.

=== Installation

[source,bash]
----
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:

[source,nim]
----
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.