Skip to main content

Bindings for libxkbcommon using cffi

Project description

Python bindings for libxkbcommon using cffi.

Example usage:

>>> from xkbcommon import xkb
>>> ctx = xkb.Context()
>>> keymap = ctx.keymap_new_from_names()
>>> state = keymap.state_new()
>>> state.led_name_is_active("Caps Lock")
False
>>> capslock = 66
>>> str(state.update_key(capslock, xkb.XKB_KEY_DOWN))
'StateComponent.XKB_STATE_MODS_DEPRESSED|XKB_STATE_MODS_LOCKED|XKB_STATE_MODS_EFFECTIVE|XKB_STATE_LEDS'
>>> str(state.update_key(capslock, xkb.XKB_KEY_UP))
'StateComponent.XKB_STATE_MODS_DEPRESSED'
>>> state.led_name_is_active("Caps Lock")
True

Version numbering

From release 0.5 onwards, the version numbering of this package will relate to releases of libxkbcommon as follows:

If the Python package version is major.minor[.patch] then it requires at least release major.minor.0 of libxkbcommon to build and run, and should work with any subsequent release. The patch version of the Python package is unrelated to the patch version of libxkbcommon.

In practice this means that you should always specify a maximum version when depending on xkbcommon.

  • Most users should specify xkbcommon<1.1

  • If you need to use xkb.Context(no_secure_getenv=True) then specify xkbcommon<1.6

  • If you need to iterate over an xkb.ComposeTable instance then specify xkbcommon<1.7

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xkbcommon-1.5.1.tar.gz (80.2 kB view details)

Uploaded Source

File details

Details for the file xkbcommon-1.5.1.tar.gz.

File metadata

  • Download URL: xkbcommon-1.5.1.tar.gz
  • Upload date:
  • Size: 80.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for xkbcommon-1.5.1.tar.gz
Algorithm Hash digest
SHA256 ac174808dbf61d35d9da804bf33baac74bc6f2be0c108594ae93c79cd15ddc36
MD5 5b4301b79ffdb177ae1bdc0d22ce2ad6
BLAKE2b-256 bff66f304689f619323bfa64a8f3777da7b3108fdd513b6bf66e9438bf1c8a17

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page