Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ovc/138141cb789e625e43d4928a196267d9 to your computer and use it in GitHub Desktop.
Save ovc/138141cb789e625e43d4928a196267d9 to your computer and use it in GitHub Desktop.
Android Keymap and Charmap files — that I used to reverse the Fn key results for my Anker® T300 Ultra-Slim Mini Bluetooth 3.0 Wireless Keyboard
# Copyright (C) 2010 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Generic key character map for full alphabetic US English PC style external keyboards.
#
# This file is intentionally very generic and is intended to support a broad rang of keyboards.
# Do not edit the generic key character map to support a specific keyboard; instead, create
# a new key character map file with the required keyboard configuration.
#
type FULL
### Basic QWERTY keys ###
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
alt: '\u00e7'
shift+alt: '\u00c7'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
alt: '\u0301'
}
key F {
label: 'F'
base: 'f'
shift, capslock: 'F'
}
key G {
label: 'G'
base: 'g'
shift, capslock: 'G'
}
key H {
label: 'H'
base: 'h'
shift, capslock: 'H'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
alt: '\u0302'
}
key J {
label: 'J'
base: 'j'
shift, capslock: 'J'
}
key K {
label: 'K'
base: 'k'
shift, capslock: 'K'
}
key L {
label: 'L'
base: 'l'
shift, capslock: 'L'
}
key M {
label: 'M'
base: 'm'
shift, capslock: 'M'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
alt: '\u0303'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
}
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
alt: '\u00df'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
alt: '\u0308'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
}
key Y {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
}
key Z {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
}
key 0 {
label: '0'
base: '0'
shift: ')'
}
key 1 {
label: '1'
base: '1'
shift: '!'
}
key 2 {
label: '2'
base: '2'
shift: '@'
}
key 3 {
label: '3'
base: '3'
shift: '#'
}
key 4 {
label: '4'
base: '4'
shift: '$'
}
key 5 {
label: '5'
base: '5'
shift: '%'
}
key 6 {
label: '6'
base: '6'
shift: '^'
alt+shift: '\u0302'
}
key 7 {
label: '7'
base: '7'
shift: '&'
}
key 8 {
label: '8'
base: '8'
shift: '*'
}
key 9 {
label: '9'
base: '9'
shift: '('
}
key SPACE {
label: ' '
base: ' '
alt, meta: fallback SEARCH
ctrl: fallback LANGUAGE_SWITCH
}
key ENTER {
label: '\n'
base: '\n'
}
key TAB {
label: '\t'
base: '\t'
}
key COMMA {
label: ','
base: ','
shift: '<'
}
key PERIOD {
label: '.'
base: '.'
shift: '>'
}
key SLASH {
label: '/'
base: '/'
shift: '?'
}
key GRAVE {
label: '`'
base: '`'
shift: '~'
alt: '\u0300'
alt+shift: '\u0303'
}
key MINUS {
label: '-'
base: '-'
shift: '_'
}
key EQUALS {
label: '='
base: '='
shift: '+'
}
key LEFT_BRACKET {
label: '['
base: '['
shift: '{'
}
key RIGHT_BRACKET {
label: ']'
base: ']'
shift: '}'
}
key BACKSLASH {
label: '\\'
base: '\\'
shift: '|'
}
key SEMICOLON {
label: ';'
base: ';'
shift: ':'
}
key APOSTROPHE {
label: '\''
base: '\''
shift: '"'
}
### Numeric keypad ###
key NUMPAD_0 {
label: '0'
base: fallback INSERT
numlock: '0'
}
key NUMPAD_1 {
label: '1'
base: fallback MOVE_END
numlock: '1'
}
key NUMPAD_2 {
label: '2'
base: fallback DPAD_DOWN
numlock: '2'
}
key NUMPAD_3 {
label: '3'
base: fallback PAGE_DOWN
numlock: '3'
}
key NUMPAD_4 {
label: '4'
base: fallback DPAD_LEFT
numlock: '4'
}
key NUMPAD_5 {
label: '5'
base: fallback DPAD_CENTER
numlock: '5'
}
key NUMPAD_6 {
label: '6'
base: fallback DPAD_RIGHT
numlock: '6'
}
key NUMPAD_7 {
label: '7'
base: fallback MOVE_HOME
numlock: '7'
}
key NUMPAD_8 {
label: '8'
base: fallback DPAD_UP
numlock: '8'
}
key NUMPAD_9 {
label: '9'
base: fallback PAGE_UP
numlock: '9'
}
key NUMPAD_LEFT_PAREN {
label: '('
base: '('
}
key NUMPAD_RIGHT_PAREN {
label: ')'
base: ')'
}
key NUMPAD_DIVIDE {
label: '/'
base: '/'
}
key NUMPAD_MULTIPLY {
label: '*'
base: '*'
}
key NUMPAD_SUBTRACT {
label: '-'
base: '-'
}
key NUMPAD_ADD {
label: '+'
base: '+'
}
key NUMPAD_DOT {
label: '.'
base: fallback FORWARD_DEL
numlock: '.'
}
key NUMPAD_COMMA {
label: ','
base: ','
}
key NUMPAD_EQUALS {
label: '='
base: '='
}
key NUMPAD_ENTER {
label: '\n'
base: '\n' fallback ENTER
ctrl, alt, meta: none fallback ENTER
}
### Special keys on phones ###
key AT {
label: '@'
base: '@'
}
key STAR {
label: '*'
base: '*'
}
key POUND {
label: '#'
base: '#'
}
key PLUS {
label: '+'
base: '+'
}
### Non-printing keys ###
key ESCAPE {
base: fallback BACK
alt, meta: fallback HOME
ctrl: fallback MENU
}
### Gamepad buttons are handled by the view root ###
# Copyright (C) 2010 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Generic key character map for full alphabetic US English PC style external keyboards.
#
# This file is intentionally very generic and is intended to support a broad rang of keyboards.
# Do not edit the generic key character map to support a specific keyboard; instead, create
# a new key character map file with the required keyboard configuration.
#
# ### # # # # # #
# Just disable the special keys, where possible and let External Keyboard Helper Pro sort out the details
# (lazy); I should probably actually edit this to match my EKHPro mappings some day.
key 720 MINUS
key 102 MINUS
key 120 MINUS
key 142 MINUS
key 161 MINUS
key 163 MINUS
key 164 MINUS
key 165 MINUS
key 172 MINUS
key 204 MINUS
key 224 MINUS
key 225 MINUS
key 316 MINUS
key 464 MINUS
key 1 ESCAPE
key 2 1
key 3 2
key 4 3
key 5 4
key 6 5
key 7 6
key 8 7
key 9 8
key 10 9
key 11 0
key 12 MINUS
key 13 EQUALS
key 14 DEL
key 15 TAB
key 16 Q
key 17 W
key 18 E
key 19 R
key 20 T
key 21 Y
key 22 U
key 23 I
key 24 O
key 25 P
key 26 LEFT_BRACKET
key 27 RIGHT_BRACKET
key 28 ENTER
key 29 CAPS_LOCK
key 30 A
key 31 S
key 32 D
key 33 F
key 34 G
key 35 H
key 36 J
key 37 K
key 38 L
key 39 SEMICOLON
key 40 APOSTROPHE
key 41 GRAVE
key 42 SHIFT_LEFT
key 43 BACKSLASH
key 44 Z
key 45 X
key 46 C
key 47 V
key 48 B
key 49 N
key 50 M
key 51 COMMA
key 52 PERIOD
key 53 SLASH
key 54 SHIFT_RIGHT
key 56 ALT_LEFT
key 57 SPACE
key 58 CAPS_LOCK
key 59 F1
key 60 F2
key 61 F3
key 62 F4
key 63 F5
key 64 F6
key 65 F7
key 66 F8
key 67 F9
key 68 F10
key 87 F11
key 88 F12
key 100 ALT_RIGHT
key 103 DPAD_UP
key 105 DPAD_LEFT
key 106 DPAD_RIGHT
key 108 DPAD_DOWN
key 353 DPAD_CENTER
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment