xcb_xkb_get_kbd_by_name(3)
π xcb_xkb_get_kbd_by_name β XCB Requests, section 3 β¨
okay bestie, buckle up, we're in the XCB request pages and this one is literally called xcb_xkb_get_kbd_by_name π
yes it's a mouthful, no I will not be shortening it, the compiler doesn't care about your feelings.
πΈ NAME πΈ
xcb_xkb_get_kbd_by_name β and that's it. That's the whole description. The og page left it blank, so we're all just out here vibing with the name and the name alone π«Ά no cap, that's canon.
β¨ SYNOPSIS β¨
first things first, you gotta invite the header in:
#include <xcb/xkb.h>
π Request function
xcb_xkb_get_kbd_by_name_cookie_t
xcb_xkb_get_kbd_by_name(xcb_connection_t *conn,
xcb_xkb_device_spec_t deviceSpec, uint16_t need, uint16_t want,
uint8_t load);
π¦ Reply datastructure
typedef struct xcb_xkb_get_kbd_by_name_reply_t {
uint8_t response_type;
uint8_t deviceID;
uint16_t sequence;
uint32_t length;
xcb_keycode_t minKeyCode;
xcb_keycode_t maxKeyCode;
uint8_t loaded;
uint8_t newKeyboard;
uint16_t found;
uint16_t reported;
uint8_t pad0[16];
} xcb_xkb_get_kbd_by_name_reply_t;
look at that padding field just sitting there like a little wallflower π₯Ί pad0[16], we love you, we don't know what you do.
π Reply function
xcb_xkb_get_kbd_by_name_reply_t
*xcb_xkb_get_kbd_by_name_reply(xcb_connection_t *conn,
xcb_xkb_get_kbd_by_name_cookie_t cookie,
xcb_generic_error_t **e);
π Reply accessors
xcb_xkb_get_kbd_by_name_replies_t *xcb_xkb_get_kbd_by_name_replies
(const xcb_xkb_get_kbd_by_name_request_t *reply)
π₯ REQUEST ARGUMENTS π₯
connβ the XCB connection to X11. your lil hotline to the server, iconic, essential, we stan πdeviceSpecβ TODO: NOT YET DOCUMENTED. yeah. the docs said "figure it out yourself" and honestly? relatable πneedβ TODO: NOT YET DOCUMENTED. bestie the documentation is not documentationing πwantβ TODO: NOT YET DOCUMENTED. want... in THIS economy? πloadβ TODO: NOT YET DOCUMENTED. ngl we simply do not know. the void stares back π
π REPLY FIELDS π
response_typeβ the type of this reply, which in this case isXCB_XKB_GET_KBD_BY_NAME. this field is also chillin' in thexcb_generic_reply_t, and you can use it to tell replies apart from each other, like name tags at a party but for network messages πsequenceβ the sequence number of the last request processed by the X11 server. it's giving "receipt number" energy β¨lengthβ the length of the reply, in words. and bc someone will ask: a word is 4 bytes. periodt. πdeviceIDβ TODO: NOT YET DOCUMENTED.minKeyCodeβ TODO: NOT YET DOCUMENTED.maxKeyCodeβ TODO: NOT YET DOCUMENTED.loadedβ TODO: NOT YET DOCUMENTED.newKeyboardβ TODO: NOT YET DOCUMENTED.foundβ TODO: NOT YET DOCUMENTED.reportedβ TODO: NOT YET DOCUMENTED.
okay so lowkey a LOT of this page is "TODO: NOT YET DOCUMENTED." and I'm just the messenger bestie, I'm not about to invent lore for fields that the source didn't describe π no extra facts, that's the rule, we keep it 100.
π§ DESCRIPTION π§
...and that's the whole section. nothing. an empty room. a silent disco. the og page really said "description: no β€οΈ" so I'm saying it too. the vibe is mysterious, the facts are absent, and we respect that π
β RETURN VALUE β
so it hands you back an xcb_xkb_get_kbd_by_name_cookie_t β a lil cookie, a promise, a future snack πͺ and errors? you have to deal with those when you call the reply function xcb_xkb_get_kbd_by_name_reply.
if you'd rather handle errors in the event loop instead of right there, use xcb_xkb_get_kbd_by_name_unchecked. peek xcb-requests(3) for the details, it's the whole explainer π
π ERRORS π
this request does never generate any errors.
read it again. zero. none. not a single one. the error channel is on do-not-disturb mode and honestly? slay. β¨
π«Ά SEE ALSO π«Ά
(empty. just vibes. the original had nothing here either, so we're not gonna manifest fake references out of thin air π )
π AUTHOR π
generated from xkb.xml. contact xcb@lists.freedesktop.org for corrections and improvements β they're the ones you @ when something's off, not me, I'm just the hype woman π£
k bye bestie, that's the whole page π go forth and request your keyboard by name, whatever that ends up meaning πΈπ¦β¨
X Version 11 Β· libxcb 1.17.0 Β· xcb_xkb_get_kbd_by_name(3) β mwah, drink water, and remember: the padding field did nothing wrong π
π¦ 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