xkbcommon.xkbcommon

Undocumented in source.

Members

Aliases

XKB_CONTEXT_NO_DEFAULT_INCLUDES
alias XKB_CONTEXT_NO_DEFAULT_INCLUDES = xkb_context_flags.XKB_CONTEXT_NO_DEFAULT_INCLUDES
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_CONTEXT_NO_ENVIRONMENT_NAMES
alias XKB_CONTEXT_NO_ENVIRONMENT_NAMES = xkb_context_flags.XKB_CONTEXT_NO_ENVIRONMENT_NAMES
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_CONTEXT_NO_FLAGS
alias XKB_CONTEXT_NO_FLAGS = xkb_context_flags.XKB_CONTEXT_NO_FLAGS
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEYMAP_COMPILE_NO_FLAGS
alias XKB_KEYMAP_COMPILE_NO_FLAGS = xkb_keymap_compile_flags.XKB_KEYMAP_COMPILE_NO_FLAGS
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEYMAP_FORMAT_TEXT_V1
alias XKB_KEYMAP_FORMAT_TEXT_V1 = xkb_keymap_format.XKB_KEYMAP_FORMAT_TEXT_V1
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEYSYM_CASE_INSENSITIVE
alias XKB_KEYSYM_CASE_INSENSITIVE = xkb_keysym_flags.XKB_KEYSYM_CASE_INSENSITIVE
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEYSYM_NO_FLAGS
alias XKB_KEYSYM_NO_FLAGS = xkb_keysym_flags.XKB_KEYSYM_NO_FLAGS
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEY_DOWN
alias XKB_KEY_DOWN = xkb_key_direction.XKB_KEY_DOWN
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEY_UP
alias XKB_KEY_UP = xkb_key_direction.XKB_KEY_UP
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LOG_LEVEL_CRITICAL
alias XKB_LOG_LEVEL_CRITICAL = xkb_log_level.XKB_LOG_LEVEL_CRITICAL
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LOG_LEVEL_DEBUG
alias XKB_LOG_LEVEL_DEBUG = xkb_log_level.XKB_LOG_LEVEL_DEBUG
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LOG_LEVEL_ERROR
alias XKB_LOG_LEVEL_ERROR = xkb_log_level.XKB_LOG_LEVEL_ERROR
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LOG_LEVEL_INFO
alias XKB_LOG_LEVEL_INFO = xkb_log_level.XKB_LOG_LEVEL_INFO
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LOG_LEVEL_WARNING
alias XKB_LOG_LEVEL_WARNING = xkb_log_level.XKB_LOG_LEVEL_WARNING
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_LAYOUT_DEPRESSED
alias XKB_STATE_LAYOUT_DEPRESSED = xkb_state_component.XKB_STATE_LAYOUT_DEPRESSED
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_LAYOUT_EFFECTIVE
alias XKB_STATE_LAYOUT_EFFECTIVE = xkb_state_component.XKB_STATE_LAYOUT_EFFECTIVE
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_LAYOUT_LATCHED
alias XKB_STATE_LAYOUT_LATCHED = xkb_state_component.XKB_STATE_LAYOUT_LATCHED
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_LAYOUT_LOCKED
alias XKB_STATE_LAYOUT_LOCKED = xkb_state_component.XKB_STATE_LAYOUT_LOCKED
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MATCH_ALL
alias XKB_STATE_MATCH_ALL = xkb_state_match.XKB_STATE_MATCH_ALL
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MATCH_ANY
alias XKB_STATE_MATCH_ANY = xkb_state_match.XKB_STATE_MATCH_ANY
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MATCH_NON_EXCLUSIVE
alias XKB_STATE_MATCH_NON_EXCLUSIVE = xkb_state_match.XKB_STATE_MATCH_NON_EXCLUSIVE
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MODS_DEPRESSED
alias XKB_STATE_MODS_DEPRESSED = xkb_state_component.XKB_STATE_MODS_DEPRESSED
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MODS_EFFECTIVE
alias XKB_STATE_MODS_EFFECTIVE = xkb_state_component.XKB_STATE_MODS_EFFECTIVE
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MODS_LATCHED
alias XKB_STATE_MODS_LATCHED = xkb_state_component.XKB_STATE_MODS_LATCHED
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_STATE_MODS_LOCKED
alias XKB_STATE_MODS_LOCKED = xkb_state_component.XKB_STATE_MODS_LOCKED
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
xkb_keycode_t
alias xkb_keycode_t = uint

