logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

XkbGetNames - Obtain symbolic names from the server

Arguments

dpy    connection to the X server

       which  mask of names or map components to be updated

       xkb    keyboard description to be updated

Description

XkbGetNames  retrieves symbolic names for the components of the keyboard extension from the X server. The
       which parameter specifies the name components to be updated in the xkb  parameter,  and  is  the  bitwise
       inclusive OR of the valid names mask bits defined in Table 1.

                                 Table 1 Symbolic Names Masks
       ─────────────────────────────────────────────────────────────────────────────────
       Mask Bit                 Value      Keyboard     Field
                                           Component
       ─────────────────────────────────────────────────────────────────────────────────
       XkbKeycodesNameMask      (1<<0)     Xkb->names   keycodes
       XkbGeometryNameMask      (1<<1)     Xkb->names   geometry
       XkbSymbolsNameMask       (1<<2)     Xkb->names   symbols
       XkbPhysSymbolsNameMask   (1<<3)     Xkb->names   phys_symbols
       XkbTypesNameMask         (1<<4)     Xkb->names   type
       XkbCompatNameMask        (1<<5)     Xkb->names   compat
       XkbKeyTypeNamesMask      (1<<6)     Xkb->map     type[*].name
       XkbKTLevelNamesMask      (1<<7)     Xkb->map     type[*].lvl_names[*]
       XkbIndicatorNamesMask    (1<<8)     Xkb->names   indicators[*]
       XkbKeyNamesMask          (1<<9)     Xkb->names   keys[*], num_keys
       XkbKeyAliasesMask        (1<<10)    Xkb->names   key_aliases[*], num_key_aliases
       XkbVirtualModNamesMask   (1<<11)    Xkb->names   vmods[*]
       XkbGroupNamesMask        (1<<12)    Xkb->names   groups[*]
       XkbRGNamesMask           (1<<13)    Xkb->names   radio_groups[*], num_rg
       XkbComponentNamesMask    (0x3f)     Xkb->names   keycodes,
                                                        geometry,
                                                        symbols,
                                                        physical symbols,
                                                        types, and
                                                        compatibility map
       XkbAllNamesMask          (0x3fff)   Xkb->names   all name components

       If  the  names  field  of the keyboard description xkb is NULL, XkbGetNames allocates and initializes the
       names component of the keyboard description before obtaining the values specified by which.  If the namesfieldofxkb is not NULL, XkbGetNames obtains the values specified by which  and  copies  them  into  the
       keyboard description Xkb.

       If  the  map  component  of  the xkb parameter is NULL, XkbGetNames does not retrieve type or shift level
       names, even if XkbKeyTypeNamesMask or XkbKTLevelNamesMask are set in which.XkbGetNames can return Success, or BadAlloc, BadLength, BadMatch, and BadImplementation errors.

       To free symbolic names, use XkbFreeNames.

Diagnostics

BadAlloc       Unable to allocate storage

       BadImplementation
                      Invalid reply from server

       BadLength      The length of a request is shorter or longer than that required to minimally  contain  the
                      arguments

       BadMatch       A  compatible  version  of  Xkb was not available in the server or an argument has correct
                      type and range, but is otherwise invalid

Name

       XkbGetNames - Obtain symbolic names from the server

See Also

XkbFreeNames(3)

X Version 11                                      libX11 1.8.12                                   XkbGetNames(3)

Synopsis

StatusXkbGetNames(Display*dpy,unsignedintwhich,XkbDescPtrxkb);

See Also