XCB_INPUT_CHANGE_DEVICE_KEY_MAPPING_CHECKED(3)
π xcb_input_change_device_key_mapping β bestie's guide to the XCB Input extension
okay so you're in section 3 of the manual, which means we're in C-library land, and this one lives in libxcb (the XCB Requests family). It's called xcb_input_change_device_key_mapping, and yes, that name is a whole mouthful, but we move. π¦
β¨ SYNOPSIS β¨
first, the include. you literally cannot do anything without it:
#include <xcb/xinput.h>
then, the request function itself:
xcb_void_cookie_t
xcb_input_change_device_key_mapping(xcb_connection_t *conn,
uint8_t device_id, xcb_input_key_code_t first_keycode,
uint8_t keysyms_per_keycode, uint8_t keycode_count, const
xcb_keysym_t *keysyms);
it's giving very "six arguments and a dream", but slay, we got this. π
π REQUEST ARGUMENTS π
here's the whole roster, one by one, no skipping:
connβ the XCB connection to X11. your little lifeline to the server, your main character connection, periodt.device_idβ TODO: NOT YET DOCUMENTED. π yeah. the docs simply did not show up. it's an open invitation, bestie.first_keycodeβ TODO: NOT YET DOCUMENTED. same energy, same mystery.keysyms_per_keycodeβ TODO: NOT YET DOCUMENTED. still not a single word. iconic in a "we know nothing" way.keycode_countβ TODO: NOT YET DOCUMENTED. π«Άkeysymsβ TODO: NOT YET DOCUMENTED. yes, even this one. the whole argument list is a group chat with everyone on read.
not me pointing out that literally every argument here is undocumented π that's just how the XML came out, and I'm not about to invent lore that isn't real. if it says TODO, it's TODO. no cap.
πΈ DESCRIPTION πΈ
there is genuinely no description text on this page. like, none. the section exists and it is empty. the vibe is "we came, we saw, we left". π
π RETURN VALUE π
it returns an xcb_void_cookie_t. and because it's a void cookie, any errors (if there even are any) have to be handled in the event loop β that's the whole point of the void-cookie life, you go get your answer later. π₯
if you'd rather handle errors directly with xcb_request_check instead, then use xcb_input_change_device_key_mapping_checked. see xcb-requests(3) for the details, because that page is the one with the receipts.
π ERRORS π
good news, bestie: this request does never generate any errors. that's it, that's the section. nothing to catch, nothing to panic about. go off. β¨
π SEE ALSO π
this page's SEE ALSO section is empty β no references listed, so there's nothing to send you off to. (the return-value prose above does nod at xcb-requests(3), and that's where you'd look for request-handling details.)
π§ AUTHOR π§
Generated from xinput.xml. Contact xcb@lists.freedesktop.org for corrections and improvements.
and that's the whole page, bestie. this one ships with X Version 11 and libxcb 1.17.0 β take care of her, she's been waiting in the docs since forever. mwah. πβ¨
π¦ where this page comes from
- alpine 3.22: libxcb-doc 1.17.0-r0 Β· MIT
- alpine 3.23: libxcb-doc 1.17.0-r1 Β· MIT
- alpine 3.24: libxcb-doc 1.17.0-r2 Β· MIT
- arch rolling: libxcb 1.17.0-1 Β· X11
- centos-stream 10: libxcb-devel 1.17.0-3.el10 Β· X11
- debian trixie: libxcb-doc 1.17.0-2
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- nixpkgs unstable: libxcb 1.17.0
- opensuse-leap 16.0: libxcb-devel-doc 1.17.0-160000.2.2 Β· MIT
- ubuntu questing: libxcb-doc 1.17.0-2build1
- ubuntu resolute: libxcb-doc 1.17.0-2ubuntu1
- ubuntu stonking: libxcb-doc 1.17.0-2ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms