/*
* Copyright (C) 2014 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.
*/
package com.android.inputmethod.keyboard.internal;
import java.util.HashMap;
import java.util.Locale;
/**
* !!!!! DO NOT EDIT THIS FILE !!!!!
*
* This file is generated by tools/make-keyboard-text. The base template file is
* tools/make-keyboard-text/res/src/com/android/inputmethod/keyboard/internal/
* KeyboardTextsTable.tmpl
*
* This file must be updated when any text resources in keyboard layout files have been changed.
* These text resources are referred as "!text/<resource_name>" in keyboard XML definitions,
* and should be defined in
* tools/make-keyboard-text/res/values-<locale>/donottranslate-more-keys.xml
*
* To update this file, please run the following commands.
* $ cd $ANDROID_BUILD_TOP
* $ mmm packages/inputmethods/LatinIME/tools/make-keyboard-text
* $ make-keyboard-text -java packages/inputmethods/LatinIME/java
*
* The updated source file will be generated to the following path (this file).
* packages/inputmethods/LatinIME/java/src/com/android/inputmethod/keyboard/internal/
* KeyboardTextsTable.java
*/
public final class KeyboardTextsTable {
// Name to index map.
private static final HashMap<String, Integer> sNameToIndexesMap = new HashMap<>();
// Locale to texts table map.
private static final HashMap<String, String[]> sLocaleToTextsTableMap = new HashMap<>();
// TODO: Remove this variable after debugging.
// Texts table to locale maps.
private static final HashMap<String[], String> sTextsTableToLocaleMap = new HashMap<>();
public static String getText(final String name, final String[] textsTable) {
final Integer indexObj = sNameToIndexesMap.get(name);
if (indexObj == null) {
throw new RuntimeException("Unknown text name=" + name + " locale="
+ sTextsTableToLocaleMap.get(textsTable));
}
final int index = indexObj;
final String text = (index < textsTable.length) ? textsTable[index] : null;
if (text != null) {
return text;
}
// Sanity check.
if (index >= 0 && index < TEXTS_DEFAULT.length) {
return TEXTS_DEFAULT[index];
}
// Throw exception for debugging purpose.
throw new RuntimeException("Illegal index=" + index + " for name=" + name
+ " locale=" + sTextsTableToLocaleMap.get(textsTable));
}
public static String[] getTextsTable(final Locale locale) {
final String localeKey = locale.toString();
if (sLocaleToTextsTableMap.containsKey(localeKey)) {
return sLocaleToTextsTableMap.get(localeKey);
}
final String languageKey = locale.getLanguage();
if (sLocaleToTextsTableMap.containsKey(languageKey)) {
return sLocaleToTextsTableMap.get(languageKey);
}
return TEXTS_DEFAULT;
}
private static final String[] NAMES = {
// /* index:histogram */ "name",
/* 0:12 */ "keylabel_to_alpha",
/* 1:12 */ "additional_morekeys_symbols_1",
/* 2:12 */ "additional_morekeys_symbols_2",
/* 3:12 */ "additional_morekeys_symbols_3",
/* 4:12 */ "additional_morekeys_symbols_4",
/* 5:12 */ "additional_morekeys_symbols_5",
/* 6:12 */ "additional_morekeys_symbols_6",
/* 7:12 */ "additional_morekeys_symbols_7",
/* 8:12 */ "additional_morekeys_symbols_8",
/* 9:12 */ "additional_morekeys_symbols_9",
/* 10:12 */ "additional_morekeys_symbols_0",
/* 11:11 */ "keyspec_symbols_1",
/* 12:11 */ "keyspec_symbols_2",
/* 13:11 */ "keyspec_symbols_3",
/* 14:11 */ "keyspec_symbols_4",
/* 15:11 */ "keyspec_symbols_5",
/* 16:11 */ "keyspec_symbols_6",
/* 17:11 */ "keyspec_symbols_7",
/* 18:11 */ "keyspec_symbols_8",
/* 19:11 */ "keyspec_symbols_9",
/* 20:11 */ "keyspec_symbols_0",
/* 21:11 */ "keylabel_to_symbol",
/* 22: 2 */ "morekeys_a",
/* 23: 2 */ "morekeys_e",
/* 24: 2 */ "morekeys_i",
/* 25: 2 */ "morekeys_o",
/* 26: 2 */ "morekeys_u",
/* 27: 2 */ "morekeys_s",
/* 28: 2 */ "morekeys_n",
/* 29: 2 */ "morekeys_c",
/* 30: 1 */ "morekeys_y",
/* 31: 1 */ "morekeys_d",
/* 32: 1 */ "morekeys_r",
/* 33: 1 */ "morekeys_t",
/* 34: 1 */ "morekeys_z",
/* 35: 1 */ "morekeys_k",
/* 36: 1 */ "morekeys_l",
/* 37: 1 */ "morekeys_g",
/* 38: 1 */ "morekeys_h",
/* 39: 1 */ "morekeys_j",
/* 40: 1 */ "morekeys_w",
/* 41: 0 */ "morekeys_v",
/* 42: 0 */ "morekeys_q",
/* 43: 0 */ "morekeys_x",
/* 44: 0 */ "keyspec_q",
/* 45: 0 */ "keyspec_w",
/* 46: 0 */ "keyspec_y",
/* 47: 0 */ "keyspec_x",
/* 48: 0 */ "keyspec_nordic_row1_11",
/* 49: 0 */ "keyspec_nordic_row2_10",
/* 50: 0 */ "keyspec_nordic_row2_11",
/* 51: 0 */ "morekeys_nordic_row2_10",
/* 52: 0 */ "morekeys_nordic_row2_11",
/* 53: 0 */ "keyspec_east_slavic_row1_9",
/* 54: 0 */ "keyspec_east_slavic_row2_2",
/* 55: 0 */ "keyspec_east_slavic_row2_11",
/* 56: 0 */ "keyspec_east_slavic_row3_5",
/* 57: 0 */ "morekeys_east_slavic_row2_2",
/* 58: 0 */ "morekeys_east_slavic_row2_11",
/* 59: 0 */ "morekeys_cyrillic_u",
/* 60: 0 */ "morekeys_cyrillic_ka",
/* 61: 0 */ "morekeys_cyrillic_en",
/* 62: 0 */ "morekeys_cyrillic_ghe",
/* 63: 0 */ "morekeys_cyrillic_a",
/* 64: 0 */ "morekeys_cyrillic_o",
/* 65: 0 */ "morekeys_cyrillic_i",
/* 66: 0 */ "morekeys_cyrillic_ie",
/* 67: 0 */ "morekeys_cyrillic_soft_sign",
/* 68: 0 */ "keyspec_south_slavic_row1_6",
/* 69: 0 */ "keyspec_south_slavic_row2_11",
/* 70: 0 */ "keyspec_south_slavic_row3_1",
/* 71: 0 */ "keyspec_south_slavic_row3_8",
/* 72: 0 */ "keyspec_swiss_row1_11",
/* 73: 0 */ "keyspec_swiss_row2_10",
/* 74: 0 */ "keyspec_swiss_row2_11",
/* 75: 0 */ "morekeys_swiss_row1_11",
/* 76: 0 */ "morekeys_swiss_row2_10",
/* 77: 0 */ "morekeys_swiss_row2_11",
/* 78: 0 */ "single_quotes",
/* 79: 0 */ "double_quotes",
/* 80: 0 */ "single_angle_quotes",
/* 81: 0 */ "double_angle_quotes",
/* 82: 0 */ "morekeys_currency_dollar",
/* 83: 0 */ "keylabel_for_currency",
/* 84: 0 */ "morekeys_currency_generic",
/* 85: 0 */ "morekeys_punctuation",
/* 86: 0 */ "morekeys_tablet_punctuation",
/* 87: 0 */ "keyspec_spanish_row2_10",
/* 88: 0 */ "morekeys_star",
/* 89: 0 */ "morekeys_bullet",
/* 90: 0 */ "morekeys_plus",
/* 91: 0 */ "morekeys_left_parenthesis",
/* 92: 0 */ "morekeys_right_parenthesis",
/* 93: 0 */ "morekeys_less_than",
/* 94: 0 */ "morekeys_greater_than",
/* 95: 0 */ "morekeys_arabic_diacritics",
/* 96: 0 */ "morekeys_symbols_1",
/* 97: 0 */ "morekeys_symbols_2",
/* 98: 0 */ "morekeys_symbols_3",
/* 99: 0 */ "morekeys_symbols_4",
/* 100: 0 */ "morekeys_symbols_5",
/* 101: 0 */ "morekeys_symbols_6",
/* 102: 0 */ "morekeys_symbols_7",
/* 103: 0 */ "morekeys_symbols_8",
/* 104: 0 */ "morekeys_symbols_9",
/* 105: 0 */ "morekeys_symbols_0",
/* 106: 0 */ "keyspec_left_parenthesis",
/* 107: 0 */ "keyspec_right_parenthesis",
/* 108: 0 */ "keyspec_left_square_bracket",
/* 109: 0 */ "keyspec_right_square_bracket",
/* 110: 0 */ "keyspec_left_curly_bracket",
/* 111: 0 */ "keyspec_right_curly_bracket",
/* 112: 0 */ "keyspec_less_than",
/* 113: 0 */ "keyspec_greater_than",
/* 114: 0 */ "keyspec_less_than_equal",
/* 115: 0 */ "keyspec_greater_than_equal",
/* 116: 0 */ "keyspec_left_double_angle_quote",
/* 117: 0 */ "keyspec_right_double_angle_quote",
/* 118: 0 */ "keyspec_left_single_angle_quote",
/* 119: 0 */ "keyspec_right_single_angle_quote",
/* 120: 0 */ "keyspec_comma",
/* 121: 0 */ "keyspec_tablet_comma",
/* 122: 0 */ "keyhintlabel_tablet_comma",
/* 123: 0 */ "morekeys_tablet_comma",
/* 124: 0 */ "keyspec_period",
/* 125: 0 */ "keyhintlabel_period",
/* 126: 0 */ "morekeys_period",
/* 127: 0 */ "keyspec_tablet_period",
/* 128: 0 */ "keyhintlabel_tablet_period",
/* 129: 0 */ "morekeys_tablet_period",
/* 130: 0 */ "keyspec_symbols_question",
/* 131: 0 */ "keyspec_symbols_semicolon",
/* 132: 0 */ "keyspec_symbols_percent",
/* 133: 0 */ "morekeys_exclamation",
/* 134: 0 */ "morekeys_question",
/* 135: 0 */ "morekeys_symbols_semicolon",
/* 136: 0 */ "morekeys_symbols_percent",
/* 137: 0 */ "morekeys_am_pm",
/* 138: 0 */ "keyspec_settings",
/* 139: 0 */ "keyspec_shortcut",
/* 140: 0 */ "keyspec_action_next",
/* 141: 0 */ "keyspec_action_previous",
/* 142: 0 */ "keylabel_to_more_symbol",
/* 143: 0 */ "keylabel_tablet_to_more_symbol",
/* 144: 0 */ "keylabel_to_phone_numeric",
/* 145: 0 */ "keylabel_to_phone_symbols",
/* 146: 0 */ "keylabel_time_am",
/* 147: 0 */ "keylabel_time_pm",
/* 148: 0 */ "keyspec_popular_domain",
/* 149: 0 */ "morekeys_popular_domain",
/* 150: 0 */ "keyspecs_left_parenthesis_more_keys",
/* 151: 0 */ "keyspecs_right_parenthesis_more_keys",
/* 152: 0 */ "single_laqm_raqm",
/* 153: 0 */ "single_raqm_laqm",
/* 154: 0 */ "double_laqm_raqm",
/* 155: 0 */ "double_raqm_laqm",
/* 156: 0 */ "single_lqm_rqm",
/* 157: 0 */ "single_9qm_lqm",
/* 158: 0 */ "single_9qm_rqm",
/* 159: 0 */ "single_rqm_9qm",
/* 160: 0 */ "double_lqm_rqm",
/* 161: 0 */ "double_9qm_lqm",
/* 162: 0 */ "double_9qm_rqm",
/* 163: 0 */ "double_rqm_9qm",
/* 164: 0 */ "morekeys_single_quote",
/* 165: 0 */ "morekeys_double_quote",
/* 166: 0 */ "morekeys_tablet_double_quote",
/* 167: 0 */ "keyspec_emoji_action_key",
};
private static final String EMPTY = "";
/* Default texts */
private static final String[] TEXTS_DEFAULT = {
// Label for "switch to alphabetic" key.
/* keylabel_to_alpha */ "ABC",
/* additional_morekeys_symbols_1 ~ */
EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
/* ~ additional_morekeys_symbols_0 */
/* keyspec_symbols_1 */ "1",
/* keyspec_symbols_2 */ "2",
/* keyspec_symbols_3 */ "3",
/* keyspec_symbols_4 */ "4",
/* keyspec_symbols_5 */ "5",
/* keyspec_symbols_6 */ "6",
/* keyspec_symbols_7 */ "7",
/* keyspec_symbols_8 */ "8",
/* keyspec_symbols_9 */ "9",
/* keyspec_symbols_0 */ "0",
// Label for "switch to symbols" key.
/* keylabel_to_symbol */ "?123",
/* morekeys_a ~ */
EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
/* ~ morekeys_x */
/* keyspec_q */ "q",
/* keyspec_w */ "w",
/* keyspec_y */ "y",
/* keyspec_x */ "x",
/* keyspec_nordic_row1_11 ~ */
EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
EMPTY, EMPTY, EMPTY, EMPTY,
/* ~ morekeys_swiss_row2_11 */
/* single_quotes */ "!text/single_lqm_rqm",
/* double_quotes */ "!text/double_lqm_rqm",
/* single_angle_quotes */ "!text/single_laqm_raqm",
/* double_angle_quotes */ "!text/double_laqm_raqm",
// $ - I'm making ₹ as default
// U+00A2: "¢" CENT SIGN
// U+00A3: "£" POUND SIGN
// U+20AC: "€" EURO SIGN
// U+00A5: "¥" YEN SIGN
// U+20B1: "₱" PESO SIGN
/* morekeys_currency_dollar */ "$,\u00A2,\u00A3,\u20AC,\u00A5,\u20B1",
/* keylabel_for_currency */ "$",
/* morekeys_currency_generic */ "$,\u00A2,\u20AC,\u00A3,\u00A5,\u20B1",
/* morekeys_punctuation */ "!autoColumnOrder!8,\\,,?,!,#,!text/keyspec_right_parenthesis,!text/keyspec_left_parenthesis,/,;,',@,:,-,\",+,\\%,&",
/* morekeys_tablet_punctuation */ "!autoColumnOrder!7,\\,,',#,!text/keyspec_right_parenthesis,!text/keyspec_left_parenthesis,/,;,@,:,-,\",+,\\%,&",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
/* keyspec_spanish_row2_10 */ "\u00F1",
// U+2020: "†" DAGGER
// U+2021: "‡" DOUBLE DAGGER
// U+2605: "★" BLACK STAR
/* morekeys_star */ "\u2020,\u2021,\u2605",
// U+266A: "♪" EIGHTH NOTE
// U+2665: "♥" BLACK HEART SUIT
// U+2660: "♠" BLACK SPADE SUIT
// U+2666: "♦" BLACK DIAMOND SUIT
// U+2663: "♣" BLACK CLUB SUIT
/* morekeys_bullet */ "\u266A,\u2665,\u2660,\u2666,\u2663",
// U+00B1: "±" PLUS-MINUS SIGN
/* morekeys_plus */ "\u00B1",
/* morekeys_left_parenthesis */ "!fixedColumnOrder!3,!text/keyspecs_left_parenthesis_more_keys",
/* morekeys_right_parenthesis */ "!fixedColumnOrder!3,!text/keyspecs_right_parenthesis_more_keys",
/* morekeys_less_than */ "!fixedColumnOrder!3,!text/keyspec_left_single_angle_quote,!text/keyspec_less_than_equal,!text/keyspec_left_double_angle_quote",
/* morekeys_greater_than */ "!fixedColumnOrder!3,!text/keyspec_right_single_angle_quote,!text/keyspec_greater_than_equal,!text/keyspec_right_double_angle_quote",
/* morekeys_arabic_diacritics */ EMPTY,
// U+00B9: "¹" SUPERSCRIPT ONE
// U+00BD: "½" VULGAR FRACTION ONE HALF
// U+2153: "⅓" VULGAR FRACTION ONE THIRD
// U+00BC: "¼" VULGAR FRACTION ONE QUARTER
// U+215B: "⅛" VULGAR FRACTION ONE EIGHTH
/* morekeys_symbols_1 */ "\u00B9,\u00BD,\u2153,\u00BC,\u215B",
// U+00B2: "²" SUPERSCRIPT TWO
// U+2154: "⅔" VULGAR FRACTION TWO THIRDS
/* morekeys_symbols_2 */ "\u00B2,\u2154",
// U+00B3: "³" SUPERSCRIPT THREE
// U+00BE: "¾" VULGAR FRACTION THREE QUARTERS
// U+215C: "⅜" VULGAR FRACTION THREE EIGHTHS
/* morekeys_symbols_3 */ "\u00B3,\u00BE,\u215C",
// U+2074: "⁴" SUPERSCRIPT FOUR
/* morekeys_symbols_4 */ "\u2074",
// U+215D: "⅝" VULGAR FRACTION FIVE EIGHTHS
/* morekeys_symbols_5 */ "\u215D",
/* morekeys_symbols_6 */ EMPTY,
// U+215E: "⅞" VULGAR FRACTION SEVEN EIGHTHS
/* morekeys_symbols_7 */ "\u215E",
/* morekeys_symbols_8 */ EMPTY,
/* morekeys_symbols_9 */ EMPTY,
// U+207F: "ⁿ" SUPERSCRIPT LATIN SMALL LETTER N
// U+2205: "∅" EMPTY SET
/* morekeys_symbols_0 */ "\u207F,\u2205",
// The all letters need to be mirrored are found at
// http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
// U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
// U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
// U+2264: "≤" LESS-THAN OR EQUAL TO
// U+2265: "≥" GREATER-THAN EQUAL TO
// U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
// U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
/* keyspec_left_parenthesis */ "(",
/* keyspec_right_parenthesis */ ")",
/* keyspec_left_square_bracket */ "[",
/* keyspec_right_square_bracket */ "]",
/* keyspec_left_curly_bracket */ "{",
/* keyspec_right_curly_bracket */ "}",
/* keyspec_less_than */ "<",
/* keyspec_greater_than */ ">",
/* keyspec_less_than_equal */ "\u2264",
/* keyspec_greater_than_equal */ "\u2265",
/* keyspec_left_double_angle_quote */ "\u00AB",
/* keyspec_right_double_angle_quote */ "\u00BB",
/* keyspec_left_single_angle_quote */ "\u2039",
/* keyspec_right_single_angle_quote */ "\u203A",
// Comma key
/* keyspec_comma */ ",",
/* keyspec_tablet_comma */ ",",
/* keyhintlabel_tablet_comma */ EMPTY,
/* morekeys_tablet_comma */ EMPTY,
// Period key
/* keyspec_period */ ".",
/* keyhintlabel_period */ EMPTY,
/* morekeys_period */ "!text/morekeys_punctuation",
/* keyspec_tablet_period */ ".",
/* keyhintlabel_tablet_period */ EMPTY,
/* morekeys_tablet_period */ "!text/morekeys_tablet_punctuation",
/* keyspec_symbols_question */ "?",
/* keyspec_symbols_semicolon */ ";",
/* keyspec_symbols_percent */ "%",
// U+00A1: "¡" INVERTED EXCLAMATION MARK
/* morekeys_exclamation */ "\u00A1",
// U+00BF: "¿" INVERTED QUESTION MARK
/* morekeys_question */ "\u00BF",
/* morekeys_symbols_semicolon */ EMPTY,
// U+2030: "‰" PER MILLE SIGN
/* morekeys_symbols_percent */ "\u2030",
/* morekeys_am_pm */ "!fixedColumnOrder!2,!hasLabels!,!text/keylabel_time_am,!text/keylabel_time_pm",
/* keyspec_settings */ "!icon/settings_key|!code/key_settings",
/* keyspec_shortcut */ "!icon/shortcut_key|!code/key_shortcut",
/* keyspec_action_next */ "!hasLabels!,!text/label_next_key|!code/key_action_next",
/* keyspec_action_previous */ "!hasLabels!,!text/label_previous_key|!code/key_action_previous",
// Label for "switch to more symbol" modifier key ("= \ <"). Must be short to fit on key!
/* keylabel_to_more_symbol */ "= \\\\ <",
// Label for "switch to more symbol" modifier key on tablets. Must be short to fit on key!
/* keylabel_tablet_to_more_symbol */ "~ [ <",
// Label for "switch to phone numeric" key. Must be short to fit on key!
/* keylabel_to_phone_numeric */ "123",
// Label for "switch to phone symbols" key. Must be short to fit on key!
// U+FF0A: "*" FULLWIDTH ASTERISK
// U+FF03: "#" FULLWIDTH NUMBER SIGN
/* keylabel_to_phone_symbols */ "\uFF0A\uFF03",
// Key label for "ante meridiem"
/* keylabel_time_am */ "AM",
// Key label for "post meridiem"
/* keylabel_time_pm */ "PM",
/* keyspec_popular_domain */ ".com",
// popular web domains for the locale - most popular, displayed on the keyboard
/* morekeys_popular_domain */ "!hasLabels!,.net,.org,.gov,.edu",
/* keyspecs_left_parenthesis_more_keys */ "!text/keyspec_less_than,!text/keyspec_left_curly_bracket,!text/keyspec_left_square_bracket",
/* keyspecs_right_parenthesis_more_keys */ "!text/keyspec_greater_than,!text/keyspec_right_curly_bracket,!text/keyspec_right_square_bracket",
// The following characters don't need BIDI mirroring.
// U+2018: "‘" LEFT SINGLE QUOTATION MARK
// U+2019: "’" RIGHT SINGLE QUOTATION MARK
// U+201A: "‚" SINGLE LOW-9 QUOTATION MARK
// U+201C: "“" LEFT DOUBLE QUOTATION MARK
// U+201D: "”" RIGHT DOUBLE QUOTATION MARK
// U+201E: "„" DOUBLE LOW-9 QUOTATION MARK
// Abbreviations are:
// laqm: LEFT-POINTING ANGLE QUOTATION MARK
// raqm: RIGHT-POINTING ANGLE QUOTATION MARK
// lqm: LEFT QUOTATION MARK
// rqm: RIGHT QUOTATION MARK
// 9qm: LOW-9 QUOTATION MARK
// The following each quotation mark pair consist of
// <opening quotation mark>, <closing quotation mark>
// and is named after (single|double)_<opening quotation mark>_<closing quotation mark>.
/* single_laqm_raqm */ "!text/keyspec_left_single_angle_quote,!text/keyspec_right_single_angle_quote",
/* single_raqm_laqm */ "!text/keyspec_right_single_angle_quote,!text/keyspec_left_single_angle_quote",
/* double_laqm_raqm */ "!text/keyspec_left_double_angle_quote,!text/keyspec_right_double_angle_quote",
/* double_raqm_laqm */ "!text/keyspec_right_double_angle_quote,!text/keyspec_left_double_angle_quote",
// The following each quotation mark triplet consists of
// <another quotation mark>, <opening quotation mark>, <closing quotation mark>
// and is named after (single|double)_<opening quotation mark>_<closing quotation mark>.
/* single_lqm_rqm */ "\u201A,\u2018,\u2019",
/* single_9qm_lqm */ "\u2019,\u201A,\u2018",
/* single_9qm_rqm */ "\u2018,\u201A,\u2019",
/* single_rqm_9qm */ "\u2018,\u2019,\u201A",
/* double_lqm_rqm */ "\u201E,\u201C,\u201D",
/* double_9qm_lqm */ "\u201D,\u201E,\u201C",
/* double_9qm_rqm */ "\u201C,\u201E,\u201D",
/* double_rqm_9qm */ "\u201C,\u201D,\u201E",
/* morekeys_single_quote */ "!fixedColumnOrder!5,!text/single_quotes,!text/single_angle_quotes",
/* morekeys_double_quote */ "!fixedColumnOrder!5,!text/double_quotes,!text/double_angle_quotes",
/* morekeys_tablet_double_quote */ "!fixedColumnOrder!6,!text/double_quotes,!text/single_quotes,!text/double_angle_quotes,!text/single_angle_quotes",
/* keyspec_emoji_action_key */ "!icon/emoji_action_key|!code/key_emoji",
};
/* Locale as_IN: Assamese (India) */
private static final String[] TEXTS_as_IN = {
/* keylabel_to_alpha */ "\u0985",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u09E7",
/* keyspec_symbols_2 */ "\u09E8",
/* keyspec_symbols_3 */ "\u09E9",
/* keyspec_symbols_4 */ "\u09EA",
/* keyspec_symbols_5 */ "\u09EB",
/* keyspec_symbols_6 */ "\u09EC",
/* keyspec_symbols_7 */ "\u09ED",
/* keyspec_symbols_8 */ "\u09EE",
/* keyspec_symbols_9 */ "\u09EF",
/* keyspec_symbols_0 */ "\u09E6",
/* keylabel_to_symbol */ "\u09E7\u09E8\u09E9",
};
/* Locale bn_IN: Bengali (India) */
private static final String[] TEXTS_bn_IN = {
/* keylabel_to_alpha */ "\u0985",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u09E7",
/* keyspec_symbols_2 */ "\u09E8",
/* keyspec_symbols_3 */ "\u09E9",
/* keyspec_symbols_4 */ "\u09EA",
/* keyspec_symbols_5 */ "\u09EB",
/* keyspec_symbols_6 */ "\u09EC",
/* keyspec_symbols_7 */ "\u09ED",
/* keyspec_symbols_8 */ "\u09EE",
/* keyspec_symbols_9 */ "\u09EF",
/* keyspec_symbols_0 */ "\u09E6",
/* keylabel_to_symbol */ "\u09E7\u09E8\u09E9",
};
/* Locale en: English */
private static final String[] TEXTS_en = {
/* keylabel_to_alpha ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null,
/* ~ keylabel_to_symbol */
// U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
// U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
/* morekeys_a */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
// U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
// U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
// U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
// U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
/* morekeys_e */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0113",
// U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
// U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
// U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
// U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
// U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
/* morekeys_i */ "\u00ED,\u00EE,\u00EF,\u012B,\u00EC",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
/* morekeys_o */ "\u00F3,\u00F4,\u00F6,\u00F2,\u0153,\u00F8,\u014D,\u00F5",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
/* morekeys_u */ "\u00FA,\u00FB,\u00FC,\u00F9,\u016B",
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
/* morekeys_s */ "\u00DF",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
/* morekeys_n */ "\u00F1",
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
/* morekeys_c */ "\u00E7",
};
/* Locale hi_IN: Hindi (India) */
private static final String[] TEXTS_hi_IN = {
// Label for "switch to alphabetic" key.
// U+0915: "क" DEVANAGARI LETTER KA
// U+0916: "ख" DEVANAGARI LETTER KHA
// U+0917: "ग" DEVANAGARI LETTER GA
/* keylabel_to_alpha */ "\u0915\u0916\u0917",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
// U+0967: "१" DEVANAGARI DIGIT ONE
/* keyspec_symbols_1 */ "\u0967",
// U+0968: "२" DEVANAGARI DIGIT TWO
/* keyspec_symbols_2 */ "\u0968",
// U+0969: "३" DEVANAGARI DIGIT THREE
/* keyspec_symbols_3 */ "\u0969",
// U+096A: "४" DEVANAGARI DIGIT FOUR
/* keyspec_symbols_4 */ "\u096A",
// U+096B: "५" DEVANAGARI DIGIT FIVE
/* keyspec_symbols_5 */ "\u096B",
// U+096C: "६" DEVANAGARI DIGIT SIX
/* keyspec_symbols_6 */ "\u096C",
// U+096D: "७" DEVANAGARI DIGIT SEVEN
/* keyspec_symbols_7 */ "\u096D",
// U+096E: "८" DEVANAGARI DIGIT EIGHT
/* keyspec_symbols_8 */ "\u096E",
// U+096F: "९" DEVANAGARI DIGIT NINE
/* keyspec_symbols_9 */ "\u096F",
// U+0966: "०" DEVANAGARI DIGIT ZERO
/* keyspec_symbols_0 */ "\u0966",
// Label for "switch to symbols" key.
/* keylabel_to_symbol */ "?\u0967\u0968\u0969",
};
/* Locale kn_IN: Kannada (India) */
private static final String[] TEXTS_kn_IN = {
/* keylabel_to_alpha */ "\u0C85",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u0CE7",
/* keyspec_symbols_2 */ "\u0CE8",
/* keyspec_symbols_3 */ "\u0CE9",
/* keyspec_symbols_4 */ "\u0CEA",
/* keyspec_symbols_5 */ "\u0CEB",
/* keyspec_symbols_6 */ "\u0CEC",
/* keyspec_symbols_7 */ "\u0CED",
/* keyspec_symbols_8 */ "\u0CEE",
/* keyspec_symbols_9 */ "\u0CEF",
/* keyspec_symbols_0 */ "\u0CE6",
/* keylabel_to_symbol */ "\u0CE7\u0CE8\u0CE9",
};
/* Locale ml_IN: Malayalam (India) */
private static final String[] TEXTS_ml_IN = {
/* keylabel_to_alpha */ "\u0D05",
// U+0966: "൧" MALAYALAM DIGIT ONE
/* additional_morekeys_symbols_1 */ "\u0D67",
// U+0966: "൨" MALAYALAM DIGIT TWO
/* additional_morekeys_symbols_2 */ "\u0D68",
// U+0966: "൩" MALAYALAM DIGIT THREE
/* additional_morekeys_symbols_3 */ "\u0D69",
// U+0966: "൪" MALAYALAM DIGIT FOUR
/* additional_morekeys_symbols_4 */ "\u0D6A",
// U+0966: "൫" MALAYALAM DIGIT FIVE
/* additional_morekeys_symbols_5 */ "\u0D6B",
// U+0966: "൬" MALAYALAM DIGIT SIX
/* additional_morekeys_symbols_6 */ "\u0D6C",
// U+0966: "൭" MALAYALAM DIGIT SEVEN
/* additional_morekeys_symbols_7 */ "\u0D6D",
// U+0966: "൮" MALAYALAM DIGIT EIGHT
/* additional_morekeys_symbols_8 */ "\u0D6E",
// U+0966: "൯" MALAYALAM DIGIT NINE
/* additional_morekeys_symbols_9 */ "\u0D6F",
// U+0966: "൦" MALAYALAM DIGIT ZERO
/* additional_morekeys_symbols_0 */ "\u0D66",
};
/* Locale mr_IN: Marathi (India) */
private static final String[] TEXTS_mr_IN = {
// Label for "switch to alphabetic" key.
// U+0915: "क" DEVANAGARI LETTER KA
// U+0916: "ख" DEVANAGARI LETTER KHA
// U+0917: "ग" DEVANAGARI LETTER GA
/* keylabel_to_alpha */ "\u0915\u0916\u0917",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
// U+0967: "१" DEVANAGARI DIGIT ONE
/* keyspec_symbols_1 */ "\u0967",
// U+0968: "२" DEVANAGARI DIGIT TWO
/* keyspec_symbols_2 */ "\u0968",
// U+0969: "३" DEVANAGARI DIGIT THREE
/* keyspec_symbols_3 */ "\u0969",
// U+096A: "४" DEVANAGARI DIGIT FOUR
/* keyspec_symbols_4 */ "\u096A",
// U+096B: "५" DEVANAGARI DIGIT FIVE
/* keyspec_symbols_5 */ "\u096B",
// U+096C: "६" DEVANAGARI DIGIT SIX
/* keyspec_symbols_6 */ "\u096C",
// U+096D: "७" DEVANAGARI DIGIT SEVEN
/* keyspec_symbols_7 */ "\u096D",
// U+096E: "८" DEVANAGARI DIGIT EIGHT
/* keyspec_symbols_8 */ "\u096E",
// U+096F: "९" DEVANAGARI DIGIT NINE
/* keyspec_symbols_9 */ "\u096F",
// U+0966: "०" DEVANAGARI DIGIT ZERO
/* keyspec_symbols_0 */ "\u0966",
// Label for "switch to symbols" key.
/* keylabel_to_symbol */ "?\u0967\u0968\u0969",
};
/* Locale my: Burmese */
private static final String[] TEXTS_my = {
/* keylabel_to_alpha */ "\u1000",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u1041",
/* keyspec_symbols_2 */ "\u1042",
/* keyspec_symbols_3 */ "\u1043",
/* keyspec_symbols_4 */ "\u1044",
/* keyspec_symbols_5 */ "\u1045",
/* keyspec_symbols_6 */ "\u1046",
/* keyspec_symbols_7 */ "\u1047",
/* keyspec_symbols_8 */ "\u1048",
/* keyspec_symbols_9 */ "\u1049",
/* keyspec_symbols_0 */ "\u1040",
// Label for "switch to symbols" key.
/* keylabel_to_symbol */ "\u1041",
};
/* Locale ne_NP: Nepali (Nepal) */
private static final String[] TEXTS_ne_NP = {
// Label for "switch to alphabetic" key.
// U+0915: "क" DEVANAGARI LETTER KA
// U+0916: "ख" DEVANAGARI LETTER KHA
// U+0917: "ग" DEVANAGARI LETTER GA
/* keylabel_to_alpha */ "\u0915\u0916\u0917",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
// U+0967: "१" DEVANAGARI DIGIT ONE
/* keyspec_symbols_1 */ "\u0967",
// U+0968: "२" DEVANAGARI DIGIT TWO
/* keyspec_symbols_2 */ "\u0968",
// U+0969: "३" DEVANAGARI DIGIT THREE
/* keyspec_symbols_3 */ "\u0969",
// U+096A: "४" DEVANAGARI DIGIT FOUR
/* keyspec_symbols_4 */ "\u096A",
// U+096B: "५" DEVANAGARI DIGIT FIVE
/* keyspec_symbols_5 */ "\u096B",
// U+096C: "६" DEVANAGARI DIGIT SIX
/* keyspec_symbols_6 */ "\u096C",
// U+096D: "७" DEVANAGARI DIGIT SEVEN
/* keyspec_symbols_7 */ "\u096D",
// U+096E: "८" DEVANAGARI DIGIT EIGHT
/* keyspec_symbols_8 */ "\u096E",
// U+096F: "९" DEVANAGARI DIGIT NINE
/* keyspec_symbols_9 */ "\u096F",
// U+0966: "०" DEVANAGARI DIGIT ZERO
/* keyspec_symbols_0 */ "\u0966",
// Label for "switch to symbols" key.
/* keylabel_to_symbol */ "?\u0967\u0968\u0969",
};
/* Locale or_IN: Oriya (India) */
private static final String[] TEXTS_or_IN = {
/* keylabel_to_alpha */ "\u0B05",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u0B67",
/* keyspec_symbols_2 */ "\u0B68",
/* keyspec_symbols_3 */ "\u0B69",
/* keyspec_symbols_4 */ "\u0B6A",
/* keyspec_symbols_5 */ "\u0B6B",
/* keyspec_symbols_6 */ "\u0B6C",
/* keyspec_symbols_7 */ "\u0B6D",
/* keyspec_symbols_8 */ "\u0B6E",
/* keyspec_symbols_9 */ "\u0B6F",
/* keyspec_symbols_0 */ "\u0B66",
/* keylabel_to_symbol */ "\u0B67\u0B68\u0B69",
};
/* Locale pa_IN: Panjabi (India) */
private static final String[] TEXTS_pa_IN = {
/* keylabel_to_alpha */ "\u0A05",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u0A67",
/* keyspec_symbols_2 */ "\u0A68",
/* keyspec_symbols_3 */ "\u0A69",
/* keyspec_symbols_4 */ "\u0A6A",
/* keyspec_symbols_5 */ "\u0A6B",
/* keyspec_symbols_6 */ "\u0A6C",
/* keyspec_symbols_7 */ "\u0A6D",
/* keyspec_symbols_8 */ "\u0A6E",
/* keyspec_symbols_9 */ "\u0A6F",
/* keyspec_symbols_0 */ "\u0A66",
/* keylabel_to_symbol */ "\u0A67\u0A68\u0A69",
};
/* Locale ta_IN: Tamil (India) */
private static final String[] TEXTS_ta_IN = {
/* keylabel_to_alpha */ "\u0B85",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
// U+0BE7: "௧" TAMIL DIGIT ONE
/* keyspec_symbols_1 */ "\u0BE7",
// U+0BE8: "௨" TAMIL DIGIT TWO
/* keyspec_symbols_2 */ "\u0BE8",
// U+0BE9: "௩" TAMIL DIGIT THREE
/* keyspec_symbols_3 */ "\u0BE9",
// U+0BEA: "௪" TAMIL DIGIT FOUR
/* keyspec_symbols_4 */ "\u0BEA",
// U+0BEB: "௫" TAMIL DIGIT FIVE
/* keyspec_symbols_5 */ "\u0BEB",
// U+0BEC: "௬" TAMIL DIGIT SIX
/* keyspec_symbols_6 */ "\u0BEC",
// U+0BED: "௭" TAMIL DIGIT SEVEN
/* keyspec_symbols_7 */ "\u0BED",
// U+0BEE: "௮" TAMIL DIGIT EIGHT
/* keyspec_symbols_8 */ "\u0BEE",
// U+0BEF: "௯" TAMIL DIGIT NINE
/* keyspec_symbols_9 */ "\u0BEF",
// U+0BE6: "௦" TAMIL DIGIT ZERO
/* keyspec_symbols_0 */ "\u0BE6",
/* keylabel_to_symbol */ "\u0BE7\u0BE8\u0BE9",
};
/* Locale te_IN: Telugu (India) */
private static final String[] TEXTS_te_IN = {
/* keylabel_to_alpha */ "\u0C05",
/* additional_morekeys_symbols_1 */ "1",
/* additional_morekeys_symbols_2 */ "2",
/* additional_morekeys_symbols_3 */ "3",
/* additional_morekeys_symbols_4 */ "4",
/* additional_morekeys_symbols_5 */ "5",
/* additional_morekeys_symbols_6 */ "6",
/* additional_morekeys_symbols_7 */ "7",
/* additional_morekeys_symbols_8 */ "8",
/* additional_morekeys_symbols_9 */ "9",
/* additional_morekeys_symbols_0 */ "0",
/* keyspec_symbols_1 */ "\u0C67",
/* keyspec_symbols_2 */ "\u0C68",
/* keyspec_symbols_3 */ "\u0C69",
/* keyspec_symbols_4 */ "\u0C6A",
/* keyspec_symbols_5 */ "\u0C6B",
/* keyspec_symbols_6 */ "\u0C6C",
/* keyspec_symbols_7 */ "\u0C6D",
/* keyspec_symbols_8 */ "\u0C6E",
/* keyspec_symbols_9 */ "\u0C6F",
/* keyspec_symbols_0 */ "\u0C66",
/* keylabel_to_symbol */ "\u0C67\u0C68\u0C69",
};
/* Locale zz: Alphabet */
private static final String[] TEXTS_zz = {
/* keylabel_to_alpha ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null,
/* ~ keylabel_to_symbol */
// U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
// U+00E1: "á" LATIN SMALL LETTER A WITH ACUTE
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
// U+0103: "ă" LATIN SMALL LETTER A WITH BREVE
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
/* morekeys_a */ "\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u0101,\u0103,\u0105,\u00AA",
// U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
// U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
// U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
// U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
// U+0115: "ĕ" LATIN SMALL LETTER E WITH BREVE
// U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
// U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
// U+011B: "ě" LATIN SMALL LETTER E WITH CARON
/* morekeys_e */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113,\u0115,\u0117,\u0119,\u011B",
// U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
// U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
// U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
// U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
// U+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
// U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
// U+012D: "ĭ" LATIN SMALL LETTER I WITH BREVE
// U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
// U+0131: "ı" LATIN SMALL LETTER DOTLESS I
// U+0133: "ij" LATIN SMALL LIGATURE IJ
/* morekeys_i */ "\u00EC,\u00ED,\u00EE,\u00EF,\u0129,\u012B,\u012D,\u012F,\u0131,\u0133",
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+014F: "ŏ" LATIN SMALL LETTER O WITH BREVE
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
/* morekeys_o */ "\u00F2,\u00F3,\u00F4,\u00F5,\u00F6,\u00F8,\u014D,\u014F,\u0151,\u0153,\u00BA",
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+0169: "ũ" LATIN SMALL LETTER U WITH TILDE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
// U+016D: "ŭ" LATIN SMALL LETTER U WITH BREVE
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
// U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
/* morekeys_u */ "\u00F9,\u00FA,\u00FB,\u00FC,\u0169,\u016B,\u016D,\u016F,\u0171,\u0173",
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+015D: "ŝ" LATIN SMALL LETTER S WITH CIRCUMFLEX
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+017F: "ſ" LATIN SMALL LETTER LONG S
/* morekeys_s */ "\u00DF,\u015B,\u015D,\u015F,\u0161,\u017F",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
// U+0148: "ň" LATIN SMALL LETTER N WITH CARON
// U+0149: "ʼn" LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
// U+014B: "ŋ" LATIN SMALL LETTER ENG
/* morekeys_n */ "\u00F1,\u0144,\u0146,\u0148,\u0149,\u014B",
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
// U+0109: "ĉ" LATIN SMALL LETTER C WITH CIRCUMFLEX
// U+010B: "ċ" LATIN SMALL LETTER C WITH DOT ABOVE
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
/* morekeys_c */ "\u00E7,\u0107,\u0109,\u010B,\u010D",
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+0177: "ŷ" LATIN SMALL LETTER Y WITH CIRCUMFLEX
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
// U+0133: "ij" LATIN SMALL LIGATURE IJ
/* morekeys_y */ "\u00FD,\u0177,\u00FF,\u0133",
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
// U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
// U+00F0: "ð" LATIN SMALL LETTER ETH
/* morekeys_d */ "\u010F,\u0111,\u00F0",
// U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
// U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
// U+0159: "ř" LATIN SMALL LETTER R WITH CARON
/* morekeys_r */ "\u0155,\u0157,\u0159",
// U+00FE: "þ" LATIN SMALL LETTER THORN
// U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
// U+0165: "ť" LATIN SMALL LETTER T WITH CARON
// U+0167: "ŧ" LATIN SMALL LETTER T WITH STROKE
/* morekeys_t */ "\u00FE,\u0163,\u0165,\u0167",
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
/* morekeys_z */ "\u017A,\u017C,\u017E",
// U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
// U+0138: "ĸ" LATIN SMALL LETTER KRA
/* morekeys_k */ "\u0137,\u0138",
// U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
// U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
// U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
// U+0140: "ŀ" LATIN SMALL LETTER L WITH MIDDLE DOT
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
/* morekeys_l */ "\u013A,\u013C,\u013E,\u0140,\u0142",
// U+011D: "ĝ" LATIN SMALL LETTER G WITH CIRCUMFLEX
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
// U+0121: "ġ" LATIN SMALL LETTER G WITH DOT ABOVE
// U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
/* morekeys_g */ "\u011D,\u011F,\u0121,\u0123",
// U+0125: "ĥ" LATIN SMALL LETTER H WITH CIRCUMFLEX
/* morekeys_h */ "\u0125",
// U+0135: "ĵ" LATIN SMALL LETTER J WITH CIRCUMFLEX
/* morekeys_j */ "\u0135",
// U+0175: "ŵ" LATIN SMALL LETTER W WITH CIRCUMFLEX
/* morekeys_w */ "\u0175",
};
private static final Object[] LOCALES_AND_TEXTS = {
// "locale", TEXT_ARRAY, /* numberOfNonNullText/lengthOf_TEXT_ARRAY localeName */
"DEFAULT", TEXTS_DEFAULT, /* 168/168 DEFAULT */
"as_IN" , TEXTS_as_IN, /* 22/ 22 Assamese (India) */
"bn_IN" , TEXTS_bn_IN, /* 22/ 22 Bengali (India) */
"en" , TEXTS_en, /* 8/ 30 English */
"hi_IN" , TEXTS_hi_IN, /* 22/ 22 Hindi (India) */
"kn_IN" , TEXTS_kn_IN, /* 22/ 22 Kannada (India) */
"ml_IN" , TEXTS_ml_IN, /* 11/ 11 Malayalam (India) */
"mr_IN" , TEXTS_mr_IN, /* 22/ 22 Marathi (India) */
"my" , TEXTS_my, /* 22/ 22 Burmese */
"ne_NP" , TEXTS_ne_NP, /* 22/ 22 Nepali (Nepal) */
"or_IN" , TEXTS_or_IN, /* 22/ 22 Oriya (India) */
"pa_IN" , TEXTS_pa_IN, /* 22/ 22 Panjabi (India) */
"ta_IN" , TEXTS_ta_IN, /* 22/ 22 Tamil (India) */
"te_IN" , TEXTS_te_IN, /* 22/ 22 Telugu (India) */
"zz" , TEXTS_zz, /* 19/ 41 Alphabet */
};
static {
for (int index = 0; index < NAMES.length; index++) {
sNameToIndexesMap.put(NAMES[index], index);
}
for (int i = 0; i < LOCALES_AND_TEXTS.length; i += 2) {
final String locale = (String)LOCALES_AND_TEXTS[i];
final String[] textsTable = (String[])LOCALES_AND_TEXTS[i + 1];
sLocaleToTextsTableMap.put(locale, textsTable);
sTextsTableToLocaleMap.put(textsTable, locale);
}
}
}