XKBCLI-INTERACTIVE-EVDEV(1)
π xkbcli-interactive-evdev π
okay bestie, welcome to the General Commands Manual section, because this little cutie is a general command and we're gonna treat her like the icon she is π
β¨ NAME β¨
xkbcli-interactive-evdev β interactive debugger for X Keyboard keymaps πΉπ¦
πΈ SYNOPSIS πΈ
xkbcli-interactive-evdev [options] [KEYMAP_PATH]
π«Ά DESCRIPTION π«Ά
so like, xkbcli-interactive-evdev is a commandline tool that lets you interactively debug XKB keymaps, and the way it does that is by listening to /dev/input/eventX evdev devices π literally just vibing on your input devices and telling you what's up.
heads up though: xkbcli-interactive-evdev requires permission to open the evdev device nodes. that usually means you gotta be the βrootβ user, or be a member of the βinputβ group. no permission, no party π
when you're done, press the β¨Escapeβ© key to exit. that's the whole escape plan, bestie πβοΈ
β οΈ real talk: this is a debugging tool, and its behavior or output is not guaranteed to be stable. do not build your whole personality around it. it's giving "works on my machine" energy and that's on purpose.
π OPTIONS π
KEYMAP_PATHβ path to a keymap file, orβ-βto read from standard input π--helpβ prints help and dips out. slay.--verboseβ turns on verbose debugging output. more words, more drama, more info π₯--include PATHβ adds the given path to the include path list. this option is order-dependent, so include paths given first are searched first β first come, first served, periodt. π if an include path is given, the default include path list is not used. so if you want those defaults back, hit up--include-defaults.--include-defaultsβ adds the default set of include directories. also order-dependent: include paths given first are searched first. π§--format keymap_formatβ specifies the keymap format (numeric or label, e.g.βv1β) π--rules rulesβ the XKB ruleset--model modelβ the XKB model--layout layoutβ the XKB layout--variant variantβ the XKB layout variant--option optionsβ the XKB options--enable-environment-namesβ allows you to set the default RMLVO values via these environment variables, bestie:XKB_DEFAULT_RULESXKB_DEFAULT_MODELXKB_DEFAULT_LAYOUTXKB_DEFAULT_VARIANTXKB_DEFAULT_OPTIONS
note: this option may affect the default values of the previous options. yes, the previous ones. they're all connected, iykyk π
--keymap fileβ specifies a keymap path. this option is mutually exclusive with the RMLVO options. pick a lane, choose your fighter π₯--enable-composeβ enables Compose functionality β¨--consumed-mode {xkb|gtk}β sets the consumed modifiers mode (default:xkb) π--without-x11-offsetβ doesn't add an offset of8when converting an evdev keycode to an XKB keycode. and likeβ¦ you probably don't want this option. genuinely. π--report-state-changesβ reports changes to the keyboard state π’-1,--unilineβ enables uniline event output. one line, one vibe.--multilineβ enables multiline event output. many lines, still one vibe.--shortβ prints shorter event output. minimalism era π
π SEE ALSO π
xkbcli(1)xkbcli-interactive-wayland(1)xkbcli-interactive-x11(1)- The libxkbcommon online documentation:
https://xkbcommon.org
and that's the whole page, bestie!! this one came from Debian, dated June 4, 2024, and it's page XKBCLI-INTERACTIVE-EVDEV(1) of the manual. go forth and debug your keymaps, main character π¦π periodt.
π¦ where this page comes from
- alpine 3.23: xkbcli-doc 1.12.2-r0 Β· MIT AND MIT-open-group AND HPND AND HPND-sell-variant AND LicenseRef-digital-equipment-corporation
- alpine 3.24: xkbcli-doc 1.13.1-r0 Β· MIT AND MIT-open-group AND HPND AND HPND-sell-variant AND LicenseRef-digital-equipment-corporation
- arch rolling: libxkbcommon 1.13.2-1 Β· MIT
- fedora 43: libxkbcommon-utils 1.11.0-1.fc43 Β· MIT AND X11 AND MIT-CMU
- fedora 44: libxkbcommon-utils 1.13.1-2.fc44 Β· MIT AND X11 AND MIT-CMU
- nixos 26.05: libxkbcommon 1.13.1
- nixpkgs unstable: libxkbcommon 1.13.2
- ubuntu resolute: libxkbcommon-tools 1.13.1-1
- ubuntu stonking: libxkbcommon-tools 1.13.1-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms