CKBCOMP(1)

๐Ÿ“ฆ
version 1.248ubuntu3 ยท 4 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

๐ŸŽ€ CKBCOMP(1) ๐ŸŽ€

Console-setup User's Manual, okay, the bible for this one ๐Ÿ“–

โœจ NAME โœจ

ckbcomp โ€” compile a XKB keyboard description to a keymap suitable for loadkeys or kbdcontrol ๐Ÿ’…

๐ŸŒธ SYNOPSIS ๐ŸŒธ

ckbcomp [OPTION...] [XKBLAYOUT [XKBVARIANT [XKBOPTIONS]...]]

๐Ÿ’– DESCRIPTION ๐Ÿ’–

okay so the ckbcomp keymap compiler takes a description of an XKB keyboard layout and turns it into a console keymap. That console keymap can be read straight in by loadkeys(1) or kbdcontrol(1) ๐Ÿฆ‹

On its standard output, ckbcomp dumps the generated keyboard definition โœจ The biggest difference between the arguments of setxkbmap(1) and the arguments of ckbcomp is the extra parameter -charmap, which you use when you want a non-Unicode keyboard map ๐Ÿซถ Without -charmap, ckbcomp makes a Unicode keyboard, so no stress ๐Ÿ’…

๐Ÿฆ„ OPTIONS ๐Ÿฆ„

๐ŸŒˆ General options

  • -?,-help โ€” prints a usage message and exits ๐Ÿ™ˆ
  • -charmap charmap โ€” the encoding to use for the output keymap. There should be a character mapping table defining this encoding in /usr/share/consoletrans. The charmaps that come pre-made are: ARMSCII-8, CP1251, CP1255, CP1256, GEORGIAN-ACADEMY, GEORGIAN-PS, IBM1133, ISIRI-3342, ISO-8859-1, ISO-8859-2, ISO-8859-3, ISO-8859-4, ISO-8859-5, ISO-8859-6, ISO-8859-7, ISO-8859-8, ISO-8859-9, ISO-8859-10, ISO-8859-11, ISO-8859-13, ISO-8859-14, ISO-8859-15, ISO-8859-16, KOI8-R, KOI8-U, TIS-620 and VISCII ๐ŸŒ
  • -Idir โ€” look in the top-level directory dir for files included by the keymap description. You can use this option multiple times ๐Ÿงš If a file can't be found in any of the directories you gave, it'll also get searched in some other standard spots, like /etc/console-setup/ckb, /usr/share/X11/xkb and /etc/X11/xkb ๐Ÿ”
  • -v level โ€” sets how much detail gets listed. The level argument has to be a number from 1 to 10 ๐Ÿ“Š
  • -compact โ€” generates a compact keymap with at most two xkb groups and two levels in each, or only one xkb group with up to four levels ๐Ÿ“
  • -freebsd โ€” generates a keymap for FreeBSD ๐Ÿ˜ˆ
  • -backspace [bs|del] โ€” decides how the <BackSpace> and <Delete> keys behave. The value bs gives you VT100-conformant behaviour: <BackSpace> generates ^H (ASCII BS) and <Delete> generates ^? (ASCII DEL). The value del gives you VT220-conformant behavior: <BackSpace> generates ^? (ASCII DEL) and <Delete> generates a special function sequence ๐Ÿ’œ

๐ŸŽ€ XKB Keyboard Description

the keyboard layout, variant and options parts can also be set directly on the command line. Check the synopsis to see how ๐Ÿ’…

  • -symbols name โ€” sets the symbols component name of the XKB keyboard description โœจ
  • -keycodes name โ€” sets the keycodes component name of the XKB keyboard description ๐ŸŒธ
  • -rules name โ€” the name of the rules file to use ๐Ÿ“œ
  • -model name โ€” sets the keyboard model used to choose the component names ๐ŸŽน
  • -layout name โ€” sets the layout used to choose the component names ๐ŸŒ
  • -variant name โ€” sets the layout variant used to choose the component names ๐Ÿฆ‹
  • -option name โ€” adds an option used to choose component names ๐Ÿ’–

๐Ÿ“ FILES ๐Ÿ“

  • /usr/share/consoletrans
  • /etc/console-setup/ckb
  • /usr/share/X11/xkb
  • /etc/X11/xkb

โš ๏ธ NOTES โš ๏ธ

bestie, read this one carefully ๐Ÿ˜ญ If the option -freebsd is used together with -backspace del, then the key <Delete> will generate the special code fkey70. It is your responsibility to assign the appropriate sequence to this special code by using the following command:
kbdcontrol -f 70 "`printf '\033[3~'`"

๐Ÿ”— SEE ALSO ๐Ÿ”—

keyboard(5), setxkbmap(1) ๐Ÿซถ


Okay that's the whole tea, bestie ๐ŸŒˆ console-setup, 2011-03-17, CKBCOMP(1) ๐Ÿฆ‹๐Ÿ’–โœจ