A number used to represent a physical key on a keyboard.

xkb_keymap_key_iter_t
alias xkb_keymap_key_iter_t = void function(xkb_keymap* keymap, xkb_keycode_t key, void* data)

The iterator used by xkb_keymap_key_for_each().

xkb_keysym_t
alias xkb_keysym_t = uint

A number used to represent the symbols generated from a key on a keyboard.

xkb_layout_index_t
alias xkb_layout_index_t = uint

Index of a keyboard layout.

xkb_layout_mask_t
alias xkb_layout_mask_t = uint

A mask of layout indices.

xkb_led_index_t
alias xkb_led_index_t = uint

Index of a keyboard LED.

xkb_led_mask_t
alias xkb_led_mask_t = uint

A mask of LED indices.

xkb_level_index_t
alias xkb_level_index_t = uint

Index of a shift level.

xkb_mod_index_t
alias xkb_mod_index_t = uint

Index of a modifier.

xkb_mod_mask_t
alias xkb_mod_mask_t = uint

A mask of modifier indices.

Enums

xkb_context_flags
enum xkb_context_flags

Flags for context creation.

xkb_key_direction
enum xkb_key_direction

Specifies the direction of the key (press / release).

xkb_keymap_compile_flags
enum xkb_keymap_compile_flags

Flags for keymap compilation.

xkb_keymap_format
enum xkb_keymap_format

The possible keymap formats.

xkb_keysym_flags
enum xkb_keysym_flags

Flags for xkb_keysym_from_name().

xkb_log_level
enum xkb_log_level

Specifies a logging level.

xkb_state_component
enum xkb_state_component

Modifier and layout types for state objects. This enum is bitmaskable, e.g. (XKB_STATE_MODS_DEPRESSED | XKB_STATE_MODS_LATCHED) is valid to exclude locked modifiers.

xkb_state_match
enum xkb_state_match

Match flags for xkb_state_mod_indices_are_active() and xkb_state_mod_names_are_active(), specifying the conditions for a successful match. XKB_STATE_MATCH_NON_EXCLUSIVE is bitmaskable with the other modes.

Functions

xkb_context_get_log_level
xkb_log_level xkb_context_get_log_level(xkb_context* context)

Get the current logging level.

xkb_context_get_log_verbosity
int xkb_context_get_log_verbosity(xkb_context* context)

Get the current logging verbosity of the context.

xkb_context_get_user_data
void* xkb_context_get_user_data(xkb_context* context)

Retrieves stored user data from the context.

xkb_context_include_path_append
int xkb_context_include_path_append(xkb_context* context, const(char)* path)

Append a new entry to the context's include path.

xkb_context_include_path_append_default
int xkb_context_include_path_append_default(xkb_context* context)

Append the default include paths to the context's include path.

xkb_context_include_path_clear
void xkb_context_include_path_clear(xkb_context* context)

Remove all entries from the context's include path.

xkb_context_include_path_get
const(char)* xkb_context_include_path_get(xkb_context* context, uint index)

Get a specific include path from the context's include path.

xkb_context_include_path_reset_defaults
int xkb_context_include_path_reset_defaults(xkb_context* context)

Reset the context's include path to the default.

xkb_context_new
xkb_context* xkb_context_new(xkb_context_flags flags)

Create a new context.

xkb_context_num_include_paths
uint xkb_context_num_include_paths(xkb_context* context)

Get the number of paths in the context's include path.

xkb_context_ref
xkb_context* xkb_context_ref(xkb_context* context)

Take a new reference on a context.

xkb_context_set_log_fn
void xkb_context_set_log_fn(xkb_context* context, xkb_log_fn_t log_fn)
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
xkb_context_set_log_level
void xkb_context_set_log_level(xkb_context* context, xkb_log_level level)

