xcb_get_modifier_mapping(3)
π xcb_get_modifier_mapping π
okay bestie, come sit with me, we're reading a manual page together π«Ά this one lives in the XCB Requests manual, and it's all about asking the X server "hey, which keys are your modifier keys actually mapped to?" no cap.
β¨ NAME β¨
xcb_get_modifier_mapping -
not me pointing out that the description line here is literally just a lonely little dash π the original page left it blank, so we're leaving it blank too. respect the source.
πΈ SYNOPSIS πΈ
#include <xcb/xproto.h>
π Request function
xcb_get_modifier_mapping_cookie_t
xcb_get_modifier_mapping(xcb_connection_t *conn,
π Reply datastructure
typedef struct xcb_get_modifier_mapping_reply_t {
uint8_t response_type;
uint8_t keycodes_per_modifier;
uint16_t sequence;
uint32_t length;
uint8_t pad0[24];
} xcb_get_modifier_mapping_reply_t;
π Reply function
xcb_get_modifier_mapping_reply_t
*xcb_get_modifier_mapping_reply(xcb_connection_t *conn,
xcb_get_modifier_mapping_cookie_t cookie,
xcb_generic_error_t **e);
π Reply accessors
xcb_keycode_t *xcb_get_modifier_mapping_keycodes(const
xcb_get_modifier_mapping_request_t *reply);
int xcb_get_modifier_mapping_keycodes_length(const
xcb_get_modifier_mapping_reply_t *reply);
xcb_generic_iterator_t xcb_get_modifier_mapping_keycodes_end(const
xcb_get_modifier_mapping_reply_t *reply);
π okay so lowkey clock that first accessor β it takes a xcb_get_modifier_mapping_request_t *reply. that's exactly how it's written in the source, bestie, so we are copying it character for character and NOT touching it. fr fr, hands off. π
π REQUEST ARGUMENTS π
connβ your XCB connection to X11. that's the whole list. one (1) argument, and it's the vibe carrier. β¨
π REPLY FIELDS π
response_typeβ the type of this reply. in this case it'sXCB_GET_MODIFIER_MAPPING. this field is also chilling insidexcb_generic_reply_t, and you can use it to tell replies apart from each other. it's giving "name tag at a party". πsequenceβ the sequence number of the last request the X11 server processed. like a lil receipt number, iykyk.lengthβ the length of the reply, in words. and heads up bestie, a word is 4 bytes. not 2. not 8. four. πkeycodes_per_modifierβTODO: NOT YET DOCUMENTED.π not me and you both finding out at the same time. the docs simply did not show up to the function. we report, we do not invent. π
π¦ DESCRIPTION π¦
bestie. there is literally nothing here. the original DESCRIPTION section is empty. an absolute silence, a blank canvas, a moment of peace. πΈ i'm not gonna make stuff up about what this request does beyond what's already on the page β that's the rule and i keep it. β¨
π RETURN VALUE π
Returns an xcb_get_modifier_mapping_cookie_t. πͺ
Errors have to be handled when you call the reply function xcb_get_modifier_mapping_reply.
If you'd rather handle errors in the event loop instead, use xcb_get_modifier_mapping_unchecked. see xcb-requests(3) for the details. slay, options, we love choices. π
π₯ ERRORS π₯
This request does never generate any errors. zero. none. it's the well-behaved main character of requests. no drama, no chaos, just vibes. β¨
β SEE ALSO β
nothing here either bestie π the original SEE ALSO section is empty. no cross-references, no friends, just this page standing alone in the group chat. π«Ά
π AUTHOR π
Generated from xproto.xml. Contact xcb@lists.freedesktop.org for corrections and improvements. they're literally asking for your feedback, so if something's off, tell them, that's your moment. π§β¨
and that's the whole page, bestie, you ate it ππ
this was X Version 11, libxcb 1.17.0, page xcb_get_modifier_mapping(3) β go forth and query your modifier mappings, you iconic little X11 gremlin ππβ¨
π¦ 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