Module xkbcommon::xkb [] [src]

Reexports

pub use xkb::keysyms::*;

Modules

ffi
keysyms

Structs

Context

Top level library context object.

ContextIncludePaths

Iterator to a Context include paths

Keymap

Compiled keymap object.

KeymapLayouts

iterator to the layouts in Keymap

KeymapLeds

iterator to the leds in a Keymap

KeymapMods

iterator to the modifiers in a Keymap

State

Keyboard state object.

Enums

KeyDirection

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

LogLevel

Constants

CONTEXT_NO_DEFAULT_INCLUDES

Create this context with an empty include path.

CONTEXT_NO_ENVIRONMENT_NAMES

Don't take RMLVO names from the environment.

CONTEXT_NO_FLAGS

Do not apply any context flags.

KEYCODE_INVALID
KEYCODE_MAX
KEYMAP_COMPILE_NO_FLAGS

Do not apply any flags.

KEYMAP_FORMAT_TEXT_V1

The current/classic XKB text format, as generated by xkbcomp -xkb.

KEYMAP_FORMAT_USE_ORIGINAL

Get the keymap as a string in the format from which it was created.

KEYSYM_CASE_INSENSITIVE
KEYSYM_NO_FLAGS
LAYOUT_INVALID
LED_INVALID
LED_NAME_CAPS
LED_NAME_NUM
LED_NAME_SCROLL
LEVEL_INVALID
MOD_INVALID
MOD_NAME_ALT
MOD_NAME_CAPS
MOD_NAME_CTRL
MOD_NAME_LOGO
MOD_NAME_NUM
MOD_NAME_SHIFT
STATE_LAYOUT_DEPRESSED

Depressed layout, i.e. a key is physically holding it.

STATE_LAYOUT_EFFECTIVE

Effective layout, i.e. currently active and affects key processing (derived from the other state components). Use this unless you explictly care how the state came about.

STATE_LAYOUT_LATCHED

Latched layout, i.e. will be unset after the next non-modifier key press.

STATE_LAYOUT_LOCKED

Locked layout, i.e. will be unset after the key provoking the lock has been pressed again.

STATE_LEDS

LEDs (derived from the other state components).

STATE_MATCH_ALL

Returns true if all of the modifiers are active.

STATE_MATCH_ANY

Returns true if any of the modifiers are active.

STATE_MATCH_NON_EXCLUSIVE

Makes matching non-exclusive, i.e. will not return false if a modifier not specified in the arguments is active.

STATE_MODS_DEPRESSED

Depressed modifiers, i.e. a key is physically holding them.

STATE_MODS_EFFECTIVE

Effective modifiers, i.e. currently active and affect key processing (derived from the other state components). Use this unless you explictly care how the state came about.

STATE_MODS_LATCHED

Latched modifiers, i.e. will be unset after the next non-modifier key press.

STATE_MODS_LOCKED

Locked modifiers, i.e. will be unset after the key provoking the lock has been pressed again.

Functions

keycode_is_legal_ext

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

keycode_is_legal_x11

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

keysym_from_name

Get a keysym from its name.

keysym_get_name

Get the name of a keysym.

keysym_to_utf8

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

keysym_to_utf32

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

Type Definitions

ContextFlags

Flags for context creation.

Keycode

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

KeymapCompileFlags

Flags for keymap compilation.

KeymapFormat

The possible keymap formats.

Keysym

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

KeysymFlags
LayoutIndex

Index of a keyboard layout.

LayoutMask

A mask of layout indices

LedIndex

Index of a keyboard LED.

LedMask

A mask of LED indices.

LevelIndex

Index of a shift level.

ModIndex

Index of a modifier.

ModMask

A mask of modifier indices.

StateComponent

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.

StateMatch

Match flags for xkb_state_mod_indices_are_active and xkb_state_mod_names_are_active, specifying how the conditions for a successful match. xkb::STATE_MATCH_NON_EXCLUSIVE is bitmaskable with the other modes.