Set the current logging level.

xkb_context_set_log_verbosity
void xkb_context_set_log_verbosity(xkb_context* context, int verbosity)

Sets the current logging verbosity.

xkb_context_set_user_data
void xkb_context_set_user_data(xkb_context* context, void* user_data)

Store custom user data in the context.

xkb_context_unref
void xkb_context_unref(xkb_context* context)

Release a reference on a context, and possibly free it.

xkb_keycode_is_legal_ext
auto xkb_keycode_is_legal_ext(K key)

Test whether a value is a valid extended keycode. @sa xkb_keycode_t

xkb_keycode_is_legal_x11
auto xkb_keycode_is_legal_x11(K key)

Test whether a value is a valid X11 keycode. @sa xkb_keycode_t

xkb_keymap_get_as_string
char* xkb_keymap_get_as_string(xkb_keymap* keymap, xkb_keymap_format format)

Get the compiled keymap as a string.

xkb_keymap_key_for_each
void xkb_keymap_key_for_each(xkb_keymap* keymap, xkb_keymap_key_iter_t iter, void* data)

Run a specified function for every valid keycode in the keymap. If a keymap is sparse, this function may be called fewer than (max_keycode - min_keycode + 1) times.

xkb_keymap_key_get_syms_by_level
int xkb_keymap_key_get_syms_by_level(xkb_keymap* keymap, xkb_keycode_t key, xkb_layout_index_t layout, xkb_level_index_t level, const(xkb_keysym_t*)* syms_out)

Get the keysyms obtained from pressing a key in a given layout and shift level.

xkb_keymap_key_repeats
int xkb_keymap_key_repeats(xkb_keymap* keymap, xkb_keycode_t key)

Determine whether a key should repeat or not.

xkb_keymap_layout_get_index
xkb_layout_index_t xkb_keymap_layout_get_index(xkb_keymap* keymap, const(char)* name)

Get the index of a layout by name.

xkb_keymap_layout_get_name
const(char)* xkb_keymap_layout_get_name(xkb_keymap* keymap, xkb_layout_index_t idx)

Get the name of a layout by index.

xkb_keymap_led_get_index
xkb_led_index_t xkb_keymap_led_get_index(xkb_keymap* keymap, const(char)* name)

Get the index of a LED by name.

xkb_keymap_led_get_name
const(char)* xkb_keymap_led_get_name(xkb_keymap* keymap, xkb_led_index_t idx)

Get the name of a LED by index.

xkb_keymap_max_keycode
xkb_keycode_t xkb_keymap_max_keycode(xkb_keymap* keymap)

Get the maximum keycode in the keymap.

xkb_keymap_min_keycode
xkb_keycode_t xkb_keymap_min_keycode(xkb_keymap* keymap)

Get the minimum keycode in the keymap.

xkb_keymap_mod_get_index
xkb_mod_index_t xkb_keymap_mod_get_index(xkb_keymap* keymap, const(char)* name)

Get the index of a modifier by name.

xkb_keymap_mod_get_name
const(char)* xkb_keymap_mod_get_name(xkb_keymap* keymap, xkb_mod_index_t idx)

Get the name of a modifier by index.

xkb_keymap_new_from_buffer
xkb_keymap* xkb_keymap_new_from_buffer(xkb_context* context, const(char)* buffer, size_t length, xkb_keymap_format format, xkb_keymap_compile_flags flags)

Create a keymap from a memory buffer.

xkb_keymap_new_from_file
xkb_keymap* xkb_keymap_new_from_file(xkb_context* context, FILE* file, xkb_keymap_format format, xkb_keymap_compile_flags flags)

Create a keymap from a keymap file.

xkb_keymap_new_from_names
xkb_keymap* xkb_keymap_new_from_names(xkb_context* context, const(xkb_rule_names)* names, xkb_keymap_compile_flags flags)

Create a keymap from RMLVO names.

xkb_keymap_new_from_string
xkb_keymap* xkb_keymap_new_from_string(xkb_context* context, const(char)* string, xkb_keymap_format format, xkb_keymap_compile_flags flags)

Create a keymap from a keymap string.

