Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
keytables(4)			 File Formats			  keytables(4)

NAME
       keytables - keyboard table descriptions for loadkeys and	dumpkeys

DESCRIPTION
       These  files  are  used by loadkeys(1) to modify	the translation	tables
       used by the keyboard streams module and generated by (see  loadkeys(1))
       from those translation tables.

       Any  line  in the file beginning	with # is a comment, and is ignored. #
       is treated specially only at the	beginning of a line.

       Other lines specify the values to load into the tables for a particular
       keystation.  The	format is either:

       key number list_of_entries

       or

       swap number1 with number2

       or

       key number1 same	as number2

       or a blank line,	which is ignored.

       key number list_of_entries

       sets  the  entries for keystation number	from the list given.  An entry
       in that list is of the form

       tablename code

       where tablename is the name of a	particular translation table, or  all.
       The translation tables are:

       base  entry when	no shifts are active

       shift entry when	"Shift"	key is down

       caps  entry when	"Caps Lock" is in effect

       ctrl  entry when	"Control" is down

       altg  entry when	"Alt Graph" is down

       numl  entry when	"Num Lock" is in effect

       up    entry when	a key goes up

       All  tables other than up refer to the action generated when a key goes
       down.  Entries in the up	table are used only for	shift keys, since  the
       shift  in question goes away when the key goes up, except for keys such
       as "Caps	Lock" or "Num Lock"; the keyboard streams module makes the key
       look as if it were a latching key.

       A  table	 name of all indicates that the	entry for all tables should be
       set to the specified value, with	the following exception:  for  entries
       with  a	value  other than hole,	the entry for the numl table should be
       set to nonl, and	the entry for the up table should be set to nop.

       The code	specifies the effect of	the key	in question when the specified
       shift key is down. A code consists of either:

	  o  A	character,  which  indicates  that the key should generate the
	     given character.  The character can either	be a single character,
	     a single character	preceded by ^ which refers to a	"control char-
	     acter" (for instance, ^c is control-C), or	 a  C-style  character
	     constant  enclosed	 in  single quote characters ('), which	can be
	     expressed with C-style escape sequences such as \r	for RETURN  or
	     \000  for the null	character.  Note that the single character may
	     be	any character in an 8-bit character set, such as ISO 8859/1.

	  o  A string, consisting of a list of characters enclosed  in	double
	     quote characters ("). Note	that the use of	the double quote char-
	     acter means that a	code of	double quote must be enclosed in  sin-
	     gle quotes.

	  o  One of the	following expressions:

	     shiftkeys+leftshift
		   the key is to be the	left-hand "Shift" key

	     shiftkeys+rightshift
		   the key is to be the	right-hand "Shift" key

	     shiftkeys+leftctrl
		   the key is to be the	left-hand "Control" key

	     shiftkeys+rightctrl
		   the key is to be the	right-hand "Control" key

	     shiftkeys+alt
		   the key is to be the	"Alt" shift key

	     shiftkeys+altgraph
		   the key is to be the	"Alt Graph" shift key

	     shiftkeys+capslock
		   the key is to be the	"Caps Lock" key

	     shiftkeys+shiftlock
		   the key is to be the	"Shift Lock" key

	     shiftkeys+numlock
		   the key is to be the	"Num Lock" key

	     buckybits+systembit
		   the	key  is	 to be the "Stop" key in SunView; this is nor-
		   mally the L1	key, or	the SETUP key on the VT100 keyboard

	     buckybits+metabit
		   the key is to be the	"meta" key. That  is,  the  "Left"  or
		   "Right"  key	 on a Sun-2 or Sun-3 keyboard or the "diamond"
		   key on a Sun-4 keyboard

	     compose
		   the key is to be the	"Compose" key

	     ctrlq on the "VT100" keyboard, the	key is to  transmit  the  con-
		   trol-Q  character  (this would be the entry for the "Q" key
		   in the ctrl table)

	     ctrls on the "VT100" keyboard, the	key is to  transmit  the  con-
		   trol-S  character  (this would be the entry for the "S" key
		   in the ctrl table)

	     noscroll
		   on the "VT100" keyboard, the	key is to be the  "No  Scroll"
		   key

	     string+uparrow
		   the key is to be the	"up arrow" key

	     string+downarrow
		   the key is to be the	"down arrow" key

	     string+leftarrow
		   the key is to be the	"left arrow" key

	     string+rightarrow
		   the key is to be the	"right arrow" key

	     string+homearrow
		   the key is to be the	"home" key

	     fa_acute
		   the key is to be the	acute accent "floating accent" key

	     fa_cedilla
		   the key is to be the	cedilla	"floating accent" key

	     fa_cflex
		   the key is to be the	circumflex "floating accent" key

	     fa_grave
		   the key is to be the	grave accent "floating accent" key

	     fa_tilde
		   the key is to be the	tilde "floating	accent"	key

	     fa_umlaut
		   the key is to be the	umlaut "floating accent" key

	     nonl  this	 is used only in the Num Lock table; the key is	not to
		   be affected by the state of Num Lock

	     pad0  the key is to be the	"0" key	on the numeric keypad

	     pad1  the key is to be the	"1" key	on the numeric keypad

	     pad2  the key is to be the	"2" key	on the numeric keypad

	     pad3  the key is to be the	"3" key	on the numeric keypad

	     pad4  the key is to be the	"4" key	on the numeric keypad

	     pad5  the key is to be the	"5" key	on the numeric keypad

	     pad6  the key is to be the	"6" key	on the numeric keypad

	     pad7  the key is to be the	"7" key	on the numeric keypad

	     pad8  the key is to be the	"8" key	on the numeric keypad

	     pad9  the key is to be the	"9" key	on the numeric keypad

	     paddot
		   the key is to be the	"." key	on the numeric keypad

	     padenter
		   the key is to be the	"Enter"	key on the numeric keypad

	     padplus
		   the key is to be the	"+" key	on the numeric keypad

	     padminus
		   the key is to be the	"-" key	on the numeric keypad

	     padstar
		   the key is to be the	"*" key	on the numeric keypad

	     padslash
		   the key is to be the	"/" key	on the numeric keypad

	     padequal
		   the key is to be the	"=" key	on the numeric keypad

	     padsep
		   the key is to be the	"," (separator)	 key  on  the  numeric
		   keypad

	     lf(n) the key is to be the	left-hand function key n

	     rf(n) the key is to be the	right-hand function key	n

	     tf(n) the key is to be the	top function key n

	     bf(n) the key is to be the	"bottom" function key n

	     nop   the key is to do nothing

	     error this	 code indicates	an internal error; to be used only for
		   keystation 126, and must be used there

	     idle  this	code indicates that the	keyboard is idle (that is, has
		   no  keys  down); to be used only for	all entries other than
		   the numl and	up table entries for keystation	127, and  must
		   be used there

	     oops  this	 key exists, but its action is not defined; it has the
		   same	effect as nop

	     reset this	code indicates that the	keyboard has just been	reset;
		   to  be used only for	the up table entry for keystation 127,
		   and must be used there.

	     swap number1 with number2
		   exchanges the entries for keystations number1 and number2.

	     key number1 same as number2
		   sets	the entries for	keystation number1 to be the  same  as
		   those  for keystation number2. If the file does not specify
		   entries for keystation number2, the	entries	 currently  in
		   the	translation  table  are	used; if the file does specify
		   entries for keystation number2, those entries are used.

EXAMPLES
       Example 1: Example of setting multiple keystations.

       The following entry sets	keystation 15 to be a "hole" (that is, an  en-
       try  indicating	that there is no keystation 15); sets keystation 30 to
       do nothing when Alt Graph is down, generate "!"	when  Shift  is	 down,
       and  generate "1" under all other circumstances;	and sets keystation 76
       to be the left-hand Control key.

       key 15	all hole
       key 30	base 1 shift ! caps 1 ctrl 1 altg nop
       key 76	all shiftkeys+leftctrl up shiftkeys+leftctrl

       Example 2: Exchange DELETE and BACKSPACE	keys

       The following entry exchanges the Delete	and Back  Space	 keys  on  the
       Type 4 keyboard:

       swap 43 with 66

       Keystation 43 is	normally the Back Space	key, and keystation 66 is nor-
       mally the Delete	key.

       Example 3: Disable CAPS LOCK key

       The following entry disables the	Caps Lock key on the Type 3  and  U.S.
       Type 4 keyboards:

       key 119 all nop

       Example 4: Standard translation tables for the U.S. Type	4 keyboard

       The  following  specifies  the standard translation tables for the U.S.
       Type 4 keyboard:

       key 0	all hole
       key 1	all buckybits+systembit	up buckybits+systembit
       key 2	all hole
       key 3	all lf(2)
       key 4	all hole
       key 5	all tf(1)
       key 6	all tf(2)
       key 7	all tf(10)
       key 8	all tf(3)
       key 9	all tf(11)
       key 10	all tf(4)
       key 11	all tf(12)
       key 12	all tf(5)
       key 13	all shiftkeys+altgraph up shiftkeys+altgraph
       key 14	all tf(6)
       key 15	all hole
       key 16	all tf(7)
       key 17	all tf(8)
       key 18	all tf(9)
       key 19	all shiftkeys+alt up shiftkeys+alt
       key 20	all hole
       key 21	all rf(1)
       key 22	all rf(2)
       key 23	all rf(3)
       key 24	all hole
       key 25	all lf(3)
       key 26	all lf(4)
       key 27	all hole
       key 28	all hole
       key 29	all ^[
       key 30	base 1 shift ! caps 1 ctrl 1 altg nop
       key 31	base 2 shift @ caps 2 ctrl ^@ altg nop
       key 32	base 3 shift # caps 3 ctrl 3 altg nop
       key 33	base 4 shift $ caps 4 ctrl 4 altg nop
       key 34	base 5 shift % caps 5 ctrl 5 altg nop
       key 35	base 6 shift ^ caps 6 ctrl ^^ altg nop
       key 36	base 7 shift & caps 7 ctrl 7 altg nop
       key 37	base 8 shift * caps 8 ctrl 8 altg nop
       key 38	base 9 shift ( caps 9 ctrl 9 altg nop
       key 39	base 0 shift ) caps 0 ctrl 0 altg nop
       key 40	base - shift _ caps - ctrl ^_ altg nop
       key 41	base = shift + caps = ctrl = altg nop
       key 42	base ` shift ~ caps ` ctrl ^^ altg nop
       key 43	all '\b'
       key 44	all hole
       key 45	all rf(4) numl padequal
       key 46	all rf(5) numl padslash
       key 47	all rf(6) numl padstar
       key 48	all bf(13)
       key 49	all lf(5)
       key 50	all bf(10) numl	padequal
       key 51	all lf(6)
       key 52	all hole
       key 53	all '\t'
       key 54	base q shift Q caps Q ctrl ^Q altg nop
       key 55	base w shift W caps W ctrl ^W altg nop
       key 56	base e shift E caps E ctrl ^E altg nop
       key 57	base r shift R caps R ctrl ^R altg nop
       key 58	base t shift T caps T ctrl ^T altg nop
       key 59	base y shift Y caps Y ctrl ^Y altg nop
       key 60	base u shift U caps U ctrl ^U altg nop
       key 61	base i shift I caps I ctrl '\t'	altg nop
       key 62	base o shift O caps O ctrl ^O altg nop
       key 63	base p shift P caps P ctrl ^P altg nop
       key 64	base [ shift { caps [ ctrl ^[ altg nop
       key 65	base ] shift } caps ] ctrl ^] altg nop
       key 66	all '\177'
       key 67	all compose
       key 68	all rf(7) numl pad7
       key 69	all rf(8) numl pad8
       key 70	all rf(9) numl pad9
       key 71	all bf(15) numl	padminus
       key 72	all lf(7)
       key 73	all lf(8)
       key 74	all hole
       key 75	all hole
       key 76	all shiftkeys+leftctrl up shiftkeys+leftctrl
       key 77	base a shift A caps A ctrl ^A altg nop
       key 78	base s shift S caps S ctrl ^S altg nop
       key 79	base d shift D caps D ctrl ^D altg nop
       key 80	base f shift F caps F ctrl ^F altg nop
       key 81	base g shift G caps G ctrl ^G altg nop
       key 82	base h shift H caps H ctrl '\b'	altg nop
       key 83	base j shift J caps J ctrl '\n'	altg nop
       key 84	base k shift K caps K ctrl '\v'	altg nop
       key 85	base l shift L caps L ctrl ^L altg nop
       key 86	base ; shift : caps ; ctrl ; altg nop
       key 87	base '\'' shift	'"' caps '\'' ctrl '\''	altg nop
       key 88	base '\\' shift	| caps '\\' ctrl ^\ altg nop
       key 89	all '\r'
       key 90	all bf(11) numl	padenter
       key 91	all rf(10) numl	pad4
       key 92	all rf(11) numl	pad5
       key 93	all rf(12) numl	pad6
       key 94	all bf(8) numl pad0
       key 95	all lf(9)
       key 96	all hole
       key 97	all lf(10)
       key 98	all shiftkeys+numlock
       key 99	all shiftkeys+leftshift	up shiftkeys+leftshift
       key 100	base z shift Z caps Z ctrl ^Z altg nop
       key 101	base x shift X caps X ctrl ^X altg nop
       key 102	base c shift C caps C ctrl ^C altg nop
       key 103	base v shift V caps V ctrl ^V altg nop
       key 104	base b shift B caps B ctrl ^B altg nop
       key 105	base n shift N caps N ctrl ^N altg nop
       key 106	base m shift M caps M ctrl '\r'	altg nop
       key 107	base , shift < caps , ctrl , altg nop
       key 108	base . shift > caps . ctrl . altg nop
       key 109	base / shift ? caps / ctrl ^_ altg nop
       key 110	all shiftkeys+rightshift up shiftkeys+rightshift
       key 111	all '\n'
       key 112	all rf(13) numl	pad1
       key 113	all rf(14) numl	pad2
       key 114	all rf(15) numl	pad3
       key 115	all hole
       key 116	all hole
       key 117	all hole
       key 118	all lf(16)
       key 119	all shiftkeys+capslock
       key 120	all buckybits+metabit up buckybits+metabit
       key 121	base ' ' shift ' ' caps	' ' ctrl ^@ altg ' '
       key 122	all buckybits+metabit up buckybits+metabit
       key 123	all hole
       key 124	all hole
       key 125	all bf(14) numl	padplus
       key 126	all error numl error up	hole
       key 127	all idle numl idle up reset

SEE ALSO
       loadkeys(1)

SunOS 5.9			  22 Apr 1999			  keytables(4)

NAME | DESCRIPTION | EXAMPLES | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=keytables&sektion=4&manpath=SunOS+5.9>

home | help