XKBCLI-HOW-TO-TYPE(1) General Commands Manual XKBCLI-HOW-TO-TYPE(1)

# [NAME](#NAME)

`xkbcli-how-to-type` — query how to type a given Unicode code point or keysym

# [SYNOPSIS](#SYNOPSIS)

`xkbcli-how-to-type` \[options] `character/code point/keysym`

# [DESCRIPTION](#DESCRIPTION)

`xkbcli-how-to-type` prints the key combinations (keycode + modifiers) in the keymap’s layouts which would produce the given Unicode code point or keysym.

`code point/keysym` is either:

- a single character (requires a terminal which uses UTF-8 character encoding);
- a Unicode code point, interpreted as hexadecimal if prefixed with `0x` or `U+` else as decimal;
- a keysym if either the previous interpretations failed or if `--keysym` is used. The parameter is then either a keysym *name* or a *numeric* value (hexadecimal if prefixed with `0x` else decimal). Note that values `0` – `9` are special: they are both names and numeric values. The default interpretation is *names*; use the hexadecimal form `0x0` – `0x9` in order to interpret as numeric values.

# [EXAMPLES](#EXAMPLES)

`xkbcli-how-to-type` `--layout` `us 97`

 

`xkbcli-how-to-type` `--layout` `us 0x61`

 

`xkbcli-how-to-type` `--layout` `us U+0061`

 

`xkbcli-how-to-type` `--layout` `us a`

Print the key combinations that produce the letter “a” (decimal code point: `97`, hexadecimal code point: `61`) in the default `us` layout.

`xkbcli-how-to-type` `--layout` `us` `--keysym` `97`

 

`xkbcli-how-to-type` `--layout` `us` `--keysym` `0x61`

 

`xkbcli-how-to-type` `--layout` `us` `--keysym` `a`

Print the key combinations that produce the keysym “a” (decimal code: `97`, hexadecimal code: `61`) in the default `us` layout.

# [OPTIONS](#OPTIONS)

[`--keysym`](#keysym)

Treat the argument as only as a keysym

[`--disable-compose`](#disable)

Disable Compose support

[`--format`](#format) `keymap_format`

Specify the keymap format (numeric or label, e.g. “v1”)

[`--keymap`](#keymap) \[= `PATH`]

Load the XKB keymap from a file, ignore RMLVO options. If `PATH` is empty or “-”, read the stdin.

[`--rules`](#rules) `rules`

The XKB ruleset

[`--model`](#model) `model`

The XKB model

[`--layout`](#layout) `layout`

The XKB layout

[`--variant`](#variant) `variant`

The XKB layout variant

[`--options`](#options) `options`

The XKB options

[`--enable-environment-names`](#enable)

Allow to set the default RMLVO values via the following environment variables:

- [`XKB_DEFAULT_RULES`](#XKB_DEFAULT_RULES)
- [`XKB_DEFAULT_MODEL`](#XKB_DEFAULT_MODEL)
- [`XKB_DEFAULT_LAYOUT`](#XKB_DEFAULT_LAYOUT)
- [`XKB_DEFAULT_VARIANT`](#XKB_DEFAULT_VARIANT)
- [`XKB_DEFAULT_OPTIONS`](#XKB_DEFAULT_OPTIONS)

Note that this option may affect the default values of the previous options.

[`--verbose`](#verbose)

Enable verbose debugging output

[`--help`](#help)

Print a help message and exit.

# [SEE ALSO](#SEE_ALSO)

[xkbcli(1)](/man/os/libxkbcommon/xkbcli.1), [The libxkbcommon online documentation](https://xkbcommon.org)

September 11, 2024 Linux 4.19.0-gvisor

---

Document: xkbcli-how-to-type(1) from libxkbcommon 1.13.2-r3 (Chainguard OS)
Source: https://github.com/xkbcommon/libxkbcommon.git
