KBDMAP(5)
π KBDMAP(5) β File Formats Manual π
Okay so bestie, a kbdmap file is literally the keyboard map file format for kbdcontrol, and it describes how the keys on a keyboard should behave. You can load one with kbdcontrol(1), or use kbdmap(1) to pick from the default kbdmap files interactively. You can also specify one in rc.conf(5) so it loads at boot time. And if you want to see the current keymap? kbdcontrol(1) can print that too. Slay.
Every line in the file can describe a key or an accent. A # character begins a comment, and that comment extends to the end of the line. Periodt.
β¨ SYNOPSIS β¨
kbdmap
π DESCRIPTION π
π Key lines, the main character energy
The description of a key begins with the scancode for that key. Then you list the effect of the key under combinations of shift, control and alt in this exact order: no modifier, shift, control, control and shift, alt, alt and shift, alt and control, alt and control and shift.
The action of the key under each modifier can be:
'symbol'β the symbol the key should produce, wrapped in single quotes.decnumβ the Unicode value to produce as a decimal number (seeascii(7)). For example,32for space.0xhexnumβ the Unicode value to produce as a hexadecimal number. For example,0x20for space.ctrlnameβ one of the standard names for the ASCII control characters:nul,soh,stx,etx,eot,enq,ack,bel,bs,ht,lf,vt,ff,cr,so,si,dle,dc1,dc2,dc3,dc4,nak,syn,etb,can,em,sub,esc,fs,gs,rs,us,sp,del.control-aliasβ one of the historical aliases for certain ASCII control characters:nl,np,ns.accentnameβ by giving one of the accent names, the next key pressed will produce an accented character in accordance with that accent. See the description of accents below. The accent names are:dgra,dacu,dcir,dtil,dmac,dbre,ddot,duml,ddia,dsla,drin,dced,dapo,ddac,dogo,dcar.fkeyNβ act as the Nth function key, where N is a decimal number in the range from1to96. Refer to theatkbd(4)manual page for a list of predefined function keys. You can use the-foption of thekbdcontrol(1)utility to assign arbitrary strings to function keys.lshiftβ act as left shift key.rshiftβ act as right shift key.clockβ act as caps lock key.nlockβ act as num lock key.slockβ act as scroll lock key.lalt|altβ act as left alt key.btabβ act as backwards tab.lctrl|ctrlβ act as left control key.rctrlβ act as right control key.raltβ act as right alt (altgr) key.alockβ act as alt lock key.ashiftβ act as alt shift key.metaβ act as meta key.lshifta|shiftaβ act as left shift key / alt lock.rshiftaβ act as right shift key / alt lock.lctrla|ctrlaβ act as left ctrl key / alt lock.rctrlaβ act as right ctrl key / alt lock.lalta|altaβ act as left alt key / alt lock.raltaβ act as right alt key / alt lock.nscrβ act as switch to next screen.pscrβ act as switch to previous screen.scrNβ switch to screen N, where N is a decimal number.bootβ reboot the machine.haltβ halt the machine.pdwnβ halt the machine and attempt to power it down.debugβ call the debugger.suspβ use APM to suspend power.saverβ activate screen saver by toggling between splash/text screen.panicβ panic the system. Thesysctl(8)variablemachdep.enable_panic_keymust be set to1to enable this feature.pasteβ act as mouse buffer paste.
Finally, to complete the description of a key, you give a flag that describes the effect of caps lock and num lock on that key. The flag can be 'C' to indicate that caps lock affects the key, 'N' to indicate that num lock affects the key, 'B' to indicate that both caps lock and num lock affects the key, or 'O' to indicate that neither affects the key.
π Accent keys, the little gremlin mode
An accent key works by modifying the behavior of the next key pressed. The description of an accent begins with one of the accent names given above. This is followed by the symbol for the accent, given in single quotes or as a decimal or hexadecimal Unicode value. This symbol will be produced if the accent key is pressed and then the space key is pressed.
The description of the accent key continues with a list showing how it modifies various symbols, by giving pairs made up of the normal symbol and the modified symbol enclosed in parentheses. Both symbols in a pair can be given in either single quotes or as decimal or hexadecimal Unicode values.
For example, peep this extract from a kbdmap:
041 dgra 172 nop nop '|' '|' nop nop O
dgra '`' ( 'a' 224 ) ( 'A' 192 ) ( 'e' 232 ) ( 'E' 200 )
( 'i' 236 ) ( 'I' 204 ) ( 'o' 242 ) ( 'O' 210 )
( 'u' 249 ) ( 'U' 217 )
This extract configures the backtick key on a UK keyboard to act as a grave accent key. Pressing backtick followed by space produces a backtick, and pressing a backtick followed by a vowel produces the ISO-8859-1 symbol for that vowel with a grave accent. Obsessed, honestly.
π FILES π
/usr/share/syscons/keymaps/*β standard keyboard map files for syscons/usr/share/vt/keymaps/*β standard keyboard map files for vt
π SEE ALSO π
kbdcontrol(1), kbdmap(1), keyboard(4), syscons(4), vt(4), ascii(7)
π HISTORY π
This manual page first appeared in FreeBSD 4.2.
π«Ά Debian β’ January 2, 2016 β’ KBDMAP(5) β thatβs the whole vibe, bestie. Bye! π
π¦ where this page comes from
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- Copyright (c) 2000 David Malone
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms