Add more keyboard layouts.

Bug: 6110399
Change-Id: I00f54338c9e94cce3a2925a5dff2e924a21fcdd8
This commit is contained in:
Jeff Brown
2012-04-23 19:43:55 -07:00
parent 8bca94ad83
commit 4c181a3f6a
10 changed files with 2527 additions and 3 deletions

View File

@@ -0,0 +1,336 @@
# Copyright (C) 2012 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.
#
# French keyboard layout, AZERTY style.
#
type OVERLAY
map key 16 A
map key 17 Z
map key 30 Q
map key 39 M
map key 44 W
map key 50 COMMA
map key 51 SEMICOLON
map key 86 PLUS
### ROW 1
key GRAVE {
label: '\u00b2'
base: '\u00b2'
}
key 1 {
label: '1'
base: '&'
shift: '1'
}
key 2 {
label: '2'
base: '\u00e9'
shift: '2'
ralt: '~'
}
key 3 {
label: '3'
base: '"'
shift: '3'
ralt: '#'
}
key 4 {
label: '4'
base: '\''
shift: '4'
ralt: '{'
}
key 5 {
label: '5'
base: '('
shift: '5'
ralt: '['
}
key 6 {
label: '6'
base: '-'
shift: '6'
ralt: '|'
}
key 7 {
label: '7'
base: '\u00e8'
shift: '7'
ralt: '`'
}
key 8 {
label: '8'
base: '_'
shift: '8'
ralt: '\\'
}
key 9 {
label: '9'
base: '\u00e7'
shift: '9'
ralt: '^'
}
key 0 {
label: '0'
base: '\u00e0'
shift: '0'
ralt: '@'
}
key MINUS {
label: ')'
base: ')'
shift: '\u00b0'
ralt: ']'
}
key EQUALS {
label: '='
base: '='
shift: '+'
ralt: '}'
}
### ROW 2
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key Z {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
ralt: '\u20ac'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key Y {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
}
key LEFT_BRACKET {
label: '\u02c6'
base: '\u0302'
shift: '\u0308'
}
key RIGHT_BRACKET {
label: '$'
base: '$'
shift: '\u00a3'
ralt: '\u00a4'
}
### ROW 3
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
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 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 APOSTROPHE {
label: '\u00f9'
base: '\u00f9'
shift: '%'
}
key BACKSLASH {
label: '*'
base: '*'
shift: '\u00b5'
}
### ROW 4
key PLUS {
label: '<'
base: '<'
shift: '>'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
}
key COMMA {
label: ','
base: ','
shift: '?'
}
key SEMICOLON {
label: ';'
base: ';'
shift: '.'
}
key PERIOD {
label: ':'
base: ':'
shift: '/'
}
key SLASH {
label: '!'
base: '!'
shift: '\u00a7'
}

View File

@@ -0,0 +1,339 @@
# Copyright (C) 2012 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.
#
# French (Canada) keyboard layout.
#
type OVERLAY
map key 86 PLUS
### ROW 1
key GRAVE {
label: '#'
base: '#'
shift: '|'
ralt: '\\'
}
key 1 {
label: '1'
base: '1'
shift: '!'
ralt: '\u00b1'
}
key 2 {
label: '2'
base: '2'
shift: '"'
ralt: '@'
}
key 3 {
label: '3'
base: '3'
shift: '/'
ralt: '\u00a3'
}
key 4 {
label: '4'
base: '4'
shift: '$'
ralt: '\u00a2'
}
key 5 {
label: '5'
base: '5'
shift: '%'
ralt: '\u00a4'
}
key 6 {
label: '6'
base: '6'
shift: '?'
ralt: '\u00ac'
}
key 7 {
label: '7'
base: '7'
shift: '&'
ralt: '\u00a6'
}
key 8 {
label: '8'
base: '8'
shift: '*'
ralt: '\u00b2'
}
key 9 {
label: '9'
base: '9'
shift: '('
ralt: '\u00b3'
}
key 0 {
label: '0'
base: '0'
shift: ')'
ralt: '\u00bc'
}
key MINUS {
label: '-'
base: '-'
shift: '_'
ralt: '\u00bd'
}
key EQUALS {
label: '='
base: '='
shift: '+'
ralt: '\u00be'
}
### ROW 2
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key Y {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
ralt: '\u00a7'
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
ralt: '\u00b6'
}
key LEFT_BRACKET {
label: '\u02c6'
base: '\u0302'
ralt: '['
}
key RIGHT_BRACKET {
label: '\u00b8'
base: '\u0327'
shift: '\u0308'
ralt: ']'
}
### ROW 3
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
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 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 SEMICOLON {
label: ';'
base: ';'
shift: ':'
ralt: '~'
}
key APOSTROPHE {
label: '\u02cb'
base: '\u0300'
ralt: '{'
}
key BACKSLASH {
label: '<'
base: '<'
shift: '>'
ralt: '}'
}
### ROW 4
key PLUS {
label: '\u00ab'
base: '\u00ab'
shift: '\u00bb'
ralt: '\u00b0'
}
key Z {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
}
key M {
label: 'M'
base: 'm'
shift, capslock: 'M'
ralt: '\u00b5'
}
key COMMA {
label: ','
base: ','
shift: '\''
ralt: '_'
}
key PERIOD {
label: '.'
base: '.'
ralt: '-'
}
key SLASH {
label: '\u00c9'
base: '\u00e9'
shift, capslock: '\u00c9'
ralt: '\u0301'
}

View File

@@ -178,7 +178,7 @@ key P {
key LEFT_BRACKET {
label: '\u00dc'
base: '\u00fc'
shift: '\u00dc'
shift, capslock: '\u00dc'
}
key RIGHT_BRACKET {
@@ -247,13 +247,13 @@ key L {
key SEMICOLON {
label: '\u00d6'
base: '\u00f6'
shift: '\u00d6'
shift, capslock: '\u00d6'
}
key APOSTROPHE {
label: '\u00c4'
base: '\u00e4'
shift: '\u00c4'
shift, capslock: '\u00c4'
}
key BACKSLASH {

View File

@@ -0,0 +1,396 @@
# Copyright (C) 2012 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.
#
# Russian keyboard layout.
# This is a typical Russian PC keyboard layout.
# English characters are accessible using ralt (Alt Gr).
#
type OVERLAY
map key 86 BACKSLASH
### ROW 1
key GRAVE {
label: '\u0401'
base: '\u0451'
shift, capslock: '\u0401'
ralt: '`'
ralt+shift: '~'
}
key 1 {
label: '1'
base: '1'
shift: '!'
ralt: '!'
}
key 2 {
label: '2'
base: '2'
shift: '"'
ralt: '@'
}
key 3 {
label: '3'
base: '3'
shift: '\u2116'
ralt: '#'
}
key 4 {
label: '4'
base: '4'
shift: ';'
ralt: '$'
}
key 5 {
label: '5'
base: '5'
shift: '%'
ralt: '%'
}
key 6 {
label: '6'
base: '6'
shift: ':'
ralt: '^'
}
key 7 {
label: '7'
base: '7'
shift: '?'
ralt: '&'
}
key 8 {
label: '8'
base: '8'
shift: '*'
ralt: '*'
}
key 9 {
label: '9'
base: '9'
shift: '('
ralt: '('
}
key 0 {
label: '0'
base: '0'
shift: ')'
ralt: ')'
}
key MINUS {
label: '-'
base: '-'
shift: '_'
ralt: '-'
ralt+shift: '_'
}
key EQUALS {
label: '='
base: '='
shift: '+'
ralt: '='
ralt+shift: '+'
}
### ROW 2
key Q {
label: '\u0419'
base: '\u0439'
shift, capslock: '\u0419'
ralt: 'q'
ralt+shift, ralt+capslock: 'Q'
}
key W {
label: '\u0426'
base: '\u0446'
shift, capslock: '\u0426'
ralt: 'w'
ralt+shift, ralt+capslock: 'W'
}
key E {
label: '\u0423'
base: '\u0443'
shift, capslock: '\u0423'
ralt: 'e'
ralt+shift, ralt+capslock: 'E'
}
key R {
label: '\u041a'
base: '\u043a'
shift, capslock: '\u041a'
ralt: 'r'
ralt+shift, ralt+capslock: 'R'
}
key T {
label: '\u0415'
base: '\u0435'
shift, capslock: '\u0415'
ralt: 't'
ralt+shift, ralt+capslock: 'T'
}
key Y {
label: '\u041d'
base: '\u043d'
shift, capslock: '\u041d'
ralt: 'y'
ralt+shift, ralt+capslock: 'Y'
}
key U {
label: '\u0413'
base: '\u0433'
shift, capslock: '\u0413'
ralt: 'u'
ralt+shift, ralt+capslock: 'U'
}
key I {
label: '\u0428'
base: '\u0448'
shift, capslock: '\u0428'
ralt: 'i'
ralt+shift, ralt+capslock: 'I'
}
key O {
label: '\u0429'
base: '\u0449'
shift, capslock: '\u0429'
ralt: 'o'
ralt+shift, ralt+capslock: 'O'
}
key P {
label: '\u0417'
base: '\u0437'
shift, capslock: '\u0417'
ralt: 'p'
ralt+shift, ralt+capslock: 'P'
}
key LEFT_BRACKET {
label: '\u0425'
base: '\u0445'
shift, capslock: '\u0425'
ralt: '['
ralt+shift: '{'
}
key RIGHT_BRACKET {
label: '\u042a'
base: '\u044a'
shift, capslock: '\u042a'
ralt: ']'
ralt+shift: '}'
}
### ROW 3
key A {
label: '\u0424'
base: '\u0444'
shift, capslock: '\u0424'
ralt: 'a'
ralt+shift, ralt+capslock: 'A'
}
key S {
label: '\u042b'
base: '\u044b'
shift, capslock: '\u042b'
ralt: 's'
ralt+shift, ralt+capslock: 'S'
}
key D {
label: '\u0412'
base: '\u0432'
shift, capslock: '\u0412'
ralt: 'd'
ralt+shift, ralt+capslock: 'D'
}
key F {
label: '\u0410'
base: '\u0430'
shift, capslock: '\u0410'
ralt: 'f'
ralt+shift, ralt+capslock: 'F'
}
key G {
label: '\u041f'
base: '\u043f'
shift, capslock: '\u041f'
ralt: 'g'
ralt+shift, ralt+capslock: 'G'
}
key H {
label: '\u0420'
base: '\u0440'
shift, capslock: '\u0420'
ralt: 'h'
ralt+shift, ralt+capslock: 'H'
}
key J {
label: '\u041e'
base: '\u043e'
shift, capslock: '\u041e'
ralt: 'j'
ralt+shift, ralt+capslock: 'J'
}
key K {
label: '\u041b'
base: '\u043b'
shift, capslock: '\u041b'
ralt: 'k'
ralt+shift, ralt+capslock: 'K'
}
key L {
label: '\u0414'
base: '\u0434'
shift, capslock: '\u0414'
ralt: 'l'
ralt+shift, ralt+capslock: 'L'
}
key SEMICOLON {
label: '\u0416'
base: '\u0436'
shift, capslock: '\u0416'
ralt: ';'
ralt+shift: ':'
}
key APOSTROPHE {
label: '\u042d'
base: '\u044d'
shift, capslock: '\u042d'
ralt: '\''
ralt+shift: '"'
}
key BACKSLASH {
label: '\\'
base: '\\'
shift: '/'
ralt: '|'
}
### ROW 4
key Z {
label: '\u042f'
base: '\u044f'
shift, capslock: '\u042f'
ralt: 'z'
ralt+shift, ralt+capslock: 'Z'
}
key X {
label: '\u0427'
base: '\u0447'
shift, capslock: '\u0427'
ralt: 'x'
ralt+shift, ralt+capslock: 'X'
}
key C {
label: '\u0421'
base: '\u0441'
shift, capslock: '\u0421'
ralt: 'c'
ralt+shift, ralt+capslock: 'C'
}
key V {
label: '\u041c'
base: '\u043c'
shift, capslock: '\u041c'
ralt: 'v'
ralt+shift, ralt+capslock: 'V'
}
key B {
label: '\u0418'
base: '\u0438'
shift, capslock: '\u0418'
ralt: 'b'
ralt+shift, ralt+capslock: 'B'
}
key N {
label: '\u0422'
base: '\u0442'
shift, capslock: '\u0422'
ralt: 'n'
ralt+shift, ralt+capslock: 'N'
}
key M {
label: '\u042c'
base: '\u044c'
shift, capslock: '\u042c'
ralt: 'm'
ralt+shift, ralt+capslock: 'M'
}
key COMMA {
label: '\u0411'
base: '\u0431'
shift, capslock: '\u0411'
ralt: ','
ralt+shift: '<'
}
key PERIOD {
label: '\u042e'
base: '\u044e'
shift, capslock: '\u042e'
ralt: '.'
ralt+shift: '>'
}
key SLASH {
label: '.'
base: '.'
shift: ','
ralt: '/'
ralt+shift: '?'
}

View File

@@ -0,0 +1,407 @@
# Copyright (C) 2012 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.
#
# Russian keyboard layout.
# This is a variant of the typical Russian PC keyboard layout that is presented
# on Apple keyboards. In contrast with the standard layout, some of the symbols and
# punctuation characters have been rearranged.
# English characters are accessible using ralt (Alt Gr).
#
type OVERLAY
map key 86 PLUS
### ROW 1
key GRAVE {
label: '>'
base: '>'
shift: '<'
ralt: '\u00a7'
ralt+shift: '\u00b1'
}
key 1 {
label: '1'
base: '1'
shift: '!'
ralt: '!'
}
key 2 {
label: '2'
base: '2'
shift: '"'
ralt: '@'
}
key 3 {
label: '3'
base: '3'
shift: '\u2116'
ralt: '#'
}
key 4 {
label: '4'
base: '4'
shift: '%'
ralt: '$'
}
key 5 {
label: '5'
base: '5'
shift: ':'
ralt: '%'
}
key 6 {
label: '6'
base: '6'
shift: ','
ralt: '^'
}
key 7 {
label: '7'
base: '7'
shift: '.'
ralt: '&'
}
key 8 {
label: '8'
base: '8'
shift: ';'
ralt: '*'
}
key 9 {
label: '9'
base: '9'
shift: '('
ralt: '('
}
key 0 {
label: '0'
base: '0'
shift: ')'
ralt: ')'
}
key MINUS {
label: '-'
base: '-'
shift: '_'
ralt: '-'
ralt+shift: '_'
}
key EQUALS {
label: '='
base: '='
shift: '+'
ralt: '='
ralt+shift: '+'
}
### ROW 2
key Q {
label: '\u0419'
base: '\u0439'
shift, capslock: '\u0419'
ralt: 'q'
ralt+shift, ralt+capslock: 'Q'
}
key W {
label: '\u0426'
base: '\u0446'
shift, capslock: '\u0426'
ralt: 'w'
ralt+shift, ralt+capslock: 'W'
}
key E {
label: '\u0423'
base: '\u0443'
shift, capslock: '\u0423'
ralt: 'e'
ralt+shift, ralt+capslock: 'E'
}
key R {
label: '\u041a'
base: '\u043a'
shift, capslock: '\u041a'
ralt: 'r'
ralt+shift, ralt+capslock: 'R'
}
key T {
label: '\u0415'
base: '\u0435'
shift, capslock: '\u0415'
ralt: 't'
ralt+shift, ralt+capslock: 'T'
}
key Y {
label: '\u041d'
base: '\u043d'
shift, capslock: '\u041d'
ralt: 'y'
ralt+shift, ralt+capslock: 'Y'
}
key U {
label: '\u0413'
base: '\u0433'
shift, capslock: '\u0413'
ralt: 'u'
ralt+shift, ralt+capslock: 'U'
}
key I {
label: '\u0428'
base: '\u0448'
shift, capslock: '\u0428'
ralt: 'i'
ralt+shift, ralt+capslock: 'I'
}
key O {
label: '\u0429'
base: '\u0449'
shift, capslock: '\u0429'
ralt: 'o'
ralt+shift, ralt+capslock: 'O'
}
key P {
label: '\u0417'
base: '\u0437'
shift, capslock: '\u0417'
ralt: 'p'
ralt+shift, ralt+capslock: 'P'
}
key LEFT_BRACKET {
label: '\u0425'
base: '\u0445'
shift, capslock: '\u0425'
ralt: '['
ralt+shift: '{'
}
key RIGHT_BRACKET {
label: '\u042a'
base: '\u044a'
shift, capslock: '\u042a'
ralt: ']'
ralt+shift: '}'
}
### ROW 3
key A {
label: '\u0424'
base: '\u0444'
shift, capslock: '\u0424'
ralt: 'a'
ralt+shift, ralt+capslock: 'A'
}
key S {
label: '\u042b'
base: '\u044b'
shift, capslock: '\u042b'
ralt: 's'
ralt+shift, ralt+capslock: 'S'
}
key D {
label: '\u0412'
base: '\u0432'
shift, capslock: '\u0412'
ralt: 'd'
ralt+shift, ralt+capslock: 'D'
}
key F {
label: '\u0410'
base: '\u0430'
shift, capslock: '\u0410'
ralt: 'f'
ralt+shift, ralt+capslock: 'F'
}
key G {
label: '\u041f'
base: '\u043f'
shift, capslock: '\u041f'
ralt: 'g'
ralt+shift, ralt+capslock: 'G'
}
key H {
label: '\u0420'
base: '\u0440'
shift, capslock: '\u0420'
ralt: 'h'
ralt+shift, ralt+capslock: 'H'
}
key J {
label: '\u041e'
base: '\u043e'
shift, capslock: '\u041e'
ralt: 'j'
ralt+shift, ralt+capslock: 'J'
}
key K {
label: '\u041b'
base: '\u043b'
shift, capslock: '\u041b'
ralt: 'k'
ralt+shift, ralt+capslock: 'K'
}
key L {
label: '\u0414'
base: '\u0434'
shift, capslock: '\u0414'
ralt: 'l'
ralt+shift, ralt+capslock: 'L'
}
key SEMICOLON {
label: '\u0416'
base: '\u0436'
shift, capslock: '\u0416'
ralt: ';'
ralt+shift: ':'
}
key APOSTROPHE {
label: '\u042d'
base: '\u044d'
shift, capslock: '\u042d'
ralt: '\''
ralt+shift: '"'
}
key BACKSLASH {
label: '\u0401'
base: '\u0451'
shift, capslock: '\u0401'
ralt: '\\'
ralt+shift: '|'
}
### ROW 4
key PLUS {
label: '['
base: '['
shift: ']'
ralt: '`'
ralt+shift: '~'
}
key Z {
label: '\u042f'
base: '\u044f'
shift, capslock: '\u042f'
ralt: 'z'
ralt+shift, ralt+capslock: 'Z'
}
key X {
label: '\u0427'
base: '\u0447'
shift, capslock: '\u0427'
ralt: 'x'
ralt+shift, ralt+capslock: 'X'
}
key C {
label: '\u0421'
base: '\u0441'
shift, capslock: '\u0421'
ralt: 'c'
ralt+shift, ralt+capslock: 'C'
}
key V {
label: '\u041c'
base: '\u043c'
shift, capslock: '\u041c'
ralt: 'v'
ralt+shift, ralt+capslock: 'V'
}
key B {
label: '\u0418'
base: '\u0438'
shift, capslock: '\u0418'
ralt: 'b'
ralt+shift, ralt+capslock: 'B'
}
key N {
label: '\u0422'
base: '\u0442'
shift, capslock: '\u0422'
ralt: 'n'
ralt+shift, ralt+capslock: 'N'
}
key M {
label: '\u042c'
base: '\u044c'
shift, capslock: '\u042c'
ralt: 'm'
ralt+shift, ralt+capslock: 'M'
}
key COMMA {
label: '\u0411'
base: '\u0431'
shift, capslock: '\u0411'
ralt: ','
ralt+shift: '<'
}
key PERIOD {
label: '\u042e'
base: '\u044e'
shift, capslock: '\u042e'
ralt: '.'
ralt+shift: '>'
}
key SLASH {
label: '/'
base: '/'
shift: '?'
ralt: '/'
ralt+shift: '?'
}

View File

@@ -0,0 +1,329 @@
# Copyright (C) 2012 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.
#
# Spanish (Spain) keyboard layout.
#
type OVERLAY
map key 86 PLUS
### ROW 1
key GRAVE {
label: '\u00ba'
base: '\u00ba'
shift: '\u00aa'
ralt: '\\'
}
key 1 {
label: '1'
base: '1'
shift: '!'
ralt: '|'
}
key 2 {
label: '2'
base: '2'
shift: '"'
ralt: '@'
}
key 3 {
label: '3'
base: '3'
shift: '\u00b7'
ralt: '#'
}
key 4 {
label: '4'
base: '4'
shift: '$'
ralt: '\u0303'
}
key 5 {
label: '5'
base: '5'
shift: '%'
ralt: '\u20ac'
}
key 6 {
label: '6'
base: '6'
shift: '&'
ralt: '\u00ac'
}
key 7 {
label: '7'
base: '7'
shift: '/'
}
key 8 {
label: '8'
base: '8'
shift: '('
}
key 9 {
label: '9'
base: '9'
shift: ')'
}
key 0 {
label: '0'
base: '0'
shift: '='
}
key MINUS {
label: '\''
base: '\''
shift: '?'
}
key EQUALS {
label: '\u00a1'
base: '\u00a1'
shift: '\u00bf'
}
### ROW 2
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
ralt: '\u20ac'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key Y {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
}
key LEFT_BRACKET {
label: '\u02cb'
base: '\u0300'
shift: '\u0302'
ralt: '['
}
key RIGHT_BRACKET {
label: '+'
base: '+'
shift: '*'
ralt: ']'
}
### ROW 3
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
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 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 SEMICOLON {
label: '\u00d1'
base: '\u00f1'
shift, capslock: '\u00d1'
}
key APOSTROPHE {
label: '\u00b4'
base: '\u0301'
shift: '\u0308'
ralt: '{'
}
key BACKSLASH {
label: '\u00c7'
base: '\u00e7'
shift, capslock: '\u00c7'
ralt: '}'
}
### ROW 4
key PLUS {
label: '<'
base: '<'
shift: '>'
}
key Z {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
}
key M {
label: 'M'
base: 'm'
shift, capslock: 'M'
}
key COMMA {
label: ','
base: ','
shift: ';'
}
key PERIOD {
label: '.'
base: '.'
shift: ':'
}
key SLASH {
label: '-'
base: '-'
shift: '_'
}

View File

@@ -0,0 +1,334 @@
# Copyright (C) 2012 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.
#
# Swiss French keyboard layout.
# Same as Swiss German except in the placement of the umlaut / accented keys.
#
type OVERLAY
map key 21 Z
map key 44 Y
map key 86 PLUS
### ROW 1
key GRAVE {
label: '\u00a7'
base: '\u00a7'
shift: '\u00b0'
}
key 1 {
label: '1'
base: '1'
shift: '+'
ralt: '\u00a6'
}
key 2 {
label: '2'
base: '2'
shift: '"'
ralt: '@'
}
key 3 {
label: '3'
base: '3'
shift: '*'
ralt: '#'
}
key 4 {
label: '4'
base: '4'
shift: '\u00e7'
}
key 5 {
label: '5'
base: '5'
shift: '%'
}
key 6 {
label: '6'
base: '6'
shift: '&'
ralt: '\u00ac'
}
key 7 {
label: '7'
base: '7'
shift: '/'
ralt: '|'
}
key 8 {
label: '8'
base: '8'
shift: '('
ralt: '\u00a2'
}
key 9 {
label: '9'
base: '9'
shift: ')'
}
key 0 {
label: '0'
base: '0'
shift: '='
}
key MINUS {
label: '\''
base: '\''
shift: '?'
ralt: '\u0301'
}
key EQUALS {
label: '\u02c6'
base: '\u0302'
shift: '\u0300'
ralt: '\u0303'
}
### ROW 2
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
ralt: '\u20ac'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key Z {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
}
key LEFT_BRACKET {
label: '\u00e8'
base: '\u00e8'
shift: '\u00fc'
ralt: '['
}
key RIGHT_BRACKET {
label: '\u00a8'
base: '\u0308'
shift: '!'
ralt: ']'
}
### ROW 3
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
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 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 SEMICOLON {
label: '\u00e9'
base: '\u00e9'
shift: '\u00f6'
}
key APOSTROPHE {
label: '\u00e0'
base: '\u00e0'
shift: '\u00e4'
ralt: '{'
}
key BACKSLASH {
label: '$'
base: '$'
shift: '\u00a3'
ralt: '}'
}
### ROW 4
key PLUS {
label: '<'
base: '<'
shift: '>'
ralt: '\\'
}
key Y {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
}
key M {
label: 'M'
base: 'm'
shift, capslock: 'M'
}
key COMMA {
label: ','
base: ','
shift: ';'
}
key PERIOD {
label: '.'
base: '.'
shift: ':'
}
key SLASH {
label: '-'
base: '-'
shift: '_'
}

View File

@@ -0,0 +1,334 @@
# Copyright (C) 2012 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.
#
# Swiss German keyboard layout.
# Same as Swiss French except in the placement of the umlaut / accented keys.
#
type OVERLAY
map key 21 Z
map key 44 Y
map key 86 PLUS
### ROW 1
key GRAVE {
label: '\u00a7'
base: '\u00a7'
shift: '\u00b0'
}
key 1 {
label: '1'
base: '1'
shift: '+'
ralt: '\u00a6'
}
key 2 {
label: '2'
base: '2'
shift: '"'
ralt: '@'
}
key 3 {
label: '3'
base: '3'
shift: '*'
ralt: '#'
}
key 4 {
label: '4'
base: '4'
shift: '\u00e7'
}
key 5 {
label: '5'
base: '5'
shift: '%'
}
key 6 {
label: '6'
base: '6'
shift: '&'
ralt: '\u00ac'
}
key 7 {
label: '7'
base: '7'
shift: '/'
ralt: '|'
}
key 8 {
label: '8'
base: '8'
shift: '('
ralt: '\u00a2'
}
key 9 {
label: '9'
base: '9'
shift: ')'
}
key 0 {
label: '0'
base: '0'
shift: '='
}
key MINUS {
label: '\''
base: '\''
shift: '?'
ralt: '\u0301'
}
key EQUALS {
label: '\u02c6'
base: '\u0302'
shift: '\u0300'
ralt: '\u0303'
}
### ROW 2
key Q {
label: 'Q'
base: 'q'
shift, capslock: 'Q'
}
key W {
label: 'W'
base: 'w'
shift, capslock: 'W'
}
key E {
label: 'E'
base: 'e'
shift, capslock: 'E'
ralt: '\u20ac'
}
key R {
label: 'R'
base: 'r'
shift, capslock: 'R'
}
key T {
label: 'T'
base: 't'
shift, capslock: 'T'
}
key Z {
label: 'Z'
base: 'z'
shift, capslock: 'Z'
}
key U {
label: 'U'
base: 'u'
shift, capslock: 'U'
}
key I {
label: 'I'
base: 'i'
shift, capslock: 'I'
}
key O {
label: 'O'
base: 'o'
shift, capslock: 'O'
}
key P {
label: 'P'
base: 'p'
shift, capslock: 'P'
}
key LEFT_BRACKET {
label: '\u00fc'
base: '\u00fc'
shift: '\u00e8'
ralt: '['
}
key RIGHT_BRACKET {
label: '\u00a8'
base: '\u0308'
shift: '!'
ralt: ']'
}
### ROW 3
key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
}
key S {
label: 'S'
base: 's'
shift, capslock: 'S'
}
key D {
label: 'D'
base: 'd'
shift, capslock: 'D'
}
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 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 SEMICOLON {
label: '\u00f6'
base: '\u00f6'
shift: '\u00e9'
}
key APOSTROPHE {
label: '\u00e4'
base: '\u00e4'
shift: '\u00e0'
ralt: '{'
}
key BACKSLASH {
label: '$'
base: '$'
shift: '\u00a3'
ralt: '}'
}
### ROW 4
key PLUS {
label: '<'
base: '<'
shift: '>'
ralt: '\\'
}
key Y {
label: 'Y'
base: 'y'
shift, capslock: 'Y'
}
key X {
label: 'X'
base: 'x'
shift, capslock: 'X'
}
key C {
label: 'C'
base: 'c'
shift, capslock: 'C'
}
key V {
label: 'V'
base: 'v'
shift, capslock: 'V'
}
key B {
label: 'B'
base: 'b'
shift, capslock: 'B'
}
key N {
label: 'N'
base: 'n'
shift, capslock: 'N'
}
key M {
label: 'M'
base: 'm'
shift, capslock: 'M'
}
key COMMA {
label: ','
base: ','
shift: ';'
}
key PERIOD {
label: '.'
base: '.'
shift: ':'
}
key SLASH {
label: '-'
base: '-'
shift: '_'
}

View File

@@ -11,4 +11,25 @@
<!-- German keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_german_label">German</string>
<!-- French keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_french_label">French</string>
<!-- Canadian French keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_french_ca_label">French (Canada)</string>
<!-- Russian keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_russian_label">Russian</string>
<!-- Russian (Apple style) keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_russian_apple_label">Russian, Apple</string>
<!-- Spanish keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_spanish_label">Spanish</string>
<!-- Swiss French keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_swiss_french_label">Swiss French</string>
<!-- Swiss German keyboard layout label. [CHAR LIMIT=35] -->
<string name="keyboard_layout_swiss_german_label">Swiss German</string>
</resources>

View File

@@ -11,4 +11,32 @@
<keyboard-layout android:name="keyboard_layout_german"
android:label="@string/keyboard_layout_german_label"
android:kcm="@raw/keyboard_layout_german" />
<keyboard-layout android:name="keyboard_layout_french"
android:label="@string/keyboard_layout_french_label"
android:kcm="@raw/keyboard_layout_french" />
<keyboard-layout android:name="keyboard_layout_french_ca"
android:label="@string/keyboard_layout_french_ca_label"
android:kcm="@raw/keyboard_layout_french_ca" />
<keyboard-layout android:name="keyboard_layout_russian"
android:label="@string/keyboard_layout_russian_label"
android:kcm="@raw/keyboard_layout_russian" />
<keyboard-layout android:name="keyboard_layout_russian_apple"
android:label="@string/keyboard_layout_russian_apple_label"
android:kcm="@raw/keyboard_layout_russian_apple" />
<keyboard-layout android:name="keyboard_layout_spanish"
android:label="@string/keyboard_layout_spanish_label"
android:kcm="@raw/keyboard_layout_spanish" />
<keyboard-layout android:name="keyboard_layout_swiss_french"
android:label="@string/keyboard_layout_swiss_french_label"
android:kcm="@raw/keyboard_layout_swiss_french" />
<keyboard-layout android:name="keyboard_layout_swiss_german"
android:label="@string/keyboard_layout_swiss_german_label"
android:kcm="@raw/keyboard_layout_swiss_german" />
</keyboard-layouts>