xkb_keymap_num_layouts
xkb_layout_index_t xkb_keymap_num_layouts(xkb_keymap* keymap)

Get the number of layouts in the keymap.

xkb_keymap_num_layouts_for_key
xkb_layout_index_t xkb_keymap_num_layouts_for_key(xkb_keymap* keymap, xkb_keycode_t key)

Get the number of layouts for a specific key.

xkb_keymap_num_leds
xkb_led_index_t xkb_keymap_num_leds(xkb_keymap* keymap)

Get the number of LEDs in the keymap.

xkb_keymap_num_levels_for_key
xkb_level_index_t xkb_keymap_num_levels_for_key(xkb_keymap* keymap, xkb_keycode_t key, xkb_layout_index_t layout)

Get the number of shift levels for a specific key and layout.

xkb_keymap_num_mods
xkb_mod_index_t xkb_keymap_num_mods(xkb_keymap* keymap)

Get the number of modifiers in the keymap.

xkb_keymap_ref
xkb_keymap* xkb_keymap_ref(xkb_keymap* keymap)

Take a new reference on a keymap.

xkb_keymap_unref
void xkb_keymap_unref(xkb_keymap* keymap)

Release a reference on a keymap, and possibly free it.

xkb_keysym_from_name
xkb_keysym_t xkb_keysym_from_name(const(char)* name, xkb_keysym_flags flags)

Get a keysym from its name.

xkb_keysym_get_name
int xkb_keysym_get_name(xkb_keysym_t keysym, char* buffer, size_t size)

Get the name of a keysym.

xkb_keysym_to_utf32
uint xkb_keysym_to_utf32(xkb_keysym_t keysym)

Get the Unicode/UTF-32 representation of a keysym.

xkb_keysym_to_utf8
int xkb_keysym_to_utf8(xkb_keysym_t keysym, char* buffer, size_t size)

Get the Unicode/UTF-8 representation of a keysym.

xkb_state_get_keymap
xkb_keymap* xkb_state_get_keymap(xkb_state* state)

Get the keymap which a keyboard state object is using.

xkb_state_key_get_consumed_mods
xkb_mod_mask_t xkb_state_key_get_consumed_mods(xkb_state* state, xkb_keycode_t key)

Get the mask of modifiers consumed by translating a given key.

xkb_state_key_get_layout
xkb_layout_index_t xkb_state_key_get_layout(xkb_state* state, xkb_keycode_t key)

Get the effective layout index for a key in a given keyboard state.

xkb_state_key_get_level
xkb_level_index_t xkb_state_key_get_level(xkb_state* state, xkb_keycode_t key, xkb_layout_index_t layout)

Get the effective shift level for a key in a given keyboard state and layout.

xkb_state_key_get_one_sym
xkb_keysym_t xkb_state_key_get_one_sym(xkb_state* state, xkb_keycode_t key)

Get the single keysym obtained from pressing a particular key in a given keyboard state.

xkb_state_key_get_syms
int xkb_state_key_get_syms(xkb_state* state, xkb_keycode_t key, const(xkb_keysym_t*)* syms_out)

Get the keysyms obtained from pressing a particular key in a given keyboard state.

xkb_state_key_get_utf32
uint xkb_state_key_get_utf32(xkb_state* state, xkb_keycode_t key)

Get the Unicode/UTF-32 codepoint obtained from pressing a particular key in a a given keyboard state.

xkb_state_key_get_utf8
int xkb_state_key_get_utf8(xkb_state* state, xkb_keycode_t key, char* buffer, size_t size)

Get the Unicode/UTF-8 string obtained from pressing a particular key in a given keyboard state.

xkb_state_layout_index_is_active
int xkb_state_layout_index_is_active(xkb_state* state, xkb_layout_index_t idx, xkb_state_component type)

Test whether a layout is active in a given keyboard state by index.

xkb_state_layout_name_is_active
int xkb_state_layout_name_is_active(xkb_state* state, const(char)* name, xkb_state_component type)

Test whether a layout is active in a given keyboard state by name.

xkb_state_led_index_is_active
int xkb_state_led_index_is_active(xkb_state* state, xkb_led_index_t idx)

