XKBCLI-COMPILE-KEYMAP(1) General Commands Manual XKBCLI-COMPILE-KEYMAP(1)

# [NAME](#NAME)

`xkbcli-compile-keymap` — compile an X Keyboard keymap

# [SYNOPSIS](#SYNOPSIS)

`xkbcli-compile-keymap` \[`options`] \[`KEYMAP_PATH`]

# [DESCRIPTION](#DESCRIPTION)

`xkbcli-compile-keymap` compiles and prints a keymap based on the given options.

`KEYMAP_PATH`

Path to a keymap file, or “-” to read the standard input

[`--help`](#help)

Print help and exit

[`--verbose`](#verbose)

Enable verbose debugging output

[`--test`](#test)

Test compilation but do not print the keymap

[`--rmlvo`](#rmlvo)

Print the full RMLVO with the defaults filled in for missing elements in YAML format

[`--kccgst`](#kccgst)

Print a keymap which only includes the KcCGST component names instead of the full keymap

[`--kccgst-yaml`](#kccgst-yaml)

Print the KcCGST component names in YAML format.

[`--modmaps`](#modmaps)

Print real and virtual key modmaps and modifiers encodings in YAML format.

[`--include`](#include) `PATH`

Add the given path to the include path list. This option is order-dependent, include paths given first are searched first. If an include path is given, the default include path list is not used. Use `--include-defaults` to add the default include paths.

`--include-defaults`

Add the default set of include directories. This option is order-dependent, include paths given first are searched first.

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

The keymap format (numeric or label, e.g. “v1”) for parsing

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

The keymap format (numeric or label, e.g. “v1”) for serializing

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

The keymap format (numeric or label, e.g. “v1”) for both parsing and serializing

[`--no-pretty`](#no)

Disable pretty-printing for keymap serialization.

[`--drop-unused`](#drop)

Disable unused bits serialization.

[`--keymap`](#keymap) \[`PATH`], `--from-xkb` \[`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.

# [SEE ALSO](#SEE_ALSO)

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

June 4, 2024 Linux 4.19.0-gvisor

---

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