XkbTranslateKeyCode(3) XKB FUNCTIONS XkbTranslateKeyCode(3)

# [NAME](#NAME)

XkbTranslateKeyCode - Translate a keycode to a key symbol and modifiers

# [SYNOPSIS](#SYNOPSIS)

**Bool XkbTranslateKeyCode** **(XkbDescPtr xkb,** **KeyCode key,** **unsigned int mods,** **unsigned int \*mods\_rtrn,** **KeySym \*keysym\_rtrn);**

# [ARGUMENTS](#ARGUMENTS)

[*xkb*](#xkb)

keyboard description to use for translation

[*key*](#key)

keycode to translate

[*mods*](#mods)

modifiers to apply when translating key

[*mods\_rtrn*](#mods_rtrn)

backfilled with consumed modifiers

[*keysym\_rtrn*](#keysym_rtrn)

keysym resulting from translation

# [DESCRIPTION](#DESCRIPTION)

*mods\_rtrn* is backfilled with the modifiers consumed by the translation process. *mods* is a bitwise inclusive OR of the legal modifier masks: ShiftMask, LockMask, ControlMask, Mod1Mask, Mod2Mask, Mod3Mask, Mod4Mask, Mod5Mask.The AlwaysConsumeShiftAndLock library control (see below), if enabled, causes *XkbTranslateKeyCode* to consume shift and lock. *XkbTranslateKeyCode* returns True if the translation resulted in a keysym, and False if it resulted in NoSymbol.

The AlwaysConsumeShiftAndLock control, if enabled, forces *XLookupString* to consume the Shift and Lock modifiers when processing all keys, even if the definition for the key type does not specify these modifiers. The AlwaysConsumeShiftAndLock control is unset by default.

# [SEE ALSO](#SEE_ALSO)

[**XLookupString**(3)](/man/os/libx11/XLookupString.3)

libX11 1.8.13 X Version 11

---

Document: XkbTranslateKeyCode(3) from libx11 1.8.13-r7 (Chainguard OS)
Source: https://gitlab.freedesktop.org/xorg/lib/libx11.git