Test whether a LED is active in a given keyboard state by index.

xkb_state_led_name_is_active
int xkb_state_led_name_is_active(xkb_state* state, const(char)* name)

Test whether a LED is active in a given keyboard state by name.

xkb_state_mod_index_is_active
int xkb_state_mod_index_is_active(xkb_state* state, xkb_mod_index_t idx, xkb_state_component type)

Test whether a modifier is active in a given keyboard state by index.

xkb_state_mod_index_is_consumed
int xkb_state_mod_index_is_consumed(xkb_state* state, xkb_keycode_t key, xkb_mod_index_t idx)

Test whether a modifier is consumed by keyboard state translation for a key.

xkb_state_mod_indices_are_active
int xkb_state_mod_indices_are_active(xkb_state* state, xkb_state_component type, xkb_state_match match, ...)

Test whether a set of modifiers are active in a given keyboard state by index.

xkb_state_mod_mask_remove_consumed
xkb_mod_mask_t xkb_state_mod_mask_remove_consumed(xkb_state* state, xkb_keycode_t key, xkb_mod_mask_t mask)

Remove consumed modifiers from a modifier mask for a key.

xkb_state_mod_name_is_active
int xkb_state_mod_name_is_active(xkb_state* state, const(char)* name, xkb_state_component type)

Test whether a modifier is active in a given keyboard state by name.

xkb_state_mod_names_are_active
int xkb_state_mod_names_are_active(xkb_state* state, xkb_state_component type, xkb_state_match match, ...)

Test whether a set of modifiers are active in a given keyboard state by name.

xkb_state_new
xkb_state* xkb_state_new(xkb_keymap* keymap)

Create a new keyboard state object.

xkb_state_ref
xkb_state* xkb_state_ref(xkb_state* state)

Take a new reference on a keyboard state object.

xkb_state_serialize_layout
xkb_layout_index_t xkb_state_serialize_layout(xkb_state* state, xkb_state_component components)

The counterpart to xkb_state_update_mask for layouts, to be used on the server side of serialization.

xkb_state_serialize_mods
xkb_mod_mask_t xkb_state_serialize_mods(xkb_state* state, xkb_state_component components)

The counterpart to xkb_state_update_mask for modifiers, to be used on the server side of serialization.

xkb_state_unref
void xkb_state_unref(xkb_state* state)

Release a reference on a keybaord state object, and possibly free it.

xkb_state_update_key
xkb_state_component xkb_state_update_key(xkb_state* state, xkb_keycode_t key, xkb_key_direction direction)

Update the keyboard state to reflect a given key being pressed or released.

xkb_state_update_mask
xkb_state_component xkb_state_update_mask(xkb_state* state, xkb_mod_mask_t depressed_mods, xkb_mod_mask_t latched_mods, xkb_mod_mask_t locked_mods, xkb_layout_index_t depressed_layout, xkb_layout_index_t latched_layout, xkb_layout_index_t locked_layout)

Update a keyboard state from a set of explicit masks.

Manifest constants

XKB_KEYCODE_INVALID
enum XKB_KEYCODE_INVALID;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEYCODE_MAX
enum XKB_KEYCODE_MAX;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_KEYMAP_USE_ORIGINAL_FORMAT
enum XKB_KEYMAP_USE_ORIGINAL_FORMAT;

Get the keymap as a string in the format from which it was created. @sa xkb_keymap_get_as_string()

XKB_LAYOUT_INVALID
enum XKB_LAYOUT_INVALID;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LED_INVALID
enum XKB_LED_INVALID;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_LEVEL_INVALID
enum XKB_LEVEL_INVALID;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
XKB_MOD_INVALID
enum XKB_MOD_INVALID;
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.

Structs

xkb_context
struct xkb_context

@struct xkb_context Opaque top level library context object.

xkb_keymap
struct xkb_keymap

@struct xkb_keymap Opaque compiled keymap object.

xkb_rule_names
struct xkb_rule_names

Names to compile a keymap with, also known as RMLVO.

xkb_state
struct xkb_state

@struct xkb_state Opaque keyboard state object.

Meta