aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/res/values-af/strings.xml36
-rw-r--r--java/res/values-ar/strings.xml36
-rw-r--r--java/res/values-bg/strings.xml36
-rw-r--r--java/res/values-ca/strings.xml38
-rw-r--r--java/res/values-cs/strings.xml36
-rw-r--r--java/res/values-da/strings.xml36
-rw-r--r--java/res/values-de/strings.xml44
-rw-r--r--java/res/values-el/strings.xml36
-rw-r--r--java/res/values-en-rGB/strings.xml36
-rw-r--r--java/res/values-en-rIN/strings.xml36
-rw-r--r--java/res/values-es-rUS/strings.xml36
-rw-r--r--java/res/values-es/strings.xml36
-rw-r--r--java/res/values-hr/strings.xml36
-rw-r--r--java/res/values-hu/strings.xml36
-rw-r--r--java/res/values-hy-rAM/strings.xml36
-rw-r--r--java/res/values-in/strings.xml36
-rw-r--r--java/res/values-it/strings.xml38
-rw-r--r--java/res/values-iw/strings.xml36
-rw-r--r--java/res/values-lo-rLA/strings.xml36
-rw-r--r--java/res/values-mn-rMN/strings.xml36
-rw-r--r--java/res/values-nb/strings.xml44
-rw-r--r--java/res/values-ne-rNP/strings.xml36
-rw-r--r--java/res/values-nl/strings.xml36
-rw-r--r--java/res/values-pl/strings.xml36
-rw-r--r--java/res/values-pt-rPT/strings.xml36
-rw-r--r--java/res/values-ru/strings.xml8
-rw-r--r--java/res/values-sl/strings.xml36
-rw-r--r--java/res/values-sr/strings.xml36
-rw-r--r--java/res/values-sv/strings.xml36
-rw-r--r--java/res/values-th/strings.xml2
-rw-r--r--java/res/values-uk/strings.xml36
-rw-r--r--java/res/values-vi/strings.xml8
-rw-r--r--java/res/values-zh-rCN/strings.xml8
-rw-r--r--java/res/values-zu/strings.xml36
-rw-r--r--java/res/xml/keys_curly_brackets.xml4
-rw-r--r--java/res/xml/keys_less_greater.xml11
-rw-r--r--java/res/xml/keys_parentheses.xml4
-rw-r--r--java/res/xml/keys_square_brackets.xml4
-rw-r--r--java/res/xml/rowkeys_symbols3.xml7
-rw-r--r--java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java6
-rw-r--r--java/src/com/android/inputmethod/keyboard/Key.java9
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java9
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardBuilder.java1
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardCodesSet.java69
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardParams.java1
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsTable.java3945
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/MoreKeySpec.java5
-rw-r--r--java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java43
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java54
-rw-r--r--java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java5
-rw-r--r--java/src/com/android/inputmethod/latin/suggestions/SuggestionStripLayoutHelper.java80
-rw-r--r--java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java8
52 files changed, 2544 insertions, 2847 deletions
diff --git a/java/res/values-af/strings.xml b/java/res/values-af/strings.xml
index 841675aa7..522180fcd 100644
--- a/java/res/values-af/strings.xml
+++ b/java/res/values-af/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Koppel \'n kopstuk om te hoor hoe wagwoordsleutels hardop gesê word."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Huidige teks is %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Geen teks ingevoer nie"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> korrigeer <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> na <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> voer outokorrigering uit"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Sleutelkode %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift aan (tik om te deaktiveer)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Foonmodus"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Foonsimbool-modus"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Sleutelbord versteek"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Wys tans <xliff:g id="KEYBOARD_MODE">%s</xliff:g>-sleutelbord"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"datum en tyd"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-pos"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Engels (VK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Engels (VS)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spaans (VS)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Engels (VK) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Engels (VS) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spaans (VS) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (Tradisioneel)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Geen taal nie (alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Lees eksterne woordeboeklêer"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Geen woordeboeklêers in die aflaaiselsvouer nie"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Kies \'n woordeboeklêer om te installeer"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Moet hierdie lêer regtig vir <xliff:g id="LANGUAGE_NAME">%s</xliff:g> geïnstalleer word?"</string>
<string name="error" msgid="8940763624668513648">"Daar was \'n fout"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Gooi kontaktewoordeboek weg"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Gooi persoonlike woordeboek weg"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Verfris"</string>
<string name="last_update" msgid="730467549913588780">"Laas opgedateer"</string>
<string name="message_updating" msgid="4457761393932375219">"Kontroleer vir opdaterings"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Laai tans…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Hoofwoordeboek"</string>
<string name="cancel" msgid="6830980399865683324">"Kanselleer"</string>
<string name="install_dict" msgid="180852772562189365">"Installeer"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Kanselleer"</string>
<string name="delete_dict" msgid="756853268088330054">"Vee uit"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Die gekose taal op jou mobiele toestel het \'n beskikbare woordeboek.&lt;br/&gt; Ons beveel aan dat die <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>-woordeboek &lt;b&gt;afgelaai&lt;/b&gt; word om jou tikervaring te verbeter.&lt;br/&gt; &lt;br/&gt; Dit kan \'n minuut of twee duur om oor 3G af te laai. Heffings kan dalk geld as jy nie \'n &lt;b&gt;onbeperkte dataplan&lt;/b&gt;.&lt;br/&gt; het nie. As jy onseker is oor watter dataplan jy het, beveel ons aan dat jy \'n Wi-Fi-verbinding soek om outomaties te begin aflaai.&lt;br/&gt; &lt;br/&gt; Wenk: Jy kan woordeboeke aflaai en verwyder deur te gaan na &lt;b&gt;Taal en invoer&lt;/b&gt; in die &lt;b&gt;Instellings&lt;/b&gt;-kieslys van jou mobiele toestel."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Laai nou af (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Laai oor Wi-Fi af"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"\'n Woordeboek is beskikbaar vir <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Druk om te hersien en af te laai"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Laai tans af: voorstelle vir <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> sal binnekort gereed wees."</string>
<string name="version_text" msgid="2715354215568469385">"Weergawe <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Voeg by"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Voeg by woordeboek"</string>
diff --git a/java/res/values-ar/strings.xml b/java/res/values-ar/strings.xml
index c7ef42da1..63fde8c6d 100644
--- a/java/res/values-ar/strings.xml
+++ b/java/res/values-ar/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"يمكنك توصيل سماعة رأس لسماع مفاتيح كلمة المرور منطوقة بصوت عالٍ."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"‏النص الحالي هو %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"لم يتم إدخال نص"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> لتصحيح <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> إلى <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> لإجراء التصحيح التلقائي"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"‏رمز المفتاح %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"العالي"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"‏Shift يعمل (انقر للتعطيل)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"وضع الهاتف"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"وضع رموز الهاتف"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"لوحة المفاتيح مخفية"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"إظهار لوحة مفاتيح <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"التاريخ"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"التاريخ والوقت"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"البريد الإلكتروني"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"الإنجليزية (المملكة المتحدة)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"الإنجليزية (الولايات المتحدة)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"الإسبانية (الأميركية)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"الإنجليزية (المملكة المتحدة) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"الإنجليزية (الولايات المتحدة) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"الإسبانية (الولايات المتحدة) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (التقليدية)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"بدون لغة (أبجدية)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"‏الأبجدية (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"‏الأبجدية (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"قراءة ملف قاموس خارجي"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"ليست هناك ملفات قواميس في مجلد التنزيلات"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"تحديد ملف قاموس للتثبيت"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"هل تريد حقًا تثبيت هذا الملف للغة <xliff:g id="LANGUAGE_NAME">%s</xliff:g>؟"</string>
<string name="error" msgid="8940763624668513648">"حدث خطأ"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"تفريغ معجم جهات الاتصال"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"تفريغ المعجم الشخصي"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"تحديث"</string>
<string name="last_update" msgid="730467549913588780">"تاريخ آخر تحديث"</string>
<string name="message_updating" msgid="4457761393932375219">"جارٍ البحث عن تحديثات"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"جارٍ التحميل…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"القاموس الرئيسي"</string>
<string name="cancel" msgid="6830980399865683324">"إلغاء"</string>
<string name="install_dict" msgid="180852772562189365">"تثبيت"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"إلغاء"</string>
<string name="delete_dict" msgid="756853268088330054">"حذف"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"‏اللغة المحددة على جهازك الجوّال تشتمل على قاموس متوفر.&lt;br/&gt; نوصي &lt;b&gt;بتنزيل&lt;/b&gt; قاموس <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> لتحسين تجربة الكتابة.&lt;br/&gt; &lt;br/&gt; قد يستغرق التنزيل دقيقة أو دقيقتين عبر شبكة الجيل الثالث. قد تنطبق الرسوم إذا لم تكن مشتركًا في &lt;b&gt;خطة البيانات غير المحدودة&lt;/b&gt;.&lt;br/&gt; إذا لم تكن متأكدًا من خطة البيانات المتوفرة لديك، فنحن نوصي بالبحث عن اتصال Wi-Fi لبدء عملية التنزيل تلقائيًا.&lt;br/&gt; &lt;br/&gt; نصيحة: يمكنك تنزيل القواميس وإزالتها من خلال الانتقال إلى &lt;b&gt;اللغة والإدخال&lt;/b&gt; في القائمة &lt;b&gt;إعدادات&lt;/b&gt; في جهازك الجوّال."</string>
<string name="download_over_metered" msgid="1643065851159409546">"التنزيل الآن (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> ميغابايت)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"‏التنزيل عبر شبكة Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"هناك قاموس متوفر للغة <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"اضغط للمراجعة والتنزيل"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"جارٍ التنزيل: ستتوفر اقتراحات للغة <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> قريبًا."</string>
<string name="version_text" msgid="2715354215568469385">"الإصدار <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"إضافة"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"إضافة إلى القاموس"</string>
diff --git a/java/res/values-bg/strings.xml b/java/res/values-bg/strings.xml
index 9900b32c3..a164d8ea6 100644
--- a/java/res/values-bg/strings.xml
+++ b/java/res/values-bg/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Включете слушалки, за да чуете клавишите за паролата на висок глас."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Текущият текст е %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Няма въведен текст"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"„<xliff:g id="KEY_NAME">%1$s</xliff:g>“ коригира „<xliff:g id="ORIGINAL_WORD">%2$s</xliff:g>“ на „<xliff:g id="CORRECTED_WORD">%3$s</xliff:g>“"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"„<xliff:g id="KEY_NAME">%1$s</xliff:g>“ изпълнява автоматично коригиране"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Код на клавишa %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"„Shift“ е включен (докоснете за деактивиране)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Режим за телефон"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Режим за символи на телефона"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Клавиатурата е скрита"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Показва се клавиатурата за <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"дата"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"дата и час"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"имейл aдреси"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"английски (Великобритания)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"английски (САЩ)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"испански (САЩ)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"английски (Великобр.) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"английски (САЩ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"испански (САЩ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (традиционен)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Без език (латиница)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Латиница (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Латиница (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Четене на файл за външен речник"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"В папката „Изтегляния“ няма файлове за речник"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Изберете файл за речника, който да инсталирате"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Наистина ли да се инсталира този файл за <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Възникна грешка"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Разтоварване на речника с контакти"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Разтоварване на частния речник"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Опресняване"</string>
<string name="last_update" msgid="730467549913588780">"Последна актуализация:"</string>
<string name="message_updating" msgid="4457761393932375219">"Проверява се за актуализации"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Зарежда се…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Основен речник"</string>
<string name="cancel" msgid="6830980399865683324">"Отказ"</string>
<string name="install_dict" msgid="180852772562189365">"Инсталиране"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Отказ"</string>
<string name="delete_dict" msgid="756853268088330054">"Изтриване"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Налице е речник за избрания език на мобилното ви устройство.&lt;br/&gt; Препоръчваме ви &lt;b&gt;да изтеглите&lt;/b&gt; речника за <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>, за да подобрите практическата си работа при писане.&lt;br/&gt; &lt;br/&gt; Изтеглянето през 3G може да отнеме една до две минути. Възможно е да бъдете таксувани, ако нямате &lt;b&gt;неограничен план за данни&lt;/b&gt;.&lt;br/&gt; В случай че не сте сигурни какъв е вашият план, ви препоръчваме да намерите Wi-Fi връзка, за да започнете автоматично изтеглянето.&lt;br/&gt; &lt;br/&gt; Съвет: Можете да изтегляте и премахвате речници, като отворите &lt;b&gt;Език и въвеждане&lt;/b&gt; в менюто &lt;b&gt;Настройки&lt;/b&gt; на мобилното си устройство."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Изтегляне сега (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> МБ)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Изтегляне през Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"За <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> е налице речник"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Натиснете, за да прегледате и изтеглите"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Изтегля се: Предложенията за <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> ще бъдат готови скоро."</string>
<string name="version_text" msgid="2715354215568469385">"Версия <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Добавяне"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Добавяне в речника"</string>
diff --git a/java/res/values-ca/strings.xml b/java/res/values-ca/strings.xml
index 4c42b229f..305d255c7 100644
--- a/java/res/values-ca/strings.xml
+++ b/java/res/values-ca/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Connecta un auricular per escoltar les claus de la contrasenya en veu alta."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"El text actual és %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"No s\'ha introduït cap text"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corregeix <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> per <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>."</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> executa la correcció automàtica."</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Clau de codi %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Maj"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Maj activat (pica per desactivar)"</string>
@@ -93,7 +91,7 @@
<string name="spoken_description_to_alpha" msgid="23129338819771807">"Lletres"</string>
<string name="spoken_description_to_numeric" msgid="591752092685161732">"Números"</string>
<string name="spoken_description_settings" msgid="4627462689603838099">"Configuració"</string>
- <string name="spoken_description_tab" msgid="2667716002663482248">"Pestanya"</string>
+ <string name="spoken_description_tab" msgid="2667716002663482248">"Tabulador"</string>
<string name="spoken_description_space" msgid="2582521050049860859">"Espai"</string>
<string name="spoken_description_mic" msgid="615536748882611950">"Entrada de veu"</string>
<string name="spoken_description_smiley" msgid="2256309826200113918">"Cara somrient"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Mode de telèfon"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Mode de símbols de telèfon"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Teclat amagat"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Es mostra el teclat per a <xliff:g id="KEYBOARD_MODE">%s</xliff:g>."</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"data"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"data i hora"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"correu electrònic"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Anglès (Regne Unit)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Anglès (EUA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Espanyol (EUA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Anglès (Regne Unit) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Anglès (EUA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Espanyol (EUA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Cap idioma (alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Lectura d\'un fitxer de diccionari extern"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"No hi ha cap fitxer de diccionari a la carpeta Baixades"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Selecció d\'un fitxer de diccionari per instal·lar"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Realment vols instal·lar aquest fitxer per a <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"S\'ha produït un error"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Esborrar el diccionari de contactes"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Esborrar el diccionari personal"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Actualitza"</string>
<string name="last_update" msgid="730467549913588780">"Última actualització"</string>
<string name="message_updating" msgid="4457761393932375219">"S\'està comprovant si hi ha actualitzacions"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"S\'està carregant..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"Diccionari principal"</string>
<string name="cancel" msgid="6830980399865683324">"Cancel·la"</string>
<string name="install_dict" msgid="180852772562189365">"Instal·la"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Cancel·la"</string>
<string name="delete_dict" msgid="756853268088330054">"Suprimeix"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Hi ha un diccionari disponible per a l\'idioma seleccionat al teu dispositiu mòbil.&lt;br/&gt; Et recomanem que &lt;b&gt;baixis&lt;/b&gt; el diccionari per a <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> per millorar la teva experiència d\'escriptura.&lt;br/&gt; &lt;br/&gt; La baixada pot trigar un parell de minuts en xarxes 3G. Si no tens un &lt;b&gt;pla de dades il·limitat&lt;/b&gt;,&lt;br/&gt; és possible que s\'apliquin càrrecs. Si no estàs segur de les característiques del teu pla de dades, et recomanem que cerquis una connexió Wi-Fi per iniciar la baixada automàticament.&lt;br/&gt; &lt;br/&gt;Consell: Pots baixar i suprimir diccionaris a la secció &lt;b&gt;Idioma i introducció de text&lt;/b&gt; del menú &lt;b&gt;Configuració&lt;/b&gt; del dispositiu mòbil."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Baixa ara (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Baixa mitjançant Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Hi ha disponible un diccionari per a <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>."</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Prem per revisar-lo i per baixar-lo"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Baixada: els suggeriments per a <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> estaran disponibles ben aviat."</string>
<string name="version_text" msgid="2715354215568469385">"Versió <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Afegeix"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Afegeix al diccionari"</string>
diff --git a/java/res/values-cs/strings.xml b/java/res/values-cs/strings.xml
index 0eededc26..1b2fb0c17 100644
--- a/java/res/values-cs/strings.xml
+++ b/java/res/values-cs/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Chcete-li slyšet, které klávesy jste při zadávání hesla stiskli, připojte sluchátka."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Aktuální text je %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Není zadán žádný text"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"Klávesou <xliff:g id="KEY_NAME">%1$s</xliff:g> opravíte <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> na <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"Klávesou <xliff:g id="KEY_NAME">%1$s</xliff:g> provedete automatickou opravu"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Kód klávesy %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Klávesa Shift je zapnutá (vypnete ji klepnutím)."</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Režim telefonu"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Režim telefonních symbolů"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Klávesnice je skrytá"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Je zobrazena klávesnice <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"datum a čas"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-mail"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"angličtina (Velká Británie)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"angličtina (USA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"španělština (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"angličtina (VB) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"angličtina (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"španělština (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradiční)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Žádný jazyk (latinka)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Latinka (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Latinka (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Číst soubor externího slovníku"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Ve složce Stažené nejsou žádné soubory slovníků."</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Vyberte soubor slovníku k instalaci"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Chcete nainstalovat tento soubor pro jazyk <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Došlo k chybě"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Vypsat slovník kontaktů"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Vypsat osobní slovník"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Aktualizovat"</string>
<string name="last_update" msgid="730467549913588780">"Poslední aktualizace"</string>
<string name="message_updating" msgid="4457761393932375219">"Kontrola aktualizací"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Načítání…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Hlavní slovník"</string>
<string name="cancel" msgid="6830980399865683324">"Zrušit"</string>
<string name="install_dict" msgid="180852772562189365">"Instalovat"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Zrušit"</string>
<string name="delete_dict" msgid="756853268088330054">"Smazat"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Pro vybraný jazyk mobilního zařízení je k dispozici slovník.&lt;br/&gt; Doporučujeme slovník pro jazyk <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> &lt;b&gt;stáhnout&lt;/b&gt;. Usnadníte si tím zadávání textu. &lt;br/&gt; &lt;br/&gt; V síti 3G bude stahování trvat minutu až dvě. Pokud nemáte &lt;b&gt;neomezený datový tarif&lt;/b&gt;, mohou vám být účtovány poplatky.&lt;br/&gt; Jestliže si nejste jisti, jaký datový tarif máte, doporučujeme vám najít připojení Wi-Fi. Stahování se pak zahájí automaticky.&lt;br/&gt; &lt;br/&gt; Tip: Slovníky můžete stahovat a odstraňovat v nabídce mobilního zařízení &lt;b&gt;Jazyk a zadávání&lt;/b&gt; v &lt;b&gt;Nastavení&lt;/b&gt;."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Stáhnout ihned (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Stáhnout pouze přes Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Je k dispozici slovník pro jazyk <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Stisknutím zkontrolujete a stáhnete"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Stahování: návrhy pro jazyk <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> budou brzy k dispozici."</string>
<string name="version_text" msgid="2715354215568469385">"Verze <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Přidat"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Přidat do slovníku"</string>
diff --git a/java/res/values-da/strings.xml b/java/res/values-da/strings.xml
index 3796847dd..b64684dbe 100644
--- a/java/res/values-da/strings.xml
+++ b/java/res/values-da/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Tilslut et headset for at høre indtastningen blive læst højt ved angivelse af adgangskode."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Nuværende tekst er %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Der er ingen indtastet tekst"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> retter <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> til <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> udfører automatisk stavekontrol"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Tastekode %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift-tast"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Skift er slået til (tryk for at deaktivere)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Telefontilstand"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Telefonsymboltilstand"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tastaturet er skjult"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Viser tastatur til <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"dato"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"Dato og klokkeslæt"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-mail"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Engelsk (Storbritannien)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Engelsk (USA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spansk (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Engelsk (Storbritannien) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Engelsk (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spansk (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (traditionelt)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Intet sprog (Alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Læs ekstern ordbogsfil"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Der er ingen ordbogsfiler i mappen Downloads"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Vælg den ordbog, som du vil installere"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Vil du virkelig installere denne fil for <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Der opstod en fejl"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Eksportér ordbog for kontakter"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Eksportér personlig ordbog"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Opdater"</string>
<string name="last_update" msgid="730467549913588780">"Sidst opdateret"</string>
<string name="message_updating" msgid="4457761393932375219">"Søger efter opdateringer"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Indlæser…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Hovedordbog"</string>
<string name="cancel" msgid="6830980399865683324">"Annuller"</string>
<string name="install_dict" msgid="180852772562189365">"Installer"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Annuller"</string>
<string name="delete_dict" msgid="756853268088330054">"Slet"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Det valgte sprog på din mobilenhed har en tilgængelig ordbog.&lt;br/&gt; Vi anbefaler, at du &lt;b&gt;downloader&lt;/b&gt; <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>-ordbogen for at forbedre din skriveoplevelse.&lt;br/&gt; &lt;br/&gt; Downloaden kan tage 1-2 minutter via 3G. Der bliver muligvis opkrævet et gebyr, hvis du ikke har et &lt;b&gt;ubegrænset dataabonnement&lt;/b&gt;.&lt;br/&gt;. Hvis du ikke er sikker på, hvilket dataabonnement du har, anbefaler vi, at du finder en Wi-Fi-forbindelse for at starte automatisk download.&lt;br/&gt; &lt;br/&gt;Tip! Du kan downloade og fjerne ordbøger ved at gå til &lt;b&gt;Sprog og input &lt;/b&gt; i menuen &lt;b&gt;Indstillinger&lt;/b&gt; på din mobilenhed."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Download nu (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Download via Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Der er en ordbog tilgængelig for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Tryk for at gennemgå og downloade"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Downloader: Der vil snart være forslag klar på <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>."</string>
<string name="version_text" msgid="2715354215568469385">"Version <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Tilføj"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Føj til ordbog"</string>
diff --git a/java/res/values-de/strings.xml b/java/res/values-de/strings.xml
index a24973dcf..137a2df7e 100644
--- a/java/res/values-de/strings.xml
+++ b/java/res/values-de/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Schließen Sie ein Headset an, um das Passwort gesprochen zu hören."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Aktueller Text lautet %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Kein Text eingegeben"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"Mit <xliff:g id="KEY_NAME">%1$s</xliff:g> wird \"<xliff:g id="ORIGINAL_WORD">%2$s</xliff:g>\" in \"<xliff:g id="CORRECTED_WORD">%3$s</xliff:g>\" geändert."</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"Mit <xliff:g id="KEY_NAME">%1$s</xliff:g> erfolgt eine Autokorrektur."</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Tastencode %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift aktiviert (zum Deaktivieren berühren)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Telefonmodus"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Telefon-Symbolmodus"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tastatur ausgeblendet"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Tastatur für <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"Datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"Datum &amp; Uhrzeit"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"E-Mail-Adresse"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Englisch (UK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Englisch (USA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spanisch (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Englisch (GB) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Englisch (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spanisch (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (traditionell)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Keine Sprache (lat. Alphabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Lat. Alphabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Lat. Alphabet (QWERTZ)"</string>
@@ -173,13 +166,12 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Externe Wörterbuchdatei lesen"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Keine Wörterbuchdateien im Ordner \"Downloads\""</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Wörterbuchdatei zum Installieren auswählen"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Möchten Sie diese Datei für <xliff:g id="LANGUAGE_NAME">%s</xliff:g> installieren?"</string>
<string name="error" msgid="8940763624668513648">"Es ist ein Fehler aufgetreten"</string>
- <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Kontaktwörterbuch sichern"</string>
- <string name="prefs_dump_user_dict" msgid="294870685041741951">"Persönliches Wörterbuch sichern"</string>
- <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Nutzerverlaufswörterbuch sichern"</string>
- <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Personalisierungswörterbuch sichern"</string>
+ <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Auszug Kontaktwörterbuch"</string>
+ <string name="prefs_dump_user_dict" msgid="294870685041741951">"Auszug persönliches Wörterbuch"</string>
+ <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Auszug Nutzerverlaufswörterbuch"</string>
+ <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Auszug Personalisierungswörterbuch"</string>
<string name="button_default" msgid="3988017840431881491">"Standard"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Willkommen bei <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"mit Bewegungseingabe"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Aktualisieren"</string>
<string name="last_update" msgid="730467549913588780">"Zuletzt aktualisiert"</string>
<string name="message_updating" msgid="4457761393932375219">"Suche nach Updates..."</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Wird geladen…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Allgemeines Wörterbuch"</string>
<string name="cancel" msgid="6830980399865683324">"Abbrechen"</string>
<string name="install_dict" msgid="180852772562189365">"Installieren"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Abbrechen"</string>
<string name="delete_dict" msgid="756853268088330054">"Löschen"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Für die auf dem Mobilgerät ausgewählte Sprache ist ein Wörterbuch verfügbar.&lt;br/&gt; &lt;b&gt;Laden Sie das <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>-Wörterbuch herunter&lt;/b&gt; und verbessern Sie Ihre Eingabeerfahrung.&lt;br/&gt; &lt;br/&gt; Der Download über 3G kann ein bis zwei Minuten dauern. Falls Sie keine &lt;b&gt;Datenflatrate&lt;/b&gt; haben, fallen eventuell Gebühren an.&lt;br/&gt; Sollten Sie sich nicht sicher sein, welchen Datentarif Sie haben, suchen Sie eine WLAN-Verbindung, um den Download automatisch zu starten.&lt;br/&gt; &lt;br/&gt; Tipp: Im Menü &lt;b&gt;Einstellungen&lt;/b&gt; Ihres Mobilgeräts können Sie unter &lt;b&gt;Sprache &amp; Eingabe&lt;/b&gt; Wörterbücher herunterladen und entfernen."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Jetzt herunterladen (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Über WLAN herunterladen"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Es ist ein Wörterbuch für <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> verfügbar."</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Zum Lesen und Herunterladen drücken"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Download wurde gestartet: Vorschläge für <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> sind in Kürze bereit."</string>
<string name="version_text" msgid="2715354215568469385">"Version <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Hinzufügen"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Zum Wörterbuch hinzufügen"</string>
diff --git a/java/res/values-el/strings.xml b/java/res/values-el/strings.xml
index 3373c6732..b73a7296b 100644
--- a/java/res/values-el/strings.xml
+++ b/java/res/values-el/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Συνδέστε ένα σετ ακουστικών για να ακούσετε τα πλήκτρα του κωδικού πρόσβασης να εκφωνούνται δυνατά."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Το τρέχον κείμενο είναι %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Δεν υπάρχει κείμενο"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> διορθώνει το <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> σε <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> εκτελεί αυτόματη διόρθωση"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Κωδικός πλήκτρου %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Το Shift είναι ενεργοποιημένο (πατήστε για απενεργοποίηση)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Λειτουργία τηλεφώνου"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Λειτουργία συμβόλων τηλεφώνου"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Πληκτρολόγιο είναι κρυμμένο"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Εμφάνιση πληκτρολογίου <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"ημερομηνία"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"ημερομηνία και ώρα"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"διεύθυνση ηλεκτρονικού ταχυδρομείου"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Αγγλικά (Η.Β.)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Αγγλικά (Η.Π.Α)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Ισπανικά (ΗΠΑ)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Αγγλικά (Ηνωμένο Βασίλειο) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Αγγλικά (ΗΠΑ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Ισπανικά (ΗΠΑ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (Παραδοσιακά)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Καμία γλώσσα (Αλφάβητο)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Αλφάβητο (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Αλφάβητο (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Ανάγνωση εξωτερικού αρχείου λεξικού"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Δεν υπάρχουν αρχεία λεξικού στο φάκελο \"Λήψεις\""</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Επιλογή αρχείου λεξικού για εγκατάσταση"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Εγκατάσταση αυτού του αρχείου για τα <xliff:g id="LANGUAGE_NAME">%s</xliff:g>;"</string>
<string name="error" msgid="8940763624668513648">"Παρουσιάστηκε σφάλμα."</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Αποτύπωση λεξικού επαφών"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Αποτύπωση προσωπικού λεξικού"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Ανανέωση"</string>
<string name="last_update" msgid="730467549913588780">"Τελευταία ενημέρωση"</string>
<string name="message_updating" msgid="4457761393932375219">"Έλεγχος για ενημερώσεις"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Φόρτωση…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Κύριο λεξικό"</string>
<string name="cancel" msgid="6830980399865683324">"Ακύρωση"</string>
<string name="install_dict" msgid="180852772562189365">"Εγκατάσταση"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Ακύρωση"</string>
<string name="delete_dict" msgid="756853268088330054">"Διαγραφή"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Η επιλεγμένη γλώσσα στην κινητή συσκευή σας διαθέτει λεξικό.&lt;br/&gt; Προτείνουμε να &lt;b&gt;κατεβάσετε&lt;/b&gt; το λεξικό <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> για βελτίωση της πληκτρολόγησης.&lt;br/&gt; &lt;br/&gt; Για τη λήψη μπορεί να χρειαστούν 1 ή 2 λεπτά μέσω 3G. Ενδέχεται να ισχύουν χρεώσεις αν δεν έχετε διαθέτετε&lt;b&gt;πρόγραμμα απεριόριστων δεδομένων&lt;/b&gt;.&lt;br/&gt; Αν δεν γνωρίζετε ποιο πρόγραμμα δεδομένων διαθέτετε, προτείνουμε να χρησιμοποιήσετε μια σύνδεση Wi-Fi για να ξεκινήσει αυτόματα η λήψη.&lt;br/&gt; &lt;br/&gt; Συμβουλή: Μπορείτε να κατεβάσετε και να καταργήσετε λεξικά, από την περιοχή &lt;b&gt;Γλώσσα και εισαγωγή&lt;/b&gt;, στο μενού &lt;b&gt;Ρυθμίσεις&lt;/b&gt; της κινητής συσκευής σας."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Άμεση λήψη (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Λήψη μέσω Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Υπάρχει διαθέσιμο λεξικό για τα <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Πατήστε για έλεγχο και λήψη"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Λήψη: οι προτάσεις για τα <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> θα είναι έτοιμες σύντομα."</string>
<string name="version_text" msgid="2715354215568469385">"Έκδοση <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Προσθήκη"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Προσθήκη στο λεξικό"</string>
diff --git a/java/res/values-en-rGB/strings.xml b/java/res/values-en-rGB/strings.xml
index 8a3cbeeaf..967a67388 100644
--- a/java/res/values-en-rGB/strings.xml
+++ b/java/res/values-en-rGB/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Plug in a headset to hear password keys spoken aloud."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Current text is %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"No text entered"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corrects <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> to <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> performs auto-correction"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Key code %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift on (tap to disable)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Phone mode"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Phone symbols mode"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Keyboard hidden"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Showing <xliff:g id="KEYBOARD_MODE">%s</xliff:g> keyboard"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"date"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"date and time"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"email"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"English (UK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"English (US)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spanish (US)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"English (UK) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"English (US) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spanish (US) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (Traditional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"No language (Alphabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alphabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alphabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Read external dictionary file"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"No dictionary files in the Downloads folder"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Select a dictionary file to install"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Really install this file for <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"There was an error"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Dump contacts dictionary"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Dump personal dictionary"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Refresh"</string>
<string name="last_update" msgid="730467549913588780">"Last updated"</string>
<string name="message_updating" msgid="4457761393932375219">"Checking for updates"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Loading…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Main dictionary"</string>
<string name="cancel" msgid="6830980399865683324">"Cancel"</string>
<string name="install_dict" msgid="180852772562189365">"Install"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Cancel"</string>
<string name="delete_dict" msgid="756853268088330054">"Delete"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"The selected language on your mobile device has an available dictionary.&lt;br/&gt; We recommend &lt;b&gt;downloading&lt;/b&gt; the <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> dictionary to improve your typing experience.&lt;br/&gt; &lt;br/&gt; The download could take a minute or two over 3G. Charges may apply if you don\'t have an &lt;b&gt;unlimited data plan&lt;/b&gt;.&lt;br/&gt; If you are not sure which data plan you have, we recommend finding a Wi-Fi connection to start the download automatically.&lt;br/&gt; &lt;br/&gt; Tip: You can download and remove dictionaries by going to &lt;b&gt;Language &amp; input&lt;/b&gt; in the &lt;b&gt;Settings&lt;/b&gt; menu of your mobile device."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Download now (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Download over Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"A dictionary is available for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Press to review and download"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Downloading: suggestions for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> will be ready soon."</string>
<string name="version_text" msgid="2715354215568469385">"Version <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Add"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Add to dictionary"</string>
diff --git a/java/res/values-en-rIN/strings.xml b/java/res/values-en-rIN/strings.xml
index 8a3cbeeaf..967a67388 100644
--- a/java/res/values-en-rIN/strings.xml
+++ b/java/res/values-en-rIN/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Plug in a headset to hear password keys spoken aloud."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Current text is %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"No text entered"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corrects <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> to <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> performs auto-correction"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Key code %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift on (tap to disable)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Phone mode"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Phone symbols mode"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Keyboard hidden"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Showing <xliff:g id="KEYBOARD_MODE">%s</xliff:g> keyboard"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"date"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"date and time"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"email"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"English (UK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"English (US)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spanish (US)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"English (UK) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"English (US) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spanish (US) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (Traditional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"No language (Alphabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alphabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alphabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Read external dictionary file"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"No dictionary files in the Downloads folder"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Select a dictionary file to install"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Really install this file for <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"There was an error"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Dump contacts dictionary"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Dump personal dictionary"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Refresh"</string>
<string name="last_update" msgid="730467549913588780">"Last updated"</string>
<string name="message_updating" msgid="4457761393932375219">"Checking for updates"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Loading…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Main dictionary"</string>
<string name="cancel" msgid="6830980399865683324">"Cancel"</string>
<string name="install_dict" msgid="180852772562189365">"Install"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Cancel"</string>
<string name="delete_dict" msgid="756853268088330054">"Delete"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"The selected language on your mobile device has an available dictionary.&lt;br/&gt; We recommend &lt;b&gt;downloading&lt;/b&gt; the <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> dictionary to improve your typing experience.&lt;br/&gt; &lt;br/&gt; The download could take a minute or two over 3G. Charges may apply if you don\'t have an &lt;b&gt;unlimited data plan&lt;/b&gt;.&lt;br/&gt; If you are not sure which data plan you have, we recommend finding a Wi-Fi connection to start the download automatically.&lt;br/&gt; &lt;br/&gt; Tip: You can download and remove dictionaries by going to &lt;b&gt;Language &amp; input&lt;/b&gt; in the &lt;b&gt;Settings&lt;/b&gt; menu of your mobile device."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Download now (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Download over Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"A dictionary is available for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Press to review and download"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Downloading: suggestions for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> will be ready soon."</string>
<string name="version_text" msgid="2715354215568469385">"Version <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Add"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Add to dictionary"</string>
diff --git a/java/res/values-es-rUS/strings.xml b/java/res/values-es-rUS/strings.xml
index d62f9dc20..3e5b910a1 100644
--- a/java/res/values-es-rUS/strings.xml
+++ b/java/res/values-es-rUS/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Enchufa tus auriculares para escuchar en voz alta qué teclas presionas al ingresar una contraseña."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"El texto actual es %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"No se ingresó texto."</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corrige <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> por <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>."</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corrige automáticamente."</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Clave de código %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Mayús"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Se activó el modo Mayúscula (toca para desactivarlo)."</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Modo Teléfono"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Modo Símbolos del teléfono"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Teclado oculto"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Mostrando teclado para <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"fecha"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"fecha y hora"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"correo"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Inglés (Reino Unido)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Inglés (EE.UU.)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Español (EE.UU.)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Inglés, Reino Unido (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Inglés, EE. UU. (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Español, EE. UU. (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Ningún idioma (alfabeto)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabeto (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabeto (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Leer archivo de diccionario externo"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"No hay archivos de diccionario en la carpeta de descargas."</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Seleccionar archivo de diccionario para instalar"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"¿Realmente quieres instalar este archivo para <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Se produjo un error."</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Volcar diccionario de contactos"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Volcar diccionario personal"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Actualizar"</string>
<string name="last_update" msgid="730467549913588780">"Última actualización"</string>
<string name="message_updating" msgid="4457761393932375219">"Buscando actualizaciones"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Cargando…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Diccionario principal"</string>
<string name="cancel" msgid="6830980399865683324">"Cancelar"</string>
<string name="install_dict" msgid="180852772562189365">"Instalar"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Cancelar"</string>
<string name="delete_dict" msgid="756853268088330054">"Eliminar"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Hay un diccionario disponible para el idioma seleccionado en tu dispositivo móvil.&lt;br/&gt; Te recomendamos que &lt;b&gt;descargues&lt;/b&gt; el diccionario de <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> para mejorar tu experiencia de escritura.&lt;br/&gt; &lt;br/&gt; La descarga puede tardar unos minutos en redes 3G. Si no tienes un &lt;b&gt;plan de datos ilimitado&lt;/b&gt;, es posible que se apliquen cargos.&lt;br/&gt; Si no sabes qué plan de datos tienes, te recomendamos que uses una conexión Wi-Fi para iniciar la descarga automáticamente.&lt;br/&gt; &lt;br/&gt; Sugerencia: Puedes descargar y eliminar diccionarios desde &lt;b&gt;Teclado e idioma&lt;/b&gt; en el menú &lt;b&gt;Configuración&lt;/b&gt; del dispositivo móvil."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Descargar ahora (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Descargar por Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Hay un diccionario disponible de <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>."</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Pulsar para opinar y descargar"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"La descarga de sugerencias para <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> estará lista en breve."</string>
<string name="version_text" msgid="2715354215568469385">"Versión <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Agregar"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Agregar al diccionario"</string>
diff --git a/java/res/values-es/strings.xml b/java/res/values-es/strings.xml
index 392acc854..37692f1fe 100644
--- a/java/res/values-es/strings.xml
+++ b/java/res/values-es/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Conecta un auricular para escuchar las contraseñas en voz alta."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"El texto actual es %s."</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"No se ha introducido texto."</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corrige <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> a <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corregirá la palabra automáticamente"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Código del teclado: %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Mayús"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Mayúsculas activadas (tocar para inhabilitar)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Modo de teléfono"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Modo de símbolos de teléfono"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Teclado oculto"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Mostrando teclado de <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"fecha"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"fecha y hora"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"correo electrónico"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"inglés (Reino Unido)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"inglés (EE.UU.)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Español (EE.UU.)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Inglés (Reino Unido) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Inglés (EE.UU.) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Español (EE.UU.) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Ningún idioma (alfabeto)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabeto (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabeto (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Leer archivo de diccionario externo"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"No hay archivos de diccionario en la carpeta de descargas."</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Selecciona un archivo de diccionario para instalar"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"¿Seguro que quieres instalar este archivo para <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Se ha producido un error"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Volcar diccionario de contactos"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Volcar diccionario personal"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Actualizar"</string>
<string name="last_update" msgid="730467549913588780">"Última actualización"</string>
<string name="message_updating" msgid="4457761393932375219">"Buscando actualizaciones"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Cargando…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Diccionario principal"</string>
<string name="cancel" msgid="6830980399865683324">"Cancelar"</string>
<string name="install_dict" msgid="180852772562189365">"Instalar"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Cancelar"</string>
<string name="delete_dict" msgid="756853268088330054">"Eliminar"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Hay un diccionario disponible para el idioma seleccionado en tu dispositivo móvil.&lt;br/&gt; Te recomendamos que &lt;b&gt;descargues&lt;/b&gt; el diccionario de <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> para mejorar la experiencia de escritura.&lt;br/&gt; &lt;br/&gt; La descarga puede tardar unos minutos en redes 3G. Es posible que se apliquen cargos si no tienes un &lt;b&gt;plan de datos ilimitado&lt;/b&gt;.&lt;br/&gt; Si no sabes con certeza cuál es tu plan de datos, te recomendamos que te conectes a una red Wi-Fi para que la descarga empiece automáticamente.&lt;br/&gt; &lt;br/&gt; Consejo: Puedes descargar y eliminar diccionarios en la sección &lt;b&gt;Idioma e introducción de texto&lt;/b&gt; en el menú &lt;b&gt;Ajustes&lt;/b&gt; de tu dispositivo móvil."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Descargar ahora (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Descargar mediante Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Hay disponible un diccionario de <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Pulsa para comprobar y descargar"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"La descarga de sugerencias para <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> estará disponible próximamente."</string>
<string name="version_text" msgid="2715354215568469385">"Versión <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Añadir"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Añadir al diccionario"</string>
diff --git a/java/res/values-hr/strings.xml b/java/res/values-hr/strings.xml
index 4d2decf22..f4a006e6d 100644
--- a/java/res/values-hr/strings.xml
+++ b/java/res/values-hr/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Priključite slušalice da biste čuli tipke zaporke izgovorene naglas."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Trenutačni tekst je %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Nije unesen tekst"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> ispravlja <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> u <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> vrši samoispravljanje"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Kôd tipke %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Uključena tipka Shift (dotaknite da onemogućite)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Telefonski način rada"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Način unosa telefonskih simbola"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tipkovnica je skrivena"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Način prikazane tipkovnice: <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"datum i vrijeme"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-pošta"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Engleski (UK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Engleski (SAD)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"španjolski (SAD)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"engleska (UK) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"engleska (SAD) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"španjolska (SAD) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicionalna)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Nema jezika (abeceda)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Abeceda (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Abeceda (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Čitanje datoteke vanjskog rječnika"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"U mapi Preuzimanja nema datoteka rječnika"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Odabir datoteke rječnika za instaliranje"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Želite li zaista instalirati tu datoteku za <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Došlo je do pogreške"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Kopiranje rječnika kontakata"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Kopiranje osobnog rječnika"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Osvježavanje"</string>
<string name="last_update" msgid="730467549913588780">"Zadnje ažuriranje"</string>
<string name="message_updating" msgid="4457761393932375219">"Provjera ažuriranja"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Učitavanje…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Glavni rječnik"</string>
<string name="cancel" msgid="6830980399865683324">"Odustani"</string>
<string name="install_dict" msgid="180852772562189365">"Instaliraj"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Odustani"</string>
<string name="delete_dict" msgid="756853268088330054">"Izbriši"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Dostupan je rječnik za odabrani jezik na vašem mobilnom uređaju.&lt;br/&gt; Preporučujemo da &lt;b&gt;preuzmete&lt;/b&gt; <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> rječnik radi lakšeg unosa teksta.&lt;br/&gt; &lt;br/&gt; Preuzimanje može potrajati jednu do dvije minute putem 3G-a. Možda se naplaćuje dodatna naknada ako nemate &lt;b&gt;neograničenu podatkovnu tarifu&lt;/b&gt;.&lt;br/&gt; Ako niste sigurni koju tarifu imate, preporučujemo da pronađete Wi-Fi vezu kako bi se automatski pokrenulo preuzimanje.&lt;br/&gt; &lt;br/&gt; Savjet: rječnike možete preuzeti i ukloniti u odjeljku &lt;b&gt;Jezik i unos&lt;/b&gt; u izborniku &lt;b&gt;Postavke&lt;/b&gt; na mobilnom uređaju."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Preuzmi sada (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Preuzmi putem Wi-Fi mreže"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Dostupan je rječnik za <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> jezik"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Pritisnite za pregled i preuzimanje"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Preuzimanje: prijedlozi za <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> bit će spremni uskoro."</string>
<string name="version_text" msgid="2715354215568469385">"Verzija <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Dodavanje"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Dodaj u rječnik"</string>
diff --git a/java/res/values-hu/strings.xml b/java/res/values-hu/strings.xml
index 918e50499..faaadbb28 100644
--- a/java/res/values-hu/strings.xml
+++ b/java/res/values-hu/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Csatlakoztasson egy headsetet, ha hallani szeretné a jelszót felolvasva."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"A jelenlegi szöveg: %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Szöveg nincs megadva"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> billentyű: <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> szóra javítja a következőt: <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> billentyű automatikus javítást végez"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Billentyűkód: %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift be van kapcsolva (érintse meg a kikapcsoláshoz)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"\"Telefon\" mód"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"\"Telefonos szimbólumok\" mód"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Billentyűzet elrejtve"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"<xliff:g id="KEYBOARD_MODE">%s</xliff:g> billentyűzet megjelenítve"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"dátum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"dátum és idő"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-mail"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"angol (brit)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"angol (amerikai)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"spanyol (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"angol (UK) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"angol (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"spanyol (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (hagyományos)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Nincs nyelv (ábécé)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Ábécé (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Ábécé (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Külső szótárfájl olvasása"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Nincs szótárfájl a Letöltések mappában."</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Válasszon ki egy szótárfájlt a telepítéshez."</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Valóban telepíti ezt a fájlt <xliff:g id="LANGUAGE_NAME">%s</xliff:g> nyelvhez?"</string>
<string name="error" msgid="8940763624668513648">"Hiba történt."</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Névjegyszótár törlése"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Személyes szótár törlése"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Frissítés"</string>
<string name="last_update" msgid="730467549913588780">"Legutóbb frissítve"</string>
<string name="message_updating" msgid="4457761393932375219">"Frissítések keresése"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Betöltés…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Fő szótár"</string>
<string name="cancel" msgid="6830980399865683324">"Mégse"</string>
<string name="install_dict" msgid="180852772562189365">"Telepítés"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Mégse"</string>
<string name="delete_dict" msgid="756853268088330054">"Törlés"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"A mobileszközön kiválasztott nyelvhez szótár érhető el.&lt;br/&gt; A gépelési élmény javításához javasoljuk a(z) <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> szótár &lt;b&gt;letöltését.&lt;br/&gt; &lt;br/&gt; A letöltés 3G hálózaton keresztül néhány percig tart. Ha &lt;b&gt;előfizetése nem korlátlan&lt;/b&gt;, a letöltés költségekkel járhat.&lt;br/&gt; Ha nem biztos abban, hogy milyen adatcsomagot használ, javasoljuk, hogy keressen egy Wi-Fi-kapcsolatot a letöltés automatikus elindításához.&lt;br/&gt; &lt;br/&gt; Tipp: szótárakat a mobileszköz &lt;b&gt;Beállítások&lt;/b&gt; menüjében a &lt;b&gt;Nyelv és bevitel&lt;/b&gt; részben tölthet le és távolíthat el."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Töltse le most (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Letöltés Wi-Fivel"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> nyelvhez van rendelkezésre álló szótár"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Nyomja meg az áttekintéshez és letöltéshez"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Letöltés: a(z) <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> nyelvvel kapcsolatos javaslatok hamarosan elérhetők lesznek."</string>
<string name="version_text" msgid="2715354215568469385">"Verzió: <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Hozzáadás"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Hozzáadás a szótárhoz"</string>
diff --git a/java/res/values-hy-rAM/strings.xml b/java/res/values-hy-rAM/strings.xml
index e4a0dc958..f281f67f7 100644
--- a/java/res/values-hy-rAM/strings.xml
+++ b/java/res/values-hy-rAM/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Միացրեք ականջակալը՝ բարձրաձայն արտասանվող գաղտնաբառը լսելու համար:"</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Տվյալ տեքստը %s է"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Տեքստ չի մուտքագրվել"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g>-ը շտկում է <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g>-ը և դարձնում <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> ստեղնը ինքնաշտկում է կատարում"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Բանալու կոդը՝ %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift-ը միացված է (հպել անջատելու համար)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Հեռախոսային ռեժիմ"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Հեռախոսի նշանների ռեժիմ"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Ստեղնաշարը թաքցված է"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Ցուցադրվում է <xliff:g id="KEYBOARD_MODE">%s</xliff:g> ստեղնաշարը"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"ամսաթիվ"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"ամսաթիվ և ժամ"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"էլփոստ"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Անգլերեն (ՄԹ)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Անգլերեն (ԱՄՆ)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Իսպաներեն (ԱՄՆ)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Անգլերեն (ՄԹ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Անգլերեն (ԱՄՆ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Իսպաներեն (ԱՄՆ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (ավանդական)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Ոչ մի լեզվով (Այբուբեն)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Այբուբեն (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Այբուբեն (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Կարդալ արտաքին բառարանի ֆայլը"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Ներբեռնումների թղթապանակում բառարանային ֆայլեր չկան"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Ընտրեք բառարանային ֆայլը տեղադրման համար"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Տեղադրե՞լ այս ֆայլը <xliff:g id="LANGUAGE_NAME">%s</xliff:g> լեզվի համար:"</string>
<string name="error" msgid="8940763624668513648">"Տեղի է ունեցել սխալ"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Բեռնել կոնտակտների բառարանը"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Բեռնել անձնական բառարանը"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Թարմացնել"</string>
<string name="last_update" msgid="730467549913588780">"Վերջին անգամ թարմացվել է"</string>
<string name="message_updating" msgid="4457761393932375219">"Ստուգվում է թարմացումների առկայությունը"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Բեռնում..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"Հիմնական բառարան"</string>
<string name="cancel" msgid="6830980399865683324">"Չեղարկել"</string>
<string name="install_dict" msgid="180852772562189365">"Տեղադրել"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Չեղարկել"</string>
<string name="delete_dict" msgid="756853268088330054">"Ջնջել"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Ձեր բջջային սարքում ընտրված լեզվով առկա է բառարան:<br/> Խորհուրդ ենք տալիս &lt;b&gt;ներբեռնել&lt;/b&gt; <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> բառարանը՝ ձեր մուտքագրման հմտությունների բարելավման համար:&lt;br/&gt; &lt;br/&gt; Ներբեռնումը կարող է խլել մեկ կամ երկու րոպե 3G-ի դեպքում: Հնարավոր է գանձում կատարվի, եթե դուք չունեք &lt;b&gt;տվյալների անսահմանափակ փաթեթ&lt;/b&gt;.&lt;br/&gt; Եթե դուք վստահ չեք, թե տվյալների որ փաթեթն ունեք, խորհուրդ ենք տալիս գտնել Wi-Fi կապ՝ ներբեռնումն ավտոմատ սկսելու համար:&lt;br/&gt; &lt;br/&gt; Հուշում. դուք կարող եք ներբեռնել և հեռացնել բառարաններ՝ անցնելով ձեր բջջային սարքի &lt;b&gt;Կարգավորումներ ցանկի Լեզու և մուտքագրում&lt;/b&gt; բաժինը:"</string>
<string name="download_over_metered" msgid="1643065851159409546">"Ներբեռնել հիմա (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>Մբ)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Ներբեռնել Wi-Fi-ով"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> լեզվի համար առկա է բառարան"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Սեղմեք՝ վերանայելու և ներբեռնելու համար"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Ներբեռնում. <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> լեզվի համար առաջարկները պատրաստ կլինեն շուտով:"</string>
<string name="version_text" msgid="2715354215568469385">"Տարբերակ <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Ավելացնել"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Ավելացնել բառարանում"</string>
diff --git a/java/res/values-in/strings.xml b/java/res/values-in/strings.xml
index 59061a8a1..888219af7 100644
--- a/java/res/values-in/strings.xml
+++ b/java/res/values-in/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Pasang headset untuk mendengar tombol sandi yang diucapkan dengan keras."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Teks saat ini adalah %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Tidak ada teks yang dimasukkan"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> mengoreksi <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> menjadi <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> melakukan koreksi otomatis"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Kode tombol %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift hidup (ketuk untuk mematikan)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Mode telepon"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Mode simbol telepon"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Keyboard disembunyikan"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Menampilkan keyboard <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"tanggal"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"tanggal dan waktu"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"email"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Inggris (Inggris)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Inggris (AS)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spanyol (AS)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"(<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>) Inggris (Inggris)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"(<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>) Inggris (AS)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"(<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>) Spanyol (AS)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (Tradisional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Tidak ada bahasa (Abjad)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Abjad (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Abjad (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Membaca file kamus eksternal"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Tidak ada file kamus di folder Unduhan"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Pilih file kamus untuk dipasang"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Yakin ingin memasang file ini untuk <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Terjadi kesalahan"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Kosongkan kamus kontak"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Kosongkan kamus pribadi"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Segarkan"</string>
<string name="last_update" msgid="730467549913588780">"Terakhir diperbarui"</string>
<string name="message_updating" msgid="4457761393932375219">"Memeriksa pembaruan"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Memuat…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Kamus utama"</string>
<string name="cancel" msgid="6830980399865683324">"Batal"</string>
<string name="install_dict" msgid="180852772562189365">"Pasang"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Batal"</string>
<string name="delete_dict" msgid="756853268088330054">"Hapus"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Bahasa pilihan pada perangkat seluler Anda memiliki kamus yang tersedia.&lt;br/&gt; Sebaiknya &lt;b&gt;unduh&lt;/b&gt; kamus <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> untuk meningkatkan pengalaman pengetikan.&lt;br/&gt; &lt;br/&gt; Unduhan dapat berlangsung selama satu atau dua menit melalui 3G. Mungkin dikenakan tagihan data jika Anda tidak memiliki &lt;b&gt;paket data tak terbatas&lt;/b&gt;.&lt;br/&gt; Jika Anda tidak yakin paket data mana yang Anda miliki, sebaiknya cari sambungan Wi-Fi untuk memulai unduhan secara otomatis.&lt;br/&gt; &lt;br/&gt; Kiat: Anda dapat mengunduh dan menghapus kamus dengan membuka &lt;b&gt;Bahasa &amp; masukan&lt;/b&gt; di menu &lt;b&gt;Setelan&lt;/b&gt; perangkat seluler Anda."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Unduh sekarang (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Unduh melalui Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Kamus tersedia untuk <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Tekan untuk meninjau dan mengunduh"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Mengunduh: saran untuk <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> akan segera tersedia."</string>
<string name="version_text" msgid="2715354215568469385">"Versi <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Tambahkan"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Tambahkan ke kamus"</string>
diff --git a/java/res/values-it/strings.xml b/java/res/values-it/strings.xml
index 4ccf44b33..b688a9d23 100644
--- a/java/res/values-it/strings.xml
+++ b/java/res/values-it/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Collega gli auricolari per ascoltare la pronuncia dei tasti premuti per la password."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Il testo attuale è %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Nessun testo inserito"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corregge <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> con <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> esegue la correzione automatica"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Codice tasto %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Maiuscolo"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Maiuscolo attivo (tocca per disattivare)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Modalità telefono"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Modalità simboli telefono"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tastiera nascosta"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Ecco la tastiera <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"data"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"data e ora"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"email"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Inglese (UK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Inglese (USA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spagnolo (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Inglese (Regno Unito) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Inglese (Stati Uniti) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spagnolo (Stati Uniti) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradizionale)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Nessuna lingua (alfabeto)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabeto (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabeto (QWERTZ)"</string>
@@ -173,12 +166,11 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Leggi file dizionario esterno"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Nessun file di dizionario nella cartella Download"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Seleziona un file di dizionario da installare"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Vuoi davvero installare questo file per <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Si è verificato un errore"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Scarica dizionario contatti"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Scarica dizionario personale"</string>
- <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Scarica dizionario cronologia utente"</string>
+ <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Scarica dizion. cronologia utente"</string>
<string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Scarica dizionario di personalizz."</string>
<string name="button_default" msgid="3988017840431881491">"Predefinito"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Benvenuto in <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Aggiorna"</string>
<string name="last_update" msgid="730467549913588780">"Ultimo aggiornamento"</string>
<string name="message_updating" msgid="4457761393932375219">"Verifica disponibilità aggiornamenti"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Caricamento..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"Dizionario principale"</string>
<string name="cancel" msgid="6830980399865683324">"Annulla"</string>
<string name="install_dict" msgid="180852772562189365">"Installa"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Annulla"</string>
<string name="delete_dict" msgid="756853268088330054">"Elimina"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Per la lingua selezionata sul dispositivo mobile è disponibile un dizionario.&lt;br/&gt; Ti consigliamo di &lt;b&gt;scaricare&lt;/b&gt; il dizionario in <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> per migliorare la digitazione.&lt;br/&gt; &lt;br/&gt; Il download potrebbe richiedere un paio di minuti su 3G. Potrebbero essere applicati costi se non disponi di un &lt;b&gt;piano dati illimitato&lt;/b&gt;.&lt;br/&gt; Se non sei sicuro di quale sia il tuo piano dati, dovresti trovare una connessione Wi-Fi per avviare il download automaticamente.&lt;br/&gt; &lt;br/&gt; Suggerimento. Puoi scaricare e rimuovere dizionari selezionando &lt;b&gt;Lingua e immissione&lt;/b&gt; nel menu &lt;b&gt;Impostazioni&lt;/b&gt; del dispositivo mobile."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Scarica ora (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Scarica tramite Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"È disponibile un dizionario per: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Premi per esaminare e scaricare"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Download: i suggerimenti per <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> saranno pronti a breve."</string>
<string name="version_text" msgid="2715354215568469385">"Versione <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Aggiungi"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Aggiungi al dizionario"</string>
diff --git a/java/res/values-iw/strings.xml b/java/res/values-iw/strings.xml
index c7949685b..19f24660f 100644
--- a/java/res/values-iw/strings.xml
+++ b/java/res/values-iw/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"חבר אוזניות כדי לשמוע הקראה של מפתחות סיסמה."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"‏הטקסט הנוכחי הוא %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"לא הוזן טקסט"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> מתקן את <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> ל-<xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> מבצע תיקון אוטומטי"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"‏קוד מקש %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"‏Shift פועל (הקש כדי להשבית)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"מצב טלפון"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"מצב סמלי טלפון"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"המקלדת מוסתרת"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"מציג מקלדת <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"תאריך"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"תאריך ושעה"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"דוא\"ל"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"אנגלית (בריטניה)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"אנגלית (ארה\"ב)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"ספרדית (ארצות הברית)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"אנגלית (בריטניה)‏ (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"אנגלית (ארה\"ב) ‏(<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"ספרדית (ארה\"ב) ‏(<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (מסורתית)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"ללא שפה (אלף-בית)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"‏אלף-בית (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"‏אלף-בית (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"קריאה של קובץ מילון חיצוני"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"אין קובצי מילונים בתיקיית ההורדות"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"בחירת קובץ מילון להתקנה"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"האם אתה באמת רוצה להתקין את הקובץ הזה עבור <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"אירעה שגיאה"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"מחק את מילון אנשי הקשר"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"מחק מילון אישי"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"רענן"</string>
<string name="last_update" msgid="730467549913588780">"עודכן לאחרונה"</string>
<string name="message_updating" msgid="4457761393932375219">"מחפש עדכונים"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"טוען…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"מילון ראשי"</string>
<string name="cancel" msgid="6830980399865683324">"בטל"</string>
<string name="install_dict" msgid="180852772562189365">"התקן"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"בטל"</string>
<string name="delete_dict" msgid="756853268088330054">"מחק"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"‏יש מילון זמין עבור השפה הנבחרת במכשיר הנייד שלך.&lt;br/&gt; אנחנו ממליצים &lt;b&gt;להוריד&lt;/b&gt; את המילון ב<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> לשיפור חוויית ההקלדה.&lt;br/&gt; &lt;br/&gt; ייתכן שההורדה תארך דקה או שתיים ברשת דור שלישי. ייתכנו חיובים אם אין לך &lt;b&gt;תכנית נתונים ללא הגבלה&lt;/b&gt;.&lt;br/&gt; אם אינך בטוח איזו תכנית נתונים יש לך, אנחנו ממליצים למצוא חיבור Wi-Fi כדי להתחיל את ההורדה באופן אוטומטי.&lt;br/&gt; &lt;br/&gt; טיפ: ניתן להוריד ולהסיר מילונים על ידי מעבר אל &lt;b&gt;שפה וקלט&lt;/b&gt; בתפריט &lt;b&gt;הגדרות&lt;/b&gt; של המכשיר הנייד."</string>
<string name="download_over_metered" msgid="1643065851159409546">"‏הורד עכשיו (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"‏הורד באמצעות Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"יש מילון זמין עבור <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"לחץ כדי לעיין ולהוריד"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"מוריד: הצעות עבור <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> יהיו מוכנות בקרוב."</string>
<string name="version_text" msgid="2715354215568469385">"גרסה <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"הוסף"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"הוסף למילון"</string>
diff --git a/java/res/values-lo-rLA/strings.xml b/java/res/values-lo-rLA/strings.xml
index 976f30fc4..a206cdbb1 100644
--- a/java/res/values-lo-rLA/strings.xml
+++ b/java/res/values-lo-rLA/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"ສຽບສາຍຫູຟັງເພື່ອຟັງລະຫັດຜ່ານ."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"ຂໍ້ຄວາມປະຈຸບັນແມ່ນ %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"ບໍ່ມີການໃສ່ຂໍ້ຄວາມ"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> ແກ້​ໄຂ​ <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> ເປັນ <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> ດຳ​ເນີນ​ການ​ແກ້​ໄຂ​ອັດ​ຕະ​ໂນ​ມັດ"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"ລະຫັດກະແຈ %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift ເປີດນຳໃຊ້ຢູ່ (ກົດເພື່ອປິດນຳໃຊ້)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"ໂຫມດໂທລະສັບ"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"ໂຫມດສັນຍາລັກໂທລະສັບ"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"ແປ້ນ​ພິມ​ເຊື່ອງ​ໄວ້"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"ກຳ​ລັງ​ສະ​ແດງແປ້ນ​ພິມ <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"ວັນທີ"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"ວັນ​ທີ​ແລະ​ເວ​ລາ"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"email"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"ອັງກິດ (ສະຫະລາດຊະອານາຈັກ)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"ອັງກິດ (ສະຫະລັດຯ)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"ສະເປນ (ອາເມລິກາ)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"ອັງ​ກິດ (ສະ​ຫະ​ລາດ​ຊະ​ອາ​ນາ​ຈັກ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"ອັງ​ກິດ (ສະ​ຫະ​ລັດຯ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"ສະ​ແປນ​ນິດ (ສະ​ຫະ​ລັດຯ) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (ດັ້ງ​ເດີມ)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"ບໍ່ມີພາສາ (ໂຕອັກສອນ)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"ໂຕອັກສອນ (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"ໂຕອັກສອນ (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"ອ່ານໄຟລ໌ວັດຈະນານຸກົມພາຍນອກ"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"ບໍ່ມີໄຟລ໌ວັດຈະນານຸກົມໃນໂຟນເດີຂອງການດາວໂຫລດ"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"ເລືອກໄຟລ໌ວັດຈະນານຸກົມເພື່ອຕິດຕັ້ງ"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"ຕິດ​ຕັ້ງ​ໄຟ​ລ໌​ນີ້​ສຳ​ລັບ <xliff:g id="LANGUAGE_NAME">%s</xliff:g> ແທ້ບໍ່??"</string>
<string name="error" msgid="8940763624668513648">"ມີຂໍ້ຜິດພາດເກີດຂຶ້ນ"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"ເທຂໍ້ມູນວັດຈະນານຸກົມລາຍຊື່ຜູ່ຕິດຕໍ່"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"ເທຂໍ້ມູນວັດຈະນານຸກົມສ່ວນໂຕ"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"ດຶງຂໍ້ມູນໃຫມ່"</string>
<string name="last_update" msgid="730467549913588780">"ອັບເດດຫຼ້າສຸດ"</string>
<string name="message_updating" msgid="4457761393932375219">"ກຳລັງກວດການອັບເດດ"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"ກຳລັງໂຫຼດ..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"ວັດຈະນານຸກົມຫຼັກ"</string>
<string name="cancel" msgid="6830980399865683324">"ຍົກເລີກ"</string>
<string name="install_dict" msgid="180852772562189365">"ຕິດຕັ້ງ"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"ຍົກເລີກ"</string>
<string name="delete_dict" msgid="756853268088330054">"ລຶບ"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"ພາ​ສາ​ທີ່​ເລືອກ​ໃນ​ອຸ​ປະ​ກອນ​ມື​ຖື​ຂອງ​ທ່າ​ນັ້ນ​ມີ​ວັດ​ຈະ​ນາ​ນຸ​ກົມ​ທີ່​ສາ​ມາດ​ໃຊ້​ໄດ້.&lt;br/&gt; ພວ​ກ​ເຮົາ​ຂໍ​ແນະ​ນຳ​ໃຫ້ &lt;b&gt;ດາວ​ໂຫລດ&lt;/b&gt; ວັດ​ຈ​ະ​ນາ​ນຸ​ກົມ <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> ເພື່ອ​ປັບ​ປຸງ​ປະ​ສົບ​ການ​ໃນ​ການ​ພິມ​ຂອງ​ທ່ານ.&lt;br/&gt; &lt;br/&gt; ການ​ດາວ​ໂຫລດ​ອາດ​ໃຊ້​ເວ​ລາ​ສອງ​ສາມ​ນາ​ທີ​ຜ່ານ​ເຄືອ​ຂ່າຍ 3G. ທ່ານ​ອາ​ດ​ຖືກ​ຮຽກ​ເກັບ​ຄ່າ​ຂໍ້​ມູນ​ໄດ້​ຫາກ​ທ່ານບໍ່​ໄດ້​ໃຊ້ &lt;b&gt;ແພັກ​ເກດ​ຂໍ້​ມູນ​ແບບບໍ່​ຈຳ​ກັດ&lt;/b&gt;.&lt;br/&gt; ຫາກ​ທ່ານບໍ່​ແນ່​ໃຈ​ວ່າ​ທ່ານ​ໃຊ້​ແພັກ​ເກດ​ແບບ​ໃດ​ຢູ່ ພວກ​ເຮົາ​ຂໍ​ແນະ​ນຳ​ໃຫ້​ທ່ານ​ເຊື່ອມ​ຕໍ່ເຄືອ​ຂ່າຍ Wi-Fi ໃດ​ນຶ່ງ​ແທນ​ເພື່ອ​ເລີ່ມ​ຕົ້ນ​ການ​ດາວ​ໂຫລດ​ໂດຍ​ອັດ​ຕະ​ໂນ​ມັດ.&lt;br/&gt; &lt;br/&gt; ເຄັດ​ລັບ: ທ່ານ​ສາ​ມາ​ດ​ດາວ​ໂຫລດ ແລະ​ລຶບ​ວັດ​ຈະ​ນາ​ນຸ​ກົມ​ອອກ​ໄດ້​ໂດຍ​ການ​ໄປ​ທີ່ &lt;b&gt;ພາ​ສາ &amp; ການ​ປ້ອນ​ຂໍ້​ມູນ&lt;/b&gt; ໃນ​ເມ​ນູ &lt;b&gt;ການ​ຕັ້ງ​ຄ່າ&lt;/b&gt; ຂອງ​ອຸ​ປະ​ກອນ​ມື​ຖື​ຂອງ​ທ່ານ."</string>
<string name="download_over_metered" msgid="1643065851159409546">"ດາວໂຫລດດຽວນີ້ (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"ດາວ​ໂຫລດຜ່ານ Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"ມີ​ວັດ​ຈະ​ນາ​ນຸ​ກົມ​ທີ່​ສາ​ມາດ​ໃຊ້​ໄດ້​ກັບ <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"ກົດທີ່ກວດຄືນ ແລະ ດາວໂຫລດ"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"ກຳ​ລັງ​ດາວ​ໂຫລດ: ການ​ແນະ​ນຳ​ສຳ​ລັບ <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> ຈະ​ພ້ອມ​ໃນ​ໄວໆ​ນີ້."</string>
<string name="version_text" msgid="2715354215568469385">"ເວີຊັນ <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"ເພີ່ມ"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"ເພີ່ມໄປທີ່ວັດຈະນານຸກົມ"</string>
diff --git a/java/res/values-mn-rMN/strings.xml b/java/res/values-mn-rMN/strings.xml
index 8d5f63550..a89b97466 100644
--- a/java/res/values-mn-rMN/strings.xml
+++ b/java/res/values-mn-rMN/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Нууц үгний товчнуудыг чангаар уншихыг сонсохын тулд чихэвчээ залгана уу."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Одоогийн текст %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Текст оруулаагүй"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> нь <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g>-г <xliff:g id="CORRECTED_WORD">%3$s</xliff:g> руу залруулна"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> авто-залруулалт хийдэг"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Товчийн код %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Сэлгэх"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Сэлгэхийг идэвхжүүлсэн (товшиж идэвхгүйжүүлнэ үү)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Утасны төлөв"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Утасны символ төлөв"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Гарыг нуусан"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"<xliff:g id="KEYBOARD_MODE">%s</xliff:g> гар харуулж байна"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"огноо"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"огноо болон цаг"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"и"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Англи (ИБ)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Англи (АНУ)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Испани (АНУ)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Англи (ИБ) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Англи (АНУ) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Испани (АНУ-ын) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (уламжлалт)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Хэл байхгүй (Цагаан толгой)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Цагаан толгой (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Цагаан толгой (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Толь бичгийн гадны файлыг унших"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Татаж авсан фолдерт толь бичгийн файл байхгүй байна"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Суулгах толь бичгийн файлыг сонгоно уу"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g>-д зориулсан энэ файлыг үнэхээр суулгах уу?"</string>
<string name="error" msgid="8940763624668513648">"Алдаа гарсан"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Харилцагчдын толь бичгийг хаях"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Хувийн толь бичгийг хаях"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Дахин шинэчлэх"</string>
<string name="last_update" msgid="730467549913588780">"Сүүлд шинэчлэгдсэн"</string>
<string name="message_updating" msgid="4457761393932375219">"Шинэчлэлтийг шалгаж байна"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Ачаалж байна..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"Үндсэн толь бичиг"</string>
<string name="cancel" msgid="6830980399865683324">"Цуцлах"</string>
<string name="install_dict" msgid="180852772562189365">"Суулгах"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Цуцлах"</string>
<string name="delete_dict" msgid="756853268088330054">"Устгах"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Таны мобайл төхөөрөмж дээр сонгосон хэлний толь бичиг байна. &lt;br/&gt; Бид танд <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> хэлний толь бичиг &lt;b&gt; татаж аван &lt;/ б&gt; бичихэд хялбар болгохыг зөвлөж байна. &lt;br/&gt; &lt;br/&gt; Татаж авахад 3G дээр нэг, хоёр минут болж магадгүй. Хэрэв та &lt;b&gt; хязгааргүй дата ашиглах эрхтэй &lt;/ б&gt; биш бол нэмэлт төлбөр гарч болно. Хэрэв та өөрийн дата ашиглалтын эрхийг сайн мэдэхгүй байгаа бол Wi-Fi холболт ашиглан автоматаар татан авахыг эхлүүлэхийг зөвлөж байна.&lt;br/&gt; &lt;br/&gt; &lt;br/&gt; Зөвлөмж: Та өөрийн мобайл төхөөрөмжийн &lt;b&gt; тохиргоо &lt;/ б&gt; цэсэнд &lt;/ б&gt; Хэл &amp; оролт &lt;b&gt; руу очиж толь бичиг татаж авах, устгах боломжтой."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Одоо татах (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Wi-Fi-р татаж авах"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> хэлний толь ашиглах боломжтой"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Шалгах болон татаж авахын тулд дарна уу"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>-д зориулсан татан авалтын санал болголтууд удахгүй бэлэн болно."</string>
<string name="version_text" msgid="2715354215568469385">"Хувилбар <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Нэмэх"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Толь бичигт нэмэх"</string>
diff --git a/java/res/values-nb/strings.xml b/java/res/values-nb/strings.xml
index 8a9595919..510bef41f 100644
--- a/java/res/values-nb/strings.xml
+++ b/java/res/values-nb/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Koble til hodetelefoner for å høre opplesing av bokstavene i passordet."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Gjeldende tekst er %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Ingen tekst er skrevet inn"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> retter <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> til <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> utfører automatisk retting"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Tastaturkode %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift er på (trykk for å deaktivere)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Ringemodus"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Ringemodus med symboler"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tastaturet er skjult"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Viser <xliff:g id="KEYBOARD_MODE">%s</xliff:g>-tastatur"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"dato"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"dato og klokkeslett"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-post"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Engelsk (Storbritannia)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Engelsk (USA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spansk (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Engelsk (Storbritannia) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Engelsk (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spansk (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradisjonell)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Ingen språk (alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,13 +166,12 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Bruk en ekstern ordlistefil"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Det ligger ingen ordboksfiler i Nedlastinger-mappen"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Velg ordboksfilen du vil installere"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Vil du virkelig installere denne filen for <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Det oppsto en feil"</string>
- <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Slett kontakter-ordlisten"</string>
- <string name="prefs_dump_user_dict" msgid="294870685041741951">"Slett den personlige ordlisten"</string>
- <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Slett brukerlogg-ordlisten"</string>
- <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Slett tilpasningsordlisten"</string>
+ <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Tøm kontakter-ordlisten"</string>
+ <string name="prefs_dump_user_dict" msgid="294870685041741951">"Tøm den personlige ordlisten"</string>
+ <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Tøm brukerlogg-ordlisten"</string>
+ <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Tøm tilpasningsordlisten"</string>
<string name="button_default" msgid="3988017840431881491">"Standard"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Velkommen til <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"med Ordføring"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Last inn på nytt"</string>
<string name="last_update" msgid="730467549913588780">"Sist oppdatert"</string>
<string name="message_updating" msgid="4457761393932375219">"Ser etter oppdateringer ..."</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Laster inn …"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Hovedordliste"</string>
<string name="cancel" msgid="6830980399865683324">"Avbryt"</string>
<string name="install_dict" msgid="180852772562189365">"Installer"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Avbryt"</string>
<string name="delete_dict" msgid="756853268088330054">"Slett"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Det valgte språket på mobilenheten din har en tilgjengelig ordliste.&lt;br/&gt; Vi anbefaler å &lt;b&gt;laste ned&lt;/b&gt; ordlisten for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>. Dette forbedrer skriveopplevelsen din.&lt;br/&gt; &lt;br/&gt; Nedlastingen kan ta fra ett til to minutter via 3G. Belastninger kan påløpe hvis du ikke har et abonnement med &lt;b&gt;ubegrenset databruk&lt;/b&gt;.&lt;br/&gt; Hvis du er usikker på hvilken abonnementstype du har, anbefaler vi deg å finne en Wi-Fi-tilkobling for å starte nedlastingen automatisk.&lt;br/&gt; &lt;br/&gt; Tips: Du kan laste ned og fjerne ordlister ved å gå til &lt;b&gt;Språk og inndata&lt;/b&gt; i menyen for &lt;b&gt;Innstillinger&lt;/b&gt; på mobilenheten din."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Last ned nå (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Last ned via Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"En ordliste er tilgjengelig for <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Trykk for å se gjennom og laste ned"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Laster ned: forslag til <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> er snart klare"</string>
<string name="version_text" msgid="2715354215568469385">"Versjon <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Legg til"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Legg til i ordlisten"</string>
diff --git a/java/res/values-ne-rNP/strings.xml b/java/res/values-ne-rNP/strings.xml
index 8e2ca1e72..fa7ebd2f7 100644
--- a/java/res/values-ne-rNP/strings.xml
+++ b/java/res/values-ne-rNP/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"हेडसेट प्लग इन गर्नुहोस्"</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"वर्तमान पाठ %s हो"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"कुनै पाठ प्रविष्टि गरिएको छैन"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> सही <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> गर्न <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> स्वतः सच्याउने प्रदर्शन"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"कुञ्जी कोड %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"सिफ्ट"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"सिप्ट सक्रिय (असक्षम पार्न ट्याप गर्नुहोस्)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"फोन मोड"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"फोन प्रतिक मोड"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"किबोर्ड लुकाइएको छ"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Showing <xliff:g id="KEYBOARD_MODE">%s</xliff:g> कुञ्जीपाटी"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"मिति"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"मिति र समय"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"इमेल"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"अंग्रेजी (युके)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"अंग्रेजी (युएस्)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"स्पेनिस (युएस्)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"अंग्रेजी (बेलायत) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"अंग्रेजी (अमेरिका) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"स्पेनी (अमेरिका) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (परम्परागत)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"कुनै भाषा होइन (वर्णमाला)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"वर्णमाला (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"वर्णमाला (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"बाह्य शब्दकोश फाइल पढ्नुहोस्"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"डाउनलोड फोल्डरमा कुनै शब्दकोश फाइलहरू छैनन्।"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"स्थापना गर्न कुनै शब्दकोश फाइल चयन गर्नुहोस्"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"वास्तवमा लागि यो फाइल स्थापना <xliff:g id="LANGUAGE_NAME">%s</xliff:g> ?"</string>
<string name="error" msgid="8940763624668513648">"कुनै त्रुटि भयो"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"सम्पर्क शब्दकोश डम्प गर्नुहोस्"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"व्यक्तिगत शब्दकोश डम्प गर्नुहोस्"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"पुनः ताजा गर्नुहोस्"</string>
<string name="last_update" msgid="730467549913588780">"पछिल्लो अद्यावधिक"</string>
<string name="message_updating" msgid="4457761393932375219">"अद्यावधिकको लागि जाँच गर्दै"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"लोड हुँदै..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"मुख्य शब्दकोश"</string>
<string name="cancel" msgid="6830980399865683324">"रद्द गर्नुहोस्"</string>
<string name="install_dict" msgid="180852772562189365">"स्थापना गर्नुहोस्"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"रद्द गर्नुहोस्"</string>
<string name="delete_dict" msgid="756853268088330054">"मेट्नुहोस्"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"आफ्नो मोबाइल उपकरणमा चयन गरिएको भाषामा शब्दकोश उपलब्ध छ। &lt;br/&gt; हामी डाउनलोड गर्न &lt;/ b&gt; ले सिफारिस गर्छन् <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> आफ्नो टाइपिङ अनुभव सुधार्न शब्दकोश। यो विचारको यस डाउनलोड 3G मा एक वा दुई मिनेट लिन सक्छ। तपाईं एक &lt;b&gt; असीमित डेटा योजना &lt;/ b&gt; छैन भने शुल्क लागू हुन सक्छ। तपाईं हामी सुरु गर्न वाइफाइ जडान खोज्न सिफारिस, जो तपाईं डेटा योजना छैन भने &lt;br/&gt; को स्वतः डाउनलोड सल्लाह:। तपाईं डाउनलोड र &lt;b&gt; सेटिङ &lt;/ b&gt; मेनु मा &lt;/ b&gt; भाषा र इनपुट &lt;b&gt; जाने शब्दकोशलाई हटाउन सक्नुहुन्छ आफ्नो मोबाइल उपकरणको।"</string>
<string name="download_over_metered" msgid="1643065851159409546">"(अब डाउनलोड गर्नुहोस्<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"वाइ-फाइको माध्ययमद्वार डाउनलोड गर्नुहोस्"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"एक शब्दकोश लागि उपलब्ध छ <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"समीक्षा गर्न थिच्नुहोस् र डाउनलोड गर्नुहोस्"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Downloading: लागि सुझाव <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> चाँडै नै तयार हुनेछ।"</string>
<string name="version_text" msgid="2715354215568469385">"संस्करण <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"थप्नुहोस्"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"शब्दकोशमा थप्नुहोस्"</string>
diff --git a/java/res/values-nl/strings.xml b/java/res/values-nl/strings.xml
index 231cd60f1..565811b3b 100644
--- a/java/res/values-nl/strings.xml
+++ b/java/res/values-nl/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Sluit een headset aan om wachtwoordtoetsen hardop te laten voorlezen."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Huidige tekst is %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Geen tekst ingevoerd"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"Met <xliff:g id="KEY_NAME">%1$s</xliff:g> wordt <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> gecorrigeerd naar <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"Met <xliff:g id="KEY_NAME">%1$s</xliff:g> voert u automatische correctie uit"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Toetscode %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift aan (tik om uit te schakelen)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Toetsenbord telefoon"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Telefoonsymbolen"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Toetsenbord verborgen"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"<xliff:g id="KEYBOARD_MODE">%s</xliff:g> toetsenbord wordt weergegeven"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"datum en tijd"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-mail"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Engels (GB)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Engels (VS)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Spaans (VS)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Engels (VK) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Engels (VS) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spaans (VS) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (traditioneel)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Geen taal (alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Extern woordenboekbestand lezen"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Geen woordenboekbestanden in de map \'Downloads\'"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Selecteer een woordenboekbestand om te installeren"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Wilt u dit bestand voor het <xliff:g id="LANGUAGE_NAME">%s</xliff:g> echt installeren?"</string>
<string name="error" msgid="8940763624668513648">"Er is een fout opgetreden"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Contactenwoordenboek dumpen"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Persoonlijk woordenboek dumpen"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Vernieuwen"</string>
<string name="last_update" msgid="730467549913588780">"Laatst bijgewerkt"</string>
<string name="message_updating" msgid="4457761393932375219">"Controleren op updates"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Laden…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Algemeen woordenboek"</string>
<string name="cancel" msgid="6830980399865683324">"Annuleren"</string>
<string name="install_dict" msgid="180852772562189365">"Installeren"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Annuleren"</string>
<string name="delete_dict" msgid="756853268088330054">"Verwijderen"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Er is een woordenboek voor de geselecteerde taal beschikbaar op uw mobiele apparaat.&lt;br/&gt; We raden u aan het woordenboek voor het <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> te &lt;b&gt;downloaden&lt;/b&gt; om uw typvaardigheid te verbeteren.&lt;br/&gt; &lt;br/&gt; De download kan één of twee minuten duren via 3G. Er kunnen kosten worden berekend als u geen &lt;b&gt;onbeperkt gegevensabonnement&lt;/b&gt; heeft.&lt;br/&gt; Als u niet zeker weet welk gegevensabonnement u heeft, raden we u aan een wifi-verbinding te zoeken om de download automatisch te starten.&lt;br/&gt; &lt;br/&gt; Tip: u kunt woordenboeken downloaden en verwijderen via &lt;b&gt;Taal en invoer&lt;/b&gt; in het menu &lt;b&gt;Instellingen&lt;/b&gt; van uw mobiele apparaat."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Nu downloaden (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Downloaden via wifi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Er is een woordenboek beschikbaar voor het <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Druk om te controleren en te downloaden"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Downloaden: suggesties voor het <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> zijn straks beschikbaar."</string>
<string name="version_text" msgid="2715354215568469385">"Versie <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Toevoegen"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Toevoegen aan woordenboek"</string>
diff --git a/java/res/values-pl/strings.xml b/java/res/values-pl/strings.xml
index 5956263f2..15ce51643 100644
--- a/java/res/values-pl/strings.xml
+++ b/java/res/values-pl/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Podłącz zestaw słuchawkowy, aby usłyszeć znaki hasła wypowiadane na głos."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Aktualny tekst: %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Nie wprowadzono tekstu"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> poprawia <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> na <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> wykonuje autokorektę"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Kod klawisza: %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift włączony (kliknij, by wyłączyć)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Tryb telefonu"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Tryb symboli telefonu"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Klawiatura ukryta"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Pokazuję klawiaturę w trybie <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"data"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"data i godzina"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-mail"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"angielski (Wielka Brytania)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"angielski (Stany Zjednoczone)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"hiszpański (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Angielski (Wielka Brytania) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Angielski (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Hiszpański (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradycyjny)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Bez języka (alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Odczyt zewnętrznego pliku słownika"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Brak plików słownika w folderze Pobrane pliki"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Wybierz plik słownika do zainstalowania"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Czy na pewno zainstalować ten plik dla języka: <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Wystąpił błąd"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Zrzut słownika kontaktów"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Zrzut słownika osobistego"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Odśwież"</string>
<string name="last_update" msgid="730467549913588780">"Ostatnia aktualizacja"</string>
<string name="message_updating" msgid="4457761393932375219">"Sprawdzanie dostępności aktualizacji"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Wczytuję…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Słownik główny"</string>
<string name="cancel" msgid="6830980399865683324">"Anuluj"</string>
<string name="install_dict" msgid="180852772562189365">"Zainstaluj"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Anuluj"</string>
<string name="delete_dict" msgid="756853268088330054">"Usuń"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Do języka, którego używasz na swoim urządzeniu przenośnym, jest dostępny słownik.&lt;br/&gt; Warto &lt;b&gt;pobrać&lt;/b&gt; ten słownik <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>, by ułatwić sobie pisanie.&lt;br/&gt; &lt;br/&gt; Pobieranie trwa do dwóch minut (przez 3G). Jeśli nie masz &lt;b&gt;abonamentu z nieograniczoną transmisją danych&lt;/b&gt;, operator może naliczyć opłatę.&lt;br/&gt; Jeśli nie wiesz, jaki masz abonament, połącz się z Wi-Fi, by automatycznie rozpocząć pobieranie.&lt;br/&gt; &lt;br/&gt; Wskazówka: słowniki możesz pobierać i usuwać w sekcji &lt;b&gt;Język, klawiatura, głos&lt;/b&gt; w menu &lt;b&gt;Ustawienia&lt;/b&gt; na urządzeniu."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Pobierz teraz (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Pobierz przez Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Dostępny jest słownik <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Naciśnij, by sprawdzić i pobrać"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Pobieranie – wkrótce będą dostępne sugestie w tym języku: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>."</string>
<string name="version_text" msgid="2715354215568469385">"Wersja <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Dodaj"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Dodaj do słownika"</string>
diff --git a/java/res/values-pt-rPT/strings.xml b/java/res/values-pt-rPT/strings.xml
index 1acf9d2df..eb519d29d 100644
--- a/java/res/values-pt-rPT/strings.xml
+++ b/java/res/values-pt-rPT/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Ligar auscultadores com microfone integrado para ouvir as teclas da palavra-passe."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"O texto atual é %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Nenhum texto digitado"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> corrige <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> para <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> executa a correção automática"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Código da tecla %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift ativado (tocar para desativar)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Modo de telemóvel"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Modo de símbolos de telemóvel"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Teclado oculto"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"A mostrar o teclado de <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"data"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"data e hora"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"email"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Inglês (RU)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Inglês (EUA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"Espanhol (EUA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Inglês (RU) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Inglês (EUA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Espanhol (EUA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicional)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Sem idioma (alfabeto)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabeto (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabeto (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Ler ficheiro de dicionário externo"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Não há ficheiros de dicionário na pasta Transferências"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Selecione um ficheiro de dicionário para instalar"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Instalar mesmo este ficheiro para <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Ocorreu um erro"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Descarregar dicionário de contactos"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Descarregar dicionário pessoal"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Atualizar"</string>
<string name="last_update" msgid="730467549913588780">"Última atualização"</string>
<string name="message_updating" msgid="4457761393932375219">"A verificar existência de atualizações"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"A carregar…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Dicionário principal"</string>
<string name="cancel" msgid="6830980399865683324">"Cancelar"</string>
<string name="install_dict" msgid="180852772562189365">"Instalar"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Cancelar"</string>
<string name="delete_dict" msgid="756853268088330054">"Eliminar"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"O idioma selecionado no disp. móvel tem um dicionário disponível.&lt;br/&gt; Recomendamos que &lt;b&gt;transfira&lt;/b&gt; o dicionário de <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> para melhorar a sua experiência de introdução de texto.&lt;br/&gt; &lt;br/&gt; A transferência pode demorar um ou dois minutos através de 3G. Poderão ser aplicadas taxas se não tiver um &lt;b&gt;plano de dados ilimitado&lt;/b&gt;.&lt;br/&gt; Se não tiver a certeza do plano de dados que tem, recomendamos que procure uma ligação Wi-Fi para começar a transferência automaticamente.&lt;br/&gt; &lt;br/&gt; Sugestão: Pode transferir e remover dicionários acedendo a &lt;b&gt;Idioma e introdução&lt;/b&gt; no menu &lt;b&gt;Definições&lt;/b&gt; do disp. móvel."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Transferir agora (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Transferir via Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Está disponível um dicionário de <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Prima para consultar e transferir"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"A transferir: as sugestões para <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> estarão prontas em breve"</string>
<string name="version_text" msgid="2715354215568469385">"Versão <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Adicionar"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Adicionar ao dicionário"</string>
diff --git a/java/res/values-ru/strings.xml b/java/res/values-ru/strings.xml
index 2c278ec05..5dacd77e5 100644
--- a/java/res/values-ru/strings.xml
+++ b/java/res/values-ru/strings.xml
@@ -176,10 +176,10 @@
<!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
<skip />
<string name="error" msgid="8940763624668513648">"Ошибка"</string>
- <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Создать копию списка контактов"</string>
- <string name="prefs_dump_user_dict" msgid="294870685041741951">"Создать копию польз. словаря"</string>
- <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Создать копию истории"</string>
- <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Создать копию польз. словаря"</string>
+ <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Выгрузить словарь контактов"</string>
+ <string name="prefs_dump_user_dict" msgid="294870685041741951">"Выгрузить личный словарь"</string>
+ <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Выгрузить словарь польз. истории"</string>
+ <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Выгрузить словарь персонализации"</string>
<string name="button_default" msgid="3988017840431881491">"По умолчанию"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Представляем приложение \"<xliff:g id="APPLICATION_NAME">%s</xliff:g>\""</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"с непрерывным вводом"</string>
diff --git a/java/res/values-sl/strings.xml b/java/res/values-sl/strings.xml
index e1bfc71e3..3704e2c06 100644
--- a/java/res/values-sl/strings.xml
+++ b/java/res/values-sl/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Priključite slušalke, če želite slišati izgovorjene tipke gesla."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Trenutno besedilo je %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Ni vnesenega besedila"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"Tipka <xliff:g id="KEY_NAME">%1$s</xliff:g> popravi <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> v <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> izvede samopopravek"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Koda tipke %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift je vklopljen (dotaknite se, da onemogočite)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Način telefona"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Način simbolov telefona"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tipkovnica je skrita"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Prikaz tipkovnice <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"datum in ura"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-pošta"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"angleščina (Združeno kraljestvo)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"angleščina (ZDA)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"španščina (ZDA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"angleščina (VB) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"angleščina (ZDA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"španščina (ZDA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (tradicionalna)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Brez jezika (latinice)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Latinica (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Latinica (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Branje zunanje datoteke slovarja"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"V mapi »Prenosi« ni nobene datoteke slovarja"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Izberite datoteko slovarja, ki jo želite namestiti"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Zares želite namestiti to datoteko za ta jezik: <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Prišlo je do napake"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Izvoz slovarja stikov"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Izvoz osebnega slovarja"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Osveži"</string>
<string name="last_update" msgid="730467549913588780">"Nazadnje posodobljeno"</string>
<string name="message_updating" msgid="4457761393932375219">"Iskanje posodobitev"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Nalaganje …"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Glavni slovar"</string>
<string name="cancel" msgid="6830980399865683324">"Prekliči"</string>
<string name="install_dict" msgid="180852772562189365">"Namesti"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Prekliči"</string>
<string name="delete_dict" msgid="756853268088330054">"Izbriši"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Za izbrani jezik v mobilni napravi je na voljo slovar.&lt;br/&gt; Za izboljšano izkušnjo tipkanja priporočamo, da &lt;b&gt;prenesete&lt;/b&gt; slovar za ta jezik: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>.&lt;br/&gt; &lt;br/&gt; Prenos prek povezave 3G lahko traja minuto ali dve. Če nimate &lt;b&gt;neomejenega podatkovnega paketa&lt;/b&gt;.&lt;br/&gt;, boste morda morali plačati prenos podatkov. Če ne veste, kateri podatkovni paket imate, priporočamo, da poiščete omrežje Wi-Fi in prenos začnete samodejno.&lt;br/&gt; &lt;br/&gt; Nasvet: Slovarje lahko prenesete in odstranite tako, da v meniju &lt;b&gt;Nastavitve&lt;/b&gt; v mobilni napravi odprete &lt;b&gt;Jezik in vnos&lt;/b&gt;."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Prenesi zdaj (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Prenos prek povezave Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Na voljo je slovar za ta jezik: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Pritisnite za pregled in prenos"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Prenos: predlogi za jezik <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> bodo kmalu na voljo."</string>
<string name="version_text" msgid="2715354215568469385">"Različica <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Dodaj"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Dodaj v slovar"</string>
diff --git a/java/res/values-sr/strings.xml b/java/res/values-sr/strings.xml
index f521428a8..510a2e88f 100644
--- a/java/res/values-sr/strings.xml
+++ b/java/res/values-sr/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Укључите слушалице да бисте чули наглас изговорене тастере за лозинку."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Тренутни текст је %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Текст није унет"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> исправља <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> у <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> обавља аутоматско исправљање"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Кôд тастера %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift је укључен (додирните да бисте га онемогућили)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Режим телефона"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Режим симбола телефона"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Тастатура је сакривена"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Приказујемо тастатуру у режиму <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"датум"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"датум и време"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"адреса е-поште"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"енглески (УК)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"енглески (САД)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"шпански (САД)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"енглески (УК) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"енглески (САД) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"шпански (САД) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (традиционални)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Нема језика (абецеда)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Абецеда (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Абецеда (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Читање датотеке спољног речника"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"У директоријуму Преузимања нема датотека речника"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Избор датотеке речника за инсталирање"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Желите ли стварно да инсталирате ову датотеку за <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Дошло је до грешке"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Избриши речник контаката"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Избриши лични речник"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Освежи"</string>
<string name="last_update" msgid="730467549913588780">"Последње ажурирање"</string>
<string name="message_updating" msgid="4457761393932375219">"Тражење ажурирања"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Учитавање…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Главни речник"</string>
<string name="cancel" msgid="6830980399865683324">"Откажи"</string>
<string name="install_dict" msgid="180852772562189365">"Инсталирај"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Откажи"</string>
<string name="delete_dict" msgid="756853268088330054">"Избриши"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Доступан је речник за изабрани језик на мобилном уређају.&lt;br/&gt; Препоручујемо вам да &lt;b&gt;преузмете&lt;/b&gt; речник за <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> да бисте побољшали доживљај куцања.&lt;br/&gt; &lt;br/&gt; Преузимање може да траје минут или два преко 3G мреже. Трошкови ће можда бити наплаћени ако немате &lt;b&gt;претплатнички пакет без ограничења&lt;/b&gt;.&lt;br/&gt; Ако нисте сигурни који претплатнички пакет имате, препоручујемо вам да пронађете Wi-Fi везу да бисте аутоматски започели преузимање.&lt;br/&gt; &lt;br/&gt; Савет: Речнике можете да преузимате и уклањате ако одете на &lt;b&gt;Језик и унос&lt;/b&gt; у менију &lt;b&gt;Подешавања&lt;/b&gt; на мобилном уређају."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Преузми одмах (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Преузми преко Wi-Fi-ја"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Доступан је речник за <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Притисните за преглед и преузимање"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Преузимање: Предлози за <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> ће ускоро бити спремни."</string>
<string name="version_text" msgid="2715354215568469385">"Верзија <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Додај"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Додавање у речник"</string>
diff --git a/java/res/values-sv/strings.xml b/java/res/values-sv/strings.xml
index 0f29e9e6d..0dcda09cf 100644
--- a/java/res/values-sv/strings.xml
+++ b/java/res/values-sv/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Anslut hörlurar om du vill att lösenordet ska läsas upp."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Nuvarande text är %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Ingen text har angetts"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"Om du trycker på <xliff:g id="KEY_NAME">%1$s</xliff:g> rättas <xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> till <xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"Om du trycker på <xliff:g id="KEY_NAME">%1$s</xliff:g> utförs autokorrigering"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Nyckelkod %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Skift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Skift på (knacka lätt för att inaktivera)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Telefonläge"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Telefonsymbolläge"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Tangentbordet är dolt"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Tangentbord för <xliff:g id="KEYBOARD_MODE">%s</xliff:g> visas"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"datum"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"datum och tid"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"e-post"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Engelskt (brittiskt)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Engelskt (amerikanskt)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"spanska (USA)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Engelska (Storbritannien) <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Engelska (USA) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Spanska (USA (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (traditionell)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Inget språk (alfabet)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabet (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabet (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Läs extern ordboksfil"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Inga ordboksfiler i mappen Hämtningar"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Välj en ordboksfil att installera"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Vill du verkligen installera filen för <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Ett fel uppstod"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Dumpa ordlista för kontakter"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Dumpa personlig ordlista"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Uppdatera"</string>
<string name="last_update" msgid="730467549913588780">"Informationen uppdaterades senast"</string>
<string name="message_updating" msgid="4457761393932375219">"Söker efter uppdateringar"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Läser in …"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Huvudordlista"</string>
<string name="cancel" msgid="6830980399865683324">"Avbryt"</string>
<string name="install_dict" msgid="180852772562189365">"Installera"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Avbryt"</string>
<string name="delete_dict" msgid="756853268088330054">"Ta bort"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Det finns en ordbok för språket du har valt på din mobila enhet.&lt;br/&gt; Vi rekommenderar att du &lt;b&gt;hämtar&lt;/b&gt; ordboken på <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>. Då blir det enklare och smidigare att skriva.&lt;br/&gt; &lt;br/&gt; Hämtningen tar en minut eller två om du använder 3G. Avgifter kan tillkomma om du inte har ett &lt;b&gt;abonnemang med obegränsad data&lt;/b&gt;.&lt;br/&gt; Om du inte är säker på vad som ingår i ditt abonnemang rekommenderar vi att du hittar en Wi-Fi-anslutning och påbörjar hämtningen automatiskt.&lt;br/&gt; &lt;br/&gt; Tips: Du kan hämta och ta bort ordböcker via &lt;b&gt;Språk och inmatning&lt;/b&gt; i menyn &lt;b&gt;Inställningar&lt;/b&gt; på din mobila enhet."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Hämta nu (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Hämta via Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"En ordlista för <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> är tillgänglig"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Tryck om du vill granska och hämta"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Hämtar: förslag för <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> är snart klara."</string>
<string name="version_text" msgid="2715354215568469385">"Version <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Lägg till"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Lägg till i ordlista"</string>
diff --git a/java/res/values-th/strings.xml b/java/res/values-th/strings.xml
index c8d4c8042..a43953775 100644
--- a/java/res/values-th/strings.xml
+++ b/java/res/values-th/strings.xml
@@ -179,7 +179,7 @@
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"ถ่ายโอนพจนานุกรมที่อยู่ติดต่อ"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"ถ่ายโอนพจนานุกรมส่วนตัว"</string>
<string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"ถ่ายโอนพจนานุกรมประวัติผู้ใช้"</string>
- <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"ถ่ายโอนพจนานุกรมปรับเปลี่ยนในแบบคุณ"</string>
+ <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"ถ่ายโอนพจนานุกรมในแบบคุณ"</string>
<string name="button_default" msgid="3988017840431881491">"ค่าเริ่มต้น"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"ยินดีต้อนรับสู่ <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"พร้อมการป้อนข้อมูลด้วยท่าทาง"</string>
diff --git a/java/res/values-uk/strings.xml b/java/res/values-uk/strings.xml
index 89c75f2fe..b82913afd 100644
--- a/java/res/values-uk/strings.xml
+++ b/java/res/values-uk/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Підключіть гарнітуру, щоб прослухати відтворені вголос символи пароля."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Поточний текст – %s."</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Текст не введено"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"<xliff:g id="KEY_NAME">%1$s</xliff:g> виправляє слово \"<xliff:g id="ORIGINAL_WORD">%2$s</xliff:g>\" на \"<xliff:g id="CORRECTED_WORD">%3$s</xliff:g>\""</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"<xliff:g id="KEY_NAME">%1$s</xliff:g> здійснює автоматичне виправлення"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Код клавіші – %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Клавіша Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"Shift увімкнено (швидко торкніться, щоб вимкнути)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Режим набору номера"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Режим набору символів"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Клавіатуру сховано"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Режим клавіатури: <xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"дата"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"дата й час"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"електронні адреси"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"Англійська (Великобританія)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"Англійська (США)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"іспанська (США)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"Англійська (Британія) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"Англійська (США) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Іспанська (США) (<xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g>)"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (традиційне письмо)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Стандартна (латиниця)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Латиниця (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Латиниця (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Читати файл зовнішнього словника"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"У папці \"Завантаження\" немає файлів словника"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Вибрати файл словника, який потрібно встановити"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Справді встановити цей файл для такої мови: <xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Сталася помилка"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Дамп словника контактів"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Дамп особистого словника"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Оновити"</string>
<string name="last_update" msgid="730467549913588780">"Останнє оновлення"</string>
<string name="message_updating" msgid="4457761393932375219">"Перевірка наявності оновлень"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Завантаження…"</string>
<string name="main_dict_description" msgid="3072821352793492143">"Основний словник"</string>
<string name="cancel" msgid="6830980399865683324">"Скасувати"</string>
<string name="install_dict" msgid="180852772562189365">"Установити"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Скасувати"</string>
<string name="delete_dict" msgid="756853268088330054">"Видалити"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Для вибраної на вашому мобільному пристрої мови доступний словник.&lt;br/&gt; Радимо &lt;b&gt;завантажити&lt;/b&gt; словник для цієї мови (<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>), щоб покращити введення тексту.&lt;br/&gt; &lt;br/&gt; У мережі 3G завантаження триває 1–2 хвилини. Якщо у вас не &lt;b&gt;безлімітний тарифний план Інтернету&lt;/b&gt;, може стягуватися плата.&lt;br/&gt; Якщо ви не впевнені щодо тарифного плану, радимо скористатися з’єднанням Wi-Fi, щоб автоматично почати завантаження.&lt;br/&gt; &lt;br/&gt; Порада: завантажувати та видаляти словники можна в меню &lt;b&gt;Налаштування&lt;/b&gt; в розділі &lt;b&gt;Мова та введення&lt;/b&gt; вашого мобільного пристрою."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Завантажити зараз (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g> Mб)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Завантажити через Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Доступний словник для такої мови: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Натисніть, щоб переглянути та завантажити"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Завантаження. Скоро будуть готові пропозиції для такої мови: <xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>."</string>
<string name="version_text" msgid="2715354215568469385">"Версія <xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Додати"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Додати в словник"</string>
diff --git a/java/res/values-vi/strings.xml b/java/res/values-vi/strings.xml
index 45b009bd2..dc2741dcd 100644
--- a/java/res/values-vi/strings.xml
+++ b/java/res/values-vi/strings.xml
@@ -176,10 +176,10 @@
<!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
<skip />
<string name="error" msgid="8940763624668513648">"Đã xảy ra lỗi"</string>
- <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Kết xuất từ điển danh bạ"</string>
- <string name="prefs_dump_user_dict" msgid="294870685041741951">"Kết xuất từ điển cá nhân"</string>
- <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Kết xuất từ điển lịch sử người dùng"</string>
- <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Kết xuất từ điển cá nhân hóa"</string>
+ <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Lưu vào từ điển danh bạ"</string>
+ <string name="prefs_dump_user_dict" msgid="294870685041741951">"Lưu vào từ điển cá nhân"</string>
+ <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"Lưu vào từ điển lịch sử người dùng"</string>
+ <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"Lưu vào từ điển cá nhân hóa"</string>
<string name="button_default" msgid="3988017840431881491">"Mặc định"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"Chào mừng bạn đến với <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"với Nhập bằng cử chỉ"</string>
diff --git a/java/res/values-zh-rCN/strings.xml b/java/res/values-zh-rCN/strings.xml
index 8371636c8..c4fd700b2 100644
--- a/java/res/values-zh-rCN/strings.xml
+++ b/java/res/values-zh-rCN/strings.xml
@@ -176,10 +176,10 @@
<!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
<skip />
<string name="error" msgid="8940763624668513648">"出现错误"</string>
- <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"转储联系人字典"</string>
- <string name="prefs_dump_user_dict" msgid="294870685041741951">"转储个人字典"</string>
- <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"转储用户历史记录字典"</string>
- <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"转储个性化字典"</string>
+ <string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"转储联系人词典"</string>
+ <string name="prefs_dump_user_dict" msgid="294870685041741951">"转储个人词典"</string>
+ <string name="prefs_dump_user_history_dict" msgid="6821075152449554628">"转储用户历史记录词典"</string>
+ <string name="prefs_dump_personalization_dict" msgid="7558387996151745284">"转储个性化词典"</string>
<string name="button_default" msgid="3988017840431881491">"默认"</string>
<string name="setup_welcome_title" msgid="6112821709832031715">"欢迎使用 <xliff:g id="APPLICATION_NAME">%s</xliff:g>"</string>
<string name="setup_welcome_additional_description" msgid="8150252008545768953">"体验顺畅的滑行输入体验"</string>
diff --git a/java/res/values-zu/strings.xml b/java/res/values-zu/strings.xml
index ecb489032..228193358 100644
--- a/java/res/values-zu/strings.xml
+++ b/java/res/values-zu/strings.xml
@@ -80,10 +80,8 @@
<string name="spoken_use_headphones" msgid="896961781287283493">"Plaka ku-headset ukuze uzwe okhiye bephasiwedi ezindlebeni zakho bezwakala kakhulu."</string>
<string name="spoken_current_text_is" msgid="2485723011272583845">"Umbhalo wamanje ngu %s"</string>
<string name="spoken_no_text_entered" msgid="7479685225597344496">"Awukho umbhalo ofakiwe"</string>
- <!-- no translation found for spoken_auto_correct (5150455215290003221) -->
- <skip />
- <!-- no translation found for spoken_auto_correct_obscured (2309828861778711939) -->
- <skip />
+ <string name="spoken_auto_correct" msgid="5150455215290003221">"I-<xliff:g id="KEY_NAME">%1$s</xliff:g> ilungisa i-<xliff:g id="ORIGINAL_WORD">%2$s</xliff:g> kube yi-<xliff:g id="CORRECTED_WORD">%3$s</xliff:g>"</string>
+ <string name="spoken_auto_correct_obscured" msgid="2309828861778711939">"I-<xliff:g id="KEY_NAME">%1$s</xliff:g> yenza ukulungisa okuzenzakalelayo"</string>
<string name="spoken_description_unknown" msgid="3197434010402179157">"Ikhodi yokhiye %d"</string>
<string name="spoken_description_shift" msgid="244197883292549308">"Shift"</string>
<string name="spoken_description_shift_shifted" msgid="1681877323344195035">"U-Shift uvuliwe (thepha ukuwuvimbela)"</string>
@@ -111,8 +109,7 @@
<string name="spoken_description_mode_phone" msgid="6520207943132026264">"Imodi yefoni"</string>
<string name="spoken_description_mode_phone_shift" msgid="5499629753962641227">"Imodi yezimpawu zefoni"</string>
<string name="announce_keyboard_hidden" msgid="8718927835531429807">"Ikhibhodi ifihliwe"</string>
- <!-- no translation found for announce_keyboard_mode (7486740369324538848) -->
- <skip />
+ <string name="announce_keyboard_mode" msgid="7486740369324538848">"Ibonisa ikhibhodi ye-<xliff:g id="KEYBOARD_MODE">%s</xliff:g>"</string>
<string name="keyboard_mode_date" msgid="3137520166817128102">"idethi"</string>
<string name="keyboard_mode_date_time" msgid="339593358488851072">"idethi nesikhathi"</string>
<string name="keyboard_mode_email" msgid="6216248078128294262">"i-imeyili"</string>
@@ -136,14 +133,10 @@
<string name="subtype_en_GB" msgid="88170601942311355">"i-English(UK)"</string>
<string name="subtype_en_US" msgid="6160452336634534239">"i-English (US)"</string>
<string name="subtype_es_US" msgid="5583145191430180200">"I-Spanish (US)"</string>
- <!-- no translation found for subtype_with_layout_en_GB (1931018968641592304) -->
- <skip />
- <!-- no translation found for subtype_with_layout_en_US (8809311287529805422) -->
- <skip />
- <!-- no translation found for subtype_with_layout_es_US (510930471167541338) -->
- <skip />
- <!-- no translation found for subtype_nepali_traditional (1994571919751163596) -->
- <skip />
+ <string name="subtype_with_layout_en_GB" msgid="1931018968641592304">"I-English (UK) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_with_layout_en_US" msgid="8809311287529805422">"I-English (US) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_with_layout_es_US" msgid="510930471167541338">"Isi-Spanish (US) ( <xliff:g id="KEYBOARD_LAYOUT">%s</xliff:g> )"</string>
+ <string name="subtype_nepali_traditional" msgid="1994571919751163596">"Isi-<xliff:g id="LANGUAGE_NAME">%s</xliff:g> (Eyosiko)"</string>
<string name="subtype_no_language" msgid="7137390094240139495">"Alikho ulimi (Alfabhethi)"</string>
<string name="subtype_no_language_qwerty" msgid="244337630616742604">"Alfabhethi (QWERTY)"</string>
<string name="subtype_no_language_qwertz" msgid="443066912507547976">"Alfabhethi (QWERTZ)"</string>
@@ -173,8 +166,7 @@
<string name="prefs_read_external_dictionary" msgid="2588931418575013067">"Funda ifayela elangaphandle lesichazamazwi"</string>
<string name="read_external_dictionary_no_files_message" msgid="4947420942224623792">"Awekho amafayela wesichazamazwi kufolda yokulandiwe"</string>
<string name="read_external_dictionary_multiple_files_title" msgid="7637749044265808628">"Khetha ifayela lesichazamazwi ukuze ulifake"</string>
- <!-- no translation found for read_external_dictionary_confirm_install_message (4782116251651288054) -->
- <skip />
+ <string name="read_external_dictionary_confirm_install_message" msgid="4782116251651288054">"Fakela ngempela leli fayela i-<xliff:g id="LANGUAGE_NAME">%s</xliff:g>?"</string>
<string name="error" msgid="8940763624668513648">"Kube nephutha"</string>
<string name="prefs_dump_contacts_dict" msgid="7227327764402323097">"Lahla isichazamazwi soxhumana nabo"</string>
<string name="prefs_dump_user_dict" msgid="294870685041741951">"Lahla isichazamazwi somuntu siqu"</string>
@@ -217,22 +209,18 @@
<string name="check_for_updates_now" msgid="8087688440916388581">"Qala kabusha"</string>
<string name="last_update" msgid="730467549913588780">"Igcine ukulungiswa"</string>
<string name="message_updating" msgid="4457761393932375219">"Ihlola izibuyekezo"</string>
- <!-- no translation found for message_loading (5638680861387748936) -->
- <skip />
+ <string name="message_loading" msgid="5638680861387748936">"Iyalayisha..."</string>
<string name="main_dict_description" msgid="3072821352793492143">"Isichazamazwi sakho esisemqoka"</string>
<string name="cancel" msgid="6830980399865683324">"Khansela"</string>
<string name="install_dict" msgid="180852772562189365">"Faka"</string>
<string name="cancel_download_dict" msgid="7843340278507019303">"Khansela"</string>
<string name="delete_dict" msgid="756853268088330054">"Susa"</string>
- <!-- no translation found for should_download_over_metered_prompt (1583881200688185508) -->
- <skip />
+ <string name="should_download_over_metered_prompt" msgid="1583881200688185508">"Ulimi olukhethiwe kudivayisi yakho yeselula lunesichazamazwi esitholakalayo.&lt;br/&gt; Sincoma &lt;b&gt;ukulanda&lt;/b&gt; isichazamazwi se-<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> ukuze sithuthukise umuzwa wakho wokuthayipha.&lt;br/&gt; &lt;br/&gt; Ukulanda kungathatha iminithi noma amabili ngaphezulu kwe-3G. Ukukhokhiswa kungasebenza uma unganalo &lt;b&gt;uhlelo lwedatha elingenamkhawulo&lt;/b&gt;.&lt;br/&gt; Uma ungenaso isiqiniseko sokuthi ukuliphi uhlelo lwedatha, sincoma ukuthi uthole ukuxhumeka kwe-Wi-Fi ukuze uqale ukulanda ngokuzenzakalela.&lt;br/&gt; &lt;br/&gt; Ithiphu: Ungalanda uphinde ususe izichazamazwi ngokuya ku-&lt;b&gt;Ulimi nokokufaka&lt;/b&gt; kumenyu ye-&lt;b&gt;Izilungiselelo&lt;/b&gt; zedivayisi yakho yeselula."</string>
<string name="download_over_metered" msgid="1643065851159409546">"Landa manje (<xliff:g id="SIZE_IN_MEGABYTES">%1$.1f</xliff:g>MB)"</string>
<string name="do_not_download_over_metered" msgid="2176209579313941583">"Landa nge-Wi-Fi"</string>
- <!-- no translation found for dict_available_notification_title (4583842811218581658) -->
- <skip />
+ <string name="dict_available_notification_title" msgid="4583842811218581658">"Isichazamazwi sitholakalela i-<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g>"</string>
<string name="dict_available_notification_description" msgid="1075194169443163487">"Cindezela ukuze ubuyekeze uphinde ulande"</string>
- <!-- no translation found for toast_downloading_suggestions (6128155879830851739) -->
- <skip />
+ <string name="toast_downloading_suggestions" msgid="6128155879830851739">"Ukulanda: iziphakamiso ze-<xliff:g id="LANGUAGE_NAME">%1$s</xliff:g> zizolunga maduze."</string>
<string name="version_text" msgid="2715354215568469385">"Inguqulo engu-<xliff:g id="VERSION_NUMBER">%1$s</xliff:g>"</string>
<string name="user_dict_settings_add_menu_title" msgid="1254195365689387076">"Engeza"</string>
<string name="user_dict_settings_add_dialog_title" msgid="4096700390211748168">"Faka kusichazamazwi"</string>
diff --git a/java/res/xml/keys_curly_brackets.xml b/java/res/xml/keys_curly_brackets.xml
index da6dfc0fd..596516af3 100644
--- a/java/res/xml/keys_curly_brackets.xml
+++ b/java/res/xml/keys_curly_brackets.xml
@@ -22,7 +22,7 @@
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
<Key
- latin:keySpec="{|!code/key_left_curly_bracket" />
+ latin:keySpec="!text/keyspec_left_curly_bracket" />
<Key
- latin:keySpec="}|!code/key_right_curly_bracket" />
+ latin:keySpec="!text/keyspec_right_curly_bracket" />
</merge>
diff --git a/java/res/xml/keys_less_greater.xml b/java/res/xml/keys_less_greater.xml
index 3304e4c07..46f4e4b4c 100644
--- a/java/res/xml/keys_less_greater.xml
+++ b/java/res/xml/keys_less_greater.xml
@@ -25,25 +25,22 @@
<case
latin:languageCode="fa"
>
- <!-- TODO: Introduce !code/key_{left,right}_angle_quotation. -->
- <!-- U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
- U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
<Key
- latin:keySpec="&#x00AB;|&#x00BB;"
+ latin:keySpec="!text/keyspec_left_double_angle_quote"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_less_than" />
<Key
- latin:keySpec="&#x00BB;|&#x00AB;"
+ latin:keySpec="!text/keyspec_right_double_angle_quote"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_greater_than" />
</case>
<default>
<Key
- latin:keySpec="&lt;|!code/key_less_than"
+ latin:keySpec="!text/keyspec_less_than"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_less_than" />
<Key
- latin:keySpec="&gt;|!code/key_greater_than"
+ latin:keySpec="!text/keyspec_greater_than"
latin:backgroundType="functional"
latin:moreKeys="!text/more_keys_for_greater_than" />
</default>
diff --git a/java/res/xml/keys_parentheses.xml b/java/res/xml/keys_parentheses.xml
index ab33ef561..73105d837 100644
--- a/java/res/xml/keys_parentheses.xml
+++ b/java/res/xml/keys_parentheses.xml
@@ -22,9 +22,9 @@
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
<Key
- latin:keySpec="(|!code/key_left_parenthesis"
+ latin:keySpec="!text/keyspec_left_parenthesis"
latin:moreKeys="!text/more_keys_for_left_parenthesis" />
<Key
- latin:keySpec=")|!code/key_right_parenthesis"
+ latin:keySpec="!text/keyspec_right_parenthesis"
latin:moreKeys="!text/more_keys_for_right_parenthesis" />
</merge>
diff --git a/java/res/xml/keys_square_brackets.xml b/java/res/xml/keys_square_brackets.xml
index 8f0dec54a..076b2c2d9 100644
--- a/java/res/xml/keys_square_brackets.xml
+++ b/java/res/xml/keys_square_brackets.xml
@@ -22,7 +22,7 @@
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
<Key
- latin:keySpec="[|!code/key_left_square_bracket" />
+ latin:keySpec="!text/keyspec_left_square_bracket" />
<Key
- latin:keySpec="]|!code/key_right_square_bracket" />
+ latin:keySpec="!text/keyspec_right_square_bracket" />
</merge>
diff --git a/java/res/xml/rowkeys_symbols3.xml b/java/res/xml/rowkeys_symbols3.xml
index 01ca0301d..3dbfe81fb 100644
--- a/java/res/xml/rowkeys_symbols3.xml
+++ b/java/res/xml/rowkeys_symbols3.xml
@@ -28,14 +28,11 @@
<case
latin:languageCode="fa"
>
- <!-- TODO: Introduce !code/key_{left,right}_angle_quotation. -->
- <!-- U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
- U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK -->
<Key
- latin:keySpec="&#x00AB;|&#x00BB;"
+ latin:keySpec="!text/keyspec_left_double_angle_quote"
latin:moreKeys="!text/more_keys_for_double_quote" />
<Key
- latin:keySpec="&#x00BB;|&#x00AB;"
+ latin:keySpec="!text/keyspec_right_double_angle_quote"
latin:moreKeys="!text/more_keys_for_single_quote" />
</case>
<default>
diff --git a/java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java b/java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java
index b44741cda..c34464314 100644
--- a/java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java
+++ b/java/src/com/android/inputmethod/keyboard/EmojiPalettesView.java
@@ -723,8 +723,10 @@ public final class EmojiPalettesView extends LinearLayout implements OnTabChange
// Make sure the delayed key-down event (highlight effect and haptic feedback) will be
// canceled.
final EmojiPageKeyboardView currentKeyboardView =
- mActiveKeyboardViews.get(mActivePosition);
- currentKeyboardView.releaseCurrentKey();
+ mActiveKeyboardViews.get(mActivePosition);
+ if (currentKeyboardView != null) {
+ currentKeyboardView.releaseCurrentKey();
+ }
}
@Override
diff --git a/java/src/com/android/inputmethod/keyboard/Key.java b/java/src/com/android/inputmethod/keyboard/Key.java
index 6f0f75314..ceda9ee9a 100644
--- a/java/src/com/android/inputmethod/keyboard/Key.java
+++ b/java/src/com/android/inputmethod/keyboard/Key.java
@@ -292,8 +292,7 @@ public class Key implements Comparable<Key> {
actionFlags |= ACTION_FLAGS_ENABLE_LONG_PRESS;
mMoreKeys = new MoreKeySpec[moreKeys.length];
for (int i = 0; i < moreKeys.length; i++) {
- mMoreKeys[i] = new MoreKeySpec(
- moreKeys[i], needsToUpperCase, locale, params.mCodesSet);
+ mMoreKeys[i] = new MoreKeySpec(moreKeys[i], needsToUpperCase, locale);
}
} else {
mMoreKeys = null;
@@ -306,7 +305,7 @@ public class Key implements Comparable<Key> {
final int previewIconId = KeySpecParser.getIconId(style.getString(keyAttr,
R.styleable.Keyboard_Key_keyIconPreview));
- final int code = KeySpecParser.getCode(keySpec, params.mCodesSet);
+ final int code = KeySpecParser.getCode(keySpec);
if ((mLabelFlags & LABEL_FLAGS_FROM_CUSTOM_ACTION_LABEL) != 0) {
mLabel = params.mId.mCustomActionLabel;
} else if (code >= Character.MIN_SUPPLEMENTARY_CODE_POINT) {
@@ -353,8 +352,8 @@ public class Key implements Comparable<Key> {
} else {
mCode = StringUtils.toUpperCaseOfCodeForLocale(code, needsToUpperCase, locale);
}
- final int altCodeInAttr = KeySpecParser.parseCode(style.getString(keyAttr,
- R.styleable.Keyboard_Key_altCode), params.mCodesSet, CODE_UNSPECIFIED);
+ final int altCodeInAttr = KeySpecParser.parseCode(
+ style.getString(keyAttr, R.styleable.Keyboard_Key_altCode), CODE_UNSPECIFIED);
final int altCode = StringUtils.toUpperCaseOfCodeForLocale(
altCodeInAttr, needsToUpperCase, locale);
mOptionalAttributes = OptionalAttributes.newInstance(outputText, altCode,
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java b/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java
index 209966606..48ba8e051 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeySpecParser.java
@@ -184,7 +184,7 @@ public final class KeySpecParser {
return (StringUtils.codePointCount(label) == 1) ? null : label;
}
- public static int getCode(final String keySpec, final KeyboardCodesSet codesSet) {
+ public static int getCode(final String keySpec) {
if (keySpec == null) {
// TODO: Throw {@link KeySpecParserError} once Key.keyLabel attribute becomes mandatory.
return CODE_UNSPECIFIED;
@@ -192,7 +192,7 @@ public final class KeySpecParser {
final int labelEnd = indexOfLabelEnd(keySpec);
if (hasCode(keySpec, labelEnd)) {
checkDoubleLabelEnd(keySpec, labelEnd);
- return parseCode(getAfterLabelEnd(keySpec, labelEnd), codesSet, CODE_UNSPECIFIED);
+ return parseCode(getAfterLabelEnd(keySpec, labelEnd), CODE_UNSPECIFIED);
}
final String outputText = getOutputTextInternal(keySpec, labelEnd);
if (outputText != null) {
@@ -211,13 +211,12 @@ public final class KeySpecParser {
return (StringUtils.codePointCount(label) == 1) ? label.codePointAt(0) : CODE_OUTPUT_TEXT;
}
- public static int parseCode(final String text, final KeyboardCodesSet codesSet,
- final int defaultCode) {
+ public static int parseCode(final String text, final int defaultCode) {
if (text == null) {
return defaultCode;
}
if (text.startsWith(KeyboardCodesSet.PREFIX_CODE)) {
- return codesSet.getCode(text.substring(KeyboardCodesSet.PREFIX_CODE.length()));
+ return KeyboardCodesSet.getCode(text.substring(KeyboardCodesSet.PREFIX_CODE.length()));
}
// This is a workaround to have a key that has a supplementary code point. We can't put a
// string in resource as a XML entity of a supplementary code point or a surrogate pair.
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardBuilder.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardBuilder.java
index 340d184b6..81a8e7196 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardBuilder.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardBuilder.java
@@ -279,7 +279,6 @@ public class KeyboardBuilder<KP extends KeyboardParams> {
params.mThemeId = keyboardAttr.getInt(R.styleable.Keyboard_themeId, 0);
params.mIconsSet.loadIcons(keyboardAttr);
final Locale locale = params.mId.mLocale;
- params.mCodesSet.setLocale(locale);
params.mTextsSet.setLocale(locale);
final RunInLocale<Void> job = new RunInLocale<Void>() {
@Override
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardCodesSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardCodesSet.java
index 9f873ed9c..06da5719b 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardCodesSet.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardCodesSet.java
@@ -18,26 +18,22 @@ package com.android.inputmethod.keyboard.internal;
import com.android.inputmethod.latin.Constants;
import com.android.inputmethod.latin.utils.CollectionUtils;
-import com.android.inputmethod.latin.utils.SubtypeLocaleUtils;
import java.util.HashMap;
-import java.util.Locale;
public final class KeyboardCodesSet {
public static final String PREFIX_CODE = "!code/";
private static final HashMap<String, Integer> sNameToIdMap = CollectionUtils.newHashMap();
- private int[] mCodes = DEFAULT;
-
- public void setLocale(final Locale locale) {
- mCodes = SubtypeLocaleUtils.isRtlLanguage(locale) ? RTL : DEFAULT;
+ private KeyboardCodesSet() {
+ // This utility class is not publicly instantiable.
}
- public int getCode(final String name) {
+ public static int getCode(final String name) {
Integer id = sNameToIdMap.get(name);
if (id == null) throw new RuntimeException("Unknown key code: " + name);
- return mCodes[id];
+ return DEFAULT[id];
}
private static final String[] ID_TO_NAME = {
@@ -58,26 +54,8 @@ public final class KeyboardCodesSet {
"key_emoji",
"key_alpha_from_emoji",
"key_unspecified",
- "key_left_parenthesis",
- "key_right_parenthesis",
- "key_less_than",
- "key_greater_than",
- "key_left_square_bracket",
- "key_right_square_bracket",
- "key_left_curly_bracket",
- "key_right_curly_bracket",
};
- private static final int CODE_LEFT_PARENTHESIS = '(';
- private static final int CODE_RIGHT_PARENTHESIS = ')';
- private static final int CODE_LESS_THAN_SIGN = '<';
- private static final int CODE_GREATER_THAN_SIGN = '>';
- private static final int CODE_LEFT_SQUARE_BRACKET = '[';
- private static final int CODE_RIGHT_SQUARE_BRACKET = ']';
- private static final int CODE_LEFT_CURLY_BRACKET = '{';
- private static final int CODE_RIGHT_CURLY_BRACKET = '}';
-
- // This array should be aligned with the array RTL below.
private static final int[] DEFAULT = {
Constants.CODE_TAB,
Constants.CODE_ENTER,
@@ -96,48 +74,9 @@ public final class KeyboardCodesSet {
Constants.CODE_EMOJI,
Constants.CODE_ALPHA_FROM_EMOJI,
Constants.CODE_UNSPECIFIED,
- CODE_LEFT_PARENTHESIS,
- CODE_RIGHT_PARENTHESIS,
- CODE_LESS_THAN_SIGN,
- CODE_GREATER_THAN_SIGN,
- CODE_LEFT_SQUARE_BRACKET,
- CODE_RIGHT_SQUARE_BRACKET,
- CODE_LEFT_CURLY_BRACKET,
- CODE_RIGHT_CURLY_BRACKET,
- };
-
- private static final int[] RTL = {
- DEFAULT[0],
- DEFAULT[1],
- DEFAULT[2],
- DEFAULT[3],
- DEFAULT[4],
- DEFAULT[5],
- DEFAULT[6],
- DEFAULT[7],
- DEFAULT[8],
- DEFAULT[9],
- DEFAULT[10],
- DEFAULT[11],
- DEFAULT[12],
- DEFAULT[13],
- DEFAULT[14],
- DEFAULT[15],
- DEFAULT[16],
- CODE_RIGHT_PARENTHESIS,
- CODE_LEFT_PARENTHESIS,
- CODE_GREATER_THAN_SIGN,
- CODE_LESS_THAN_SIGN,
- CODE_RIGHT_SQUARE_BRACKET,
- CODE_LEFT_SQUARE_BRACKET,
- CODE_RIGHT_CURLY_BRACKET,
- CODE_LEFT_CURLY_BRACKET,
};
static {
- if (DEFAULT.length != RTL.length || DEFAULT.length != ID_TO_NAME.length) {
- throw new RuntimeException("Internal inconsistency");
- }
for (int i = 0; i < ID_TO_NAME.length; i++) {
sNameToIdMap.put(ID_TO_NAME[i], i);
}
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardParams.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardParams.java
index d32bb7581..153391eed 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardParams.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardParams.java
@@ -62,7 +62,6 @@ public class KeyboardParams {
public final ArrayList<Key> mShiftKeys = CollectionUtils.newArrayList();
public final ArrayList<Key> mAltCodeKeysWhileTyping = CollectionUtils.newArrayList();
public final KeyboardIconsSet mIconsSet = new KeyboardIconsSet();
- public final KeyboardCodesSet mCodesSet = new KeyboardCodesSet();
public final KeyboardTextsSet mTextsSet = new KeyboardTextsSet();
public final KeyStylesSet mKeyStyles = new KeyStylesSet(mTextsSet);
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsTable.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsTable.java
index a9eeeb0ab..1e021e58e 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsTable.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsTable.java
@@ -63,317 +63,359 @@ public final class KeyboardTextsTable {
}
private static final String[] NAMES = {
- /* 0 */ "more_keys_for_a",
- /* 1 */ "more_keys_for_e",
- /* 2 */ "more_keys_for_i",
- /* 3 */ "more_keys_for_o",
- /* 4 */ "more_keys_for_u",
- /* 5 */ "more_keys_for_s",
- /* 6 */ "more_keys_for_n",
- /* 7 */ "more_keys_for_c",
- /* 8 */ "more_keys_for_y",
- /* 9 */ "more_keys_for_d",
- /* 10 */ "more_keys_for_r",
- /* 11 */ "more_keys_for_t",
- /* 12 */ "more_keys_for_z",
- /* 13 */ "more_keys_for_k",
- /* 14 */ "more_keys_for_l",
- /* 15 */ "more_keys_for_g",
- /* 16 */ "more_keys_for_v",
- /* 17 */ "more_keys_for_h",
- /* 18 */ "more_keys_for_j",
- /* 19 */ "more_keys_for_w",
- /* 20 */ "keylabel_for_nordic_row1_11",
- /* 21 */ "keylabel_for_nordic_row2_10",
- /* 22 */ "keylabel_for_nordic_row2_11",
- /* 23 */ "more_keys_for_nordic_row2_10",
- /* 24 */ "more_keys_for_nordic_row2_11",
- /* 25 */ "keylabel_for_east_slavic_row1_9",
- /* 26 */ "keylabel_for_east_slavic_row1_12",
- /* 27 */ "keylabel_for_east_slavic_row2_1",
- /* 28 */ "keylabel_for_east_slavic_row2_11",
- /* 29 */ "keylabel_for_east_slavic_row3_5",
- /* 30 */ "more_keys_for_cyrillic_u",
- /* 31 */ "more_keys_for_cyrillic_ka",
- /* 32 */ "more_keys_for_cyrillic_en",
- /* 33 */ "more_keys_for_cyrillic_ghe",
- /* 34 */ "more_keys_for_east_slavic_row2_1",
- /* 35 */ "more_keys_for_cyrillic_a",
- /* 36 */ "more_keys_for_cyrillic_o",
- /* 37 */ "more_keys_for_cyrillic_soft_sign",
- /* 38 */ "more_keys_for_east_slavic_row2_11",
- /* 39 */ "keylabel_for_south_slavic_row1_6",
- /* 40 */ "keylabel_for_south_slavic_row2_11",
- /* 41 */ "keylabel_for_south_slavic_row3_1",
- /* 42 */ "keylabel_for_south_slavic_row3_8",
- /* 43 */ "more_keys_for_cyrillic_ie",
- /* 44 */ "more_keys_for_cyrillic_i",
- /* 45 */ "keylabel_for_swiss_row1_11",
- /* 46 */ "keylabel_for_swiss_row2_10",
- /* 47 */ "keylabel_for_swiss_row2_11",
- /* 48 */ "more_keys_for_swiss_row1_11",
- /* 49 */ "more_keys_for_swiss_row2_10",
- /* 50 */ "more_keys_for_swiss_row2_11",
- /* 51 */ "label_to_alpha_key",
- /* 52 */ "single_quotes",
- /* 53 */ "double_quotes",
- /* 54 */ "single_angle_quotes",
- /* 55 */ "double_angle_quotes",
- /* 56 */ "more_keys_for_currency_dollar",
- /* 57 */ "keylabel_for_currency",
- /* 58 */ "more_keys_for_currency",
- /* 59 */ "more_keys_for_punctuation",
- /* 60 */ "more_keys_for_tablet_punctuation",
- /* 61 */ "keylabel_for_spanish_row2_10",
- /* 62 */ "more_keys_for_star",
- /* 63 */ "more_keys_for_bullet",
- /* 64 */ "more_keys_for_plus",
- /* 65 */ "more_keys_for_left_parenthesis",
- /* 66 */ "more_keys_for_right_parenthesis",
- /* 67 */ "more_keys_for_less_than",
- /* 68 */ "more_keys_for_greater_than",
- /* 69 */ "more_keys_for_arabic_diacritics",
- /* 70 */ "keylabel_for_symbols_1",
- /* 71 */ "keylabel_for_symbols_2",
- /* 72 */ "keylabel_for_symbols_3",
- /* 73 */ "keylabel_for_symbols_4",
- /* 74 */ "keylabel_for_symbols_5",
- /* 75 */ "keylabel_for_symbols_6",
- /* 76 */ "keylabel_for_symbols_7",
- /* 77 */ "keylabel_for_symbols_8",
- /* 78 */ "keylabel_for_symbols_9",
- /* 79 */ "keylabel_for_symbols_0",
- /* 80 */ "label_to_symbol_key",
- /* 81 */ "label_to_symbol_with_microphone_key",
- /* 82 */ "additional_more_keys_for_symbols_1",
- /* 83 */ "additional_more_keys_for_symbols_2",
- /* 84 */ "additional_more_keys_for_symbols_3",
- /* 85 */ "additional_more_keys_for_symbols_4",
- /* 86 */ "additional_more_keys_for_symbols_5",
- /* 87 */ "additional_more_keys_for_symbols_6",
- /* 88 */ "additional_more_keys_for_symbols_7",
- /* 89 */ "additional_more_keys_for_symbols_8",
- /* 90 */ "additional_more_keys_for_symbols_9",
- /* 91 */ "additional_more_keys_for_symbols_0",
- /* 92 */ "more_keys_for_symbols_1",
- /* 93 */ "more_keys_for_symbols_2",
- /* 94 */ "more_keys_for_symbols_3",
- /* 95 */ "more_keys_for_symbols_4",
- /* 96 */ "more_keys_for_symbols_5",
- /* 97 */ "more_keys_for_symbols_6",
- /* 98 */ "more_keys_for_symbols_7",
- /* 99 */ "more_keys_for_symbols_8",
- /* 100 */ "more_keys_for_symbols_9",
- /* 101 */ "more_keys_for_symbols_0",
- /* 102 */ "keylabel_for_comma",
- /* 103 */ "more_keys_for_comma",
- /* 104 */ "keylabel_for_tablet_comma",
- /* 105 */ "keyhintlabel_for_tablet_comma",
- /* 106 */ "more_keys_for_tablet_comma",
- /* 107 */ "keylabel_for_period",
- /* 108 */ "keyhintlabel_for_period",
- /* 109 */ "more_keys_for_period",
- /* 110 */ "keylabel_for_tablet_period",
- /* 111 */ "keyhintlabel_for_tablet_period",
- /* 112 */ "more_keys_for_tablet_period",
- /* 113 */ "keylabel_for_symbols_question",
- /* 114 */ "keylabel_for_symbols_semicolon",
- /* 115 */ "keylabel_for_symbols_percent",
- /* 116 */ "more_keys_for_exclamation",
- /* 117 */ "more_keys_for_question",
- /* 118 */ "more_keys_for_symbols_semicolon",
- /* 119 */ "more_keys_for_symbols_percent",
- /* 120 */ "more_keys_for_q",
- /* 121 */ "more_keys_for_x",
- /* 122 */ "keylabel_for_q",
- /* 123 */ "keylabel_for_w",
- /* 124 */ "keylabel_for_y",
- /* 125 */ "keylabel_for_x",
- /* 126 */ "more_keys_for_am_pm",
- /* 127 */ "settings_as_more_key",
- /* 128 */ "shortcut_as_more_key",
- /* 129 */ "action_next_as_more_key",
- /* 130 */ "action_previous_as_more_key",
- /* 131 */ "label_to_more_symbol_key",
- /* 132 */ "label_to_more_symbol_for_tablet_key",
- /* 133 */ "label_tab_key",
- /* 134 */ "label_to_phone_numeric_key",
- /* 135 */ "label_to_phone_symbols_key",
- /* 136 */ "label_time_am",
- /* 137 */ "label_time_pm",
- /* 138 */ "keylabel_for_popular_domain",
- /* 139 */ "more_keys_for_popular_domain",
- /* 140 */ "single_laqm_raqm",
- /* 141 */ "single_laqm_raqm_rtl",
- /* 142 */ "single_raqm_laqm",
- /* 143 */ "double_laqm_raqm",
- /* 144 */ "double_laqm_raqm_rtl",
- /* 145 */ "double_raqm_laqm",
- /* 146 */ "single_lqm_rqm",
- /* 147 */ "single_9qm_lqm",
- /* 148 */ "single_9qm_rqm",
- /* 149 */ "double_lqm_rqm",
- /* 150 */ "double_9qm_lqm",
- /* 151 */ "double_9qm_rqm",
- /* 152 */ "more_keys_for_single_quote",
- /* 153 */ "more_keys_for_double_quote",
- /* 154 */ "more_keys_for_tablet_double_quote",
- /* 155 */ "emoji_key_as_more_key",
+ // /* index:histogram */ "name",
+ /* 0:30 */ "more_keys_for_a",
+ /* 1:30 */ "more_keys_for_o",
+ /* 2:28 */ "more_keys_for_u",
+ /* 3:27 */ "more_keys_for_e",
+ /* 4:26 */ "more_keys_for_i",
+ /* 5:23 */ "double_quotes",
+ /* 6:22 */ "single_quotes",
+ /* 7:21 */ "more_keys_for_c",
+ /* 8:20 */ "more_keys_for_s",
+ /* 9:20 */ "more_keys_for_n",
+ /* 10:20 */ "label_to_alpha_key",
+ /* 11:15 */ "more_keys_for_y",
+ /* 12:13 */ "more_keys_for_d",
+ /* 13:12 */ "more_keys_for_z",
+ /* 14:10 */ "more_keys_for_t",
+ /* 15:10 */ "more_keys_for_l",
+ /* 16: 9 */ "more_keys_for_g",
+ /* 17: 9 */ "single_angle_quotes",
+ /* 18: 9 */ "double_angle_quotes",
+ /* 19: 9 */ "keylabel_for_currency",
+ /* 20: 8 */ "more_keys_for_r",
+ /* 21: 6 */ "more_keys_for_k",
+ /* 22: 6 */ "keylabel_for_nordic_row1_11",
+ /* 23: 6 */ "keylabel_for_nordic_row2_10",
+ /* 24: 6 */ "keylabel_for_nordic_row2_11",
+ /* 25: 6 */ "more_keys_for_cyrillic_ie",
+ /* 26: 5 */ "more_keys_for_nordic_row2_10",
+ /* 27: 5 */ "keylabel_for_east_slavic_row1_9",
+ /* 28: 5 */ "keylabel_for_east_slavic_row1_12",
+ /* 29: 5 */ "keylabel_for_east_slavic_row2_1",
+ /* 30: 5 */ "keylabel_for_east_slavic_row2_11",
+ /* 31: 5 */ "keylabel_for_east_slavic_row3_5",
+ /* 32: 5 */ "more_keys_for_cyrillic_soft_sign",
+ /* 33: 5 */ "more_keys_for_punctuation",
+ /* 34: 4 */ "more_keys_for_nordic_row2_11",
+ /* 35: 4 */ "keylabel_for_symbols_1",
+ /* 36: 4 */ "keylabel_for_symbols_2",
+ /* 37: 4 */ "keylabel_for_symbols_3",
+ /* 38: 4 */ "keylabel_for_symbols_4",
+ /* 39: 4 */ "keylabel_for_symbols_5",
+ /* 40: 4 */ "keylabel_for_symbols_6",
+ /* 41: 4 */ "keylabel_for_symbols_7",
+ /* 42: 4 */ "keylabel_for_symbols_8",
+ /* 43: 4 */ "keylabel_for_symbols_9",
+ /* 44: 4 */ "keylabel_for_symbols_0",
+ /* 45: 4 */ "label_to_symbol_key",
+ /* 46: 4 */ "label_to_symbol_with_microphone_key",
+ /* 47: 4 */ "additional_more_keys_for_symbols_1",
+ /* 48: 4 */ "additional_more_keys_for_symbols_2",
+ /* 49: 4 */ "additional_more_keys_for_symbols_3",
+ /* 50: 4 */ "additional_more_keys_for_symbols_4",
+ /* 51: 4 */ "additional_more_keys_for_symbols_5",
+ /* 52: 4 */ "additional_more_keys_for_symbols_6",
+ /* 53: 4 */ "additional_more_keys_for_symbols_7",
+ /* 54: 4 */ "additional_more_keys_for_symbols_8",
+ /* 55: 4 */ "additional_more_keys_for_symbols_9",
+ /* 56: 4 */ "additional_more_keys_for_symbols_0",
+ /* 57: 3 */ "more_keys_for_star",
+ /* 58: 3 */ "keyspec_left_parenthesis",
+ /* 59: 3 */ "keyspec_right_parenthesis",
+ /* 60: 3 */ "keyspec_left_square_bracket",
+ /* 61: 3 */ "keyspec_right_square_bracket",
+ /* 62: 3 */ "keyspec_left_curly_bracket",
+ /* 63: 3 */ "keyspec_right_curly_bracket",
+ /* 64: 3 */ "keyspec_less_than",
+ /* 65: 3 */ "keyspec_greater_than",
+ /* 66: 3 */ "keyspec_less_than_equal",
+ /* 67: 3 */ "keyspec_greater_than_equal",
+ /* 68: 3 */ "keyspec_left_double_angle_quote",
+ /* 69: 3 */ "keyspec_right_double_angle_quote",
+ /* 70: 3 */ "keyspec_left_single_angle_quote",
+ /* 71: 3 */ "keyspec_right_single_angle_quote",
+ /* 72: 3 */ "keylabel_for_tablet_comma",
+ /* 73: 3 */ "more_keys_for_tablet_period",
+ /* 74: 3 */ "more_keys_for_question",
+ /* 75: 2 */ "more_keys_for_h",
+ /* 76: 2 */ "more_keys_for_w",
+ /* 77: 2 */ "more_keys_for_cyrillic_u",
+ /* 78: 2 */ "more_keys_for_cyrillic_en",
+ /* 79: 2 */ "more_keys_for_cyrillic_ghe",
+ /* 80: 2 */ "more_keys_for_east_slavic_row2_1",
+ /* 81: 2 */ "more_keys_for_cyrillic_o",
+ /* 82: 2 */ "keylabel_for_south_slavic_row1_6",
+ /* 83: 2 */ "keylabel_for_south_slavic_row2_11",
+ /* 84: 2 */ "keylabel_for_south_slavic_row3_1",
+ /* 85: 2 */ "keylabel_for_south_slavic_row3_8",
+ /* 86: 2 */ "more_keys_for_cyrillic_i",
+ /* 87: 2 */ "keylabel_for_swiss_row1_11",
+ /* 88: 2 */ "keylabel_for_swiss_row2_10",
+ /* 89: 2 */ "keylabel_for_swiss_row2_11",
+ /* 90: 2 */ "more_keys_for_swiss_row1_11",
+ /* 91: 2 */ "more_keys_for_swiss_row2_10",
+ /* 92: 2 */ "more_keys_for_swiss_row2_11",
+ /* 93: 2 */ "keylabel_for_spanish_row2_10",
+ /* 94: 2 */ "more_keys_for_bullet",
+ /* 95: 2 */ "more_keys_for_left_parenthesis",
+ /* 96: 2 */ "more_keys_for_right_parenthesis",
+ /* 97: 2 */ "more_keys_for_arabic_diacritics",
+ /* 98: 2 */ "keylabel_for_comma",
+ /* 99: 2 */ "more_keys_for_comma",
+ /* 100: 2 */ "keyhintlabel_for_tablet_comma",
+ /* 101: 2 */ "more_keys_for_tablet_comma",
+ /* 102: 2 */ "keyhintlabel_for_period",
+ /* 103: 2 */ "more_keys_for_period",
+ /* 104: 2 */ "keyhintlabel_for_tablet_period",
+ /* 105: 2 */ "keylabel_for_symbols_question",
+ /* 106: 2 */ "keylabel_for_symbols_semicolon",
+ /* 107: 2 */ "keylabel_for_symbols_percent",
+ /* 108: 2 */ "more_keys_for_symbols_semicolon",
+ /* 109: 2 */ "more_keys_for_symbols_percent",
+ /* 110: 1 */ "more_keys_for_v",
+ /* 111: 1 */ "more_keys_for_j",
+ /* 112: 1 */ "more_keys_for_cyrillic_ka",
+ /* 113: 1 */ "more_keys_for_cyrillic_a",
+ /* 114: 1 */ "more_keys_for_east_slavic_row2_11",
+ /* 115: 1 */ "more_keys_for_currency_dollar",
+ /* 116: 1 */ "more_keys_for_tablet_punctuation",
+ /* 117: 1 */ "more_keys_for_plus",
+ /* 118: 1 */ "more_keys_for_less_than",
+ /* 119: 1 */ "more_keys_for_greater_than",
+ /* 120: 1 */ "keylabel_for_period",
+ /* 121: 1 */ "keylabel_for_tablet_period",
+ /* 122: 1 */ "more_keys_for_exclamation",
+ /* 123: 1 */ "more_keys_for_q",
+ /* 124: 1 */ "more_keys_for_x",
+ /* 125: 1 */ "keylabel_for_q",
+ /* 126: 1 */ "keylabel_for_w",
+ /* 127: 1 */ "keylabel_for_y",
+ /* 128: 1 */ "keylabel_for_x",
+ /* 129: 0 */ "more_keys_for_currency",
+ /* 130: 0 */ "more_keys_for_symbols_1",
+ /* 131: 0 */ "more_keys_for_symbols_2",
+ /* 132: 0 */ "more_keys_for_symbols_3",
+ /* 133: 0 */ "more_keys_for_symbols_4",
+ /* 134: 0 */ "more_keys_for_symbols_5",
+ /* 135: 0 */ "more_keys_for_symbols_6",
+ /* 136: 0 */ "more_keys_for_symbols_7",
+ /* 137: 0 */ "more_keys_for_symbols_8",
+ /* 138: 0 */ "more_keys_for_symbols_9",
+ /* 139: 0 */ "more_keys_for_symbols_0",
+ /* 140: 0 */ "more_keys_for_am_pm",
+ /* 141: 0 */ "settings_as_more_key",
+ /* 142: 0 */ "shortcut_as_more_key",
+ /* 143: 0 */ "action_next_as_more_key",
+ /* 144: 0 */ "action_previous_as_more_key",
+ /* 145: 0 */ "label_to_more_symbol_key",
+ /* 146: 0 */ "label_to_more_symbol_for_tablet_key",
+ /* 147: 0 */ "label_tab_key",
+ /* 148: 0 */ "label_to_phone_numeric_key",
+ /* 149: 0 */ "label_to_phone_symbols_key",
+ /* 150: 0 */ "label_time_am",
+ /* 151: 0 */ "label_time_pm",
+ /* 152: 0 */ "keylabel_for_popular_domain",
+ /* 153: 0 */ "more_keys_for_popular_domain",
+ /* 154: 0 */ "keyspecs_for_left_parenthesis_more_keys",
+ /* 155: 0 */ "keyspecs_for_right_parenthesis_more_keys",
+ /* 156: 0 */ "single_laqm_raqm",
+ /* 157: 0 */ "single_raqm_laqm",
+ /* 158: 0 */ "double_laqm_raqm",
+ /* 159: 0 */ "double_raqm_laqm",
+ /* 160: 0 */ "single_lqm_rqm",
+ /* 161: 0 */ "single_9qm_lqm",
+ /* 162: 0 */ "single_9qm_rqm",
+ /* 163: 0 */ "single_rqm_9qm",
+ /* 164: 0 */ "double_lqm_rqm",
+ /* 165: 0 */ "double_9qm_lqm",
+ /* 166: 0 */ "double_9qm_rqm",
+ /* 167: 0 */ "double_rqm_9qm",
+ /* 168: 0 */ "more_keys_for_single_quote",
+ /* 169: 0 */ "more_keys_for_double_quote",
+ /* 170: 0 */ "more_keys_for_tablet_double_quote",
+ /* 171: 0 */ "emoji_key_as_more_key",
};
private static final String EMPTY = "";
/* Default texts */
private static final String[] LANGUAGE_DEFAULT = {
- /* 0~ */
- 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, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
- EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_lqm_rqm",
+ /* single_quotes */ "!text/single_lqm_rqm",
+ /* more_keys_for_c ~ */
+ EMPTY, EMPTY, EMPTY,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
- /* 51 */ "ABC",
- /* 52 */ "!text/single_lqm_rqm",
- /* 53 */ "!text/double_lqm_rqm",
- /* 54 */ "!text/single_laqm_raqm",
- /* 55 */ "!text/double_laqm_raqm",
- // U+00A2: "¢" CENT SIGN
- // U+00A3: "£" POUND SIGN
- // U+20AC: "€" EURO SIGN
- // U+00A5: "¥" YEN SIGN
- // U+20B1: "₱" PESO SIGN
- /* 56 */ "\u00A2,\u00A3,\u20AC,\u00A5,\u20B1",
- /* 57 */ "$",
- /* 58 */ "$,\u00A2,\u20AC,\u00A3,\u00A5,\u20B1",
- /* 59 */ "!fixedColumnOrder!8,;,/,(,),#,!,\\,,?,&,\\%,+,\",-,:,',@",
- /* 60 */ "!fixedColumnOrder!7,;,/,(,),#,',\\,,&,\\%,+,\",-,:,@",
- // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- /* 61 */ "\u00F1",
+ /* label_to_alpha_key */ "ABC",
+ /* more_keys_for_y ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ more_keys_for_g */
+ /* single_angle_quotes */ "!text/single_laqm_raqm",
+ /* double_angle_quotes */ "!text/double_laqm_raqm",
+ /* keylabel_for_currency */ "$",
+ /* more_keys_for_r ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ more_keys_for_cyrillic_soft_sign */
+ /* more_keys_for_punctuation */ "!fixedColumnOrder!8,;,/,!text/keyspec_left_parenthesis,!text/keyspec_right_parenthesis,#,!,\\,,?,&,\\%,+,\",-,:,',@",
+ /* more_keys_for_nordic_row2_11 */ EMPTY,
+ /* keylabel_for_symbols_1 */ "1",
+ /* keylabel_for_symbols_2 */ "2",
+ /* keylabel_for_symbols_3 */ "3",
+ /* keylabel_for_symbols_4 */ "4",
+ /* keylabel_for_symbols_5 */ "5",
+ /* keylabel_for_symbols_6 */ "6",
+ /* keylabel_for_symbols_7 */ "7",
+ /* keylabel_for_symbols_8 */ "8",
+ /* keylabel_for_symbols_9 */ "9",
+ /* keylabel_for_symbols_0 */ "0",
+ // Label for "switch to symbols" key.
+ /* label_to_symbol_key */ "?123",
+ // Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
+ // part because it'll be appended by the code.
+ /* label_to_symbol_with_microphone_key */ "123",
+ /* additional_more_keys_for_symbols_1 ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ additional_more_keys_for_symbols_0 */
// U+2020: "†" DAGGER
// U+2021: "‡" DOUBLE DAGGER
// U+2605: "★" BLACK STAR
- /* 62 */ "\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
- /* 63 */ "\u266A,\u2665,\u2660,\u2666,\u2663",
- // U+00B1: "±" PLUS-MINUS SIGN
- /* 64 */ "\u00B1",
+ /* more_keys_for_star */ "\u2020,\u2021,\u2605",
// The all letters need to be mirrored are found at
// http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
- /* 65 */ "!fixedColumnOrder!3,<,{,[",
- /* 66 */ "!fixedColumnOrder!3,>,},]",
// 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
- /* 67 */ "!fixedColumnOrder!3,\u2039,\u2264,\u00AB",
- /* 68 */ "!fixedColumnOrder!3,\u203A,\u2265,\u00BB",
- /* 69 */ EMPTY,
- /* 70 */ "1",
- /* 71 */ "2",
- /* 72 */ "3",
- /* 73 */ "4",
- /* 74 */ "5",
- /* 75 */ "6",
- /* 76 */ "7",
- /* 77 */ "8",
- /* 78 */ "9",
- /* 79 */ "0",
- // Label for "switch to symbols" key.
- /* 80 */ "?123",
- // Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
- // part because it'll be appended by the code.
- /* 81 */ "123",
- /* 82~ */
- EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
- /* ~91 */
+ /* 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",
+ /* keylabel_for_tablet_comma */ ",",
+ /* more_keys_for_tablet_period */ "!text/more_keys_for_tablet_punctuation",
+ // U+00BF: "¿" INVERTED QUESTION MARK
+ /* more_keys_for_question */ "\u00BF",
+ /* more_keys_for_h ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ more_keys_for_swiss_row2_11 */
+ // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
+ /* keylabel_for_spanish_row2_10 */ "\u00F1",
+ // U+266A: "♪" EIGHTH NOTE
+ // U+2665: "♥" BLACK HEART SUIT
+ // U+2660: "♠" BLACK SPADE SUIT
+ // U+2666: "♦" BLACK DIAMOND SUIT
+ // U+2663: "♣" BLACK CLUB SUIT
+ /* more_keys_for_bullet */ "\u266A,\u2665,\u2660,\u2666,\u2663",
+ /* more_keys_for_left_parenthesis */ "!fixedColumnOrder!3,!text/keyspecs_for_left_parenthesis_more_keys",
+ /* more_keys_for_right_parenthesis */ "!fixedColumnOrder!3,!text/keyspecs_for_right_parenthesis_more_keys",
+ /* more_keys_for_arabic_diacritics */ EMPTY,
+ // Comma key
+ /* keylabel_for_comma */ ",",
+ /* more_keys_for_comma ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ keyhintlabel_for_period */
+ /* more_keys_for_period */ "!text/more_keys_for_punctuation",
+ /* keyhintlabel_for_tablet_period */ EMPTY,
+ /* keylabel_for_symbols_question */ "?",
+ /* keylabel_for_symbols_semicolon */ ";",
+ /* keylabel_for_symbols_percent */ "%",
+ /* more_keys_for_symbols_semicolon */ EMPTY,
+ // U+2030: "‰" PER MILLE SIGN
+ /* more_keys_for_symbols_percent */ "\u2030",
+ /* more_keys_for_v ~ */
+ EMPTY, EMPTY, EMPTY, EMPTY, EMPTY,
+ /* ~ more_keys_for_east_slavic_row2_11 */
+ // U+00A2: "¢" CENT SIGN
+ // U+00A3: "£" POUND SIGN
+ // U+20AC: "€" EURO SIGN
+ // U+00A5: "¥" YEN SIGN
+ // U+20B1: "₱" PESO SIGN
+ /* more_keys_for_currency_dollar */ "\u00A2,\u00A3,\u20AC,\u00A5,\u20B1",
+ /* more_keys_for_tablet_punctuation */ "!fixedColumnOrder!7,;,/,!text/keyspec_left_parenthesis,!text/keyspec_right_parenthesis,#,',\\,,&,\\%,+,\",-,:,@",
+ // U+00B1: "±" PLUS-MINUS SIGN
+ /* more_keys_for_plus */ "\u00B1",
+ /* more_keys_for_less_than */ "!fixedColumnOrder!3,!text/keyspec_left_single_angle_quote,!text/keyspec_less_than_equal,!text/keyspec_left_double_angle_quote",
+ /* more_keys_for_greater_than */ "!fixedColumnOrder!3,!text/keyspec_right_single_angle_quote,!text/keyspec_greater_than_equal,!text/keyspec_right_double_angle_quote",
+ // Period key
+ /* keylabel_for_period */ ".",
+ /* keylabel_for_tablet_period */ ".",
+ // U+00A1: "¡" INVERTED EXCLAMATION MARK
+ /* more_keys_for_exclamation */ "\u00A1",
+ /* more_keys_for_q */ EMPTY,
+ /* more_keys_for_x */ EMPTY,
+ /* keylabel_for_q */ "q",
+ /* keylabel_for_w */ "w",
+ /* keylabel_for_y */ "y",
+ /* keylabel_for_x */ "x",
+ /* more_keys_for_currency */ "$,\u00A2,\u20AC,\u00A3,\u00A5,\u20B1",
// 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
- /* 92 */ "\u00B9,\u00BD,\u2153,\u00BC,\u215B",
+ /* more_keys_for_symbols_1 */ "\u00B9,\u00BD,\u2153,\u00BC,\u215B",
// U+00B2: "²" SUPERSCRIPT TWO
// U+2154: "⅔" VULGAR FRACTION TWO THIRDS
- /* 93 */ "\u00B2,\u2154",
+ /* more_keys_for_symbols_2 */ "\u00B2,\u2154",
// U+00B3: "³" SUPERSCRIPT THREE
// U+00BE: "¾" VULGAR FRACTION THREE QUARTERS
// U+215C: "⅜" VULGAR FRACTION THREE EIGHTHS
- /* 94 */ "\u00B3,\u00BE,\u215C",
+ /* more_keys_for_symbols_3 */ "\u00B3,\u00BE,\u215C",
// U+2074: "⁴" SUPERSCRIPT FOUR
- /* 95 */ "\u2074",
+ /* more_keys_for_symbols_4 */ "\u2074",
// U+215D: "⅝" VULGAR FRACTION FIVE EIGHTHS
- /* 96 */ "\u215D",
- /* 97 */ EMPTY,
+ /* more_keys_for_symbols_5 */ "\u215D",
+ /* more_keys_for_symbols_6 */ EMPTY,
// U+215E: "⅞" VULGAR FRACTION SEVEN EIGHTHS
- /* 98 */ "\u215E",
- /* 99 */ EMPTY,
- /* 100 */ EMPTY,
+ /* more_keys_for_symbols_7 */ "\u215E",
+ /* more_keys_for_symbols_8 */ EMPTY,
+ /* more_keys_for_symbols_9 */ EMPTY,
// U+207F: "ⁿ" SUPERSCRIPT LATIN SMALL LETTER N
// U+2205: "∅" EMPTY SET
- /* 101 */ "\u207F,\u2205",
- // Comma key
- /* 102 */ ",",
- /* 103 */ EMPTY,
- /* 104 */ ",",
- /* 105 */ EMPTY,
- /* 106 */ EMPTY,
- // Period key
- /* 107 */ ".",
- /* 108 */ EMPTY,
- /* 109 */ "!text/more_keys_for_punctuation",
- /* 110 */ ".",
- /* 111 */ EMPTY,
- /* 112 */ "!text/more_keys_for_tablet_punctuation",
- /* 113 */ "?",
- /* 114 */ ";",
- /* 115 */ "%",
- // U+00A1: "¡" INVERTED EXCLAMATION MARK
- /* 116 */ "\u00A1",
- // U+00BF: "¿" INVERTED QUESTION MARK
- /* 117 */ "\u00BF",
- /* 118 */ EMPTY,
- // U+2030: "‰" PER MILLE SIGN
- /* 119 */ "\u2030",
- /* 120 */ EMPTY,
- /* 121 */ EMPTY,
- /* 122 */ "q",
- /* 123 */ "w",
- /* 124 */ "y",
- /* 125 */ "x",
- /* 126 */ "!fixedColumnOrder!2,!hasLabels!,!text/label_time_am,!text/label_time_pm",
- /* 127 */ "!icon/settings_key|!code/key_settings",
- /* 128 */ "!icon/shortcut_key|!code/key_shortcut",
- /* 129 */ "!hasLabels!,!text/label_next_key|!code/key_action_next",
- /* 130 */ "!hasLabels!,!text/label_previous_key|!code/key_action_previous",
+ /* more_keys_for_symbols_0 */ "\u207F,\u2205",
+ /* more_keys_for_am_pm */ "!fixedColumnOrder!2,!hasLabels!,!text/label_time_am,!text/label_time_pm",
+ /* settings_as_more_key */ "!icon/settings_key|!code/key_settings",
+ /* shortcut_as_more_key */ "!icon/shortcut_key|!code/key_shortcut",
+ /* action_next_as_more_key */ "!hasLabels!,!text/label_next_key|!code/key_action_next",
+ /* action_previous_as_more_key */ "!hasLabels!,!text/label_previous_key|!code/key_action_previous",
// Label for "switch to more symbol" modifier key ("= \ <"). Must be short to fit on key!
- /* 131 */ "= \\\\ <",
+ /* label_to_more_symbol_key */ "= \\\\ <",
// Label for "switch to more symbol" modifier key on tablets. Must be short to fit on key!
- /* 132 */ "~ [ <",
+ /* label_to_more_symbol_for_tablet_key */ "~ [ <",
// Label for "Tab" key. Must be short to fit on key!
- /* 133 */ "Tab",
+ /* label_tab_key */ "Tab",
// Label for "switch to phone numeric" key. Must be short to fit on key!
- /* 134 */ "123",
+ /* label_to_phone_numeric_key */ "123",
// Label for "switch to phone symbols" key. Must be short to fit on key!
// U+FF0A: "*" FULLWIDTH ASTERISK
// U+FF03: "#" FULLWIDTH NUMBER SIGN
- /* 135 */ "\uFF0A\uFF03",
+ /* label_to_phone_symbols_key */ "\uFF0A\uFF03",
// Key label for "ante meridiem"
- /* 136 */ "AM",
+ /* label_time_am */ "AM",
// Key label for "post meridiem"
- /* 137 */ "PM",
- /* 138 */ ".com",
+ /* label_time_pm */ "PM",
+ /* keylabel_for_popular_domain */ ".com",
// popular web domains for the locale - most popular, displayed on the keyboard
- /* 139 */ "!hasLabels!,.net,.org,.gov,.edu",
- // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
- // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
- // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
- // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+ /* more_keys_for_popular_domain */ "!hasLabels!,.net,.org,.gov,.edu",
+ /* keyspecs_for_left_parenthesis_more_keys */ "!text/keyspec_less_than,!text/keyspec_left_curly_bracket,!text/keyspec_left_square_bracket",
+ /* keyspecs_for_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
@@ -384,32 +426,31 @@ public final class KeyboardTextsTable {
// Abbreviations are:
// laqm: LEFT-POINTING ANGLE QUOTATION MARK
// raqm: RIGHT-POINTING ANGLE QUOTATION MARK
- // rtl: Right-To-Left script order
// 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>.
- /* 140 */ "\u2039,\u203A",
- /* 141 */ "\u2039|\u203A,\u203A|\u2039",
- /* 142 */ "\u203A,\u2039",
- /* 143 */ "\u00AB,\u00BB",
- /* 144 */ "\u00AB|\u00BB,\u00BB|\u00AB",
- /* 145 */ "\u00BB,\u00AB",
+ /* 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>.
- /* 146 */ "\u201A,\u2018,\u2019",
- /* 147 */ "\u2019,\u201A,\u2018",
- /* 148 */ "\u2018,\u201A,\u2019",
- /* 149 */ "\u201E,\u201C,\u201D",
- /* 150 */ "\u201D,\u201E,\u201C",
- /* 151 */ "\u201C,\u201E,\u201D",
- /* 152 */ "!fixedColumnOrder!5,!text/single_quotes,!text/single_angle_quotes",
- /* 153 */ "!fixedColumnOrder!5,!text/double_quotes,!text/double_angle_quotes",
- /* 154 */ "!fixedColumnOrder!6,!text/double_quotes,!text/single_quotes,!text/double_angle_quotes,!text/single_angle_quotes",
- /* 155 */ "!icon/emoji_key|!code/key_emoji",
+ /* 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",
+ /* more_keys_for_single_quote */ "!fixedColumnOrder!5,!text/single_quotes,!text/single_angle_quotes",
+ /* more_keys_for_double_quote */ "!fixedColumnOrder!5,!text/double_quotes,!text/double_angle_quotes",
+ /* more_keys_for_tablet_double_quote */ "!fixedColumnOrder!6,!text/double_quotes,!text/single_quotes,!text/double_angle_quotes,!text/single_angle_quotes",
+ /* emoji_key_as_more_key */ "!icon/emoji_key|!code/key_emoji",
};
/* Language af: Afrikaans */
@@ -423,7 +464,22 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E1,\u00E2,\u00E4,\u00E0,\u00E6,\u00E3,\u00E5,\u0101",
+ /* more_keys_for_a */ "\u00E1,\u00E2,\u00E4,\u00E0,\u00E6,\u00E3,\u00E5,\u0101",
+ // 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+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
+ // U+0153: "œ" LATIN SMALL LIGATURE OE
+ // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
+ // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
+ /* more_keys_for_o */ "\u00F3,\u00F4,\u00F6,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
+ // 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
+ /* more_keys_for_u */ "\u00FA,\u00FB,\u00FC,\u00F9,\u016B",
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
// U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
// U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
@@ -431,7 +487,7 @@ public final class KeyboardTextsTable {
// U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
// U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
// U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
// U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
// U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
// U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
@@ -439,76 +495,116 @@ public final class KeyboardTextsTable {
// U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
// U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
// U+0133: "ij" LATIN SMALL LIGATURE IJ
- /* 2 */ "\u00ED,\u00EC,\u00EF,\u00EE,\u012F,\u012B,\u0133",
- // 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+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
- // U+0153: "œ" LATIN SMALL LIGATURE OE
- // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F4,\u00F6,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
- // 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
- /* 4 */ "\u00FA,\u00FB,\u00FC,\u00F9,\u016B",
- /* 5 */ null,
+ /* more_keys_for_i */ "\u00ED,\u00EC,\u00EF,\u00EE,\u012F,\u012B,\u0133",
+ /* double_quotes ~ */
+ null, null, null, null,
+ /* ~ more_keys_for_s */
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
- /* 7 */ null,
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+0133: "ij" LATIN SMALL LIGATURE IJ
- /* 8 */ "\u00FD,\u0133",
+ /* more_keys_for_y */ "\u00FD,\u0133",
};
/* Language ar: Arabic */
private static final String[] LANGUAGE_ar = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0623: "ا" ARABIC LETTER ALEF
// U+200C: ZERO WIDTH NON-JOINER
// U+0628: "ب" ARABIC LETTER BEH
// U+062C: "پ" ARABIC LETTER PEH
- /* 51 */ "\u0623\u200C\u0628\u200C\u062C",
- /* 52 */ null,
- /* 53 */ null,
- /* 54 */ "!text/single_laqm_raqm_rtl",
- /* 55 */ "!text/double_laqm_raqm_rtl",
- /* 56~ */
- null, null, null,
- /* ~58 */
- /* 59 */ "!fixedColumnOrder!8,\",\',#,-,:,!,\u060C,\u061F,@,&,\\%,+,\u061B,/,(|),)|(",
- /* 60 */ null,
- /* 61 */ null,
+ /* label_to_alpha_key */ "\u0623\u200C\u0628\u200C\u062C",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_soft_sign */
+ /* more_keys_for_punctuation */ "!fixedColumnOrder!8,\",\',#,-,:,!,\u060C,\u061F,@,&,\\%,+,\u061B,/,(|),)|(",
+ /* more_keys_for_nordic_row2_11 */ null,
+ // U+0661: "١" ARABIC-INDIC DIGIT ONE
+ /* keylabel_for_symbols_1 */ "\u0661",
+ // U+0662: "٢" ARABIC-INDIC DIGIT TWO
+ /* keylabel_for_symbols_2 */ "\u0662",
+ // U+0663: "٣" ARABIC-INDIC DIGIT THREE
+ /* keylabel_for_symbols_3 */ "\u0663",
+ // U+0664: "٤" ARABIC-INDIC DIGIT FOUR
+ /* keylabel_for_symbols_4 */ "\u0664",
+ // U+0665: "٥" ARABIC-INDIC DIGIT FIVE
+ /* keylabel_for_symbols_5 */ "\u0665",
+ // U+0666: "٦" ARABIC-INDIC DIGIT SIX
+ /* keylabel_for_symbols_6 */ "\u0666",
+ // U+0667: "٧" ARABIC-INDIC DIGIT SEVEN
+ /* keylabel_for_symbols_7 */ "\u0667",
+ // U+0668: "٨" ARABIC-INDIC DIGIT EIGHT
+ /* keylabel_for_symbols_8 */ "\u0668",
+ // U+0669: "٩" ARABIC-INDIC DIGIT NINE
+ /* keylabel_for_symbols_9 */ "\u0669",
+ // U+0660: "٠" ARABIC-INDIC DIGIT ZERO
+ /* keylabel_for_symbols_0 */ "\u0660",
+ // Label for "switch to symbols" key.
+ // U+061F: "؟" ARABIC QUESTION MARK
+ /* label_to_symbol_key */ "\u0663\u0662\u0661\u061F",
+ // Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
+ // part because it'll be appended by the code.
+ /* label_to_symbol_with_microphone_key */ "\u0663\u0662\u0661",
+ /* additional_more_keys_for_symbols_1 */ "1",
+ /* additional_more_keys_for_symbols_2 */ "2",
+ /* additional_more_keys_for_symbols_3 */ "3",
+ /* additional_more_keys_for_symbols_4 */ "4",
+ /* additional_more_keys_for_symbols_5 */ "5",
+ /* additional_more_keys_for_symbols_6 */ "6",
+ /* additional_more_keys_for_symbols_7 */ "7",
+ /* additional_more_keys_for_symbols_8 */ "8",
+ /* additional_more_keys_for_symbols_9 */ "9",
+ // U+066B: "٫" ARABIC DECIMAL SEPARATOR
+ // U+066C: "٬" ARABIC THOUSANDS SEPARATOR
+ /* additional_more_keys_for_symbols_0 */ "0,\u066B,\u066C",
// U+2605: "★" BLACK STAR
// U+066D: "٭" ARABIC FIVE POINTED STAR
- /* 62 */ "\u2605,\u066D",
- // U+266A: "♪" EIGHTH NOTE
- /* 63 */ "\u266A",
- /* 64 */ null,
- // The all letters need to be mirrored are found at
- // http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
- // U+FD3E: "﴾" ORNATE LEFT PARENTHESIS
- // U+FD3F: "﴿" ORNATE RIGHT PARENTHESIS
- /* 65 */ "!fixedColumnOrder!4,\uFD3E|\uFD3F,<|>,{|},[|]",
- /* 66 */ "!fixedColumnOrder!4,\uFD3F|\uFD3E,>|<,}|{,]|[",
+ /* more_keys_for_star */ "\u2605,\u066D",
// 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
// U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
// U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
- /* 67 */ "!fixedColumnOrder!3,\u2039|\u203A,\u2264|\u2265,\u00AB|\u00BB",
- /* 68 */ "!fixedColumnOrder!3,\u203A|\u2039,\u2265|\u2264,\u00BB|\u00AB",
+ /* 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|\u2265",
+ /* keyspec_greater_than_equal */ "\u2265|\u2264",
+ /* keyspec_left_double_angle_quote */ "\u00AB|\u00BB",
+ /* keyspec_right_double_angle_quote */ "\u00BB|\u00AB",
+ /* keyspec_left_single_angle_quote */ "\u2039|\u203A",
+ /* keyspec_right_single_angle_quote */ "\u203A|\u2039",
+ // U+061F: "؟" ARABIC QUESTION MARK
+ // U+060C: "،" ARABIC COMMA
+ // U+061B: "؛" ARABIC SEMICOLON
+ /* keylabel_for_tablet_comma */ "\u060C",
+ /* more_keys_for_tablet_period */ "!text/more_keys_for_arabic_diacritics",
+ // U+00BF: "¿" INVERTED QUESTION MARK
+ /* more_keys_for_question */ "?,\u00BF",
+ /* more_keys_for_h ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null,
+ /* ~ keylabel_for_spanish_row2_10 */
+ // U+266A: "♪" EIGHTH NOTE
+ /* more_keys_for_bullet */ "\u266A",
+ // The all letters need to be mirrored are found at
+ // http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
+ // U+FD3E: "﴾" ORNATE LEFT PARENTHESIS
+ // U+FD3F: "﴿" ORNATE RIGHT PARENTHESIS
+ /* more_keys_for_left_parenthesis */ "!fixedColumnOrder!4,\uFD3E|\uFD3F,!text/keyspecs_for_left_parenthesis_more_keys",
+ /* more_keys_for_right_parenthesis */ "!fixedColumnOrder!4,\uFD3F|\uFD3E,!text/keyspecs_for_right_parenthesis_more_keys",
// U+0655: "ٕ" ARABIC HAMZA BELOW
// U+0654: "ٔ" ARABIC HAMZA ABOVE
// U+0652: "ْ" ARABIC SUKUN
@@ -525,90 +621,29 @@ public final class KeyboardTextsTable {
// U+0640: "ـ" ARABIC TATWEEL
// In order to make Tatweel easily distinguishable from other punctuations, we use consecutive Tatweels only for its displayed label.
// Note: The space character is needed as a preceding letter to draw Arabic diacritics characters correctly.
- /* 69 */ "!fixedColumnOrder!7, \u0655|\u0655, \u0654|\u0654, \u0652|\u0652, \u064D|\u064D, \u064C|\u064C, \u064B|\u064B, \u0651|\u0651, \u0656|\u0656, \u0670|\u0670, \u0653|\u0653, \u0650|\u0650, \u064F|\u064F, \u064E|\u064E,\u0640\u0640\u0640|\u0640",
- // U+0661: "١" ARABIC-INDIC DIGIT ONE
- /* 70 */ "\u0661",
- // U+0662: "٢" ARABIC-INDIC DIGIT TWO
- /* 71 */ "\u0662",
- // U+0663: "٣" ARABIC-INDIC DIGIT THREE
- /* 72 */ "\u0663",
- // U+0664: "٤" ARABIC-INDIC DIGIT FOUR
- /* 73 */ "\u0664",
- // U+0665: "٥" ARABIC-INDIC DIGIT FIVE
- /* 74 */ "\u0665",
- // U+0666: "٦" ARABIC-INDIC DIGIT SIX
- /* 75 */ "\u0666",
- // U+0667: "٧" ARABIC-INDIC DIGIT SEVEN
- /* 76 */ "\u0667",
- // U+0668: "٨" ARABIC-INDIC DIGIT EIGHT
- /* 77 */ "\u0668",
- // U+0669: "٩" ARABIC-INDIC DIGIT NINE
- /* 78 */ "\u0669",
- // U+0660: "٠" ARABIC-INDIC DIGIT ZERO
- /* 79 */ "\u0660",
- // Label for "switch to symbols" key.
- // U+061F: "؟" ARABIC QUESTION MARK
- /* 80 */ "\u0663\u0662\u0661\u061F",
- // Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
- // part because it'll be appended by the code.
- /* 81 */ "\u0663\u0662\u0661",
- /* 82 */ "1",
- /* 83 */ "2",
- /* 84 */ "3",
- /* 85 */ "4",
- /* 86 */ "5",
- /* 87 */ "6",
- /* 88 */ "7",
- /* 89 */ "8",
- /* 90 */ "9",
- // U+066B: "٫" ARABIC DECIMAL SEPARATOR
- // U+066C: "٬" ARABIC THOUSANDS SEPARATOR
- /* 91 */ "0,\u066B,\u066C",
- /* 92~ */
- null, null, null, null, null, null, null, null, null, null,
- /* ~101 */
+ /* more_keys_for_arabic_diacritics */ "!fixedColumnOrder!7, \u0655|\u0655, \u0654|\u0654, \u0652|\u0652, \u064D|\u064D, \u064C|\u064C, \u064B|\u064B, \u0651|\u0651, \u0656|\u0656, \u0670|\u0670, \u0653|\u0653, \u0650|\u0650, \u064F|\u064F, \u064E|\u064E,\u0640\u0640\u0640|\u0640",
// U+060C: "،" ARABIC COMMA
- /* 102 */ "\u060C",
- /* 103 */ "\\,",
- // U+061F: "؟" ARABIC QUESTION MARK
- // U+060C: "،" ARABIC COMMA
- // U+061B: "؛" ARABIC SEMICOLON
- /* 104 */ "\u060C",
- /* 105 */ "\u061F",
- /* 106 */ "!fixedColumnOrder!4,:,!,\u061F,\u061B,-,/,\",\'",
- /* 107 */ null,
+ /* keylabel_for_comma */ "\u060C",
+ /* more_keys_for_comma */ "\\,",
+ /* keyhintlabel_for_tablet_comma */ "\u061F",
+ /* more_keys_for_tablet_comma */ "!fixedColumnOrder!4,:,!,\u061F,\u061B,-,/,\",\'",
// U+0651: "ّ" ARABIC SHADDA
- /* 108 */ "\u0651",
- /* 109 */ "!text/more_keys_for_arabic_diacritics",
- /* 110 */ null,
- /* 111 */ "\u0651",
- /* 112 */ "!text/more_keys_for_arabic_diacritics",
- /* 113 */ "\u061F",
- /* 114 */ "\u061B",
+ /* keyhintlabel_for_period */ "\u0651",
+ /* more_keys_for_period */ "!text/more_keys_for_arabic_diacritics",
+ /* keyhintlabel_for_tablet_period */ "\u0651",
+ /* keylabel_for_symbols_question */ "\u061F",
+ /* keylabel_for_symbols_semicolon */ "\u061B",
// U+066A: "٪" ARABIC PERCENT SIGN
- /* 115 */ "\u066A",
- /* 116 */ null,
- // U+00BF: "¿" INVERTED QUESTION MARK
- /* 117 */ "?,\u00BF",
- /* 118 */ ";",
+ /* keylabel_for_symbols_percent */ "\u066A",
+ /* more_keys_for_symbols_semicolon */ ";",
// U+2030: "‰" PER MILLE SIGN
- /* 119 */ "\\%,\u2030",
+ /* more_keys_for_symbols_percent */ "\\%,\u2030",
};
/* Language az_AZ: Azerbaijani (Azerbaijan) */
private static final String[] LANGUAGE_az_AZ = {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
- /* 0 */ "\u00E2",
- // U+0259: "ə" LATIN SMALL LETTER SCHWA
- /* 1 */ "\u0259",
- // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u0131,\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E2",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+0153: "œ" LATIN SMALL LIGATURE OE
@@ -617,84 +652,91 @@ public final class KeyboardTextsTable {
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F6,\u00F4,\u0153,\u00F2,\u00F3,\u00F5,\u00F8,\u014D",
+ /* more_keys_for_o */ "\u00F6,\u00F4,\u0153,\u00F2,\u00F3,\u00F5,\u00F8,\u014D",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_u */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ // U+0259: "ə" LATIN SMALL LETTER SCHWA
+ /* more_keys_for_e */ "\u0259",
+ // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u0131,\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u015F,\u00DF,\u015B,\u0161",
- /* 6 */ null,
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
- /* 8~ */
+ /* more_keys_for_s */ "\u015F,\u00DF,\u015B,\u0161",
+ /* more_keys_for_n ~ */
null, null, null, null, null, null, null,
- /* ~14 */
+ /* ~ more_keys_for_l */
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
- /* 15 */ "\u011F",
+ /* more_keys_for_g */ "\u011F",
};
/* Language be_BY: Belarusian (Belarus) */
private static final String[] LANGUAGE_be_BY = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null,
- /* ~24 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ keylabel_for_nordic_row2_11 */
+ // U+0451: "ё" CYRILLIC SMALL LETTER IO
+ /* more_keys_for_cyrillic_ie */ "\u0451",
+ /* more_keys_for_nordic_row2_10 */ null,
// U+045E: "ў" CYRILLIC SMALL LETTER SHORT U
- /* 25 */ "\u045E",
+ /* keylabel_for_east_slavic_row1_9 */ "\u045E",
// U+0451: "ё" CYRILLIC SMALL LETTER IO
- /* 26 */ "\u0451",
+ /* keylabel_for_east_slavic_row1_12 */ "\u0451",
// U+044B: "ы" CYRILLIC SMALL LETTER YERU
- /* 27 */ "\u044B",
+ /* keylabel_for_east_slavic_row2_1 */ "\u044B",
// U+044D: "э" CYRILLIC SMALL LETTER E
- /* 28 */ "\u044D",
+ /* keylabel_for_east_slavic_row2_11 */ "\u044D",
// U+0456: "і" CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
- /* 29 */ "\u0456",
- /* 30~ */
- null, null, null, null, null, null, null,
- /* ~36 */
+ /* keylabel_for_east_slavic_row3_5 */ "\u0456",
// U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 37 */ "\u044A",
- /* 38~ */
- null, null, null, null, null,
- /* ~42 */
- // U+0451: "ё" CYRILLIC SMALL LETTER IO
- /* 43 */ "\u0451",
- /* 44~ */
- null, null, null, null, null, null, null,
- /* ~50 */
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* more_keys_for_cyrillic_soft_sign */ "\u044A",
};
/* Language bg: Bulgarian */
private static final String[] LANGUAGE_bg = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ // single_quotes of Bulgarian is default single_quotes_right_left.
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes ~ */
+ null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0410: "А" CYRILLIC CAPITAL LETTER A
// U+0411: "Б" CYRILLIC CAPITAL LETTER BE
// U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52 */ null,
- // single_quotes of Bulgarian is default single_quotes_right_left.
- /* 53 */ "!text/double_9qm_lqm",
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
};
/* Language ca: Catalan */
@@ -709,22 +751,7 @@ public final class KeyboardTextsTable {
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E0,\u00E1,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
- // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E8,\u00E9,\u00EB,\u00EA,\u0119,\u0117,\u0113",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
@@ -734,37 +761,63 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F2,\u00F3,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
+ /* more_keys_for_o */ "\u00F2,\u00F3,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
- /* 5 */ null,
- // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
+ // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E8,\u00E9,\u00EB,\u00EA,\u0119,\u0117,\u0113",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
- /* 8~ */
- null, null, null, null, null, null,
- /* ~13 */
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_s */ null,
+ // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
+ // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_t */
// U+00B7: "·" MIDDLE DOT
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
- /* 14 */ "l\u00B7l,\u0142",
- /* 15~ */
+ /* more_keys_for_l */ "l\u00B7l,\u0142",
+ /* more_keys_for_g ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null,
+ /* ~ more_keys_for_cyrillic_soft_sign */
+ // U+00B7: "·" MIDDLE DOT
+ /* more_keys_for_punctuation */ "!fixedColumnOrder!9,;,/,(,),#,\u00B7,!,\\,,?,&,\\%,+,\",-,:,',@",
+ /* more_keys_for_nordic_row2_11 ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~58 */
- // U+00B7: "·" MIDDLE DOT
- /* 59 */ "!fixedColumnOrder!9,;,/,(,),#,\u00B7,!,\\,,?,&,\\%,+,\",-,:,',@",
- /* 60 */ "!fixedColumnOrder!8,;,/,(,),#,\u00B7,',\\,,&,\\%,+,\",-,:,@",
+ /* ~ more_keys_for_swiss_row2_11 */
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- /* 61 */ "\u00E7",
+ /* keylabel_for_spanish_row2_10 */ "\u00E7",
+ /* more_keys_for_bullet ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_currency_dollar */
+ /* more_keys_for_tablet_punctuation */ "!fixedColumnOrder!8,;,/,(,),#,\u00B7,',\\,,&,\\%,+,\",-,:,@",
};
/* Language cs: Czech */
@@ -777,23 +830,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u011B,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\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+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EE,\u00EF,\u00EC,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -802,48 +839,63 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
+ /* more_keys_for_o */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// 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
- /* 4 */ "\u00FA,\u016F,\u00FB,\u00FC,\u00F9,\u016B",
+ /* more_keys_for_u */ "\u00FA,\u016F,\u00FB,\u00FC,\u00F9,\u016B",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u011B,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\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+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EE,\u00EF,\u00EC,\u012F,\u012B",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ /* more_keys_for_c */ "\u010D,\u00E7,\u0107",
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
- /* 5 */ "\u0161,\u00DF,\u015B",
+ /* more_keys_for_s */ "\u0161,\u00DF,\u015B",
// U+0148: "ň" LATIN SMALL LETTER N WITH CARON
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u0148,\u00F1,\u0144",
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u010D,\u00E7,\u0107",
+ /* more_keys_for_n */ "\u0148,\u00F1,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
- /* 9 */ "\u010F",
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- /* 10 */ "\u0159",
- // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
- /* 11 */ "\u0165",
+ /* more_keys_for_d */ "\u010F",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
- /* 12 */ "\u017E,\u017A,\u017C",
- /* 13~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_z */ "\u017E,\u017A,\u017C",
+ // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
+ /* more_keys_for_t */ "\u0165",
+ /* more_keys_for_l */ null,
+ /* more_keys_for_g */ null,
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
+ /* keylabel_for_currency */ null,
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ /* more_keys_for_r */ "\u0159",
};
/* Language da: Danish */
@@ -854,65 +906,66 @@ public final class KeyboardTextsTable {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
- /* 0 */ "\u00E1,\u00E4,\u00E0,\u00E2,\u00E3,\u0101",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
- /* 1 */ "\u00E9,\u00EB",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- /* 2 */ "\u00ED,\u00EF",
+ /* more_keys_for_a */ "\u00E1,\u00E4,\u00E0,\u00E2,\u00E3,\u0101",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F4,\u00F2,\u00F5,\u0153,\u014D",
+ /* more_keys_for_o */ "\u00F3,\u00F4,\u00F2,\u00F5,\u0153,\u014D",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
+ /* more_keys_for_e */ "\u00E9,\u00EB",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ /* more_keys_for_i */ "\u00ED,\u00EF",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c */ null,
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u00DF,\u015B,\u0161",
+ /* more_keys_for_s */ "\u00DF,\u015B,\u0161",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
- /* 7 */ null,
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+00F0: "ð" LATIN SMALL LETTER ETH
- /* 9 */ "\u00F0",
- /* 10~ */
- null, null, null, null,
- /* ~13 */
+ /* more_keys_for_d */ "\u00F0",
+ /* more_keys_for_z */ null,
+ /* more_keys_for_t */ null,
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
- /* 14 */ "\u0142",
- /* 15~ */
- null, null, null, null, null,
- /* ~19 */
+ /* more_keys_for_l */ "\u0142",
+ /* more_keys_for_g */ null,
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
+ /* keylabel_for_currency ~ */
+ null, null, null,
+ /* ~ more_keys_for_k */
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
- /* 20 */ "\u00E5",
+ /* keylabel_for_nordic_row1_11 */ "\u00E5",
// U+00E6: "æ" LATIN SMALL LETTER AE
- /* 21 */ "\u00E6",
+ /* keylabel_for_nordic_row2_10 */ "\u00E6",
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 22 */ "\u00F8",
+ /* keylabel_for_nordic_row2_11 */ "\u00F8",
+ /* more_keys_for_cyrillic_ie */ null,
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 23 */ "\u00E4",
+ /* more_keys_for_nordic_row2_10 */ "\u00E4",
+ /* keylabel_for_east_slavic_row1_9 ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_punctuation */
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 24 */ "\u00F6",
- /* 25~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_nordic_row2_11 */ "\u00F6",
};
/* Language de: German */
@@ -925,14 +978,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E4,\u00E2,\u00E0,\u00E1,\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+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0117",
- /* 2 */ null,
+ /* more_keys_for_a */ "\u00E4,\u00E2,\u00E0,\u00E1,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -941,57 +987,66 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F6,\u00F4,\u00F2,\u00F3,\u00F5,\u0153,\u00F8,\u014D",
+ /* more_keys_for_o */ "\u00F6,\u00F4,\u00F2,\u00F3,\u00F5,\u0153,\u00F8,\u014D",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_u */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ // 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+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0117",
+ /* more_keys_for_i */ null,
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c */ null,
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u00DF,\u015B,\u0161",
+ /* more_keys_for_s */ "\u00DF,\u015B,\u0161",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
- /* 7~ */
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_g */
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
+ /* keylabel_for_currency ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null,
- /* ~44 */
+ /* ~ more_keys_for_cyrillic_i */
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
- /* 45 */ "\u00FC",
+ /* keylabel_for_swiss_row1_11 */ "\u00FC",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 46 */ "\u00F6",
+ /* keylabel_for_swiss_row2_10 */ "\u00F6",
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 47 */ "\u00E4",
+ /* keylabel_for_swiss_row2_11 */ "\u00E4",
// U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- /* 48 */ "\u00E8",
+ /* more_keys_for_swiss_row1_11 */ "\u00E8",
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- /* 49 */ "\u00E9",
+ /* more_keys_for_swiss_row2_10 */ "\u00E9",
// U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
- /* 50 */ "\u00E0",
- /* 51 */ null,
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_swiss_row2_11 */ "\u00E0",
};
/* Language el: Greek */
private static final String[] LANGUAGE_el = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0391: "Α" GREEK CAPITAL LETTER ALPHA
// U+0392: "Β" GREEK CAPITAL LETTER BETA
// U+0393: "Γ" GREEK CAPITAL LETTER GAMMA
- /* 51 */ "\u0391\u0392\u0393",
+ /* label_to_alpha_key */ "\u0391\u0392\u0393",
};
/* Language en: English */
@@ -1004,19 +1059,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
- // 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
- /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- /* 2 */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -1025,19 +1068,33 @@ public final class KeyboardTextsTable {
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
- /* 3 */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
+ /* more_keys_for_o */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
// 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+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_u */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
+ // 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
+ /* more_keys_for_e */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ /* more_keys_for_i */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ /* more_keys_for_c */ "\u00E7",
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
- /* 5 */ "\u00DF",
+ /* more_keys_for_s */ "\u00DF",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- /* 6 */ "\u00F1",
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- /* 7 */ "\u00E7",
+ /* more_keys_for_n */ "\u00F1",
};
/* Language eo: Esperanto */
@@ -1053,26 +1110,7 @@ public final class KeyboardTextsTable {
// U+0103: "ă" LATIN SMALL LETTER A WITH BREVE
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101,\u0103,\u0105,\u00AA",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u011B,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\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+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
- // U+0133: "ij" LATIN SMALL LIGATURE IJ
- /* 2 */ "\u00ED,\u00EE,\u00EF,\u0129,\u00EC,\u012F,\u012B,\u0131,\u0133",
+ /* more_keys_for_a */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101,\u0103,\u0105,\u00AA",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -1083,7 +1121,7 @@ public final class KeyboardTextsTable {
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D,\u0151,\u00BA",
+ /* more_keys_for_o */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D,\u0151,\u00BA",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
@@ -1094,91 +1132,121 @@ public final class KeyboardTextsTable {
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
// U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
// U+00B5: "µ" MICRO SIGN
- /* 4 */ "\u00FA,\u016F,\u00FB,\u00FC,\u00F9,\u016B,\u0169,\u0171,\u0173,\u00B5",
+ /* more_keys_for_u */ "\u00FA,\u016F,\u00FB,\u00FC,\u00F9,\u016B,\u0169,\u0171,\u0173,\u00B5",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u011B,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\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+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ // U+0133: "ij" LATIN SMALL LIGATURE IJ
+ /* more_keys_for_i */ "\u00ED,\u00EE,\u00EF,\u0129,\u00EC,\u012F,\u012B,\u0131,\u0133",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+010B: "ċ" LATIN SMALL LETTER C WITH DOT ABOVE
+ /* more_keys_for_c */ "\u0107,\u010D,\u00E7,\u010B",
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0219: "ș" LATIN SMALL LETTER S WITH COMMA BELOW
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
- /* 5 */ "\u00DF,\u0161,\u015B,\u0219,\u015F",
+ /* more_keys_for_s */ "\u00DF,\u0161,\u015B,\u0219,\u015F",
// 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
- /* 6 */ "\u00F1,\u0144,\u0146,\u0148,\u0149,\u014B",
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+010B: "ċ" LATIN SMALL LETTER C WITH DOT ABOVE
- /* 7 */ "\u0107,\u010D,\u00E7,\u010B",
+ /* more_keys_for_n */ "\u00F1,\u0144,\u0146,\u0148,\u0149,\u014B",
+ /* label_to_alpha_key */ null,
// 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+00FE: "þ" LATIN SMALL LETTER THORN
- /* 8 */ "y,\u00FD,\u0177,\u00FF,\u00FE",
+ /* more_keys_for_y */ "y,\u00FD,\u0177,\u00FF,\u00FE",
// U+00F0: "ð" LATIN SMALL LETTER ETH
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
// U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
- /* 9 */ "\u00F0,\u010F,\u0111",
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
- // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
- /* 10 */ "\u0159,\u0155,\u0157",
+ /* more_keys_for_d */ "\u00F0,\u010F,\u0111",
+ // 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
+ /* more_keys_for_z */ "\u017A,\u017C,\u017E",
// U+0165: "ť" LATIN SMALL LETTER T WITH CARON
// U+021B: "ț" LATIN SMALL LETTER T WITH COMMA BELOW
// U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
// U+0167: "ŧ" LATIN SMALL LETTER T WITH STROKE
- /* 11 */ "\u0165,\u021B,\u0163,\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
- /* 12 */ "\u017A,\u017C,\u017E",
- // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
- // U+0138: "ĸ" LATIN SMALL LETTER KRA
- /* 13 */ "\u0137,\u0138",
+ /* more_keys_for_t */ "\u0165,\u021B,\u0163,\u0167",
// 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
- /* 14 */ "\u013A,\u013C,\u013E,\u0140,\u0142",
+ /* more_keys_for_l */ "\u013A,\u013C,\u013E,\u0140,\u0142",
// 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
- /* 15 */ "\u011F,\u0121,\u0123",
- // U+0175: "ŵ" LATIN SMALL LETTER W WITH CIRCUMFLEX
- /* 16 */ "w,\u0175",
+ /* more_keys_for_g */ "\u011F,\u0121,\u0123",
+ /* single_angle_quotes ~ */
+ null, null, null,
+ /* ~ keylabel_for_currency */
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
+ // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
+ /* more_keys_for_r */ "\u0159,\u0155,\u0157",
+ // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
+ // U+0138: "ĸ" LATIN SMALL LETTER KRA
+ /* more_keys_for_k */ "\u0137,\u0138",
+ /* keylabel_for_nordic_row1_11 ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_question */
// U+0125: "ĥ" LATIN SMALL LETTER H WITH CIRCUMFLEX
// U+0127: "ħ" LATIN SMALL LETTER H WITH STROKE
- /* 17 */ "\u0125,\u0127",
- /* 18 */ null,
+ /* more_keys_for_h */ "\u0125,\u0127",
// U+0175: "ŵ" LATIN SMALL LETTER W WITH CIRCUMFLEX
- /* 19 */ "w,\u0175",
- /* 20~ */
+ /* more_keys_for_w */ "w,\u0175",
+ /* more_keys_for_cyrillic_u ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null,
- /* ~60 */
+ null,
+ /* ~ more_keys_for_swiss_row2_11 */
// U+0135: "ĵ" LATIN SMALL LETTER J WITH CIRCUMFLEX
- /* 61 */ "\u0135",
- /* 62~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* keylabel_for_spanish_row2_10 */ "\u0135",
+ /* more_keys_for_bullet ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~119 */
- /* 120 */ "q",
- /* 121 */ "x",
+ null,
+ /* ~ more_keys_for_symbols_percent */
+ // U+0175: "ŵ" LATIN SMALL LETTER W WITH CIRCUMFLEX
+ /* more_keys_for_v */ "w,\u0175",
+ /* more_keys_for_j ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_exclamation */
+ /* more_keys_for_q */ "q",
+ /* more_keys_for_x */ "x",
// U+015D: "ŝ" LATIN SMALL LETTER S WITH CIRCUMFLEX
- /* 122 */ "\u015D",
+ /* keylabel_for_q */ "\u015D",
// U+011D: "ĝ" LATIN SMALL LETTER G WITH CIRCUMFLEX
- /* 123 */ "\u011D",
+ /* keylabel_for_w */ "\u011D",
// U+016D: "ŭ" LATIN SMALL LETTER U WITH BREVE
- /* 124 */ "\u016D",
+ /* keylabel_for_y */ "\u016D",
// U+0109: "ĉ" LATIN SMALL LETTER C WITH CIRCUMFLEX
- /* 125 */ "\u0109",
+ /* keylabel_for_x */ "\u0109",
};
/* Language es: Spanish */
@@ -1193,22 +1261,7 @@ public final class KeyboardTextsTable {
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E1,\u00E0,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
- // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00E8,\u00EB,\u00EA,\u0119,\u0117,\u0113",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E1,\u00E0,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
@@ -1218,30 +1271,45 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F3,\u00F2,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
+ /* more_keys_for_o */ "\u00F3,\u00F2,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
- /* 5 */ null,
- // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
+ // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EB,\u00EA,\u0119,\u0117,\u0113",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
- /* 8~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_s */ null,
+ // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
+ // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~58 */
+ null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_soft_sign */
// U+00A1: "¡" INVERTED EXCLAMATION MARK
// U+00BF: "¿" INVERTED QUESTION MARK
- /* 59 */ "!fixedColumnOrder!9,\u00A1,;,/,(,),#,!,\\,,?,\u00BF,&,\\%,+,\",-,:,',@",
+ /* more_keys_for_punctuation */ "!fixedColumnOrder!9,\u00A1,;,/,(,),#,!,\\,,?,\u00BF,&,\\%,+,\",-,:,',@",
};
/* Language et_EE: Estonian (Estonia) */
@@ -1255,24 +1323,7 @@ public final class KeyboardTextsTable {
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
- /* 0 */ "\u00E4,\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E5,\u00E6,\u0105",
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
- /* 1 */ "\u0113,\u00E8,\u0117,\u00E9,\u00EA,\u00EB,\u0119,\u011B",
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // 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+0131: "ı" LATIN SMALL LETTER DOTLESS I
- /* 2 */ "\u012B,\u00EC,\u012F,\u00ED,\u00EE,\u00EF,\u0131",
+ /* more_keys_for_a */ "\u00E4,\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E5,\u00E6,\u0105",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -1281,7 +1332,7 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 3 */ "\u00F6,\u00F5,\u00F2,\u00F3,\u00F4,\u0153,\u0151,\u00F8",
+ /* more_keys_for_o */ "\u00F6,\u00F5,\u00F2,\u00F3,\u00F4,\u0153,\u0151,\u00F8",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
// U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
@@ -1290,114 +1341,181 @@ public final class KeyboardTextsTable {
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
- /* 4 */ "\u00FC,\u016B,\u0173,\u00F9,\u00FA,\u00FB,\u016F,\u0171",
+ /* more_keys_for_u */ "\u00FC,\u016B,\u0173,\u00F9,\u00FA,\u00FB,\u016F,\u0171",
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
+ /* more_keys_for_e */ "\u0113,\u00E8,\u0117,\u00E9,\u00EA,\u00EB,\u0119,\u011B",
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // 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+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ /* more_keys_for_i */ "\u012B,\u00EC,\u012F,\u00ED,\u00EE,\u00EF,\u0131",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ /* more_keys_for_c */ "\u010D,\u00E7,\u0107",
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
- /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
+ /* more_keys_for_s */ "\u0161,\u00DF,\u015B,\u015F",
// U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u0146,\u00F1,\u0144,\u0144",
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u010D,\u00E7,\u0107",
+ /* more_keys_for_n */ "\u0146,\u00F1,\u0144,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
- /* 9 */ "\u010F",
- // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
- /* 10 */ "\u0157,\u0159,\u0155",
- // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
- // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
- /* 11 */ "\u0163,\u0165",
+ /* more_keys_for_d */ "\u010F",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
- /* 12 */ "\u017E,\u017C,\u017A",
- // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
- /* 13 */ "\u0137",
+ /* more_keys_for_z */ "\u017E,\u017C,\u017A",
+ // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
+ // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
+ /* more_keys_for_t */ "\u0163,\u0165",
// U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
// U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
// U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
- /* 14 */ "\u013C,\u0142,\u013A,\u013E",
+ /* more_keys_for_l */ "\u013C,\u0142,\u013A,\u013E",
// U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
- /* 15 */ "\u0123,\u011F",
- /* 16~ */
- null, null, null, null,
- /* ~19 */
+ /* more_keys_for_g */ "\u0123,\u011F",
+ /* single_angle_quotes ~ */
+ null, null, null,
+ /* ~ keylabel_for_currency */
+ // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
+ /* more_keys_for_r */ "\u0157,\u0159,\u0155",
+ // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
+ /* more_keys_for_k */ "\u0137",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
- /* 20 */ "\u00FC",
+ /* keylabel_for_nordic_row1_11 */ "\u00FC",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 21 */ "\u00F6",
+ /* keylabel_for_nordic_row2_10 */ "\u00F6",
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 22 */ "\u00E4",
+ /* keylabel_for_nordic_row2_11 */ "\u00E4",
+ /* more_keys_for_cyrillic_ie */ null,
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
- /* 23 */ "\u00F5",
- /* 24~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* more_keys_for_nordic_row2_10 */ "\u00F5",
};
/* Language fa: Persian */
private static final String[] LANGUAGE_fa = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0627: "ا" ARABIC LETTER ALEF
// U+200C: ZERO WIDTH NON-JOINER
// U+0628: "ب" ARABIC LETTER BEH
// U+067E: "پ" ARABIC LETTER PEH
- /* 51 */ "\u0627\u200C\u0628\u200C\u067E",
- /* 52 */ null,
- /* 53 */ null,
- /* 54 */ "!text/single_laqm_raqm_rtl",
- /* 55 */ "!text/double_laqm_raqm_rtl",
- /* 56 */ null,
+ /* label_to_alpha_key */ "\u0627\u200C\u0628\u200C\u067E",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+FDFC: "﷼" RIAL SIGN
- /* 57 */ "\uFDFC",
- /* 58 */ null,
+ /* keylabel_for_currency */ "\uFDFC",
+ /* more_keys_for_r ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_soft_sign */
// U+061F: "؟" ARABIC QUESTION MARK
// U+060C: "،" ARABIC COMMA
// U+061B: "؛" ARABIC SEMICOLON
- /* 59 */ "!fixedColumnOrder!8,\",\',#,-,:,!,\u060C,\u061F,@,&,\\%,+,\u061B,/,(|),)|(",
- /* 60 */ null,
- /* 61 */ null,
+ /* more_keys_for_punctuation */ "!fixedColumnOrder!8,\",\',#,-,:,!,\u060C,\u061F,@,&,\\%,+,\u061B,/,!text/keyspec_left_parenthesis,!text/keyspec_right_parenthesis",
+ /* more_keys_for_nordic_row2_11 */ null,
+ // U+06F1: "۱" EXTENDED ARABIC-INDIC DIGIT ONE
+ /* keylabel_for_symbols_1 */ "\u06F1",
+ // U+06F2: "۲" EXTENDED ARABIC-INDIC DIGIT TWO
+ /* keylabel_for_symbols_2 */ "\u06F2",
+ // U+06F3: "۳" EXTENDED ARABIC-INDIC DIGIT THREE
+ /* keylabel_for_symbols_3 */ "\u06F3",
+ // U+06F4: "۴" EXTENDED ARABIC-INDIC DIGIT FOUR
+ /* keylabel_for_symbols_4 */ "\u06F4",
+ // U+06F5: "۵" EXTENDED ARABIC-INDIC DIGIT FIVE
+ /* keylabel_for_symbols_5 */ "\u06F5",
+ // U+06F6: "۶" EXTENDED ARABIC-INDIC DIGIT SIX
+ /* keylabel_for_symbols_6 */ "\u06F6",
+ // U+06F7: "۷" EXTENDED ARABIC-INDIC DIGIT SEVEN
+ /* keylabel_for_symbols_7 */ "\u06F7",
+ // U+06F8: "۸" EXTENDED ARABIC-INDIC DIGIT EIGHT
+ /* keylabel_for_symbols_8 */ "\u06F8",
+ // U+06F9: "۹" EXTENDED ARABIC-INDIC DIGIT NINE
+ /* keylabel_for_symbols_9 */ "\u06F9",
+ // U+06F0: "۰" EXTENDED ARABIC-INDIC DIGIT ZERO
+ /* keylabel_for_symbols_0 */ "\u06F0",
+ // Label for "switch to symbols" key.
+ // U+061F: "؟" ARABIC QUESTION MARK
+ /* label_to_symbol_key */ "\u06F3\u06F2\u06F1\u061F",
+ // Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
+ // part because it'll be appended by the code.
+ /* label_to_symbol_with_microphone_key */ "\u06F3\u06F2\u06F1",
+ /* additional_more_keys_for_symbols_1 */ "1",
+ /* additional_more_keys_for_symbols_2 */ "2",
+ /* additional_more_keys_for_symbols_3 */ "3",
+ /* additional_more_keys_for_symbols_4 */ "4",
+ /* additional_more_keys_for_symbols_5 */ "5",
+ /* additional_more_keys_for_symbols_6 */ "6",
+ /* additional_more_keys_for_symbols_7 */ "7",
+ /* additional_more_keys_for_symbols_8 */ "8",
+ /* additional_more_keys_for_symbols_9 */ "9",
+ // U+066B: "٫" ARABIC DECIMAL SEPARATOR
+ // U+066C: "٬" ARABIC THOUSANDS SEPARATOR
+ /* additional_more_keys_for_symbols_0 */ "0,\u066B,\u066C",
// U+2605: "★" BLACK STAR
// U+066D: "٭" ARABIC FIVE POINTED STAR
- /* 62 */ "\u2605,\u066D",
+ /* more_keys_for_star */ "\u2605,\u066D",
+ /* 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|\u2265",
+ /* keyspec_greater_than_equal */ "\u2265|\u2264",
+ /* keyspec_left_double_angle_quote */ "\u00AB|\u00BB",
+ /* keyspec_right_double_angle_quote */ "\u00BB|\u00AB",
+ /* keyspec_left_single_angle_quote */ "\u2039|\u203A",
+ /* keyspec_right_single_angle_quote */ "\u203A|\u2039",
+ // U+060C: "،" ARABIC COMMA
+ // U+061B: "؛" ARABIC SEMICOLON
+ // U+061F: "؟" ARABIC QUESTION MARK
+ // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+ // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+ /* keylabel_for_tablet_comma */ "\u060C",
+ /* more_keys_for_tablet_period */ "!text/more_keys_for_arabic_diacritics",
+ // U+00BF: "¿" INVERTED QUESTION MARK
+ /* more_keys_for_question */ "?,\u00BF",
+ /* more_keys_for_h ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null,
+ /* ~ keylabel_for_spanish_row2_10 */
// U+266A: "♪" EIGHTH NOTE
- /* 63 */ "\u266A",
- /* 64 */ null,
+ /* more_keys_for_bullet */ "\u266A",
// The all letters need to be mirrored are found at
// http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
// U+FD3E: "﴾" ORNATE LEFT PARENTHESIS
// U+FD3F: "﴿" ORNATE RIGHT PARENTHESIS
- /* 65 */ "!fixedColumnOrder!4,\uFD3E|\uFD3F,<|>,{|},[|]",
- /* 66 */ "!fixedColumnOrder!4,\uFD3F|\uFD3E,>|<,}|{,]|[",
- // 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
- // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
- // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
- /* 67 */ "!fixedColumnOrder!3,\u2039|\u203A,\u2264|\u2265,<|>",
- /* 68 */ "!fixedColumnOrder!3,\u203A|\u2039,\u2265|\u2264,>|<",
+ /* more_keys_for_left_parenthesis */ "!fixedColumnOrder!4,\uFD3E|\uFD3F,!text/keyspecs_for_left_parenthesis_more_keys",
+ /* more_keys_for_right_parenthesis */ "!fixedColumnOrder!4,\uFD3F|\uFD3E,!text/keyspecs_for_right_parenthesis_more_keys",
// U+0655: "ٕ" ARABIC HAMZA BELOW
// U+0652: "ْ" ARABIC SUKUN
// U+0651: "ّ" ARABIC SHADDA
@@ -1414,76 +1532,34 @@ public final class KeyboardTextsTable {
// U+0640: "ـ" ARABIC TATWEEL
// In order to make Tatweel easily distinguishable from other punctuations, we use consecutive Tatweels only for its displayed label.
// Note: The space character is needed as a preceding letter to draw Arabic diacritics characters correctly.
- /* 69 */ "!fixedColumnOrder!7, \u0655|\u0655, \u0652|\u0652, \u0651|\u0651, \u064C|\u064C, \u064D|\u064D, \u064B|\u064B, \u0654|\u0654, \u0656|\u0656, \u0670|\u0670, \u0653|\u0653, \u064F|\u064F, \u0650|\u0650, \u064E|\u064E,\u0640\u0640\u0640|\u0640",
- // U+06F1: "۱" EXTENDED ARABIC-INDIC DIGIT ONE
- /* 70 */ "\u06F1",
- // U+06F2: "۲" EXTENDED ARABIC-INDIC DIGIT TWO
- /* 71 */ "\u06F2",
- // U+06F3: "۳" EXTENDED ARABIC-INDIC DIGIT THREE
- /* 72 */ "\u06F3",
- // U+06F4: "۴" EXTENDED ARABIC-INDIC DIGIT FOUR
- /* 73 */ "\u06F4",
- // U+06F5: "۵" EXTENDED ARABIC-INDIC DIGIT FIVE
- /* 74 */ "\u06F5",
- // U+06F6: "۶" EXTENDED ARABIC-INDIC DIGIT SIX
- /* 75 */ "\u06F6",
- // U+06F7: "۷" EXTENDED ARABIC-INDIC DIGIT SEVEN
- /* 76 */ "\u06F7",
- // U+06F8: "۸" EXTENDED ARABIC-INDIC DIGIT EIGHT
- /* 77 */ "\u06F8",
- // U+06F9: "۹" EXTENDED ARABIC-INDIC DIGIT NINE
- /* 78 */ "\u06F9",
- // U+06F0: "۰" EXTENDED ARABIC-INDIC DIGIT ZERO
- /* 79 */ "\u06F0",
- // Label for "switch to symbols" key.
- // U+061F: "؟" ARABIC QUESTION MARK
- /* 80 */ "\u06F3\u06F2\u06F1\u061F",
- // Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
- // part because it'll be appended by the code.
- /* 81 */ "\u06F3\u06F2\u06F1",
- /* 82 */ "1",
- /* 83 */ "2",
- /* 84 */ "3",
- /* 85 */ "4",
- /* 86 */ "5",
- /* 87 */ "6",
- /* 88 */ "7",
- /* 89 */ "8",
- /* 90 */ "9",
- // U+066B: "٫" ARABIC DECIMAL SEPARATOR
- // U+066C: "٬" ARABIC THOUSANDS SEPARATOR
- /* 91 */ "0,\u066B,\u066C",
- /* 92~ */
- null, null, null, null, null, null, null, null, null, null,
- /* ~101 */
- // U+060C: "،" ARABIC COMMA
- /* 102 */ "\u060C",
- /* 103 */ "\\,",
+ /* more_keys_for_arabic_diacritics */ "!fixedColumnOrder!7, \u0655|\u0655, \u0652|\u0652, \u0651|\u0651, \u064C|\u064C, \u064D|\u064D, \u064B|\u064B, \u0654|\u0654, \u0656|\u0656, \u0670|\u0670, \u0653|\u0653, \u064F|\u064F, \u0650|\u0650, \u064E|\u064E,\u0640\u0640\u0640|\u0640",
// U+060C: "،" ARABIC COMMA
- // U+061B: "؛" ARABIC SEMICOLON
- // U+061F: "؟" ARABIC QUESTION MARK
- // U+00AB: "«" LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
- // U+00BB: "»" RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
- /* 104 */ "\u060C",
- /* 105 */ "\u061F",
- /* 106 */ "!fixedColumnOrder!4,:,!,\u061F,\u061B,-,/,\u00AB|\u00BB,\u00BB|\u00AB",
- /* 107 */ null,
+ /* keylabel_for_comma */ "\u060C",
+ /* more_keys_for_comma */ "\\,",
+ /* keyhintlabel_for_tablet_comma */ "\u061F",
+ /* more_keys_for_tablet_comma */ "!fixedColumnOrder!4,:,!,\u061F,\u061B,-,/,!text/keyspec_left_double_angle_quote,!text/keyspec_right_double_angle_quote",
// U+064B: "ً" ARABIC FATHATAN
- /* 108 */ "\u064B",
- /* 109 */ "!text/more_keys_for_arabic_diacritics",
- /* 110 */ null,
- /* 111 */ "\u064B",
- /* 112 */ "!text/more_keys_for_arabic_diacritics",
- /* 113 */ "\u061F",
- /* 114 */ "\u061B",
+ /* keyhintlabel_for_period */ "\u064B",
+ /* more_keys_for_period */ "!text/more_keys_for_arabic_diacritics",
+ /* keyhintlabel_for_tablet_period */ "\u064B",
+ /* keylabel_for_symbols_question */ "\u061F",
+ /* keylabel_for_symbols_semicolon */ "\u061B",
// U+066A: "٪" ARABIC PERCENT SIGN
- /* 115 */ "\u066A",
- /* 116 */ null,
- // U+00BF: "¿" INVERTED QUESTION MARK
- /* 117 */ "?,\u00BF",
- /* 118 */ ";",
+ /* keylabel_for_symbols_percent */ "\u066A",
+ /* more_keys_for_symbols_semicolon */ ";",
// U+2030: "‰" PER MILLE SIGN
- /* 119 */ "\\%,\u2030",
+ /* more_keys_for_symbols_percent */ "\\%,\u2030",
+ /* more_keys_for_v ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_plus */
+ // 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
+ // U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+ // U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+ /* more_keys_for_less_than */ "!fixedColumnOrder!3,!text/keyspec_left_single_angle_quote;,!text/keyspec_less_than_equal;,!text/keyspec_less_than",
+ /* more_keys_for_greater_than */ "!fixedColumnOrder!3,!text/keyspec_right_single_angle_quote;,!text/keyspec_greater_than_equal;,!text/keyspec_greater_than",
};
/* Language fi: Finnish */
@@ -1494,9 +1570,7 @@ public final class KeyboardTextsTable {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
- /* 0 */ "\u00E6,\u00E0,\u00E1,\u00E2,\u00E3,\u0101",
- /* 1 */ null,
- /* 2 */ null,
+ /* more_keys_for_a */ "\u00E6,\u00E0,\u00E1,\u00E2,\u00E3,\u0101",
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -1504,33 +1578,40 @@ public final class KeyboardTextsTable {
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F8,\u00F4,\u00F2,\u00F3,\u00F5,\u0153,\u014D",
+ /* more_keys_for_o */ "\u00F8,\u00F4,\u00F2,\u00F3,\u00F5,\u0153,\u014D",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
- /* 4 */ "\u00FC",
+ /* more_keys_for_u */ "\u00FC",
+ /* more_keys_for_e ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_c */
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
- /* 5 */ "\u0161,\u00DF,\u015B",
- /* 6~ */
- null, null, null, null, null, null,
- /* ~11 */
+ /* more_keys_for_s */ "\u0161,\u00DF,\u015B",
+ /* more_keys_for_n ~ */
+ null, null, null, null,
+ /* ~ more_keys_for_d */
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
- /* 12 */ "\u017E,\u017A,\u017C",
- /* 13~ */
- null, null, null, null, null, null, null,
- /* ~19 */
+ /* more_keys_for_z */ "\u017E,\u017A,\u017C",
+ /* more_keys_for_t ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_k */
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
- /* 20 */ "\u00E5",
+ /* keylabel_for_nordic_row1_11 */ "\u00E5",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 21 */ "\u00F6",
+ /* keylabel_for_nordic_row2_10 */ "\u00F6",
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 22 */ "\u00E4",
+ /* keylabel_for_nordic_row2_11 */ "\u00E4",
+ /* more_keys_for_cyrillic_ie */ null,
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 23 */ "\u00F8",
+ /* more_keys_for_nordic_row2_10 */ "\u00F8",
+ /* keylabel_for_east_slavic_row1_9 ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_punctuation */
// U+00E6: "æ" LATIN SMALL LETTER AE
- /* 24 */ "\u00E6",
+ /* more_keys_for_nordic_row2_11 */ "\u00E6",
};
/* Language fr: French */
@@ -1544,22 +1625,7 @@ public final class KeyboardTextsTable {
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E0,\u00E2,%,\u00E6,\u00E1,\u00E4,\u00E3,\u00E5,\u0101,\u00AA",
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,%,\u0119,\u0117,\u0113",
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00EE,%,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E0,\u00E2,%,\u00E6,\u00E1,\u00E4,\u00E3,\u00E5,\u0101,\u00AA",
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
@@ -1569,132 +1635,146 @@ public final class KeyboardTextsTable {
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F4,\u0153,%,\u00F6,\u00F2,\u00F3,\u00F5,\u00F8,\u014D,\u00BA",
+ /* more_keys_for_o */ "\u00F4,\u0153,%,\u00F6,\u00F2,\u00F3,\u00F5,\u00F8,\u014D,\u00BA",
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00F9,\u00FB,%,\u00FC,\u00FA,\u016B",
- /* 5 */ null,
- /* 6 */ null,
+ /* more_keys_for_u */ "\u00F9,\u00FB,%,\u00FC,\u00FA,\u016B",
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EA,\u00EB,%,\u0119,\u0117,\u0113",
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00EE,%,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_s ~ */
+ null, null, null,
+ /* ~ label_to_alpha_key */
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "%,\u00FF",
- /* 9~ */
+ /* more_keys_for_y */ "%,\u00FF",
+ /* more_keys_for_d ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~44 */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_i */
// U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- /* 45 */ "\u00E8",
+ /* keylabel_for_swiss_row1_11 */ "\u00E8",
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- /* 46 */ "\u00E9",
+ /* keylabel_for_swiss_row2_10 */ "\u00E9",
// U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
- /* 47 */ "\u00E0",
+ /* keylabel_for_swiss_row2_11 */ "\u00E0",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
- /* 48 */ "\u00FC",
+ /* more_keys_for_swiss_row1_11 */ "\u00FC",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 49 */ "\u00F6",
+ /* more_keys_for_swiss_row2_10 */ "\u00F6",
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 50 */ "\u00E4",
+ /* more_keys_for_swiss_row2_11 */ "\u00E4",
};
/* Language hi: Hindi */
private static final String[] LANGUAGE_hi = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0915: "क" DEVANAGARI LETTER KA
// U+0916: "ख" DEVANAGARI LETTER KHA
// U+0917: "ग" DEVANAGARI LETTER GA
- /* 51 */ "\u0915\u0916\u0917",
- /* 52~ */
- null, null, null, null, null,
- /* ~56 */
+ /* label_to_alpha_key */ "\u0915\u0916\u0917",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+20B9: "₹" INDIAN RUPEE SIGN
- /* 57 */ "\u20B9",
- /* 58~ */
- null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~69 */
+ /* keylabel_for_currency */ "\u20B9",
+ /* more_keys_for_r ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_nordic_row2_11 */
// U+0967: "१" DEVANAGARI DIGIT ONE
- /* 70 */ "\u0967",
+ /* keylabel_for_symbols_1 */ "\u0967",
// U+0968: "२" DEVANAGARI DIGIT TWO
- /* 71 */ "\u0968",
+ /* keylabel_for_symbols_2 */ "\u0968",
// U+0969: "३" DEVANAGARI DIGIT THREE
- /* 72 */ "\u0969",
+ /* keylabel_for_symbols_3 */ "\u0969",
// U+096A: "४" DEVANAGARI DIGIT FOUR
- /* 73 */ "\u096A",
+ /* keylabel_for_symbols_4 */ "\u096A",
// U+096B: "५" DEVANAGARI DIGIT FIVE
- /* 74 */ "\u096B",
+ /* keylabel_for_symbols_5 */ "\u096B",
// U+096C: "६" DEVANAGARI DIGIT SIX
- /* 75 */ "\u096C",
+ /* keylabel_for_symbols_6 */ "\u096C",
// U+096D: "७" DEVANAGARI DIGIT SEVEN
- /* 76 */ "\u096D",
+ /* keylabel_for_symbols_7 */ "\u096D",
// U+096E: "८" DEVANAGARI DIGIT EIGHT
- /* 77 */ "\u096E",
+ /* keylabel_for_symbols_8 */ "\u096E",
// U+096F: "९" DEVANAGARI DIGIT NINE
- /* 78 */ "\u096F",
+ /* keylabel_for_symbols_9 */ "\u096F",
// U+0966: "०" DEVANAGARI DIGIT ZERO
- /* 79 */ "\u0966",
+ /* keylabel_for_symbols_0 */ "\u0966",
// Label for "switch to symbols" key.
- /* 80 */ "?\u0967\u0968\u0969",
+ /* label_to_symbol_key */ "?\u0967\u0968\u0969",
// Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
// part because it'll be appended by the code.
- /* 81 */ "\u0967\u0968\u0969",
- /* 82 */ "1",
- /* 83 */ "2",
- /* 84 */ "3",
- /* 85 */ "4",
- /* 86 */ "5",
- /* 87 */ "6",
- /* 88 */ "7",
- /* 89 */ "8",
- /* 90 */ "9",
- /* 91 */ "0",
+ /* label_to_symbol_with_microphone_key */ "\u0967\u0968\u0969",
+ /* additional_more_keys_for_symbols_1 */ "1",
+ /* additional_more_keys_for_symbols_2 */ "2",
+ /* additional_more_keys_for_symbols_3 */ "3",
+ /* additional_more_keys_for_symbols_4 */ "4",
+ /* additional_more_keys_for_symbols_5 */ "5",
+ /* additional_more_keys_for_symbols_6 */ "6",
+ /* additional_more_keys_for_symbols_7 */ "7",
+ /* additional_more_keys_for_symbols_8 */ "8",
+ /* additional_more_keys_for_symbols_9 */ "9",
+ /* additional_more_keys_for_symbols_0 */ "0",
};
/* Language hr: Croatian */
private static final String[] LANGUAGE_hr = {
- /* 0~ */
+ /* more_keys_for_a ~ */
null, null, null, null, null,
- /* ~4 */
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_rqm",
+ /* single_quotes */ "!text/single_9qm_rqm",
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ /* more_keys_for_c */ "\u010D,\u0107,\u00E7",
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
- /* 5 */ "\u0161,\u015B,\u00DF",
+ /* more_keys_for_s */ "\u0161,\u015B,\u00DF",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- /* 7 */ "\u010D,\u0107,\u00E7",
- /* 8 */ null,
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key */ null,
+ /* more_keys_for_y */ null,
// U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
- /* 9 */ "\u0111",
- /* 10 */ null,
- /* 11 */ null,
+ /* more_keys_for_d */ "\u0111",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
- /* 12 */ "\u017E,\u017A,\u017C",
- /* 13~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_rqm",
- /* 53 */ "!text/double_9qm_rqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_z */ "\u017E,\u017A,\u017C",
+ /* more_keys_for_t ~ */
+ null, null, null,
+ /* ~ more_keys_for_g */
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
};
/* Language hu: Hungarian */
@@ -1707,22 +1787,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E1,\u00E0,\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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\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+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EE,\u00EF,\u00EC,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
@@ -1732,34 +1797,52 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F6,\u0151,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
+ /* more_keys_for_o */ "\u00F3,\u00F6,\u0151,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u0171,\u00FB,\u00F9,\u016B",
- /* 5~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_rqm",
- /* 53 */ "!text/double_9qm_rqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u0171,\u00FB,\u00F9,\u016B",
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\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+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EE,\u00EF,\u00EC,\u012F,\u012B",
+ /* double_quotes */ "!text/double_9qm_rqm",
+ /* single_quotes */ "!text/single_9qm_rqm",
+ /* more_keys_for_c ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_g */
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
};
/* Language hy_AM: Armenian (Armenia) */
private static final String[] LANGUAGE_hy_AM = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0531: "Ա" ARMENIAN CAPITAL LETTER AYB
+ // U+0532: "Բ" ARMENIAN CAPITAL LETTER BEN
+ // U+0533: "Գ" ARMENIAN CAPITAL LETTER GIM
+ /* label_to_alpha_key */ "\u0531\u0532\u0533",
+ /* more_keys_for_y ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~58 */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_soft_sign */
// U+058A: "֊" ARMENIAN HYPHEN
// U+055C: "՜" ARMENIAN EXCLAMATION MARK
// U+055D: "՝" ARMENIAN COMMA
@@ -1768,36 +1851,33 @@ public final class KeyboardTextsTable {
// U+055A: "՚" ARMENIAN APOSTROPHE
// U+055B: "՛" ARMENIAN EMPHASIS MARK
// U+055F: "՟" ARMENIAN ABBREVIATION MARK
- /* 59 */ "!fixedColumnOrder!8,!,?,\u0559,\u055A,.,\u055C,\\,,\u055E,:,;,\u055F,\u00AB,\u00BB,\u058A,\u055D,\u055B",
- /* 60~ */
+ /* more_keys_for_punctuation */ "!fixedColumnOrder!8,!,?,\u0559,\u055A,.,\u055C,\\,,\u055E,:,;,\u055F,\u00AB,\u00BB,\u058A,\u055D,\u055B",
+ /* more_keys_for_nordic_row2_11 ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~103 */
+ null, null, null, null, null, null, null, null,
+ /* ~ keyspec_right_single_angle_quote */
// U+058F: "֏" ARMENIAN DRAM SIGN
// TODO: Enable this when we have glyph for the following letter
// <string name="keylabel_for_currency">&#x058F;</string>
//
// U+055D: "՝" ARMENIAN COMMA
- /* 104 */ "\u055D",
- /* 105 */ null,
- /* 106 */ null,
+ /* keylabel_for_tablet_comma */ "\u055D",
+ /* more_keys_for_tablet_period */ "!text/more_keys_for_punctuation",
+ // U+055E: "՞" ARMENIAN QUESTION MARK
+ // U+00BF: "¿" INVERTED QUESTION MARK
+ /* more_keys_for_question */ "\u055E,\u00BF",
+ /* more_keys_for_h ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_greater_than */
// U+0589: "։" ARMENIAN FULL STOP
- /* 107 */ "\u0589",
- /* 108 */ null,
- /* 109 */ null,
- /* 110 */ "\u0589",
- /* 111 */ null,
- /* 112 */ "!text/more_keys_for_punctuation",
- /* 113~ */
- null, null, null,
- /* ~115 */
+ /* keylabel_for_period */ "\u0589",
+ /* keylabel_for_tablet_period */ "\u0589",
// U+055C: "՜" ARMENIAN EXCLAMATION MARK
// U+00A1: "¡" INVERTED EXCLAMATION MARK
- /* 116 */ "\u055C,\u00A1",
- // U+055E: "՞" ARMENIAN QUESTION MARK
- // U+00BF: "¿" INVERTED QUESTION MARK
- /* 117 */ "\u055E,\u00BF",
+ /* more_keys_for_exclamation */ "\u055C,\u00A1",
};
/* Language is: Icelandic */
@@ -1810,22 +1890,7 @@ public final class KeyboardTextsTable {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
- /* 0 */ "\u00E1,\u00E4,\u00E6,\u00E5,\u00E0,\u00E2,\u00E3,\u0101",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00EB,\u00E8,\u00EA,\u0119,\u0117,\u0113",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EF,\u00EE,\u00EC,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E1,\u00E4,\u00E6,\u00E5,\u00E0,\u00E2,\u00E3,\u0101",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -1834,39 +1899,50 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
+ /* more_keys_for_o */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
- /* 5~ */
- null, null, null,
- /* ~7 */
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u00EB,\u00E8,\u00EA,\u0119,\u0117,\u0113",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EF,\u00EE,\u00EC,\u012F,\u012B",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null, null,
+ /* ~ label_to_alpha_key */
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+00F0: "ð" LATIN SMALL LETTER ETH
- /* 9 */ "\u00F0",
- /* 10 */ null,
+ /* more_keys_for_d */ "\u00F0",
+ /* more_keys_for_z */ null,
// U+00FE: "þ" LATIN SMALL LETTER THORN
- /* 11 */ "\u00FE",
- /* 12~ */
- null, null, null, null, null, null, null, null,
- /* ~19 */
+ /* more_keys_for_t */ "\u00FE",
+ /* more_keys_for_l ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_k */
// U+00F0: "ð" LATIN SMALL LETTER ETH
- /* 20 */ "\u00F0",
+ /* keylabel_for_nordic_row1_11 */ "\u00F0",
// U+00E6: "æ" LATIN SMALL LETTER AE
- /* 21 */ "\u00E6",
+ /* keylabel_for_nordic_row2_10 */ "\u00E6",
// U+00FE: "þ" LATIN SMALL LETTER THORN
- /* 22 */ "\u00FE",
- /* 23~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* keylabel_for_nordic_row2_11 */ "\u00FE",
};
/* Language it: Italian */
@@ -1880,22 +1956,7 @@ public final class KeyboardTextsTable {
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101,\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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0119,\u0117,\u0113",
- // 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+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00EC,\u00ED,\u00EE,\u00EF,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101,\u00AA",
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -1905,214 +1966,243 @@ public final class KeyboardTextsTable {
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F2,\u00F3,\u00F4,\u00F6,\u00F5,\u0153,\u00F8,\u014D,\u00BA",
+ /* more_keys_for_o */ "\u00F2,\u00F3,\u00F4,\u00F6,\u00F5,\u0153,\u00F8,\u014D,\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+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00F9,\u00FA,\u00FB,\u00FC,\u016B",
+ /* more_keys_for_u */ "\u00F9,\u00FA,\u00FB,\u00FC,\u016B",
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0119,\u0117,\u0113",
+ // 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+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00EC,\u00ED,\u00EE,\u00EF,\u012F,\u012B",
};
/* Language iw: Hebrew */
private static final String[] LANGUAGE_iw = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_rqm_9qm",
+ /* single_quotes */ "!text/single_rqm_9qm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+05D0: "א" HEBREW LETTER ALEF
// U+05D1: "ב" HEBREW LETTER BET
// U+05D2: "ג" HEBREW LETTER GIMEL
- /* 51 */ "\u05D0\u05D1\u05D2",
- // 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
- /* 52 */ "\u2018,\u2019,\u201A",
- /* 53 */ "\u201C,\u201D,\u201E",
- /* 54 */ "!text/single_laqm_raqm_rtl",
- /* 55 */ "!text/double_laqm_raqm_rtl",
- /* 56 */ null,
+ /* label_to_alpha_key */ "\u05D0\u05D1\u05D2",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+20AA: "₪" NEW SHEQEL SIGN
- /* 57 */ "\u20AA",
- /* 58 */ null,
- /* 59 */ "!fixedColumnOrder!8,;,/,(|),)|(,#,!,\\,,?,&,\\%,+,\",-,:,',@",
- /* 60 */ "!fixedColumnOrder!7,;,/,(|),)|(,#,',\\,,&,\\%,+,\",-,:,@",
- /* 61 */ null,
+ /* keylabel_for_currency */ "\u20AA",
+ /* more_keys_for_r ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null,
+ /* ~ additional_more_keys_for_symbols_0 */
// U+2605: "★" BLACK STAR
- /* 62 */ "\u2605",
- /* 63 */ null,
- // U+00B1: "±" PLUS-MINUS SIGN
- // U+FB29: "﬩" HEBREW LETTER ALTERNATIVE PLUS SIGN
- /* 64 */ "\u00B1,\uFB29",
+ /* more_keys_for_star */ "\u2605",
// The all letters need to be mirrored are found at
// http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt
- /* 65 */ "!fixedColumnOrder!3,<|>,{|},[|]",
- /* 66 */ "!fixedColumnOrder!3,>|<,}|{,]|[",
// 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
// U+2039: "‹" SINGLE LEFT-POINTING ANGLE QUOTATION MARK
// U+203A: "›" SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
- /* 67 */ "!fixedColumnOrder!3,\u2039|\u203A,\u2264|\u2265,\u00AB|\u00BB",
- /* 68 */ "!fixedColumnOrder!3,\u203A|\u2039,\u2265|\u2264,\u00BB|\u00AB",
+ /* 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|\u2265",
+ /* keyspec_greater_than_equal */ "\u2265|\u2264",
+ /* keyspec_left_double_angle_quote */ "\u00AB|\u00BB",
+ /* keyspec_right_double_angle_quote */ "\u00BB|\u00AB",
+ /* keyspec_left_single_angle_quote */ "\u2039|\u203A",
+ /* keyspec_right_single_angle_quote */ "\u203A|\u2039",
+ /* keylabel_for_tablet_comma ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_tablet_punctuation */
+ // U+00B1: "±" PLUS-MINUS SIGN
+ // U+FB29: "﬩" HEBREW LETTER ALTERNATIVE PLUS SIGN
+ /* more_keys_for_plus */ "\u00B1,\uFB29",
};
/* Language ka_GE: Georgian (Georgia) */
private static final String[] LANGUAGE_ka_GE = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+10D0: "ა" GEORGIAN LETTER AN
// U+10D1: "ბ" GEORGIAN LETTER BAN
// U+10D2: "გ" GEORGIAN LETTER GAN
- /* 51 */ "\u10D0\u10D1\u10D2",
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* label_to_alpha_key */ "\u10D0\u10D1\u10D2",
};
/* Language kk: Kazakh */
private static final String[] LANGUAGE_kk = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* more_keys_for_a ~ */
null, null, null, null, null, null, null, null, null, null,
- /* ~24 */
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ keylabel_for_nordic_row2_11 */
+ // U+0451: "ё" CYRILLIC SMALL LETTER IO
+ /* more_keys_for_cyrillic_ie */ "\u0451",
+ /* more_keys_for_nordic_row2_10 */ null,
// U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
- /* 25 */ "\u0449",
+ /* keylabel_for_east_slavic_row1_9 */ "\u0449",
// U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 26 */ "\u044A",
+ /* keylabel_for_east_slavic_row1_12 */ "\u044A",
// U+044B: "ы" CYRILLIC SMALL LETTER YERU
- /* 27 */ "\u044B",
+ /* keylabel_for_east_slavic_row2_1 */ "\u044B",
// U+044D: "э" CYRILLIC SMALL LETTER E
- /* 28 */ "\u044D",
+ /* keylabel_for_east_slavic_row2_11 */ "\u044D",
// U+0438: "и" CYRILLIC SMALL LETTER I
- /* 29 */ "\u0438",
+ /* keylabel_for_east_slavic_row3_5 */ "\u0438",
+ // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
+ /* more_keys_for_cyrillic_soft_sign */ "\u044A",
+ /* more_keys_for_punctuation ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_w */
// U+04AF: "ү" CYRILLIC SMALL LETTER STRAIGHT U
// U+04B1: "ұ" CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
- /* 30 */ "\u04AF,\u04B1",
- // U+049B: "қ" CYRILLIC SMALL LETTER KA WITH DESCENDER
- /* 31 */ "\u049B",
+ /* more_keys_for_cyrillic_u */ "\u04AF,\u04B1",
// U+04A3: "ң" CYRILLIC SMALL LETTER EN WITH DESCENDER
- /* 32 */ "\u04A3",
+ /* more_keys_for_cyrillic_en */ "\u04A3",
// U+0493: "ғ" CYRILLIC SMALL LETTER GHE WITH STROKE
- /* 33 */ "\u0493",
+ /* more_keys_for_cyrillic_ghe */ "\u0493",
// U+0456: "і" CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
- /* 34 */ "\u0456",
- // U+04D9: "ә" CYRILLIC SMALL LETTER SCHWA
- /* 35 */ "\u04D9",
+ /* more_keys_for_east_slavic_row2_1 */ "\u0456",
// U+04E9: "ө" CYRILLIC SMALL LETTER BARRED O
- /* 36 */ "\u04E9",
- // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 37 */ "\u044A",
+ /* more_keys_for_cyrillic_o */ "\u04E9",
+ /* keylabel_for_south_slavic_row1_6 ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_j */
+ // U+049B: "қ" CYRILLIC SMALL LETTER KA WITH DESCENDER
+ /* more_keys_for_cyrillic_ka */ "\u049B",
+ // U+04D9: "ә" CYRILLIC SMALL LETTER SCHWA
+ /* more_keys_for_cyrillic_a */ "\u04D9",
// U+04BB: "һ" CYRILLIC SMALL LETTER SHHA
- /* 38 */ "\u04BB",
- /* 39~ */
- null, null, null, null,
- /* ~42 */
- // U+0451: "ё" CYRILLIC SMALL LETTER IO
- /* 43 */ "\u0451",
- /* 44~ */
- null, null, null, null, null, null, null,
- /* ~50 */
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
+ /* more_keys_for_east_slavic_row2_11 */ "\u04BB",
};
/* Language km_KH: Khmer (Cambodia) */
private static final String[] LANGUAGE_km_KH = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+1780: "ក" KHMER LETTER KA
// U+1781: "ខ" KHMER LETTER KHA
// U+1782: "គ" KHMER LETTER KO
- /* 51 */ "\u1780\u1781\u1782",
- /* 52~ */
- null, null, null, null,
- /* ~55 */
+ /* label_to_alpha_key */ "\u1780\u1781\u1782",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_east_slavic_row2_11 */
// U+17DB: "៛" KHMER CURRENCY SYMBOL RIEL
- /* 56 */ "\u17DB,\u00A2,\u00A3,\u20AC,\u00A5,\u20B1",
+ /* more_keys_for_currency_dollar */ "\u17DB,\u00A2,\u00A3,\u20AC,\u00A5,\u20B1",
};
/* Language ky: Kirghiz */
private static final String[] LANGUAGE_ky = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* more_keys_for_a ~ */
null, null, null, null, null, null, null, null, null, null,
- /* ~24 */
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ keylabel_for_nordic_row2_11 */
+ // U+0451: "ё" CYRILLIC SMALL LETTER IO
+ /* more_keys_for_cyrillic_ie */ "\u0451",
+ /* more_keys_for_nordic_row2_10 */ null,
// U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
- /* 25 */ "\u0449",
+ /* keylabel_for_east_slavic_row1_9 */ "\u0449",
// U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 26 */ "\u044A",
+ /* keylabel_for_east_slavic_row1_12 */ "\u044A",
// U+044B: "ы" CYRILLIC SMALL LETTER YERU
- /* 27 */ "\u044B",
+ /* keylabel_for_east_slavic_row2_1 */ "\u044B",
// U+044D: "э" CYRILLIC SMALL LETTER E
- /* 28 */ "\u044D",
+ /* keylabel_for_east_slavic_row2_11 */ "\u044D",
// U+0438: "и" CYRILLIC SMALL LETTER I
- /* 29 */ "\u0438",
+ /* keylabel_for_east_slavic_row3_5 */ "\u0438",
+ // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
+ /* more_keys_for_cyrillic_soft_sign */ "\u044A",
+ /* more_keys_for_punctuation ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_w */
// U+04AF: "ү" CYRILLIC SMALL LETTER STRAIGHT U
- /* 30 */ "\u04AF",
- /* 31 */ null,
+ /* more_keys_for_cyrillic_u */ "\u04AF",
// U+04A3: "ң" CYRILLIC SMALL LETTER EN WITH DESCENDER
- /* 32 */ "\u04A3",
- /* 33~ */
- null, null, null,
- /* ~35 */
+ /* more_keys_for_cyrillic_en */ "\u04A3",
+ /* more_keys_for_cyrillic_ghe */ null,
+ /* more_keys_for_east_slavic_row2_1 */ null,
// U+04E9: "ө" CYRILLIC SMALL LETTER BARRED O
- /* 36 */ "\u04E9",
- // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 37 */ "\u044A",
- /* 38~ */
- null, null, null, null, null,
- /* ~42 */
- // U+0451: "ё" CYRILLIC SMALL LETTER IO
- /* 43 */ "\u0451",
- /* 44~ */
- null, null, null, null, null, null, null,
- /* ~50 */
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
+ /* more_keys_for_cyrillic_o */ "\u04E9",
};
/* Language lo_LA: Lao (Laos) */
private static final String[] LANGUAGE_lo_LA = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0E81: "ກ" LAO LETTER KO
// U+0E82: "ຂ" LAO LETTER KHO SUNG
// U+0E84: "ຄ" LAO LETTER KHO TAM
- /* 51 */ "\u0E81\u0E82\u0E84",
- /* 52~ */
- null, null, null, null, null,
- /* ~56 */
+ /* label_to_alpha_key */ "\u0E81\u0E82\u0E84",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+20AD: "₭" KIP SIGN
- /* 57 */ "\u20AD",
+ /* keylabel_for_currency */ "\u20AD",
};
/* Language lt: Lithuanian */
@@ -2126,24 +2216,7 @@ public final class KeyboardTextsTable {
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+00E6: "æ" LATIN SMALL LETTER AE
- /* 0 */ "\u0105,\u00E4,\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E5,\u00E6",
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- // 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+011B: "ě" LATIN SMALL LETTER E WITH CARON
- /* 1 */ "\u0117,\u0119,\u0113,\u00E8,\u00E9,\u00EA,\u00EB,\u011B",
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // 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+0131: "ı" LATIN SMALL LETTER DOTLESS I
- /* 2 */ "\u012F,\u012B,\u00EC,\u00ED,\u00EE,\u00EF,\u0131",
+ /* more_keys_for_a */ "\u0105,\u00E4,\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E5,\u00E6",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -2152,7 +2225,7 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 3 */ "\u00F6,\u00F5,\u00F2,\u00F3,\u00F4,\u0153,\u0151,\u00F8",
+ /* more_keys_for_o */ "\u00F6,\u00F5,\u00F2,\u00F3,\u00F4,\u0153,\u0151,\u00F8",
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
// U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
@@ -2162,54 +2235,70 @@ public final class KeyboardTextsTable {
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
- /* 4 */ "\u016B,\u0173,\u00FC,\u016B,\u00F9,\u00FA,\u00FB,\u016F,\u0171",
+ /* more_keys_for_u */ "\u016B,\u0173,\u00FC,\u016B,\u00F9,\u00FA,\u00FB,\u016F,\u0171",
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ // 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+011B: "ě" LATIN SMALL LETTER E WITH CARON
+ /* more_keys_for_e */ "\u0117,\u0119,\u0113,\u00E8,\u00E9,\u00EA,\u00EB,\u011B",
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // 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+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ /* more_keys_for_i */ "\u012F,\u012B,\u00EC,\u00ED,\u00EE,\u00EF,\u0131",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ /* more_keys_for_c */ "\u010D,\u00E7,\u0107",
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
- /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
+ /* more_keys_for_s */ "\u0161,\u00DF,\u015B,\u015F",
// U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u0146,\u00F1,\u0144,\u0144",
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u010D,\u00E7,\u0107",
+ /* more_keys_for_n */ "\u0146,\u00F1,\u0144,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
- /* 9 */ "\u010F",
- // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
- /* 10 */ "\u0157,\u0159,\u0155",
- // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
- // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
- /* 11 */ "\u0163,\u0165",
+ /* more_keys_for_d */ "\u010F",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
- /* 12 */ "\u017E,\u017C,\u017A",
- // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
- /* 13 */ "\u0137",
+ /* more_keys_for_z */ "\u017E,\u017C,\u017A",
+ // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
+ // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
+ /* more_keys_for_t */ "\u0163,\u0165",
// U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
// U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
// U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
- /* 14 */ "\u013C,\u0142,\u013A,\u013E",
+ /* more_keys_for_l */ "\u013C,\u0142,\u013A,\u013E",
// U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
- /* 15 */ "\u0123,\u011F",
- /* 16~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* more_keys_for_g */ "\u0123,\u011F",
+ /* single_angle_quotes ~ */
+ null, null, null,
+ /* ~ keylabel_for_currency */
+ // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
+ /* more_keys_for_r */ "\u0157,\u0159,\u0155",
+ // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
+ /* more_keys_for_k */ "\u0137",
};
/* Language lv: Latvian */
@@ -2223,24 +2312,7 @@ public final class KeyboardTextsTable {
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
- /* 0 */ "\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u0105",
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
- /* 1 */ "\u0113,\u0117,\u00E8,\u00E9,\u00EA,\u00EB,\u0119,\u011B",
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // 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+0131: "ı" LATIN SMALL LETTER DOTLESS I
- /* 2 */ "\u012B,\u012F,\u00EC,\u00ED,\u00EE,\u00EF,\u0131",
+ /* more_keys_for_a */ "\u0101,\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u0105",
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -2249,7 +2321,7 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 3 */ "\u00F2,\u00F3,\u00F4,\u00F5,\u00F6,\u0153,\u0151,\u00F8",
+ /* more_keys_for_o */ "\u00F2,\u00F3,\u00F4,\u00F5,\u00F6,\u0153,\u0151,\u00F8",
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
// U+0173: "ų" LATIN SMALL LETTER U WITH OGONEK
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
@@ -2258,105 +2330,125 @@ public final class KeyboardTextsTable {
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
- /* 4 */ "\u016B,\u0173,\u00F9,\u00FA,\u00FB,\u00FC,\u016F,\u0171",
+ /* more_keys_for_u */ "\u016B,\u0173,\u00F9,\u00FA,\u00FB,\u00FC,\u016F,\u0171",
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
+ /* more_keys_for_e */ "\u0113,\u0117,\u00E8,\u00E9,\u00EA,\u00EB,\u0119,\u011B",
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // 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+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ /* more_keys_for_i */ "\u012B,\u012F,\u00EC,\u00ED,\u00EE,\u00EF,\u0131",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ /* more_keys_for_c */ "\u010D,\u00E7,\u0107",
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
- /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
+ /* more_keys_for_s */ "\u0161,\u00DF,\u015B,\u015F",
// U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u0146,\u00F1,\u0144,\u0144",
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u010D,\u00E7,\u0107",
+ /* more_keys_for_n */ "\u0146,\u00F1,\u0144,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
- /* 9 */ "\u010F",
- // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
- /* 10 */ "\u0157,\u0159,\u0155",
- // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
- // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
- /* 11 */ "\u0163,\u0165",
+ /* more_keys_for_d */ "\u010F",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
- /* 12 */ "\u017E,\u017C,\u017A",
- // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
- /* 13 */ "\u0137",
+ /* more_keys_for_z */ "\u017E,\u017C,\u017A",
+ // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
+ // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
+ /* more_keys_for_t */ "\u0163,\u0165",
// U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
// U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
// U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
- /* 14 */ "\u013C,\u0142,\u013A,\u013E",
+ /* more_keys_for_l */ "\u013C,\u0142,\u013A,\u013E",
// U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
- /* 15 */ "\u0123,\u011F",
- /* 16~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* more_keys_for_g */ "\u0123,\u011F",
+ /* single_angle_quotes ~ */
+ null, null, null,
+ /* ~ keylabel_for_currency */
+ // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
+ /* more_keys_for_r */ "\u0157,\u0159,\u0155",
+ // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
+ /* more_keys_for_k */ "\u0137",
};
/* Language mk: Macedonian */
private static final String[] LANGUAGE_mk = {
- /* 0~ */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ keylabel_for_nordic_row2_11 */
+ // U+0450: "ѐ" CYRILLIC SMALL LETTER IE WITH GRAVE
+ /* more_keys_for_cyrillic_ie */ "\u0450",
+ /* more_keys_for_nordic_row2_10 ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null,
- /* ~38 */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_o */
// U+0455: "ѕ" CYRILLIC SMALL LETTER DZE
- /* 39 */ "\u0455",
+ /* keylabel_for_south_slavic_row1_6 */ "\u0455",
// U+045C: "ќ" CYRILLIC SMALL LETTER KJE
- /* 40 */ "\u045C",
+ /* keylabel_for_south_slavic_row2_11 */ "\u045C",
// U+0437: "з" CYRILLIC SMALL LETTER ZE
- /* 41 */ "\u0437",
+ /* keylabel_for_south_slavic_row3_1 */ "\u0437",
// U+0453: "ѓ" CYRILLIC SMALL LETTER GJE
- /* 42 */ "\u0453",
- // U+0450: "ѐ" CYRILLIC SMALL LETTER IE WITH GRAVE
- /* 43 */ "\u0450",
+ /* keylabel_for_south_slavic_row3_8 */ "\u0453",
// U+045D: "ѝ" CYRILLIC SMALL LETTER I WITH GRAVE
- /* 44 */ "\u045D",
- /* 45~ */
- null, null, null, null, null, null,
- /* ~50 */
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* more_keys_for_cyrillic_i */ "\u045D",
};
/* Language mn_MN: Mongolian (Mongolia) */
private static final String[] LANGUAGE_mn_MN = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0410: "А" CYRILLIC CAPITAL LETTER A
// U+0411: "Б" CYRILLIC CAPITAL LETTER BE
// U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52~ */
- null, null, null, null, null,
- /* ~56 */
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+20AE: "₮" TUGRIK SIGN
- /* 57 */ "\u20AE",
+ /* keylabel_for_currency */ "\u20AE",
};
/* Language nb: Norwegian Bokmål */
@@ -2367,16 +2459,7 @@ public final class KeyboardTextsTable {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
- /* 0 */ "\u00E0,\u00E4,\u00E1,\u00E2,\u00E3,\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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
- /* 2 */ null,
+ /* more_keys_for_a */ "\u00E0,\u00E4,\u00E1,\u00E2,\u00E3,\u0101",
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
@@ -2384,90 +2467,96 @@ public final class KeyboardTextsTable {
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F4,\u00F2,\u00F3,\u00F6,\u00F5,\u0153,\u014D",
+ /* more_keys_for_o */ "\u00F4,\u00F2,\u00F3,\u00F6,\u00F5,\u0153,\u014D",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
- /* 5~ */
+ /* more_keys_for_u */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119,\u0117,\u0113",
+ /* more_keys_for_i */ null,
+ /* double_quotes */ "!text/double_9qm_rqm",
+ /* single_quotes */ "!text/single_9qm_rqm",
+ /* more_keys_for_c ~ */
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~19 */
+ /* ~ more_keys_for_k */
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
- /* 20 */ "\u00E5",
+ /* keylabel_for_nordic_row1_11 */ "\u00E5",
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 21 */ "\u00F8",
+ /* keylabel_for_nordic_row2_10 */ "\u00F8",
// U+00E6: "æ" LATIN SMALL LETTER AE
- /* 22 */ "\u00E6",
+ /* keylabel_for_nordic_row2_11 */ "\u00E6",
+ /* more_keys_for_cyrillic_ie */ null,
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 23 */ "\u00F6",
+ /* more_keys_for_nordic_row2_10 */ "\u00F6",
+ /* keylabel_for_east_slavic_row1_9 ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_punctuation */
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 24 */ "\u00E4",
- /* 25~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_rqm",
- /* 53 */ "!text/double_9qm_rqm",
+ /* more_keys_for_nordic_row2_11 */ "\u00E4",
};
/* Language ne_NP: Nepali (Nepal) */
private static final String[] LANGUAGE_ne_NP = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0915: "क" DEVANAGARI LETTER KA
// U+0916: "ख" DEVANAGARI LETTER KHA
// U+0917: "ग" DEVANAGARI LETTER GA
- /* 51 */ "\u0915\u0916\u0917",
- /* 52~ */
- null, null, null, null, null,
- /* ~56 */
+ /* label_to_alpha_key */ "\u0915\u0916\u0917",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+0930/U+0941/U+002E "रु." NEPALESE RUPEE SIGN
- /* 57 */ "\u0930\u0941.",
- /* 58~ */
- null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~69 */
+ /* keylabel_for_currency */ "\u0930\u0941.",
+ /* more_keys_for_r ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_nordic_row2_11 */
// U+0967: "१" DEVANAGARI DIGIT ONE
- /* 70 */ "\u0967",
+ /* keylabel_for_symbols_1 */ "\u0967",
// U+0968: "२" DEVANAGARI DIGIT TWO
- /* 71 */ "\u0968",
+ /* keylabel_for_symbols_2 */ "\u0968",
// U+0969: "३" DEVANAGARI DIGIT THREE
- /* 72 */ "\u0969",
+ /* keylabel_for_symbols_3 */ "\u0969",
// U+096A: "४" DEVANAGARI DIGIT FOUR
- /* 73 */ "\u096A",
+ /* keylabel_for_symbols_4 */ "\u096A",
// U+096B: "५" DEVANAGARI DIGIT FIVE
- /* 74 */ "\u096B",
+ /* keylabel_for_symbols_5 */ "\u096B",
// U+096C: "६" DEVANAGARI DIGIT SIX
- /* 75 */ "\u096C",
+ /* keylabel_for_symbols_6 */ "\u096C",
// U+096D: "७" DEVANAGARI DIGIT SEVEN
- /* 76 */ "\u096D",
+ /* keylabel_for_symbols_7 */ "\u096D",
// U+096E: "८" DEVANAGARI DIGIT EIGHT
- /* 77 */ "\u096E",
+ /* keylabel_for_symbols_8 */ "\u096E",
// U+096F: "९" DEVANAGARI DIGIT NINE
- /* 78 */ "\u096F",
+ /* keylabel_for_symbols_9 */ "\u096F",
// U+0966: "०" DEVANAGARI DIGIT ZERO
- /* 79 */ "\u0966",
+ /* keylabel_for_symbols_0 */ "\u0966",
// Label for "switch to symbols" key.
- /* 80 */ "?\u0967\u0968\u0969",
+ /* label_to_symbol_key */ "?\u0967\u0968\u0969",
// Label for "switch to symbols with microphone" key. This string shouldn't include the "mic"
// part because it'll be appended by the code.
- /* 81 */ "\u0967\u0968\u0969",
- /* 82 */ "1",
- /* 83 */ "2",
- /* 84 */ "3",
- /* 85 */ "4",
- /* 86 */ "5",
- /* 87 */ "6",
- /* 88 */ "7",
- /* 89 */ "8",
- /* 90 */ "9",
- /* 91 */ "0",
+ /* label_to_symbol_with_microphone_key */ "\u0967\u0968\u0969",
+ /* additional_more_keys_for_symbols_1 */ "1",
+ /* additional_more_keys_for_symbols_2 */ "2",
+ /* additional_more_keys_for_symbols_3 */ "3",
+ /* additional_more_keys_for_symbols_4 */ "4",
+ /* additional_more_keys_for_symbols_5 */ "5",
+ /* additional_more_keys_for_symbols_6 */ "6",
+ /* additional_more_keys_for_symbols_7 */ "7",
+ /* additional_more_keys_for_symbols_8 */ "8",
+ /* additional_more_keys_for_symbols_9 */ "9",
+ /* additional_more_keys_for_symbols_0 */ "0",
};
/* Language nl: Dutch */
@@ -2480,7 +2569,22 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E1,\u00E4,\u00E2,\u00E0,\u00E6,\u00E3,\u00E5,\u0101",
+ /* more_keys_for_a */ "\u00E1,\u00E4,\u00E2,\u00E0,\u00E6,\u00E3,\u00E5,\u0101",
+ // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
+ // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
+ // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
+ // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
+ // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
+ // U+0153: "œ" LATIN SMALL LIGATURE OE
+ // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
+ // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
+ /* more_keys_for_o */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
+ // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
+ // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
+ // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
+ // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
+ // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
// U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
// U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
@@ -2488,7 +2592,7 @@ public final class KeyboardTextsTable {
// U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
// U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
// U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00EB,\u00EA,\u00E8,\u0119,\u0117,\u0113",
+ /* more_keys_for_e */ "\u00E9,\u00EB,\u00EA,\u00E8,\u0119,\u0117,\u0113",
// U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
// U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
// U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
@@ -2496,36 +2600,17 @@ public final class KeyboardTextsTable {
// U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
// U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
// U+0133: "ij" LATIN SMALL LIGATURE IJ
- /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B,\u0133",
- // U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
- // U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- // U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
- // U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
- // U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
- // U+0153: "œ" LATIN SMALL LIGATURE OE
- // U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- // U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
- // U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
- // U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
- // U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
- // U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
- // U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00FB,\u00F9,\u016B",
- /* 5 */ null,
+ /* more_keys_for_i */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B,\u0133",
+ /* double_quotes */ "!text/double_9qm_rqm",
+ /* single_quotes */ "!text/single_9qm_rqm",
+ /* more_keys_for_c */ null,
+ /* more_keys_for_s */ null,
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
- /* 7 */ null,
+ /* more_keys_for_n */ "\u00F1,\u0144",
+ /* label_to_alpha_key */ null,
// U+0133: "ij" LATIN SMALL LIGATURE IJ
- /* 8 */ "\u0133",
- /* 9~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_rqm",
- /* 53 */ "!text/double_9qm_rqm",
+ /* more_keys_for_y */ "\u0133",
};
/* Language pl: Polish */
@@ -2539,16 +2624,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u0105,\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // 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+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u0119,\u00E8,\u00E9,\u00EA,\u00EB,\u0117,\u0113",
- /* 2 */ null,
+ /* more_keys_for_a */ "\u0105,\u00E1,\u00E0,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -2557,36 +2633,40 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
- /* 4 */ null,
+ /* more_keys_for_o */ "\u00F3,\u00F6,\u00F4,\u00F2,\u00F5,\u0153,\u00F8,\u014D",
+ /* more_keys_for_u */ null,
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // 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+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u0119,\u00E8,\u00E9,\u00EA,\u00EB,\u0117,\u0113",
+ /* more_keys_for_i */ null,
+ /* double_quotes */ "!text/double_9qm_rqm",
+ /* single_quotes */ "!text/single_9qm_rqm",
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ /* more_keys_for_c */ "\u0107,\u00E7,\u010D",
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u015B,\u00DF,\u0161",
+ /* more_keys_for_s */ "\u015B,\u00DF,\u0161",
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- /* 6 */ "\u0144,\u00F1",
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u0107,\u00E7,\u010D",
- /* 8~ */
- null, null, null, null,
- /* ~11 */
+ /* more_keys_for_n */ "\u0144,\u00F1",
+ /* label_to_alpha_key ~ */
+ null, null, null,
+ /* ~ more_keys_for_d */
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
- /* 12 */ "\u017C,\u017A,\u017E",
- /* 13 */ null,
+ /* more_keys_for_z */ "\u017C,\u017A,\u017E",
+ /* more_keys_for_t */ null,
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
- /* 14 */ "\u0142",
- /* 15~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_rqm",
- /* 53 */ "!text/double_9qm_rqm",
+ /* more_keys_for_l */ "\u0142",
};
/* Language pt: Portuguese */
@@ -2599,22 +2679,7 @@ public final class KeyboardTextsTable {
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E1,\u00E3,\u00E0,\u00E2,\u00E4,\u00E5,\u00E6,\u00AA",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
- /* 1 */ "\u00E9,\u00EA,\u00E8,\u0119,\u0117,\u0113,\u00EB",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EE,\u00EC,\u00EF,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E1,\u00E3,\u00E0,\u00E2,\u00E4,\u00E5,\u00E6,\u00AA",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -2624,26 +2689,39 @@ public final class KeyboardTextsTable {
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F3,\u00F5,\u00F4,\u00F2,\u00F6,\u0153,\u00F8,\u014D,\u00BA",
+ /* more_keys_for_o */ "\u00F3,\u00F5,\u00F4,\u00F2,\u00F6,\u0153,\u00F8,\u014D,\u00BA",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
- /* 5 */ null,
- /* 6 */ null,
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
+ /* more_keys_for_e */ "\u00E9,\u00EA,\u00E8,\u0119,\u0117,\u0113,\u00EB",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EE,\u00EC,\u00EF,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u00E7,\u010D,\u0107",
+ /* more_keys_for_c */ "\u00E7,\u010D,\u0107",
};
/* Language rm: Raeto-Romance */
private static final String[] LANGUAGE_rm = {
- /* 0~ */
- null, null, null,
- /* ~2 */
+ /* more_keys_for_a */ null,
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
@@ -2651,7 +2729,7 @@ public final class KeyboardTextsTable {
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 3 */ "\u00F2,\u00F3,\u00F6,\u00F4,\u00F5,\u0153,\u00F8",
+ /* more_keys_for_o */ "\u00F2,\u00F3,\u00F6,\u00F4,\u00F5,\u0153,\u00F8",
};
/* Language ro: Romanian */
@@ -2665,72 +2743,65 @@ public final class KeyboardTextsTable {
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
- /* 0 */ "\u00E2,\u00E3,\u0103,\u00E0,\u00E1,\u00E4,\u00E6,\u00E5,\u0101",
- /* 1 */ null,
+ /* more_keys_for_a */ "\u00E2,\u00E3,\u0103,\u00E0,\u00E1,\u00E4,\u00E6,\u00E5,\u0101",
+ /* more_keys_for_o ~ */
+ null, null, null,
+ /* ~ more_keys_for_e */
// U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
// U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
// U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
// U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
// U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
// U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
- /* 3 */ null,
- /* 4 */ null,
+ /* more_keys_for_i */ "\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* double_quotes */ "!text/double_9qm_rqm",
+ /* single_quotes */ "!text/single_9qm_rqm",
+ /* more_keys_for_c */ null,
// U+0219: "ș" LATIN SMALL LETTER S WITH COMMA BELOW
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u0219,\u00DF,\u015B,\u0161",
- /* 6~ */
+ /* more_keys_for_s */ "\u0219,\u00DF,\u015B,\u0161",
+ /* more_keys_for_n ~ */
null, null, null, null, null,
- /* ~10 */
+ /* ~ more_keys_for_z */
// U+021B: "ț" LATIN SMALL LETTER T WITH COMMA BELOW
- /* 11 */ "\u021B",
- /* 12~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_rqm",
- /* 53 */ "!text/double_9qm_rqm",
+ /* more_keys_for_t */ "\u021B",
};
/* Language ru: Russian */
private static final String[] LANGUAGE_ru = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null,
- /* ~24 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ keylabel_for_nordic_row2_11 */
+ // U+0451: "ё" CYRILLIC SMALL LETTER IO
+ /* more_keys_for_cyrillic_ie */ "\u0451",
+ /* more_keys_for_nordic_row2_10 */ null,
// U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
- /* 25 */ "\u0449",
+ /* keylabel_for_east_slavic_row1_9 */ "\u0449",
// U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 26 */ "\u044A",
+ /* keylabel_for_east_slavic_row1_12 */ "\u044A",
// U+044B: "ы" CYRILLIC SMALL LETTER YERU
- /* 27 */ "\u044B",
+ /* keylabel_for_east_slavic_row2_1 */ "\u044B",
// U+044D: "э" CYRILLIC SMALL LETTER E
- /* 28 */ "\u044D",
+ /* keylabel_for_east_slavic_row2_11 */ "\u044D",
// U+0438: "и" CYRILLIC SMALL LETTER I
- /* 29 */ "\u0438",
- /* 30~ */
- null, null, null, null, null, null, null,
- /* ~36 */
+ /* keylabel_for_east_slavic_row3_5 */ "\u0438",
// U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 37 */ "\u044A",
- /* 38~ */
- null, null, null, null, null,
- /* ~42 */
- // U+0451: "ё" CYRILLIC SMALL LETTER IO
- /* 43 */ "\u0451",
- /* 44~ */
- null, null, null, null, null, null, null,
- /* ~50 */
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
+ /* more_keys_for_cyrillic_soft_sign */ "\u044A",
};
/* Language sk: Slovak */
@@ -2744,24 +2815,7 @@ public final class KeyboardTextsTable {
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
- /* 0 */ "\u00E1,\u00E4,\u0101,\u00E0,\u00E2,\u00E3,\u00E5,\u00E6,\u0105",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- /* 1 */ "\u00E9,\u011B,\u0113,\u0117,\u00E8,\u00EA,\u00EB,\u0119",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
- /* 2 */ "\u00ED,\u012B,\u012F,\u00EC,\u00EE,\u00EF,\u0131",
+ /* more_keys_for_a */ "\u00E1,\u00E4,\u0101,\u00E0,\u00E2,\u00E3,\u00E5,\u00E6,\u0105",
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
@@ -2770,7 +2824,7 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
- /* 3 */ "\u00F4,\u00F3,\u00F6,\u00F2,\u00F5,\u0153,\u0151,\u00F8",
+ /* more_keys_for_o */ "\u00F4,\u00F3,\u00F6,\u00F2,\u00F5,\u0153,\u0151,\u00F8",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016F: "ů" LATIN SMALL LETTER U WITH RING ABOVE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
@@ -2779,95 +2833,131 @@ public final class KeyboardTextsTable {
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+0171: "ű" LATIN SMALL LETTER U WITH DOUBLE ACUTE
- /* 4 */ "\u00FA,\u016F,\u00FC,\u016B,\u0173,\u00F9,\u00FB,\u0171",
+ /* more_keys_for_u */ "\u00FA,\u016F,\u00FC,\u016B,\u0173,\u00F9,\u00FB,\u0171",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+011B: "ě" LATIN SMALL LETTER E WITH CARON
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ /* more_keys_for_e */ "\u00E9,\u011B,\u0113,\u0117,\u00E8,\u00EA,\u00EB,\u0119",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ /* more_keys_for_i */ "\u00ED,\u012B,\u012F,\u00EC,\u00EE,\u00EF,\u0131",
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ /* more_keys_for_c */ "\u010D,\u00E7,\u0107",
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
- /* 5 */ "\u0161,\u00DF,\u015B,\u015F",
+ /* more_keys_for_s */ "\u0161,\u00DF,\u015B,\u015F",
// U+0148: "ň" LATIN SMALL LETTER N WITH CARON
// U+0146: "ņ" LATIN SMALL LETTER N WITH CEDILLA
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u0148,\u0146,\u00F1,\u0144,\u0144",
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u010D,\u00E7,\u0107",
+ /* more_keys_for_n */ "\u0148,\u0146,\u00F1,\u0144,\u0144",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF",
+ /* more_keys_for_y */ "\u00FD,\u00FF",
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
- /* 9 */ "\u010F",
- // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
- /* 10 */ "\u0155,\u0159,\u0157",
- // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
- // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
- /* 11 */ "\u0165,\u0163",
+ /* more_keys_for_d */ "\u010F",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
- /* 12 */ "\u017E,\u017C,\u017A",
- // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
- /* 13 */ "\u0137",
+ /* more_keys_for_z */ "\u017E,\u017C,\u017A",
+ // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
+ // U+0163: "ţ" LATIN SMALL LETTER T WITH CEDILLA
+ /* more_keys_for_t */ "\u0165,\u0163",
// U+013E: "ľ" LATIN SMALL LETTER L WITH CARON
// U+013A: "ĺ" LATIN SMALL LETTER L WITH ACUTE
// U+013C: "ļ" LATIN SMALL LETTER L WITH CEDILLA
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
- /* 14 */ "\u013E,\u013A,\u013C,\u0142",
+ /* more_keys_for_l */ "\u013E,\u013A,\u013C,\u0142",
// U+0123: "ģ" LATIN SMALL LETTER G WITH CEDILLA
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
- /* 15 */ "\u0123,\u011F",
- /* 16~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_g */ "\u0123,\u011F",
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
+ /* keylabel_for_currency */ null,
+ // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
+ /* more_keys_for_r */ "\u0155,\u0159,\u0157",
+ // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
+ /* more_keys_for_k */ "\u0137",
};
/* Language sl: Slovenian */
private static final String[] LANGUAGE_sl = {
- /* 0~ */
+ /* more_keys_for_a ~ */
null, null, null, null, null,
- /* ~4 */
- // U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u0161",
- /* 6 */ null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- /* 7 */ "\u010D,\u0107",
- /* 8 */ null,
+ /* more_keys_for_c */ "\u010D,\u0107",
+ // U+0161: "š" LATIN SMALL LETTER S WITH CARON
+ /* more_keys_for_s */ "\u0161",
+ /* more_keys_for_n ~ */
+ null, null, null,
+ /* ~ more_keys_for_y */
// U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
- /* 9 */ "\u0111",
- /* 10 */ null,
- /* 11 */ null,
+ /* more_keys_for_d */ "\u0111",
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
- /* 12 */ "\u017E",
- /* 13~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null,
- /* ~51 */
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_z */ "\u017E",
+ /* more_keys_for_t ~ */
+ null, null, null,
+ /* ~ more_keys_for_g */
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
};
/* Language sr: Serbian */
private static final String[] LANGUAGE_sr = {
- /* 0~ */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
+ // END: More keys definitions for Serbian (Cyrillic)
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null,
+ /* ~ more_keys_for_g */
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
+ /* keylabel_for_currency ~ */
+ null, null, null, null, null, null,
+ /* ~ keylabel_for_nordic_row2_11 */
+ // U+0450: "ѐ" CYRILLIC SMALL LETTER IE WITH GRAVE
+ /* more_keys_for_cyrillic_ie */ "\u0450",
+ /* more_keys_for_nordic_row2_10 ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null,
- /* ~38 */
+ null, null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_cyrillic_o */
// TODO: Move these to sr-Latn once we can handle IETF language tag with script name specified.
// BEGIN: More keys definitions for Serbian (Latin)
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
@@ -2887,30 +2977,15 @@ public final class KeyboardTextsTable {
// END: More keys definitions for Serbian (Latin)
// BEGIN: More keys definitions for Serbian (Cyrillic)
// U+0437: "з" CYRILLIC SMALL LETTER ZE
- /* 39 */ "\u0437",
+ /* keylabel_for_south_slavic_row1_6 */ "\u0437",
// U+045B: "ћ" CYRILLIC SMALL LETTER TSHE
- /* 40 */ "\u045B",
+ /* keylabel_for_south_slavic_row2_11 */ "\u045B",
// U+0455: "ѕ" CYRILLIC SMALL LETTER DZE
- /* 41 */ "\u0455",
+ /* keylabel_for_south_slavic_row3_1 */ "\u0455",
// U+0452: "ђ" CYRILLIC SMALL LETTER DJE
- /* 42 */ "\u0452",
- // U+0450: "ѐ" CYRILLIC SMALL LETTER IE WITH GRAVE
- /* 43 */ "\u0450",
+ /* keylabel_for_south_slavic_row3_8 */ "\u0452",
// U+045D: "ѝ" CYRILLIC SMALL LETTER I WITH GRAVE
- /* 44 */ "\u045D",
- /* 45~ */
- null, null, null, null, null, null,
- /* ~50 */
- // END: More keys definitions for Serbian (Cyrillic)
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_cyrillic_i */ "\u045D",
};
/* Language sv: Swedish */
@@ -2920,82 +2995,84 @@ public final class KeyboardTextsTable {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
// U+00E3: "ã" LATIN SMALL LETTER A WITH TILDE
- /* 0 */ "\u00E1,\u00E0,\u00E2,\u0105,\u00E3",
- // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- /* 1 */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- /* 2 */ "\u00ED,\u00EC,\u00EE,\u00EF",
+ /* more_keys_for_a */ "\u00E1,\u00E0,\u00E2,\u0105,\u00E3",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F3,\u00F2,\u00F4,\u00F5,\u014D",
+ /* more_keys_for_o */ "\u00F3,\u00F2,\u00F4,\u00F5,\u014D",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FC,\u00FA,\u00F9,\u00FB,\u016B",
+ /* more_keys_for_u */ "\u00FC,\u00FA,\u00F9,\u00FB,\u016B",
+ // 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+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EA,\u00EB,\u0119",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ /* more_keys_for_i */ "\u00ED,\u00EC,\u00EE,\u00EF",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
- /* 5 */ "\u015B,\u0161,\u015F,\u00DF",
+ /* more_keys_for_s */ "\u015B,\u0161,\u015F,\u00DF",
// U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
// U+0148: "ň" LATIN SMALL LETTER N WITH CARON
- /* 6 */ "\u0144,\u00F1,\u0148",
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_n */ "\u0144,\u00F1,\u0148",
+ /* label_to_alpha_key */ null,
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+00FF: "ÿ" LATIN SMALL LETTER Y WITH DIAERESIS
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
- /* 8 */ "\u00FD,\u00FF,\u00FC",
+ /* more_keys_for_y */ "\u00FD,\u00FF,\u00FC",
// U+00F0: "ð" LATIN SMALL LETTER ETH
// U+010F: "ď" LATIN SMALL LETTER D WITH CARON
- /* 9 */ "\u00F0,\u010F",
- // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
- /* 10 */ "\u0159",
- // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
- // U+00FE: "þ" LATIN SMALL LETTER THORN
- /* 11 */ "\u0165,\u00FE",
+ /* more_keys_for_d */ "\u00F0,\u010F",
// U+017A: "ź" LATIN SMALL LETTER Z WITH ACUTE
// U+017E: "ž" LATIN SMALL LETTER Z WITH CARON
// U+017C: "ż" LATIN SMALL LETTER Z WITH DOT ABOVE
- /* 12 */ "\u017A,\u017E,\u017C",
- /* 13 */ null,
+ /* more_keys_for_z */ "\u017A,\u017E,\u017C",
+ // U+0165: "ť" LATIN SMALL LETTER T WITH CARON
+ // U+00FE: "þ" LATIN SMALL LETTER THORN
+ /* more_keys_for_t */ "\u0165,\u00FE",
// U+0142: "ł" LATIN SMALL LETTER L WITH STROKE
- /* 14 */ "\u0142",
- /* 15~ */
- null, null, null, null, null,
- /* ~19 */
+ /* more_keys_for_l */ "\u0142",
+ /* more_keys_for_g */ null,
+ /* single_angle_quotes */ "!text/single_raqm_laqm",
+ /* double_angle_quotes */ "!text/double_raqm_laqm",
+ /* keylabel_for_currency */ null,
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ /* more_keys_for_r */ "\u0159",
+ /* more_keys_for_k */ null,
// U+00E5: "å" LATIN SMALL LETTER A WITH RING ABOVE
- /* 20 */ "\u00E5",
+ /* keylabel_for_nordic_row1_11 */ "\u00E5",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
- /* 21 */ "\u00F6",
+ /* keylabel_for_nordic_row2_10 */ "\u00F6",
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
- /* 22 */ "\u00E4",
+ /* keylabel_for_nordic_row2_11 */ "\u00E4",
+ /* more_keys_for_cyrillic_ie */ null,
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+0153: "œ" LATIN SMALL LIGATURE OE
- /* 23 */ "\u00F8,\u0153",
+ /* more_keys_for_nordic_row2_10 */ "\u00F8,\u0153",
+ /* keylabel_for_east_slavic_row1_9 ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_punctuation */
// U+00E6: "æ" LATIN SMALL LETTER AE
- /* 24 */ "\u00E6",
- /* 25~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~53 */
- /* 54 */ "!text/single_raqm_laqm",
- /* 55 */ "!text/double_raqm_laqm",
+ /* more_keys_for_nordic_row2_11 */ "\u00E6",
};
/* Language sw: Swahili */
@@ -3009,19 +3086,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
- // 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
- /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- /* 2 */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -3030,43 +3095,54 @@ public final class KeyboardTextsTable {
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
- /* 3 */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
+ /* more_keys_for_o */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
// 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+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_u */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
+ // 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
+ /* more_keys_for_e */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ /* more_keys_for_i */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ /* more_keys_for_c */ "\u00E7",
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
- /* 5 */ "\u00DF",
+ /* more_keys_for_s */ "\u00DF",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- /* 6 */ "\u00F1",
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- /* 7 */ "\u00E7",
- /* 8~ */
- null, null, null, null, null, null, null,
- /* ~14 */
- /* 15 */ "g\'",
+ /* more_keys_for_n */ "\u00F1",
+ /* label_to_alpha_key ~ */
+ null, null, null, null, null, null,
+ /* ~ more_keys_for_l */
+ /* more_keys_for_g */ "g\'",
};
/* Language th: Thai */
private static final String[] LANGUAGE_th = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null,
- /* ~50 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_n */
// Label for "switch to alphabetic" key.
// U+0E01: "ก" THAI CHARACTER KO KAI
// U+0E02: "ข" THAI CHARACTER KHO KHAI
// U+0E04: "ค" THAI CHARACTER KHO KHWAI
- /* 51 */ "\u0E01\u0E02\u0E04",
- /* 52~ */
- null, null, null, null, null,
- /* ~56 */
+ /* label_to_alpha_key */ "\u0E01\u0E02\u0E04",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+0E3F: "฿" THAI CURRENCY SYMBOL BAHT
- /* 57 */ "\u0E3F",
+ /* keylabel_for_currency */ "\u0E3F",
};
/* Language tl: Tagalog */
@@ -3081,22 +3157,7 @@ public final class KeyboardTextsTable {
// U+00E6: "æ" LATIN SMALL LETTER AE
// U+0101: "ā" LATIN SMALL LETTER A WITH MACRON
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E1,\u00E0,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
- // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
- // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
- // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
- // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
- /* 1 */ "\u00E9,\u00E8,\u00EB,\u00EA,\u0119,\u0117,\u0113",
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E1,\u00E0,\u00E4,\u00E2,\u00E3,\u00E5,\u0105,\u00E6,\u0101,\u00AA",
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
@@ -3106,36 +3167,44 @@ public final class KeyboardTextsTable {
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F3,\u00F2,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
+ /* more_keys_for_o */ "\u00F3,\u00F2,\u00F6,\u00F4,\u00F5,\u00F8,\u0153,\u014D,\u00BA",
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
- /* 5 */ null,
- // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
- /* 6 */ "\u00F1,\u0144",
+ /* more_keys_for_u */ "\u00FA,\u00FC,\u00F9,\u00FB,\u016B",
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+00EB: "ë" LATIN SMALL LETTER E WITH DIAERESIS
+ // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
+ // U+0119: "ę" LATIN SMALL LETTER E WITH OGONEK
+ // U+0117: "ė" LATIN SMALL LETTER E WITH DOT ABOVE
+ // U+0113: "ē" LATIN SMALL LETTER E WITH MACRON
+ /* more_keys_for_e */ "\u00E9,\u00E8,\u00EB,\u00EA,\u0119,\u0117,\u0113",
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u00ED,\u00EF,\u00EC,\u00EE,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
// U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
// U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
// U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
+ /* more_keys_for_s */ null,
+ // U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
+ // U+0144: "ń" LATIN SMALL LETTER N WITH ACUTE
+ /* more_keys_for_n */ "\u00F1,\u0144",
};
/* Language tr: Turkish */
private static final String[] LANGUAGE_tr = {
// U+00E2: "â" LATIN SMALL LETTER A WITH CIRCUMFLEX
- /* 0 */ "\u00E2",
- /* 1 */ null,
- // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- /* 2 */ "\u0131,\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* more_keys_for_a */ "\u00E2",
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+0153: "œ" LATIN SMALL LIGATURE OE
@@ -3144,72 +3213,85 @@ public final class KeyboardTextsTable {
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
- /* 3 */ "\u00F6,\u00F4,\u0153,\u00F2,\u00F3,\u00F5,\u00F8,\u014D",
+ /* more_keys_for_o */ "\u00F6,\u00F4,\u0153,\u00F2,\u00F3,\u00F5,\u00F8,\u014D",
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00FB: "û" LATIN SMALL LETTER U WITH CIRCUMFLEX
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_u */ "\u00FC,\u00FB,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_e */ null,
+ // U+0131: "ı" LATIN SMALL LETTER DOTLESS I
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012F: "į" LATIN SMALL LETTER I WITH OGONEK
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ /* more_keys_for_i */ "\u0131,\u00EE,\u00EF,\u00EC,\u00ED,\u012F,\u012B",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
+ // U+010D: "č" LATIN SMALL LETTER C WITH CARON
+ /* more_keys_for_c */ "\u00E7,\u0107,\u010D",
// U+015F: "ş" LATIN SMALL LETTER S WITH CEDILLA
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
// U+015B: "ś" LATIN SMALL LETTER S WITH ACUTE
// U+0161: "š" LATIN SMALL LETTER S WITH CARON
- /* 5 */ "\u015F,\u00DF,\u015B,\u0161",
- /* 6 */ null,
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- // U+0107: "ć" LATIN SMALL LETTER C WITH ACUTE
- // U+010D: "č" LATIN SMALL LETTER C WITH CARON
- /* 7 */ "\u00E7,\u0107,\u010D",
- /* 8~ */
+ /* more_keys_for_s */ "\u015F,\u00DF,\u015B,\u0161",
+ /* more_keys_for_n ~ */
null, null, null, null, null, null, null,
- /* ~14 */
+ /* ~ more_keys_for_l */
// U+011F: "ğ" LATIN SMALL LETTER G WITH BREVE
- /* 15 */ "\u011F",
+ /* more_keys_for_g */ "\u011F",
};
/* Language uk: Ukrainian */
private static final String[] LANGUAGE_uk = {
- /* 0~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null,
- /* ~24 */
+ /* more_keys_for_a ~ */
+ null, null, null, null, null,
+ /* ~ more_keys_for_i */
+ /* double_quotes */ "!text/double_9qm_lqm",
+ /* single_quotes */ "!text/single_9qm_lqm",
+ /* more_keys_for_c ~ */
+ null, null, null,
+ /* ~ more_keys_for_n */
+ // Label for "switch to alphabetic" key.
+ // U+0410: "А" CYRILLIC CAPITAL LETTER A
+ // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
+ // U+0412: "В" CYRILLIC CAPITAL LETTER VE
+ /* label_to_alpha_key */ "\u0410\u0411\u0412",
+ /* more_keys_for_y ~ */
+ null, null, null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
+ // U+20B4: "₴" HRYVNIA SIGN
+ /* keylabel_for_currency */ "\u20B4",
+ /* more_keys_for_r ~ */
+ null, null, null, null, null, null, null,
+ /* ~ more_keys_for_nordic_row2_10 */
// U+0449: "щ" CYRILLIC SMALL LETTER SHCHA
- /* 25 */ "\u0449",
+ /* keylabel_for_east_slavic_row1_9 */ "\u0449",
// U+0457: "ї" CYRILLIC SMALL LETTER YI
- /* 26 */ "\u0457",
+ /* keylabel_for_east_slavic_row1_12 */ "\u0457",
// U+0456: "і" CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
- /* 27 */ "\u0456",
+ /* keylabel_for_east_slavic_row2_1 */ "\u0456",
// U+0454: "є" CYRILLIC SMALL LETTER UKRAINIAN IE
- /* 28 */ "\u0454",
+ /* keylabel_for_east_slavic_row2_11 */ "\u0454",
// U+0438: "и" CYRILLIC SMALL LETTER I
- /* 29 */ "\u0438",
- /* 30~ */
- null, null, null,
- /* ~32 */
+ /* keylabel_for_east_slavic_row3_5 */ "\u0438",
+ // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
+ /* more_keys_for_cyrillic_soft_sign */ "\u044A",
+ /* more_keys_for_punctuation ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null,
+ /* ~ more_keys_for_cyrillic_en */
// U+0491: "ґ" CYRILLIC SMALL LETTER GHE WITH UPTURN
- /* 33 */ "\u0491",
+ /* more_keys_for_cyrillic_ghe */ "\u0491",
// U+0457: "ї" CYRILLIC SMALL LETTER YI
- /* 34 */ "\u0457",
- /* 35 */ null,
- /* 36 */ null,
- // U+044A: "ъ" CYRILLIC SMALL LETTER HARD SIGN
- /* 37 */ "\u044A",
- /* 38~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null,
- /* ~50 */
- // Label for "switch to alphabetic" key.
- // U+0410: "А" CYRILLIC CAPITAL LETTER A
- // U+0411: "Б" CYRILLIC CAPITAL LETTER BE
- // U+0412: "В" CYRILLIC CAPITAL LETTER VE
- /* 51 */ "\u0410\u0411\u0412",
- /* 52 */ "!text/single_9qm_lqm",
- /* 53 */ "!text/double_9qm_lqm",
- /* 54~ */
- null, null, null,
- /* ~56 */
- // U+20B4: "₴" HRYVNIA SIGN
- /* 57 */ "\u20B4",
+ /* more_keys_for_east_slavic_row2_1 */ "\u0457",
};
/* Language vi: Vietnamese */
@@ -3231,25 +3313,7 @@ public final class KeyboardTextsTable {
// U+1EA9: "ẩ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
// U+1EAB: "ẫ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
// U+1EAD: "ậ" LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
- /* 0 */ "\u00E0,\u00E1,\u1EA3,\u00E3,\u1EA1,\u0103,\u1EB1,\u1EAF,\u1EB3,\u1EB5,\u1EB7,\u00E2,\u1EA7,\u1EA5,\u1EA9,\u1EAB,\u1EAD",
- // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
- // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
- // U+1EBB: "ẻ" LATIN SMALL LETTER E WITH HOOK ABOVE
- // U+1EBD: "ẽ" LATIN SMALL LETTER E WITH TILDE
- // U+1EB9: "ẹ" LATIN SMALL LETTER E WITH DOT BELOW
- // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
- // U+1EC1: "ề" LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
- // U+1EBF: "ế" LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
- // U+1EC3: "ể" LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
- // U+1EC5: "ễ" LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
- // U+1EC7: "ệ" LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
- /* 1 */ "\u00E8,\u00E9,\u1EBB,\u1EBD,\u1EB9,\u00EA,\u1EC1,\u1EBF,\u1EC3,\u1EC5,\u1EC7",
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+1EC9: "ỉ" LATIN SMALL LETTER I WITH HOOK ABOVE
- // U+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
- // U+1ECB: "ị" LATIN SMALL LETTER I WITH DOT BELOW
- /* 2 */ "\u00EC,\u00ED,\u1EC9,\u0129,\u1ECB",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u1EA3,\u00E3,\u1EA1,\u0103,\u1EB1,\u1EAF,\u1EB3,\u1EB5,\u1EB7,\u00E2,\u1EA7,\u1EA5,\u1EA9,\u1EAB,\u1EAD",
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+1ECF: "ỏ" LATIN SMALL LETTER O WITH HOOK ABOVE
@@ -3267,7 +3331,7 @@ public final class KeyboardTextsTable {
// U+1EDF: "ở" LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
// U+1EE1: "ỡ" LATIN SMALL LETTER O WITH HORN AND TILDE
// U+1EE3: "ợ" LATIN SMALL LETTER O WITH HORN AND DOT BELOW
- /* 3 */ "\u00F2,\u00F3,\u1ECF,\u00F5,\u1ECD,\u00F4,\u1ED3,\u1ED1,\u1ED5,\u1ED7,\u1ED9,\u01A1,\u1EDD,\u1EDB,\u1EDF,\u1EE1,\u1EE3",
+ /* more_keys_for_o */ "\u00F2,\u00F3,\u1ECF,\u00F5,\u1ECD,\u00F4,\u1ED3,\u1ED1,\u1ED5,\u1ED7,\u1ED9,\u01A1,\u1EDD,\u1EDB,\u1EDF,\u1EE1,\u1EE3",
// U+00F9: "ù" LATIN SMALL LETTER U WITH GRAVE
// U+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+1EE7: "ủ" LATIN SMALL LETTER U WITH HOOK ABOVE
@@ -3279,26 +3343,41 @@ public final class KeyboardTextsTable {
// U+1EED: "ử" LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
// U+1EEF: "ữ" LATIN SMALL LETTER U WITH HORN AND TILDE
// U+1EF1: "ự" LATIN SMALL LETTER U WITH HORN AND DOT BELOW
- /* 4 */ "\u00F9,\u00FA,\u1EE7,\u0169,\u1EE5,\u01B0,\u1EEB,\u1EE9,\u1EED,\u1EEF,\u1EF1",
- /* 5~ */
- null, null, null,
- /* ~7 */
+ /* more_keys_for_u */ "\u00F9,\u00FA,\u1EE7,\u0169,\u1EE5,\u01B0,\u1EEB,\u1EE9,\u1EED,\u1EEF,\u1EF1",
+ // U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
+ // U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
+ // U+1EBB: "ẻ" LATIN SMALL LETTER E WITH HOOK ABOVE
+ // U+1EBD: "ẽ" LATIN SMALL LETTER E WITH TILDE
+ // U+1EB9: "ẹ" LATIN SMALL LETTER E WITH DOT BELOW
+ // U+00EA: "ê" LATIN SMALL LETTER E WITH CIRCUMFLEX
+ // U+1EC1: "ề" LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
+ // U+1EBF: "ế" LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
+ // U+1EC3: "ể" LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+ // U+1EC5: "ễ" LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
+ // U+1EC7: "ệ" LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+ /* more_keys_for_e */ "\u00E8,\u00E9,\u1EBB,\u1EBD,\u1EB9,\u00EA,\u1EC1,\u1EBF,\u1EC3,\u1EC5,\u1EC7",
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+1EC9: "ỉ" LATIN SMALL LETTER I WITH HOOK ABOVE
+ // U+0129: "ĩ" LATIN SMALL LETTER I WITH TILDE
+ // U+1ECB: "ị" LATIN SMALL LETTER I WITH DOT BELOW
+ /* more_keys_for_i */ "\u00EC,\u00ED,\u1EC9,\u0129,\u1ECB",
+ /* double_quotes ~ */
+ null, null, null, null, null, null,
+ /* ~ label_to_alpha_key */
// U+1EF3: "ỳ" LATIN SMALL LETTER Y WITH GRAVE
// U+00FD: "ý" LATIN SMALL LETTER Y WITH ACUTE
// U+1EF7: "ỷ" LATIN SMALL LETTER Y WITH HOOK ABOVE
// U+1EF9: "ỹ" LATIN SMALL LETTER Y WITH TILDE
// U+1EF5: "ỵ" LATIN SMALL LETTER Y WITH DOT BELOW
- /* 8 */ "\u1EF3,\u00FD,\u1EF7,\u1EF9,\u1EF5",
+ /* more_keys_for_y */ "\u1EF3,\u00FD,\u1EF7,\u1EF9,\u1EF5",
// U+0111: "đ" LATIN SMALL LETTER D WITH STROKE
- /* 9 */ "\u0111",
- /* 10~ */
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
- null, null,
- /* ~56 */
+ /* more_keys_for_d */ "\u0111",
+ /* more_keys_for_z ~ */
+ null, null, null, null, null, null,
+ /* ~ double_angle_quotes */
// U+20AB: "₫" DONG SIGN
- /* 57 */ "\u20AB",
+ /* keylabel_for_currency */ "\u20AB",
};
/* Language zu: Zulu */
@@ -3312,19 +3391,7 @@ public final class KeyboardTextsTable {
// 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
- /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
- // 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
- /* 1 */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
- // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
- // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
- // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
- // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
- // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
- /* 2 */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u00E2,\u00E4,\u00E6,\u00E3,\u00E5,\u0101",
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
@@ -3333,19 +3400,33 @@ public final class KeyboardTextsTable {
// U+00F8: "ø" LATIN SMALL LETTER O WITH STROKE
// U+014D: "ō" LATIN SMALL LETTER O WITH MACRON
// U+00F5: "õ" LATIN SMALL LETTER O WITH TILDE
- /* 3 */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
+ /* more_keys_for_o */ "\u00F4,\u00F6,\u00F2,\u00F3,\u0153,\u00F8,\u014D,\u00F5",
// 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+00FA: "ú" LATIN SMALL LETTER U WITH ACUTE
// U+016B: "ū" LATIN SMALL LETTER U WITH MACRON
- /* 4 */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
+ /* more_keys_for_u */ "\u00FB,\u00FC,\u00F9,\u00FA,\u016B",
+ // 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
+ /* more_keys_for_e */ "\u00E8,\u00E9,\u00EA,\u00EB,\u0113",
+ // U+00EE: "î" LATIN SMALL LETTER I WITH CIRCUMFLEX
+ // U+00EF: "ï" LATIN SMALL LETTER I WITH DIAERESIS
+ // U+00ED: "í" LATIN SMALL LETTER I WITH ACUTE
+ // U+012B: "ī" LATIN SMALL LETTER I WITH MACRON
+ // U+00EC: "ì" LATIN SMALL LETTER I WITH GRAVE
+ /* more_keys_for_i */ "\u00EE,\u00EF,\u00ED,\u012B,\u00EC",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
+ /* more_keys_for_c */ "\u00E7",
// U+00DF: "ß" LATIN SMALL LETTER SHARP S
- /* 5 */ "\u00DF",
+ /* more_keys_for_s */ "\u00DF",
// U+00F1: "ñ" LATIN SMALL LETTER N WITH TILDE
- /* 6 */ "\u00F1",
- // U+00E7: "ç" LATIN SMALL LETTER C WITH CEDILLA
- /* 7 */ "\u00E7",
+ /* more_keys_for_n */ "\u00F1",
};
/* Language zz: Alphabet */
@@ -3361,28 +3442,7 @@ public final class KeyboardTextsTable {
// U+0103: "ă" LATIN SMALL LETTER A WITH BREVE
// U+0105: "ą" LATIN SMALL LETTER A WITH OGONEK
// U+00AA: "ª" FEMININE ORDINAL INDICATOR
- /* 0 */ "\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u00E3,\u00E5,\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
- /* 1 */ "\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
- /* 2 */ "\u00EC,\u00ED,\u00EE,\u00EF,\u0129,\u012B,\u012D,\u012F,\u0131,\u0133",
+ /* more_keys_for_a */ "\u00E0,\u00E1,\u00E2,\u00E3,\u00E4,\u00E5,\u00E6,\u00E3,\u00E5,\u0101,\u0103,\u0105,\u00AA",
// U+00F2: "ò" LATIN SMALL LETTER O WITH GRAVE
// U+00F3: "ó" LATIN SMALL LETTER O WITH ACUTE
// U+00F4: "ô" LATIN SMALL LETTER O WITH CIRCUMFLEX
@@ -3394,7 +3454,7 @@ public final class KeyboardTextsTable {
// U+0151: "ő" LATIN SMALL LETTER O WITH DOUBLE ACUTE
// U+0153: "œ" LATIN SMALL LIGATURE OE
// U+00BA: "º" MASCULINE ORDINAL INDICATOR
- /* 3 */ "\u00F2,\u00F3,\u00F4,\u00F5,\u00F6,\u00F8,\u014D,\u014F,\u0151,\u0153,\u00BA",
+ /* more_keys_for_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
@@ -3405,130 +3465,167 @@ public final class KeyboardTextsTable {
// 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
- /* 4 */ "\u00F9,\u00FA,\u00FB,\u00FC,\u0169,\u016B,\u016D,\u016F,\u0171,\u0173",
+ /* more_keys_for_u */ "\u00F9,\u00FA,\u00FB,\u00FC,\u0169,\u016B,\u016D,\u016F,\u0171,\u0173",
+ // 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
+ /* more_keys_for_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
+ /* more_keys_for_i */ "\u00EC,\u00ED,\u00EE,\u00EF,\u0129,\u012B,\u012D,\u012F,\u0131,\u0133",
+ /* double_quotes */ null,
+ /* single_quotes */ null,
+ // 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
+ /* more_keys_for_c */ "\u00E7,\u0107,\u0109,\u010B,\u010D",
// 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
- /* 5 */ "\u00DF,\u015B,\u015D,\u015F,\u0161,\u017F",
+ /* more_keys_for_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
- /* 6 */ "\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
- /* 7 */ "\u00E7,\u0107,\u0109,\u010B,\u010D",
+ /* more_keys_for_n */ "\u00F1,\u0144,\u0146,\u0148,\u0149,\u014B",
+ /* label_to_alpha_key */ null,
// 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
- /* 8 */ "\u00FD,\u0177,\u00FF,\u0133",
+ /* more_keys_for_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
- /* 9 */ "\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
- /* 10 */ "\u0155,\u0157,\u0159",
+ /* more_keys_for_d */ "\u010F,\u0111,\u00F0",
+ // 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
+ /* more_keys_for_z */ "\u017A,\u017C,\u017E",
// 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
- /* 11 */ "\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
- /* 12 */ "\u017A,\u017C,\u017E",
- // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
- // U+0138: "ĸ" LATIN SMALL LETTER KRA
- /* 13 */ "\u0137,\u0138",
+ /* more_keys_for_t */ "\u00FE,\u0163,\u0165,\u0167",
// 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
- /* 14 */ "\u013A,\u013C,\u013E,\u0140,\u0142",
+ /* more_keys_for_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
- /* 15 */ "\u011D,\u011F,\u0121,\u0123",
- /* 16 */ null,
+ /* more_keys_for_g */ "\u011D,\u011F,\u0121,\u0123",
+ /* single_angle_quotes ~ */
+ null, null, null,
+ /* ~ keylabel_for_currency */
+ // U+0155: "ŕ" LATIN SMALL LETTER R WITH ACUTE
+ // U+0157: "ŗ" LATIN SMALL LETTER R WITH CEDILLA
+ // U+0159: "ř" LATIN SMALL LETTER R WITH CARON
+ /* more_keys_for_r */ "\u0155,\u0157,\u0159",
+ // U+0137: "ķ" LATIN SMALL LETTER K WITH CEDILLA
+ // U+0138: "ĸ" LATIN SMALL LETTER KRA
+ /* more_keys_for_k */ "\u0137,\u0138",
+ /* keylabel_for_nordic_row1_11 ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null,
+ /* ~ more_keys_for_question */
// U+0125: "ĥ" LATIN SMALL LETTER H WITH CIRCUMFLEX
- /* 17 */ "\u0125",
- // U+0135: "ĵ" LATIN SMALL LETTER J WITH CIRCUMFLEX
- /* 18 */ "\u0135",
+ /* more_keys_for_h */ "\u0125",
// U+0175: "ŵ" LATIN SMALL LETTER W WITH CIRCUMFLEX
- /* 19 */ "\u0175",
+ /* more_keys_for_w */ "\u0175",
+ /* more_keys_for_cyrillic_u ~ */
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
+ null, null, null, null,
+ /* ~ more_keys_for_v */
+ // U+0135: "ĵ" LATIN SMALL LETTER J WITH CIRCUMFLEX
+ /* more_keys_for_j */ "\u0135",
};
// TODO: Use the language + "_" + region representation for the locale string key.
// Currently we are dropping the region from the key.
private static final Object[] LANGUAGES_AND_TEXTS = {
// "locale", TEXT_ARRAY, /* numberOfNonNullText/lengthOf_TEXT_ARRAY localeName */
- "DEFAULT", LANGUAGE_DEFAULT, /* 156/156 default */
- "af", LANGUAGE_af, /* 8/ 9 Afrikaans */
- "ar", LANGUAGE_ar, /* 48/120 Arabic */
- "az", LANGUAGE_az_AZ, /* 8/ 16 Azerbaijani (Azerbaijan) */
- "be", LANGUAGE_be_BY, /* 10/ 54 Belarusian (Belarus) */
- "bg", LANGUAGE_bg, /* 2/ 54 Bulgarian */
- "ca", LANGUAGE_ca, /* 11/ 62 Catalan */
- "cs", LANGUAGE_cs, /* 17/ 56 Czech */
- "da", LANGUAGE_da, /* 19/ 56 Danish */
- "de", LANGUAGE_de, /* 16/ 56 German */
- "el", LANGUAGE_el, /* 1/ 52 Greek */
- "en", LANGUAGE_en, /* 8/ 8 English */
- "eo", LANGUAGE_eo, /* 26/126 Esperanto */
- "es", LANGUAGE_es, /* 8/ 60 Spanish */
- "et", LANGUAGE_et_EE, /* 22/ 54 Estonian (Estonia) */
- "fa", LANGUAGE_fa, /* 49/120 Persian */
- "fi", LANGUAGE_fi, /* 10/ 25 Finnish */
- "fr", LANGUAGE_fr, /* 13/ 51 French */
- "hi", LANGUAGE_hi, /* 24/ 92 Hindi */
- "hr", LANGUAGE_hr, /* 9/ 56 Croatian */
- "hu", LANGUAGE_hu, /* 9/ 56 Hungarian */
- "hy", LANGUAGE_hy_AM, /* 7/118 Armenian (Armenia) */
- "is", LANGUAGE_is, /* 13/ 54 Icelandic */
+ "DEFAULT", LANGUAGE_DEFAULT, /* 172/172 default */
+ "af", LANGUAGE_af, /* 8/ 12 Afrikaans */
+ "ar", LANGUAGE_ar, /* 58/110 Arabic */
+ "az", LANGUAGE_az_AZ, /* 8/ 17 Azerbaijani (Azerbaijan) */
+ "be", LANGUAGE_be_BY, /* 10/ 33 Belarusian (Belarus) */
+ "bg", LANGUAGE_bg, /* 2/ 11 Bulgarian */
+ "ca", LANGUAGE_ca, /* 11/117 Catalan */
+ "cs", LANGUAGE_cs, /* 17/ 21 Czech */
+ "da", LANGUAGE_da, /* 19/ 35 Danish */
+ "de", LANGUAGE_de, /* 16/ 93 German */
+ "el", LANGUAGE_el, /* 1/ 11 Greek */
+ "en", LANGUAGE_en, /* 8/ 10 English */
+ "eo", LANGUAGE_eo, /* 26/129 Esperanto */
+ "es", LANGUAGE_es, /* 8/ 34 Spanish */
+ "et", LANGUAGE_et_EE, /* 22/ 27 Estonian (Estonia) */
+ "fa", LANGUAGE_fa, /* 61/120 Persian */
+ "fi", LANGUAGE_fi, /* 10/ 35 Finnish */
+ "fr", LANGUAGE_fr, /* 13/ 93 French */
+ "hi", LANGUAGE_hi, /* 24/ 57 Hindi */
+ "hr", LANGUAGE_hr, /* 9/ 19 Croatian */
+ "hu", LANGUAGE_hu, /* 9/ 19 Hungarian */
+ "hy", LANGUAGE_hy_AM, /* 8/123 Armenian (Armenia) */
+ "is", LANGUAGE_is, /* 13/ 25 Icelandic */
"it", LANGUAGE_it, /* 5/ 5 Italian */
- "iw", LANGUAGE_iw, /* 14/ 69 Hebrew */
- "ka", LANGUAGE_ka_GE, /* 3/ 54 Georgian (Georgia) */
- "kk", LANGUAGE_kk, /* 16/ 52 Kazakh */
- "km", LANGUAGE_km_KH, /* 2/ 57 Khmer (Cambodia) */
- "ky", LANGUAGE_ky, /* 11/ 52 Kirghiz */
- "lo", LANGUAGE_lo_LA, /* 2/ 58 Lao (Laos) */
- "lt", LANGUAGE_lt, /* 18/ 54 Lithuanian */
- "lv", LANGUAGE_lv, /* 18/ 54 Latvian */
- "mk", LANGUAGE_mk, /* 9/ 54 Macedonian */
- "mn", LANGUAGE_mn_MN, /* 2/ 58 Mongolian (Mongolia) */
- "nb", LANGUAGE_nb, /* 11/ 54 Norwegian Bokmål */
- "ne", LANGUAGE_ne_NP, /* 24/ 92 Nepali (Nepal) */
- "nl", LANGUAGE_nl, /* 9/ 54 Dutch */
- "pl", LANGUAGE_pl, /* 10/ 54 Polish */
+ "iw", LANGUAGE_iw, /* 20/118 Hebrew */
+ "ka", LANGUAGE_ka_GE, /* 3/ 11 Georgian (Georgia) */
+ "kk", LANGUAGE_kk, /* 16/115 Kazakh */
+ "km", LANGUAGE_km_KH, /* 2/116 Khmer (Cambodia) */
+ "ky", LANGUAGE_ky, /* 11/ 82 Kirghiz */
+ "lo", LANGUAGE_lo_LA, /* 2/ 20 Lao (Laos) */
+ "lt", LANGUAGE_lt, /* 18/ 22 Lithuanian */
+ "lv", LANGUAGE_lv, /* 18/ 22 Latvian */
+ "mk", LANGUAGE_mk, /* 9/ 87 Macedonian */
+ "mn", LANGUAGE_mn_MN, /* 2/ 20 Mongolian (Mongolia) */
+ "nb", LANGUAGE_nb, /* 11/ 35 Norwegian Bokmål */
+ "ne", LANGUAGE_ne_NP, /* 24/ 57 Nepali (Nepal) */
+ "nl", LANGUAGE_nl, /* 9/ 12 Dutch */
+ "pl", LANGUAGE_pl, /* 10/ 16 Polish */
"pt", LANGUAGE_pt, /* 6/ 8 Portuguese */
- "rm", LANGUAGE_rm, /* 1/ 4 Raeto-Romance */
- "ro", LANGUAGE_ro, /* 6/ 54 Romanian */
- "ru", LANGUAGE_ru, /* 10/ 54 Russian */
- "sk", LANGUAGE_sk, /* 20/ 56 Slovak */
- "sl", LANGUAGE_sl, /* 8/ 56 Slovenian */
- "sr", LANGUAGE_sr, /* 11/ 56 Serbian */
- "sv", LANGUAGE_sv, /* 21/ 56 Swedish */
- "sw", LANGUAGE_sw, /* 9/ 16 Swahili */
- "th", LANGUAGE_th, /* 2/ 58 Thai */
- "tl", LANGUAGE_tl, /* 7/ 8 Tagalog */
- "tr", LANGUAGE_tr, /* 7/ 16 Turkish */
- "uk", LANGUAGE_uk, /* 12/ 58 Ukrainian */
- "vi", LANGUAGE_vi, /* 8/ 58 Vietnamese */
- "zu", LANGUAGE_zu, /* 8/ 8 Zulu */
- "zz", LANGUAGE_zz, /* 19/ 20 Alphabet */
+ "rm", LANGUAGE_rm, /* 1/ 2 Raeto-Romance */
+ "ro", LANGUAGE_ro, /* 6/ 15 Romanian */
+ "ru", LANGUAGE_ru, /* 10/ 33 Russian */
+ "sk", LANGUAGE_sk, /* 20/ 22 Slovak */
+ "sl", LANGUAGE_sl, /* 8/ 19 Slovenian */
+ "sr", LANGUAGE_sr, /* 11/ 87 Serbian */
+ "sv", LANGUAGE_sv, /* 21/ 35 Swedish */
+ "sw", LANGUAGE_sw, /* 9/ 17 Swahili */
+ "th", LANGUAGE_th, /* 2/ 20 Thai */
+ "tl", LANGUAGE_tl, /* 7/ 10 Tagalog */
+ "tr", LANGUAGE_tr, /* 7/ 17 Turkish */
+ "uk", LANGUAGE_uk, /* 12/ 81 Ukrainian */
+ "vi", LANGUAGE_vi, /* 8/ 20 Vietnamese */
+ "zu", LANGUAGE_zu, /* 8/ 10 Zulu */
+ "zz", LANGUAGE_zz, /* 19/112 Alphabet */
};
static {
diff --git a/java/src/com/android/inputmethod/keyboard/internal/MoreKeySpec.java b/java/src/com/android/inputmethod/keyboard/internal/MoreKeySpec.java
index 319bf8921..56ef4767f 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/MoreKeySpec.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/MoreKeySpec.java
@@ -46,15 +46,14 @@ public final class MoreKeySpec {
public final String mOutputText;
public final int mIconId;
- public MoreKeySpec(final String moreKeySpec, boolean needsToUpperCase, final Locale locale,
- final KeyboardCodesSet codesSet) {
+ public MoreKeySpec(final String moreKeySpec, boolean needsToUpperCase, final Locale locale) {
if (TextUtils.isEmpty(moreKeySpec)) {
throw new KeySpecParser.KeySpecParserError("Empty more key spec");
}
mLabel = StringUtils.toUpperCaseOfStringForLocale(
KeySpecParser.getLabel(moreKeySpec), needsToUpperCase, locale);
final int code = StringUtils.toUpperCaseOfCodeForLocale(
- KeySpecParser.getCode(moreKeySpec, codesSet), needsToUpperCase, locale);
+ KeySpecParser.getCode(moreKeySpec), needsToUpperCase, locale);
if (code == Constants.CODE_UNSPECIFIED) {
// Some letter, for example German Eszett (U+00DF: "ß"), has multiple characters
// upper case representation ("SS").
diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
index 251583c13..3b9be4395 100644
--- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
+++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
@@ -122,7 +122,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
new DictionaryUpdateController();
/* A extension for a binary dictionary file. */
- public static final String DICT_FILE_EXTENSION = ".dict";
+ protected static final String DICT_FILE_EXTENSION = ".dict";
private final AtomicReference<Runnable> mUnfinishedFlushingTask =
new AtomicReference<Runnable>();
@@ -148,10 +148,6 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
return mBinaryDictionary.isValidDictionary();
}
- private File getDictFile() {
- return mDictFile;
- }
-
/**
* Gets the dictionary update controller for the given dictionary name.
*/
@@ -224,15 +220,20 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
mContext = context;
mLocale = locale;
mIsUpdatable = isUpdatable;
- mDictFile = (dictFile != null) ? dictFile
- : new File(context.getFilesDir(), dictName + DICT_FILE_EXTENSION);
+ mDictFile = getDictFile(context, dictName, dictFile);
mBinaryDictionary = null;
mDictNameDictionaryUpdateController = getDictionaryUpdateController(dictName);
// Currently, only dynamic personalization dictionary is updatable.
mDictionaryWriter = getDictionaryWriter(isUpdatable);
}
- protected static String getDictName(final String name, final Locale locale,
+ public static File getDictFile(final Context context, final String dictName,
+ final File dictFile) {
+ return (dictFile != null) ? dictFile
+ : new File(context.getFilesDir(), dictName + DICT_FILE_EXTENSION);
+ }
+
+ public static String getDictName(final String name, final Locale locale,
final File dictFile) {
return dictFile != null ? dictFile.getName() : name + "." + locale.toString();
}
@@ -276,6 +277,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
}
protected void clear() {
+ final File dictFile = mDictFile;
getExecutor(mDictName).execute(new Runnable() {
@Override
public void run() {
@@ -283,14 +285,13 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
if (mBinaryDictionary != null) {
mBinaryDictionary.close();
}
- final File file = getDictFile();
- if (file.exists() && !FileUtils.deleteRecursively(file)) {
- Log.e(TAG, "Can't remove a file: " + file.getName());
+ if (dictFile.exists() && !FileUtils.deleteRecursively(dictFile)) {
+ Log.e(TAG, "Can't remove a file: " + dictFile.getName());
}
- BinaryDictionary.createEmptyDictFile(file.getAbsolutePath(),
+ BinaryDictionary.createEmptyDictFile(dictFile.getAbsolutePath(),
DICTIONARY_FORMAT_VERSION, mLocale, getHeaderAttributeMap());
mBinaryDictionary = new BinaryDictionary(
- file.getAbsolutePath(), 0 /* offset */, file.length(),
+ dictFile.getAbsolutePath(), 0 /* offset */, dictFile.length(),
true /* useFullEditDistance */, mLocale, mDictType, mIsUpdatable);
} else {
mDictionaryWriter.clear();
@@ -541,9 +542,8 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
}
}
- final File file = getDictFile();
- final String filename = file.getAbsolutePath();
- final long length = file.length();
+ final String filename = mDictFile.getAbsolutePath();
+ final long length = mDictFile.length();
// Build the new binary dictionary
final BinaryDictionary newBinaryDictionary = new BinaryDictionary(filename, 0 /* offset */,
@@ -582,17 +582,16 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
if (needsToReloadBeforeWriting()) {
mDictionaryWriter.clear();
loadDictionaryAsync();
- mDictionaryWriter.write(getDictFile(), getHeaderAttributeMap());
+ mDictionaryWriter.write(mDictFile, getHeaderAttributeMap());
} else {
if (mBinaryDictionary == null || !isValidDictionary()
// TODO: remove the check below
|| !matchesExpectedBinaryDictFormatVersionForThisType(
mBinaryDictionary.getFormatVersion())) {
- final File file = getDictFile();
- if (file.exists() && !FileUtils.deleteRecursively(file)) {
- Log.e(TAG, "Can't remove a file: " + file.getName());
+ if (mDictFile.exists() && !FileUtils.deleteRecursively(mDictFile)) {
+ Log.e(TAG, "Can't remove a file: " + mDictFile.getName());
}
- BinaryDictionary.createEmptyDictFile(file.getAbsolutePath(),
+ BinaryDictionary.createEmptyDictFile(mDictFile.getAbsolutePath(),
DICTIONARY_FORMAT_VERSION, mLocale, getHeaderAttributeMap());
} else {
if (mBinaryDictionary.needsToRunGC(false /* mindsBlockByGC */)) {
@@ -716,7 +715,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
// TODO: cache the file's existence so that we avoid doing a disk access each time.
private boolean dictionaryFileExists() {
- return getDictFile().exists();
+ return mDictFile.exists();
}
/**
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index 6e9050593..bd114ebca 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -973,7 +973,13 @@ public final class InputLogic {
} else {
final int codePointBeforeCursor = mConnection.getCodePointBeforeCursor();
if (codePointBeforeCursor == Constants.NOT_A_CODE) {
- // Nothing to delete before the cursor.
+ // HACK for backward compatibility with broken apps that haven't realized
+ // yet that hardware keyboards are not the only way of inputting text.
+ // Nothing to delete before the cursor. We should not do anything, but many
+ // broken apps expect something to happen in this case so that they can
+ // catch it and have their broken interface react. If you need the keyboard
+ // to do this, you're doing it wrong -- please fix your app.
+ mConnection.deleteSurroundingText(1, 0);
return;
}
final int lengthToDelete =
@@ -1355,6 +1361,7 @@ public final class InputLogic {
final String previousWord = mLastComposedWord.mPrevWord;
final CharSequence originallyTypedWord = mLastComposedWord.mTypedWord;
final CharSequence committedWord = mLastComposedWord.mCommittedWord;
+ final String committedWordString = committedWord.toString();
final int cancelLength = committedWord.length();
// We want java chars, not codepoints for the following.
final int separatorLength = mLastComposedWord.mSeparatorString.length();
@@ -1376,33 +1383,44 @@ public final class InputLogic {
if (!TextUtils.isEmpty(previousWord) && !TextUtils.isEmpty(committedWord)) {
if (mSuggest != null) {
mSuggest.mDictionaryFacilitator.cancelAddingUserHistory(
- previousWord, committedWord.toString());
+ previousWord, committedWordString);
}
}
final String stringToCommit = originallyTypedWord + mLastComposedWord.mSeparatorString;
final SpannableString textToCommit = new SpannableString(stringToCommit);
if (committedWord instanceof SpannableString) {
- final int lastCharIndex = textToCommit.length() - 1;
- // Add the auto-correction to the list of suggestions.
- textToCommit.setSpan(new SuggestionSpan(settingsValues.mLocale,
- new String[] { committedWord.toString() }, 0 /* flags */),
- 0 /* start */, lastCharIndex /* end */, 0 /* flags */);
final SpannableString committedWordWithSuggestionSpans = (SpannableString)committedWord;
final Object[] spans = committedWordWithSuggestionSpans.getSpans(0,
committedWord.length(), Object.class);
+ final int lastCharIndex = textToCommit.length() - 1;
+ // We will collect all suggestions in the following array.
+ final ArrayList<String> suggestions = CollectionUtils.newArrayList();
+ // First, add the committed word to the list of suggestions.
+ suggestions.add(committedWordString);
for (final Object span : spans) {
- // Put all the spans in the original text on this new text. We could remove the
- // typed word from the suggestions, but we'd have to make more dynamic instanceof
- // checks, to copy the span, copy all suggestions and attributes... And there is
- // the risk to drop the originally typed string if there is a subtle bug. There is
- // still the committed auto-correction that we reverted from, which is not included
- // in the suggestions, that's why we added it with another call to setSpan a few
- // lines above.
- // The code that re-reads these spans already knows to do the right thing whether
- // the typed word is included or not. That should be enough.
- textToCommit.setSpan(span, 0 /* start */, lastCharIndex /* end */,
- committedWordWithSuggestionSpans.getSpanFlags(span));
+ // If this is a suggestion span, we check that the locale is the right one, and
+ // that the word is not the committed word. That should mostly be the case.
+ // Given this, we add it to the list of suggestions, otherwise we discard it.
+ if (span instanceof SuggestionSpan) {
+ final SuggestionSpan suggestionSpan = (SuggestionSpan)span;
+ if (!suggestionSpan.getLocale().equals(settingsValues.mLocale.toString())) {
+ continue;
+ }
+ for (final String suggestion : suggestionSpan.getSuggestions()) {
+ if (!suggestion.equals(committedWordString)) {
+ suggestions.add(suggestion);
+ }
+ }
+ } else {
+ // If this is not a suggestion span, we just add it as is.
+ textToCommit.setSpan(span, 0 /* start */, lastCharIndex /* end */,
+ committedWordWithSuggestionSpans.getSpanFlags(span));
+ }
}
+ // Add the suggestion list to the list of suggestions.
+ textToCommit.setSpan(new SuggestionSpan(settingsValues.mLocale,
+ suggestions.toArray(new String[suggestions.size()]), 0 /* flags */),
+ 0 /* start */, lastCharIndex /* end */, 0 /* flags */);
}
if (settingsValues.mSpacingAndPunctuations.mCurrentLanguageHasSpaces) {
// For languages with spaces, we revert to the typed string, but the cursor is still
diff --git a/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java b/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java
index 9c74c243e..8f7378c58 100644
--- a/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java
+++ b/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java
@@ -51,11 +51,10 @@ public abstract class DecayingExpandableBinaryDictionaryBase extends ExpandableB
private final String mDictName;
- /* package */ DecayingExpandableBinaryDictionaryBase(final Context context,
+ protected DecayingExpandableBinaryDictionaryBase(final Context context,
final String dictName, final Locale locale, final String dictionaryType,
final File dictFile) {
- super(context, getDictName(dictName, locale, dictFile), locale, dictionaryType,
- true /* isUpdatable */, dictFile);
+ super(context, dictName, locale, dictionaryType, true /* isUpdatable */, dictFile);
mLocale = locale;
mDictName = dictName;
if (mLocale != null && mLocale.toString().length() > 1) {
diff --git a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripLayoutHelper.java b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripLayoutHelper.java
index 4063edccc..5f05b48d4 100644
--- a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripLayoutHelper.java
+++ b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripLayoutHelper.java
@@ -65,7 +65,7 @@ final class SuggestionStripLayoutHelper {
public final int mPadding;
public final int mDividerWidth;
public final int mSuggestionsStripHeight;
- public final int mSuggestionsCountInStrip;
+ private final int mSuggestionsCountInStrip;
public final int mMoreSuggestionsRowHeight;
private int mMaxMoreSuggestionsRow;
public final float mMinMoreSuggestionsWidth;
@@ -288,54 +288,65 @@ final class SuggestionStripLayoutHelper {
params.gravity = Gravity.CENTER;
}
- public void layout(final SuggestedWords suggestedWords, final ViewGroup stripView,
- final ViewGroup placerView) {
+ /**
+ * Layout suggestions to the suggestions strip. And returns the number of suggestions displayed
+ * in the suggestions strip.
+ *
+ * @param suggestedWords suggestions to be shown in the suggestions strip.
+ * @param stripView the suggestions strip view.
+ * @param placerView the view where the debug info will be placed.
+ * @return the number of suggestions displayed in the suggestions strip
+ */
+ public int layoutAndReturnSuggestionCountInStrip(final SuggestedWords suggestedWords,
+ final ViewGroup stripView, final ViewGroup placerView) {
if (suggestedWords.mIsPunctuationSuggestions) {
- layoutPunctuationSuggestions(suggestedWords, stripView);
- return;
+ return layoutPunctuationSuggestionsAndReturnSuggestionCountInStrip(
+ suggestedWords, stripView);
}
- final int countInStrip = mSuggestionsCountInStrip;
- setupWordViewsTextAndColor(suggestedWords, countInStrip);
+ setupWordViewsTextAndColor(suggestedWords, mSuggestionsCountInStrip);
final TextView centerWordView = mWordViews.get(mCenterPositionInStrip);
final int availableStripWidth = placerView.getWidth()
- placerView.getPaddingRight() - placerView.getPaddingLeft();
final int centerWidth = getSuggestionWidth(mCenterPositionInStrip, availableStripWidth);
- if (getTextScaleX(centerWordView.getText(), centerWidth, centerWordView.getPaint())
- < MIN_TEXT_XSCALE) {
+ final int countInStrip;
+ if (suggestedWords.size() == 1 || getTextScaleX(centerWordView.getText(), centerWidth,
+ centerWordView.getPaint()) < MIN_TEXT_XSCALE) {
// Layout only the most relevant suggested word at the center of the suggestion strip
// by consolidating all slots in the strip.
- mMoreSuggestionsAvailable = (suggestedWords.size() > 1);
+ countInStrip = 1;
+ mMoreSuggestionsAvailable = (suggestedWords.size() > countInStrip);
layoutWord(mCenterPositionInStrip, availableStripWidth - mPadding);
stripView.addView(centerWordView);
setLayoutWeight(centerWordView, 1.0f, ViewGroup.LayoutParams.MATCH_PARENT);
if (SuggestionStripView.DBG) {
layoutDebugInfo(mCenterPositionInStrip, placerView, availableStripWidth);
}
- return;
- }
-
- mMoreSuggestionsAvailable = (suggestedWords.size() > countInStrip);
- int x = 0;
- for (int positionInStrip = 0; positionInStrip < countInStrip; positionInStrip++) {
- if (positionInStrip != 0) {
- final View divider = mDividerViews.get(positionInStrip);
- // Add divider if this isn't the left most suggestion in suggestions strip.
- addDivider(stripView, divider);
- x += divider.getMeasuredWidth();
- }
-
- final int width = getSuggestionWidth(positionInStrip, availableStripWidth);
- final TextView wordView = layoutWord(positionInStrip, width);
- stripView.addView(wordView);
- setLayoutWeight(wordView, getSuggestionWeight(positionInStrip),
- ViewGroup.LayoutParams.MATCH_PARENT);
- x += wordView.getMeasuredWidth();
-
- if (SuggestionStripView.DBG) {
- layoutDebugInfo(positionInStrip, placerView, x);
+ } else {
+ countInStrip = mSuggestionsCountInStrip;
+ mMoreSuggestionsAvailable = (suggestedWords.size() > countInStrip);
+ int x = 0;
+ for (int positionInStrip = 0; positionInStrip < countInStrip; positionInStrip++) {
+ if (positionInStrip != 0) {
+ final View divider = mDividerViews.get(positionInStrip);
+ // Add divider if this isn't the left most suggestion in suggestions strip.
+ addDivider(stripView, divider);
+ x += divider.getMeasuredWidth();
+ }
+
+ final int width = getSuggestionWidth(positionInStrip, availableStripWidth);
+ final TextView wordView = layoutWord(positionInStrip, width);
+ stripView.addView(wordView);
+ setLayoutWeight(wordView, getSuggestionWeight(positionInStrip),
+ ViewGroup.LayoutParams.MATCH_PARENT);
+ x += wordView.getMeasuredWidth();
+
+ if (SuggestionStripView.DBG) {
+ layoutDebugInfo(positionInStrip, placerView, x);
+ }
}
}
+ return countInStrip;
}
/**
@@ -435,8 +446,8 @@ final class SuggestionStripLayoutHelper {
}
}
- private void layoutPunctuationSuggestions(final SuggestedWords suggestedWords,
- final ViewGroup stripView) {
+ private int layoutPunctuationSuggestionsAndReturnSuggestionCountInStrip(
+ final SuggestedWords suggestedWords, final ViewGroup stripView) {
final int countInStrip = Math.min(suggestedWords.size(), PUNCTUATIONS_IN_STRIP);
for (int positionInStrip = 0; positionInStrip < countInStrip; positionInStrip++) {
if (positionInStrip != 0) {
@@ -457,6 +468,7 @@ final class SuggestionStripLayoutHelper {
setLayoutWeight(wordView, 1.0f, mSuggestionsStripHeight);
}
mMoreSuggestionsAvailable = (suggestedWords.size() > countInStrip);
+ return countInStrip;
}
public void layoutAddToDictionaryHint(final String word, final ViewGroup addToDictionaryStrip,
diff --git a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java
index 68c891bf3..32d7d2317 100644
--- a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java
+++ b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java
@@ -77,6 +77,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
Listener mListener;
private SuggestedWords mSuggestedWords = SuggestedWords.EMPTY;
+ private int mSuggestionsCountInStrip;
private final SuggestionStripLayoutHelper mLayoutHelper;
private final StripVisibilityGroup mStripVisibilityGroup;
@@ -189,7 +190,8 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
clear();
mStripVisibilityGroup.setLayoutDirection(isRtlLanguage);
mSuggestedWords = suggestedWords;
- mLayoutHelper.layout(mSuggestedWords, mSuggestionsStrip, this);
+ mSuggestionsCountInStrip = mLayoutHelper.layoutAndReturnSuggestionCountInStrip(
+ mSuggestedWords, mSuggestionsStrip, this);
if (ProductionFlag.USES_DEVELOPMENT_ONLY_DIAGNOSTICS) {
ResearchLogger.suggestionStripView_setSuggestions(mSuggestedWords);
}
@@ -313,7 +315,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
final View container = mMoreSuggestionsContainer;
final int maxWidth = stripWidth - container.getPaddingLeft() - container.getPaddingRight();
final MoreSuggestions.Builder builder = mMoreSuggestionsBuilder;
- builder.layout(mSuggestedWords, layoutHelper.mSuggestionsCountInStrip, maxWidth,
+ builder.layout(mSuggestedWords, mSuggestionsCountInStrip, maxWidth,
(int)(maxWidth * layoutHelper.mMinMoreSuggestionsWidth),
layoutHelper.getMaxMoreSuggestionsRow(), parentKeyboard);
mMoreSuggestionsView.setKeyboard(builder.build());
@@ -327,7 +329,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
mMoreSuggestionsMode = MORE_SUGGESTIONS_CHECKING_MODAL_OR_SLIDING;
mOriginX = mLastX;
mOriginY = mLastY;
- for (int i = 0; i < layoutHelper.mSuggestionsCountInStrip; i++) {
+ for (int i = 0; i < mSuggestionsCountInStrip; i++) {
mWordViews.get(i).setPressed(false);
}
return true;