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 | ||
|  | 
 |