aboutsummaryrefslogtreecommitdiffstats
path: root/ui/keycodemapdb/README
diff options
context:
space:
mode:
Diffstat (limited to 'ui/keycodemapdb/README')
-rw-r--r--ui/keycodemapdb/README115
1 files changed, 115 insertions, 0 deletions
diff --git a/ui/keycodemapdb/README b/ui/keycodemapdb/README
new file mode 100644
index 000000000..8b4a845be
--- /dev/null
+++ b/ui/keycodemapdb/README
@@ -0,0 +1,115 @@
+ 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
+ - Rust
+
+
+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
+