Skip to content


Subversion checkout URL

You can clone with
Download ZIP
``keybinder`` is a library for registering global key bindings, for gtk-based applications. Python bindings included.
C Lua Vala Shell Python
Pull request Compare This branch is 19 commits ahead, 3 commits behind master.



:Author: Ulrik Sverdrup <>

**keybinder** is a library for registering global keyboard shortcuts.
Keybinder works with GTK-based applications using the X Window System.

The library contains:

* A C library, ``libkeybinder``
* Gobject-Introspection (gir)  generated bindings
* Lua bindings, ``lua-keybinder``
* Python bindings, ``python-keybinder``
* An ``examples`` directory with programs in C, Lua, Python and Vala.

Compile and Installation Notes

The package ``keybinder`` compiles against GTK+ 2 while the package
``keybinder-3.0`` compiles against GTK+ 3. The two packages can be
installed in parallel.

Both packages support generating gobject-introspection (gir) bindings,
even if these bindings are more relevant for the future, hence the GTK+
3 package. For ``keybinder-3.0``, the gir bindings are strongly
  recommended over any other language bindings.

``keybinder`` includes ``python-keybinder`` which are static python
(PyGTK 2) bindings.  If you don't have the neccessary dependencies, and
don't want to build the python bindings, you have to explicitly disable
them using the ``--disable-python`` option with configure.

``keybinder`` and ``keybinder-3.0`` include experimental static lua
bindings.  It is possible you need to tell configure where Lua includes
are to be found using (adjusting the path appropriately)::

    ./configure CPPFLAGS=-I/usr/include/lua5.1

If you want to compile with reduced library linking, configure using::

    CC="cc -Wl,--as-needed" ./configure

Build Requirements

    * GTK+ 3.0 (``keybinder-3.0``) or GTK+ 2.20 (``keybinder``)
    * gobject-introspection
    * gtk-doc 1.14
    * Python 2.5, pygobject 2.15.3, pygobject-codegen-2.0 for


This library originates in `Tomboy`_ and has been widely reused without
having a separate release. This package has taken the python bindings
from the `Deskbar Applet`_ project, and broken it out to a standalone
project. The library was subsequently rewritten in major parts.

.. _Tomboy:  
.. _`Deskbar Applet`:

.. vim: ft=rst tw=72
Something went wrong with that request. Please try again.