115 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			115 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
   Key code / scan code / key symbol mapping database
 | 
						|
   ==================================================
 | 
						|
 | 
						|
This module provides a database that maps between different
 | 
						|
key code / scan code / key symbol sets:
 | 
						|
 | 
						|
 - Linux evdev
 | 
						|
 - OS-X
 | 
						|
 - AT Set 1
 | 
						|
 - AT Set 2
 | 
						|
 - AT Set 3
 | 
						|
 - XT
 | 
						|
 - Linux XT KBD driver
 | 
						|
 - USB HID
 | 
						|
 - Win32
 | 
						|
 - XWin XT
 | 
						|
 - XKBD XT
 | 
						|
 - Xorg Evdev
 | 
						|
 - Xorg KBD
 | 
						|
 - Xorg OS-X
 | 
						|
 - XOrg Cygwin
 | 
						|
 - RFB
 | 
						|
 | 
						|
Licensing
 | 
						|
---------
 | 
						|
 | 
						|
The contents of this package are dual licensed under the terms of:
 | 
						|
 | 
						|
 - GNU General Public License (version 2 or later)
 | 
						|
 - 3-clause BSD License
 | 
						|
 | 
						|
The output files generated by keymap-gen may be distributed & used under
 | 
						|
the terms of either of the above licenses.
 | 
						|
 | 
						|
Data formats
 | 
						|
------------
 | 
						|
 | 
						|
The following output formats are possible
 | 
						|
 | 
						|
 - Code map
 | 
						|
 | 
						|
   An array mapping between key code sets values
 | 
						|
 | 
						|
   Indexes in the array are values from the source code set.
 | 
						|
   Entries in the array are values from the target code set
 | 
						|
 | 
						|
 | 
						|
 - Code table
 | 
						|
 | 
						|
   An array listing all values in a key code set
 | 
						|
 | 
						|
   Indexes in the array are simply a numeric counter
 | 
						|
   Entries in the array are values from the key code set
 | 
						|
 | 
						|
   The size of the array matches the total number of entries in
 | 
						|
   the keycode database.
 | 
						|
 | 
						|
 | 
						|
 - Name map
 | 
						|
 | 
						|
   An array mapping between key code sets values and names
 | 
						|
 | 
						|
   Indexes in the array are values from the source code set
 | 
						|
   Entries in the array are names from the target code set
 | 
						|
 | 
						|
 | 
						|
 - Name table
 | 
						|
 | 
						|
   An array listing all names in a key code set
 | 
						|
 | 
						|
   Indexes in the array are simply a numeric counter
 | 
						|
   Entries in the array are values from the key code set
 | 
						|
 | 
						|
   The size of the array matches the total number of entries in
 | 
						|
   the keycode database.
 | 
						|
 | 
						|
 | 
						|
Output languages
 | 
						|
----------------
 | 
						|
 | 
						|
The tool is capable of generating data tables for the following
 | 
						|
programming languages / environments
 | 
						|
 | 
						|
 - Standard C
 | 
						|
 - GLib2 (standard C, but with GLib2 data types)
 | 
						|
 - Python
 | 
						|
 - Perl
 | 
						|
 | 
						|
 | 
						|
Usage
 | 
						|
-----
 | 
						|
 | 
						|
Map values from AT Set 1 to USB HID, generating tables for the
 | 
						|
C programming language
 | 
						|
 | 
						|
 $ keymap-gen --lang stdc code-map data/keymaps.csv atset1 usb
 | 
						|
 | 
						|
Generate a tables of names for Linux key codes, OS-X key codes,
 | 
						|
in python - equivalent array indexes map between the two sets.
 | 
						|
A variable name override is used
 | 
						|
 | 
						|
 $ keymap-gen --varname linux_keycodes --lang stdc \
 | 
						|
              code-table data/keymaps.csv linux
 | 
						|
 $ keymap-gen --varname osx_keycodes --lang stdc \
 | 
						|
              code-table data/keymaps.csv os-x
 | 
						|
 | 
						|
Generate a mapping from XOrg XWin values to Win32 names
 | 
						|
 | 
						|
 $ keymap-gen --lang perl name-map data/keymaps.csv xorgxwin win32
 | 
						|
 | 
						|
Generate a table of names for Linux key codes in Perl
 | 
						|
 | 
						|
 $ keymap-gen --lang perl name-table data/keymaps.csv linux
 | 
						|
 |