Merge "Add Akkhor Layout for Bengali Bangladesh"

This commit is contained in:
Tadashi G. Takaoka 2014-10-01 08:13:45 +00:00 committed by Android (Google) Code Review
commit d368975cdb
17 changed files with 1465 additions and 195 deletions

View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<merge xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" >
<include latin:keyboardLayout="@xml/key_styles_common" />
<Row
latin:keyLabelFlags="fontNormal"
latin:keyWidth="8.182%p" >
<include latin:keyboardLayout="@xml/rowkeys_bengali_akkhor1" />
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyLabelFlags="fontNormal"
latin:keyWidth="8.182%p" >
<include latin:keyboardLayout="@xml/rowkeys_bengali_akkhor2" />
<Key
latin:keyStyle="enterKeyStyle"
latin:keyWidth="fillRight" />
</Row>
<Row
latin:keyLabelFlags="fontNormal"
latin:keyWidth="8.182%p" >
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyWidth="10.0%p" />
<include latin:keyboardLayout="@xml/rowkeys_bengali_akkhor3" />
<include latin:keyboardLayout="@xml/keys_exclamation_question" />
</Row>
<include latin:keyboardLayout="@xml/row_qwerty4" />
</merge>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<Keyboard xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" >
<include latin:keyboardLayout="@xml/rows_bengali_akkhor" />
</Keyboard>

View file

@ -98,8 +98,9 @@
<include latin:keyboardLayout="@xml/key_styles_currency_generic" />
</case>
<!-- si_LK: Sinhala (Sri Lanka) (Sri Lanka Rupee)
ta_LK: Tamil (Sri Lanka) (Sri Lanka Rupee) -->
<case latin:countryCode="LK">
ta_LK: Tamil (Sri Lanka) (Sri Lanka Rupee)
bn_BD: Bengali (Bangladesh) (Taka) -->
<case latin:countryCode="LK|BD">
<include latin:keyboardLayout="@xml/key_styles_currency_generic" />
</case>
<!-- bn_IN: Bengali (India) (Indian Rupee)

View file

@ -0,0 +1,58 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<KeyboardLayoutSet xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" >
<Feature latin:supportedScript="devanagari" />
<Element
latin:elementKeyboard="@xml/kbd_bengali_akkhor"
latin:elementName="alphabet"
latin:enableProximityCharsCorrection="true" />
<Element
latin:elementKeyboard="@xml/kbd_bengali_akkhor"
latin:elementName="alphabetAutomaticShifted"
latin:enableProximityCharsCorrection="true" />
<!-- On these shifted alphabet layouts the proximity characters correction should be disabled
because the letters on these layouts aren't the ones in different case of the above
unshifted layouts.-->
<Element
latin:elementKeyboard="@xml/kbd_bengali_akkhor"
latin:elementName="alphabetManualShifted" />
<Element
latin:elementKeyboard="@xml/kbd_bengali_akkhor"
latin:elementName="alphabetShiftLocked" />
<Element
latin:elementKeyboard="@xml/kbd_bengali_akkhor"
latin:elementName="alphabetShiftLockShifted" />
<Element
latin:elementKeyboard="@xml/kbd_symbols"
latin:elementName="symbols" />
<Element
latin:elementKeyboard="@xml/kbd_symbols_shift"
latin:elementName="symbolsShifted" />
<Element
latin:elementKeyboard="@xml/kbd_phone"
latin:elementName="phone" />
<Element
latin:elementKeyboard="@xml/kbd_phone_symbols"
latin:elementName="phoneSymbols" />
<Element
latin:elementKeyboard="@xml/kbd_number"
latin:elementName="number" />
</KeyboardLayoutSet>

View file

@ -28,6 +28,7 @@
be_BY: Belarusian (Belarus)/east_slavic
bg: Bulgarian/bulgarian
bg: Bulgarian/bulgarian_bds
(bn_BD: Bengali (Bangladesh)/bengali_akkhor) # This is a preliminary keyboard layout.
bn_IN: Bengali (India)/bengali
ca: Catalan/spanish
cs: Czech/qwertz
@ -179,6 +180,16 @@
android:imeSubtypeExtraValue="KeyboardLayoutSet=bulgarian_bds,EmojiCapable"
android:isAsciiCapable="false"
/>
<!-- TODO: This Bengali (Bangladesh) keyboard is a preliminary layout.
This isn't based on the final specification. -->
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0xa2144b0c"
android:imeSubtypeLocale="bn_BD"
android:imeSubtypeMode="keyboard"
android:imeSubtypeExtraValue="KeyboardLayoutSet=bengali_akkhor,EmojiCapable"
android:isAsciiCapable="false"
/>
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0xbff5986c"

View file

@ -0,0 +1,183 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<merge xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin">
<switch>
<case latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted">
<!-- U+09A2: "ঢ" BENGALI LETTER DDHA -->
<Key latin:keySpec="&#x09A2;" />
<!-- U+09A0: "ঠ" BENGALI LETTER TTHA -->
<Key latin:keySpec="&#x09A0;" />
<!-- U+09C8: "ৈ" BENGALI VOWEL SIGN AI
U+0990: "ঐ" BENGALI LETTER AI -->
<Key
latin:keySpec="&#x09C8;"
latin:moreKeys="&#x0990;" />
<!-- U+09DC: "ড়" BENGALI LETTER RRA
U+09BC: "়" BENGALI SIGN NUKTA -->
<Key
latin:keySpec="&#x09DC;"
latin:moreKeys="&#x09BC;" />
<!-- U+099F: "ট" BENGALI LETTER TTA
U+09F3: "৳" BENGALI RUPEE SIGN
U+099F/U+09CD/U+099F: "ট্ট" BENGALI LETTER TTA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+099F/U+09CD/U+09AC: "ট্ব" BENGALI LETTER TTA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+099F/U+09CD/U+09AE: "ট্ম" BENGALI LETTER TTA/BENGALI SIGN VIRAMA/BENGALI LETTER MA -->
<Key
latin:keySpec="&#x099F;"
latin:moreKeys="&#x09F3;,&#x099F;&#x09CD;&#x099F;,&#x099F;&#x09CD;&#x09AC;,&#x099F;&#x09CD;&#x09AE;" />
<!-- U+099E: "ঞ" BENGALI LETTER NYA
U+099E/U+09CD/U+099A: "ঞ্চ" BENGALI LETTER NYA/BENGALI SIGN VIRAMA/BENGALI LETTER CA
U+099E/U+09CD/U+099B: "ঞ্ছ" BENGALI LETTER NYA/BENGALI SIGN VIRAMA/BENGALI LETTER CHA
U+099E/U+09CD/U+099C: "ঞ্জ" BENGALI LETTER NYA/BENGALI SIGN VIRAMA/BENGALI LETTER JA -->
<Key
latin:keySpec="&#x099E;"
latin:moreKeys="&#x099E;&#x09CD;&#x099A;,&#x099E;&#x09CD;&#x099B;,&#x099E;&#x09CD;&#x099C;" />
<!-- U+09C2: "ূ" BENGALI VOWEL SIGN UU
U+098A: "ঊ" BENGALI LETTER UU -->
<Key
latin:keySpec="&#x09C2;"
latin:moreKeys="&#x098A;" />
<!-- U+09C0: "ী" BENGALI VOWEL SIGN II
U+0988: "ঈ" BENGALI LETTER II -->
<Key
latin:keySpec="&#x09C0;"
latin:moreKeys="&#x0988;" />
<!-- U+09CC: "ৌ" BENGALI VOWEL SIGN AU
U+099A: "ঔ" BENGALI LETTER CA
U+09D7: "ৗ" BENGALI AU LENGTH MARK -->
<Key
latin:keySpec="&#x09CC;"
latin:moreKeys="&#x099A;,&#x09D7;" />
<!-- U+09AB: "ফ" BENGALI LETTER PHA
U+09AB/U+09CD/U+099F: "ফ্ট" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+09AB/U+09CD/U+09AF: "ফ্য" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+09AB/U+09CD/U+09B0: "ফ্র" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09AB/U+09CD/U+09B2: "ফ্ল" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x09AB;"
latin:moreKeys="&#x09AB;&#x09CD;&#x099F;,&#x09AB;&#x09CD;&#x09AF;,&#x09AB;&#x09CD;&#x09B0;,&#x09AB;&#x09CD;&#x09B2;" />
<!-- U+098B: "ঋ" BENGALI LETTER VOCALIC R
U+098C: "ঌ" BENGALI LETTER VOCALIC L
U+09E1: "ৡ" BENGALI LETTER VOCALIC LL
U+09F4: "৴" BENGALI CURRENCY NUMERATOR ONE
U+09F5: "৵" BENGALI CURRENCY NUMERATOR TWO
U+09F6: "৶" BENGALI CURRENCY NUMERATOR THREE
U+09E2: " ৢ" BENGALI VOWEL SIGN VOCALIC L
U+09E3: " ৣ" BENGALI VOWEL SIGN VOCALIC LL -->
<Key
latin:keySpec="&#x098B;"
latin:moreKeys="&#x098C;,&#x09E1;,&#x09F4;,&#x09F5;,&#x09F6;,&#x09E2;,&#x09E3;" />
</case>
<default>
<!-- U+09A7: "ধ" BENGALI LETTER DHA
U+09E7: "১" BENGALI DIGIT ONE
U+09A7/U+09CD/U+09AC: "ধ্ব্র" BENGALI LETTER DHA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09A7/U+09CD/U+09AF: "ধ্য্র" BENGALI LETTER DHA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+09A7/U+09CD/U+09B0: "ধ্র" BENGALI LETTER DHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA -->
<Key
latin:keySpec="&#x09A7;"
latin:keyHintLabel="&#x09E7;"
latin:additionalMoreKeys="&#x09E7;"
latin:moreKeys="&#x09A7;&#x09CD;&#x09AC;,&#x09A7;&#x09CD;&#x09AF;,&#x09A7;&#x09CD;&#x09B0;" />
<!-- U+09A5: "থ" BENGALI LETTER THA
U+09E8: "২" BENGALI DIGIT TWO
U+09A5/U+09CD/U+09AF: "থ্য" BENGALI LETTER THA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+09A5/U+09CD/U+09B0: "থ্র" BENGALI LETTER THA/BENGALI SIGN VIRAMA/BENGALI LETTER RA -->
<Key
latin:keySpec="&#x09A5;"
latin:keyHintLabel="&#x09E8;"
latin:additionalMoreKeys="&#x09E8;"
latin:moreKeys="&#x09A5;&#x09CD;&#x09AF;,&#x09A5;&#x09CD;&#x09B0;" />
<!-- U+09C7: "ে" BENGALI VOWEL SIGN E
U+09E9: "৩" BENGALI DIGIT THREE
U+098F: "এ" BENGALI LETTER E -->
<Key
latin:keySpec="&#x09C7;"
latin:keyHintLabel="&#x09E9;"
latin:additionalMoreKeys="&#x09E9;"
latin:moreKeys="&#x098F;" />
<!-- U+09B0: "র" BENGALI LETTER RA
U+09EA: "" BENGALI DIGIT FOUR -->
<Key
latin:keySpec="&#x09B0;"
latin:keyHintLabel="&#x09EA;"
latin:additionalMoreKeys="&#x09EA;" />
<!-- U+09A4: "ত" BENGALI LETTER TA
U+09EB: "৫" BENGALI DIGIT FIVE
U+09CE: "ৎ" BENGALI LETTER KHANDA TA
U+09A4/U+09CD/U+09A4: "ত্ত" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+09A4/U+09CD/U+09A8: "ত্ন" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
U+09A4/U+09CD/U+09AC: "ত্ব" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09A4/U+09CD/U+09AE: "ত্ম" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER MA -->
<Key
latin:keySpec="&#x09A4;"
latin:keyHintLabel="&#x09EB;"
latin:additionalMoreKeys="&#x09EB;"
latin:moreKeys="&#x09CE;,&#x09A4;&#x09CD;&#x09A4;,&#x09A4;&#x09CD;&#x09A8;,&#x09A4;&#x09CD;&#x09AC;,&#x09A4;&#x09CD;&#x09AE;" />
<!-- U+09DF: "য়" BENGALI LETTER YYA
U+09EC: "৬" BENGALI DIGIT SIX -->
<Key
latin:keySpec="&#x09DF;"
latin:keyHintLabel="&#x09EC;"
latin:additionalMoreKeys="&#x09EC;" />
<!-- U+09C1: "ু" BENGALI VOWEL SIGN U
U+09ED: "" BENGALI DIGIT SEVEN
U+0989: "উ" BENGALI LETTER U -->
<Key
latin:keySpec="&#x09C1;"
latin:keyHintLabel="&#x09ED;"
latin:additionalMoreKeys="&#x09ED;"
latin:moreKeys="&#x0989;" />
<!-- U+09BF: "ি" BENGALI VOWEL SIGN I
U+09EE: "৮" BENGALI DIGIT EIGHT
U+0987: "ই BENGALI LETTER I -->
<Key
latin:keySpec="&#x09BF;"
latin:keyHintLabel="&#x09EE;"
latin:additionalMoreKeys="&#x09EE;"
latin:moreKeys="&#x0987;" />
<!-- U+09CB: "ো" BENGALI VOWEL SIGN O
U+09EF: "৯" BENGALI DIGIT NINE
U+0993: "ও" BENGALI LETTER O -->
<Key
latin:keySpec="&#x09CB;"
latin:keyHintLabel="&#x09EF;"
latin:additionalMoreKeys="&#x09EF;"
latin:moreKeys="&#x0993;" />
<!-- U+09AA: "প" BENGALI LETTER PA
U+09E6: "" BENGALI DIGIT ZERO
U+09AA/U+09CD/U+09A4: "প্ত" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+09AA/U+09CD/U+09A8: "প্ন" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
U+09AA/U+09CD/U+09AA: "প্প" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
U+09AA/U+09CD/U+09AF: "প্য" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+09AA/U+09CD/U+09B0: "প্র" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09AA/U+09CD/U+09B2: "প্ল" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
U+09AA/U+09CD/U+09B8: "প্স" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER SA -->
<Key
latin:keySpec="&#x09AA;"
latin:keyHintLabel="&#x09E6;"
latin:additionalMoreKeys="&#x09E6;"
latin:moreKeys="&#x09AA;&#x09CD;&#x09A4;,&#x09AA;&#x09CD;&#x09A8;,&#x09AA;&#x09CD;&#x09AA;,&#x09AA;&#x09CD;&#x09AF;,&#x09AA;&#x09CD;&#x09B0;,&#x09AA;&#x09CD;&#x09B2;,&#x09AA;&#x09CD;&#x09B8;" />
<!-- U+0986: "আ" BENGALI LETTER AA -->
<Key latin:keySpec="&#x0986;" />
</default>
</switch>
</merge>

View file

@ -0,0 +1,152 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<merge xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin">
<switch>
<case latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted">
<!-- U+0985: "অ" BENGALI LETTER A -->
<Key latin:keySpec="&#x0985;" />
<!-- U+09B6: "শ" BENGALI LETTER SHA
U+09B6/U+09CD/U+099A: "শ্চ" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER CA
U+09B6/U+09CD/U+099B: "শ্ছ" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER CHA
U+09B6/U+09CD/U+09A4: "শ্ত" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+09B6/U+09CD/U+09A8: "শ্ন" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
U+09B6/U+09CD/U+09AC: "শ্ব" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09B6/U+09CD/U+09AE: "শ্ম" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
U+09B6/U+09CD/U+09B0: "শ্র" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09B6/U+09CD/U+09B2: "শ্ল" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x09B6;"
latin:moreKeys="&#x09B6;&#x09CD;&#x099A;,&#x09B6;&#x09CD;&#x099B;,&#x09B6;&#x09CD;&#x09A4;,&#x09B6;&#x09CD;&#x09A8;,&#x09B6;&#x09CD;&#x09AC;,&#x09B6;&#x09CD;&#x09AE;,&#x09B6;&#x09CD;&#x09B0;,&#x09B6;&#x09CD;&#x09B2;" />
<!-- U+09A1: "ড" BENGALI LETTER DDA
U+09A1/U+09CD/U+09A1: "ড্ড" BENGALI LETTER DDA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA-->
<Key
latin:keySpec="&#x09A1;"
latin:moreKeys="&#x09A1;&#x09CD;&#x09A1;" />
<!-- U+09DD: "ঢ়" BENGALI LETTER RHA -->
<Key latin:keySpec="&#x09DD;" />
<!-- U+0998: "ঘ" BENGALI LETTER GHA -->
<Key latin:keySpec="&#x0998;" />
<!-- U+09B9: "হ" BENGALI LETTER HA
U+09BD: "ঽ" BENGALI SIGN AVAGRAHA
U+09B9/U+09CD/U+09A3: "হ্ণ" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER NNA
U+09B9/U+09CD/U+09A8: "হ্ন" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
U+09B9/U+09CD/U+09AC: "হ্ব" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09B9/U+09CD/U+09AE: "হ্ম" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
U+09B9/U+09CD/U+09B0: "হ্র" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09B9/U+09CD/U+09B2: "হ্ল" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x09B9;"
latin:moreKeys="&#x09BD;,&#x09B9;&#x09CD;&#x09A3;,&#x09B9;&#x09CD;&#x09A8;,&#x09B9;&#x09CD;&#x09AC;,&#x09B9;&#x09CD;&#x09AE;,&#x09B9;&#x09CD;&#x09B0;,&#x09B9;&#x09CD;&#x09B2;" />
<!-- U+099D: "ঝ" BENGALI LETTER JHA -->
<Key latin:keySpec="&#x099D;" />
<!-- U+0996: "খ" BENGALI LETTER KHA -->
<Key latin:keySpec="&#x0996;" />
<!-- U+09CE: "ৎ" BENGALI LETTER KHANDA TA -->
<Key latin:keySpec="&#x09CE;" />
<!-- U+0988: "ঈ" BENGALI LETTER II -->
<Key latin:keySpec="&#x0988;" />
<!-- U+098A: "ঊ" BENGALI LETTER UU -->
<Key latin:keySpec="&#x098A;" />
</case>
<default>
<!-- U+09BE: "া BENGALI VOWEL SIGN AA
U+0986: "আ" BENGALI LETTER AA -->
<Key
latin:keySpec="&#x09BE;"
latin:moreKeys="&#x0986;" />
<!-- U+09B8: "স" BENGALI LETTER SA
U+09B8/U+09CD/U+09AC: "স্ব" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09B8/U+09CD/U+09A4: "স্ত" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+09B8/U+09CD/U+099F: "স্ট" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+09B8/U+09CD/U+0995: "স্ক" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
U+09B8/U+09CD/U+09AA: "স্প" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER PA -->
<Key
latin:keySpec="&#x09B8;"
latin:moreKeys="&#x09B8;&#x09CD;&#x09AC;,&#x09B8;&#x09CD;&#x09A4;,&#x09B8;&#x09CD;&#x099F;,&#x09B8;&#x09CD;&#x0995;,&#x09B8;&#x09CD;&#x09AA;" />
<!-- U+09A6: "দ" BENGALI LETTER DA
U+09A6/U+09CD/U+09A6: "দ্দ" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
U+09A6/U+09CD/U+09A7: "দ্ধ" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
U+09A6/U+09CD/U+09AC: "দ্ব" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09A6/U+09CD/U+09AD: "দ্ভ" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER BHA
U+09A6/U+09CD/U+09AE: "দ্ম" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
U+09A6/U+09CD/U+09AF: "দ্য" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+09A6/U+09CD/U+09B0: "দ্র" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER RA -->
<Key
latin:keySpec="&#x09A6;"
latin:moreKeys="&#x09A6;&#x09CD;&#x09A6;,&#x09A6;&#x09CD;&#x09A7;,&#x09A6;&#x09CD;&#x09AC;,&#x09A6;&#x09CD;&#x09AD;,&#x09A6;&#x09CD;&#x09AE;,&#x09A6;&#x09CD;&#x09AF;,&#x09A6;&#x09CD;&#x09B0;" />
<!-- U+09C3: "ৃ" BENGALI VOWEL SIGN VOCALIC R
U+098B: "ঋ" BENGALI LETTER VOCALIC R -->
<Key
latin:keySpec="&#x09C3;"
latin:moreKeys="&#x098B;" />
<!-- U+0997: "গ" BENGALI LETTER GA
U+0997/U+09CD/U+09A7: "গ্ধ" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
U+0997/U+09CD/U+09B0: "গ্র" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+0997/U+09CD/U+09B2: "গ্ল" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
U+0997/U+09CD/U+09A8: "গ্ন" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER NA -->
<Key
latin:keySpec="&#x0997;"
latin:moreKeys="&#x0997;&#x09CD;&#x09A7;,&#x0997;&#x09CD;&#x09B0;,&#x0997;&#x09CD;&#x09B2;,&#x0997;&#x09CD;&#x09A8;" />
<!-- U+09CD: "্" BENGALI SIGN VIRAMA -->
<Key latin:keySpec="&#x09CD;" />
<!-- U+099C: "জ" BENGALI LETTER JA
U+099C/U+09CD/U+099E: "জ্ঞ" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER NYA
U+099C/U+09CD/U+099C: "জ্জ" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER JA
U+099C/U+09CD/U+09AF: "জ্ব" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+099C/U+09CD/U+09AC: "জ্য" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+099C/U+09CD/U+09B0: "জ্র" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER RA -->
<Key
latin:keySpec="&#x099C;"
latin:moreKeys="&#x099C;&#x09CD;&#x099E;,&#x099C;&#x09CD;&#x099C;,&#x099C;&#x09CD;&#x09AF;,&#x099C;&#x09CD;&#x09AC;,&#x099C;&#x09CD;&#x09B0;" />
<!-- U+0995: "ক" BENGALI LETTER KA
U+0995/U+09CD/U+09B7: "ক্ষ" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER SSA
U+0995/U+09CD/U+0995: "ক্ক" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
U+0995/U+09CD/U+099F: "ক্ট" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+0995/U+09CD/U+09A4: "ক্ত" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+0995/U+09CD/U+09B0: "ক্র" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+0995/U+09CD/U+09B8: "ক্স" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER SA
U+0995/U+09CD/U+09B2: "ক্ল" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x0995;"
latin:moreKeys="&#x0995;&#x09CD;&#x09B7;,&#x0995;&#x09CD;&#x0995;,&#x0995;&#x09CD;&#x099F;,&#x0995;&#x09CD;&#x09A4;,&#x0995;&#x09CD;&#x09B0;,&#x0995;&#x09CD;&#x09B8;,&#x0995;&#x09CD;&#x09B2;" />
<!-- U+09B2: "ল" BENGALI LETTER LA
U+09B2/U+09CD/U+0995: "ল্ক" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
U+09B2/U+09CD/U+0997: "ল্গ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER GA
U+09B2/U+09CD/U+099F: "ল্ট" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+09B2/U+09CD/U+09A1: "ল্ড" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
U+09B2/U+09CD/U+09A4: "ল্ত" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+09B2/U+09CD/U+09A6: "ল্দ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
U+09B2/U+09CD/U+09A7: "ল্ধ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
U+09B2/U+09CD/U+09AA: "ল্প" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
U+09B2/U+09CD/U+09AB: "ল্ফ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER PHA
U+09B2/U+09CD/U+09AC: "ল্ব" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09B2/U+09CD/U+09AE: "ল্ম" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
U+09B2/U+09CD/U+09B2: "ল্ল" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x09B2;"
latin:moreKeys="&#x09B2;&#x09CD;&#x0995;,&#x09B2;&#x09CD;&#x0997;,&#x09B2;&#x09CD;&#x099F;,&#x09B2;&#x09CD;&#x09A1;,&#x09B2;&#x09CD;&#x09A4;,&#x09B2;&#x09CD;&#x09A6;,&#x09B2;&#x09CD;&#x09A7;,&#x09B2;&#x09CD;&#x09AA;,&#x09B2;&#x09CD;&#x09AB;,&#x09B2;&#x09CD;&#x09AC;,&#x09B2;&#x09CD;&#x09AE;,&#x09B2;&#x09CD;&#x09B2;" />
<!-- U+0987: "ই" BENGALI LETTER I -->
<Key latin:keySpec="&#x0987;" />
<!-- U+0989: "উ" BENGALI LETTER U -->
<Key latin:keySpec="&#x0989;" />
</default>
</switch>
</merge>

View file

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<merge xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin">
<switch>
<case latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted">
<!-- U+0964: "।" DEVANAGARI DANDA
U+0965: "॥" DEVANAGARI DOUBLE DANDA -->
<Key
latin:keySpec="&#x0964;"
latin:moreKeys="&#x0965;" />
<!-- U+0999: "ঙ BENGALI LETTER NGA
U+0999/U+09CD/U+0995: "ঙ্ক"
U+0999/U+09CD/U+0996: "ঙ্খ"
U+0999/U+09CD/U+0997: "ঙ্গ" -->
<Key latin:keySpec="&#x0999;"
latin:moreKeys="&#x0999;&#x09CD;&#x0995;,&#x0999;&#x09CD;&#x0996;,&#x0999;&#x09CD;&#x0997;" />
<!-- U+099B: "ছ" BENGALI LETTER CHA -->
<Key latin:keySpec="&#x099B;" />
<!-- U+0983: "ঃ" BENGALI SIGN VISARGA -->
<Key latin:keySpec="&#x0983;" />
<!-- U+0981: "ঁ" BENGALI SIGN CANDRABINDU -->
<Key latin:keySpec="&#x0981;" />
<!-- U+09A3: "ণ" BENGALI LETTER NNA
U+09A3/U+09CD/U+099F: "ণ্ট" BENGALI LETTER NNA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+09A3/U+09CD/U+09A1: "ণ্ড" BENGALI LETTER NNA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
U+09A3/U+09CD/U+09A3: "ণ্ণ" BENGALI LETTER NNA/BENGALI SIGN VIRAMA/BENGALI LETTER NNA -->
<Key latin:keySpec="&#x09A3;"
latin:moreKeys="&#x09A3;&#x09CD;&#x099F;,&#x09A3;&#x09CD;&#x09A1;,&#x09A3;&#x09CD;&#x09A3;" />
<!-- U+0982: "ং" BENGALI SIGN ANUSVARA -->
<Key latin:keySpec="&#x0982;" />
<!-- U+0990: "ঐ" BENGALI LETTER AI -->
<Key latin:keySpec="&#x0990;" />
<!-- U+0994: "ঔ" BENGALI LETTER AU -->
<Key latin:keySpec="&#x0994;" />
</case>
<default>
<!-- U+09AF: "য" BENGALI LETTER YA
U+09CD/U+09AF: "্য" BENGALI SIGN VIRAMA/BENGALI LETTER YA -->
<Key
latin:keySpec="&#x09AF;"
latin:moreKeys="&#x09CD;&#x09AF;" />
<!-- U+09B7: "ষ" BENGALI LETTER SSA
U+09B7/U+09CD/U+0995: "ষ্ক" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
U+09B7/U+09CD/U+099F: "ষ্ট" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+09B7/U+09CD/U+09A0: "ষ্ঠ" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER TTHA
U+09B7/U+09CD/U+09A3: "ষ্ণ" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER NNA
U+09B7/U+09CD/U+09AA: "ষ্প" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
U+09B7/U+09CD/U+09AB: "ষ্ফ" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER PHA
U+09B7/U+09CD/U+09AE: "ষ্ম" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER MA -->
<Key
latin:keySpec="&#x09B7;"
latin:moreKeys="&#x09B7;&#x09CD;&#x0995;,&#x09B7;&#x09CD;&#x099F;,&#x09B7;&#x09CD;&#x09A0;,&#x09B7;&#x09CD;&#x09A3;,&#x09B7;&#x09CD;&#x09AA;,&#x09B7;&#x09CD;&#x09AB;,&#x09B7;&#x09CD;&#x09AE;" />
<!-- U+099A: "চ" BENGALI LETTER CA
U+099A/U+09CD/U+099A: "চ্চ" BENGALI LETTER CA/BENGALI SIGN VIRAMA/BENGALI LETTER CA
U+099A/U+09CD/U+099B: "চ্ছ" BENGALI LETTER CA/BENGALI SIGN VIRAMA/BENGALI LETTER CHA -->
<Key
latin:keySpec="&#x099A;"
latin:moreKeys="&#x099A;&#x09CD;&#x099A;,&#x099A;&#x09CD;&#x099B;" />
<!-- U+09AD: "ভ" BENGALI LETTER BHA
U+09AD/U+09CD/U+09AF: "ভ্" BENGALI LETTER BHA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
U+09AD/U+09CD/U+09B0: "ভ্র" BENGALI LETTER BHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09AD/U+09CD/U+09B2: "ভ্ল" BENGALI LETTER BHA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x09AD;"
latin:moreKeys="&#x09AD;&#x09CD;&#x09AF;,&#x09AD;&#x09CD;&#x09B0;,&#x09AD;&#x09CD;&#x09B2;" />
<!-- U+09AC: "ব" BENGALI LETTER BA
U+09CD/U+09AC: "্ব" BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09AC/U+09CD/U+09B0: "ব্র" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09AC/U+09CD/U+099C: "ব্জ" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER JA
U+09AC/U+09CD/U+09A6: "ব্দ" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
U+09AC/U+09CD/U+09A7: "ব্ধ" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
U+09AC/U+09CD/U+09AC: "ব্ব" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09AC/U+09CD/U+09B2: "ব্ল" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
U+09F1: "ৱ" BENGALI LETTER RA WITH MIDDLE DIAGONAL
U+09F0: "ৰ" BENGALI LETTER RA WITH LOWER DIAGONAL -->
<Key
latin:keySpec="&#x09AC;"
latin:moreKeys="&#x09CD;&#x09AC;,&#x09AC;&#x09CD;&#x09B0;,&#x09AC;&#x09CD;&#x099C;,&#x09AC;&#x09CD;&#x09A6;,&#x09AC;&#x09CD;&#x09A7;,&#x09AC;&#x09CD;&#x09AC;,&#x09AC;&#x09CD;&#x09B2;,&#x09F1;,&#x09F0;" />
<!-- U+09A8: "ন" BENGALI LETTER NA
U+09A8/U+09CD/U+09A4: "ন্ত" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
U+09A8/U+09CD/U+09A5: "ন্থ" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER THA
U+09A8/U+09CD/U+099F: "ন্ট" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
U+09A8/U+09CD/U+09A6: "ন্দ" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
U+09A8/U+09CD/U+09A7: "ন্ধ" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
U+09A8/U+09CD/U+09A1: "ন্ড" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
U+09A8/U+09CD/U+09A8: "ন্ন" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
U+09A8/U+09CD/U+09AC: "ন্ব" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09A8/U+09CD/U+09AE: "ন্ম" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
U+09A8/U+09CD/U+09B8: "ন্স" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER SA -->
<Key
latin:keySpec="&#x09A8;"
latin:moreKeys="&#x09A8;&#x09CD;&#x09A4;,&#x09A8;&#x09CD;&#x09A5;,&#x09A8;&#x09CD;&#x099F;,&#x09A8;&#x09CD;&#x09A6;,&#x09A8;&#x09CD;&#x09A7;,&#x09A8;&#x09CD;&#x09A1;,&#x09A8;&#x09CD;&#x09A8;,&#x09A8;&#x09CD;&#x09AC;,&#x09A8;&#x09CD;&#x09AE;,&#x09A8;&#x09CD;&#x09B8;" />
<!-- U+09AE: "ম" BENGALI LETTER MA
U+09AE/U+09CD/U+09A8: "ম্ন" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
U+09AE/U+09CD/U+09AA: "ম্প" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
U+09AE/U+09CD/U+09AC: "ম্ব" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
U+09AE/U+09CD/U+09AD: "ম্ভ" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER BHA
U+09AE/U+09CD/U+09AE: "ম্ম" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
U+09AE/U+09CD/U+09B0: "ম্র" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
U+09AE/U+09CD/U+09B2: "ম্ল" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER LA -->
<Key
latin:keySpec="&#x09AE;"
latin:moreKeys=",&#x09AE;&#x09CD;&#x09A8;,&#x09AE;&#x09CD;&#x09AA;,&#x09AE;&#x09CD;&#x09AC;,&#x09AE;&#x09CD;&#x09AD;,&#x09AE;&#x09CD;&#x09AE;,&#x09AE;&#x09CD;&#x09B0;,&#x09AE;&#x09CD;&#x09B2;" />
<!-- U+098F: "এ" BENGALI LETTER E -->
<Key latin:keySpec="&#x098F;" />
<!-- U+0993: "ও" BENGALI LETTER O -->
<Key latin:keySpec="&#x0993;" />
</default>
</switch>
</merge>

View file

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<merge xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin" >
<include latin:keyboardLayout="@xml/key_styles_common" />
<Row
latin:keyLabelFlags="fontNormal"
latin:keyWidth="9.091%p" >
<include latin:keyboardLayout="@xml/rowkeys_bengali_akkhor1" />
</Row>
<Row
latin:keyLabelFlags="fontNormal"
latin:keyWidth="9.091%p" >
<include latin:keyboardLayout="@xml/rowkeys_bengali_akkhor2" />
</Row>
<Row
latin:keyLabelFlags="fontNormal"
latin:keyWidth="8.711%p" >
<Key
latin:keyStyle="shiftKeyStyle"
latin:keyWidth="10.8%p" />
<include latin:keyboardLayout="@xml/rowkeys_bengali_akkhor3" />
<Key
latin:keyStyle="deleteKeyStyle"
latin:keyWidth="fillRight" />
</Row>
<include latin:keyboardLayout="@xml/row_qwerty4" />
</merge>

View file

@ -25,7 +25,7 @@ import java.util.ArrayList;
@SmallTest
public class KeyboardLayoutSetSubtypesCountTests extends KeyboardLayoutSetTestsBase {
private static final int NUMBER_OF_SUBTYPES = 81;
private static final int NUMBER_OF_SUBTYPES = 82;
private static final int NUMBER_OF_ASCII_CAPABLE_SUBTYPES = 49;
private static final int NUMBER_OF_PREDEFINED_ADDITIONAL_SUBTYPES = 2;

View file

@ -18,9 +18,6 @@ package com.android.inputmethod.keyboard.layout;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder;
import com.android.inputmethod.latin.Constants;
import java.util.Locale;
/**
* The Bengali keyboard.
@ -35,32 +32,6 @@ public final class Bengali extends LayoutBase {
@Override
public String getName() { return LAYOUT_NAME; }
public static class BengaliCustomizer extends LayoutCustomizer {
public BengaliCustomizer(final Locale locale) { super(locale); }
@Override
public ExpectedKey getAlphabetKey() { return BENGALI_ALPHABET_KEY; }
@Override
public ExpectedKey[] getOtherCurrencyKeys() {
return SymbolsShifted.CURRENCIES_OTHER_GENERIC;
}
@Override
public ExpectedKey[] getLeftShiftKeys(final boolean isPhone) { return EMPTY_KEYS; }
@Override
public ExpectedKey[] getRightShiftKeys(final boolean isPhone) {
return isPhone ? EMPTY_KEYS : EXCLAMATION_AND_QUESTION_MARKS;
}
// U+0995: "" BENGALI LETTER KA
// U+0996: "" BENGALI LETTER KHA
// U+0997: "" BENGALI LETTER GA
private static final ExpectedKey BENGALI_ALPHABET_KEY = key(
"\u0995\u0996\u0997", Constants.CODE_SWITCH_ALPHA_SYMBOL);
}
@Override
ExpectedKey[][] getCommonAlphabetLayout(boolean isPhone) { return ALPHABET_COMMON; }

View file

@ -0,0 +1,496 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.inputmethod.keyboard.layout;
import com.android.inputmethod.keyboard.KeyboardId;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder;
/**
* The Bengali Akkhor keyboard.
*/
public final class BengaliAkkhor extends LayoutBase {
private static final String LAYOUT_NAME = "bengali_akkhor";
public BengaliAkkhor(final LayoutCustomizer customizer) {
super(customizer, Symbols.class, SymbolsShifted.class);
}
@Override
public String getName() { return LAYOUT_NAME; }
@Override
ExpectedKey[][] getCommonAlphabetLayout(boolean isPhone) { return ALPHABET_COMMON; }
@Override
ExpectedKey[][] getCommonAlphabetShiftLayout(boolean isPhone, final int elementId) {
if (elementId == KeyboardId.ELEMENT_ALPHABET_AUTOMATIC_SHIFTED) {
return getCommonAlphabetLayout(isPhone);
}
return ALPHABET_SHIFTED_COMMON;
}
private static final ExpectedKey[][] ALPHABET_COMMON = new ExpectedKeyboardBuilder()
.setKeysOfRow(1,
// U+09A7: "" BENGALI LETTER DHA
// U+09E7: "" BENGALI DIGIT ONE
// U+09A7/U+09CD/U+09AC:
// "ধ্ব্র" BENGALI LETTER DHA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09A7/U+09CD/U+09AF:
// "ধ্য্র" BENGALI LETTER DHA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+09A7/U+09CD/U+09B0:
// "ধ্র" BENGALI LETTER DHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
key("\u09A7", joinMoreKeys("\u09E7", "\u09A7\u09CD\u09AC", "\u09A7\u09CD\u09AF",
"\u09A7\u09CD\u09B0")),
// U+09A5: "" BENGALI LETTER THA
// U+09E8: "" BENGALI DIGIT TWO
// U+09A5/U+09CD/U+09AF:
// "থ্য" BENGALI LETTER THA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+09A5/U+09CD/U+09B0:
// "থ্র" BENGALI LETTER THA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
key("\u09A5", joinMoreKeys("\u09E8", "\u09A5\u09CD\u09AF",
"\u09A5\u09CD\u09B0")),
// U+09C7: "" BENGALI VOWEL SIGN E
// U+09E9: "" BENGALI DIGIT THREE
// U+098F: "" BENGALI LETTER E
key("\u09C7", joinMoreKeys("\u09E9", "\u098F")),
// U+09B0: "" BENGALI LETTER RA
// U+09EA: "" BENGALI DIGIT FOUR
key("\u09B0", joinMoreKeys("\u09EA")),
// U+09A4: "" BENGALI LETTER TA
// U+09EB: "" BENGALI DIGIT FIVE
// U+09CE: "" BENGALI LETTER KHANDA TA
// U+09A4/U+09CD/U+09A4:
// "ত্ত" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+09A4/U+09CD/U+09A8:
// "ত্ন" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
// U+09A4/U+09CD/U+09AC:
// "ত্ব" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09A4/U+09CD/U+09AE:
// "ত্ম" BENGALI LETTER TA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
key("\u09A4", joinMoreKeys("\u09EB", "\u09CE", "\u09A4\u09CD\u09A4",
"\u09A4\u09CD\u09A8", "\u09A4\u09CD\u09AC", "\u09A4\u09CD\u09AE")),
// U+09DF: "" BENGALI LETTER YYA
// U+09EC: "" BENGALI DIGIT SIX
key("\u09DF", joinMoreKeys("\u09EC")),
// U+09C1: "" BENGALI VOWEL SIGN U
// U+09ED: "" BENGALI DIGIT SEVEN
// U+0989: "" BENGALI LETTER U
key("\u09C1", joinMoreKeys("\u09ED", "\u0989")),
// U+09BF: "ি" BENGALI VOWEL SIGN I
// U+09EE: "" BENGALI DIGIT EIGHT
// U+0987: "ই BENGALI LETTER I
key("\u09Bf", joinMoreKeys("\u09EE", "\u0987")),
// U+09CB: "" BENGALI VOWEL SIGN O
// U+09EF: "" BENGALI DIGIT NINE
// U+0993: "" BENGALI LETTER O
key("\u09CB", joinMoreKeys("\u09EF", "\u0993")),
// U+09AA: "" BENGALI LETTER PA
// U+09E6: "" BENGALI DIGIT ZERO
// U+09AA/U+09CD/U+09A4:
// "প্ত" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+09AA/U+09CD/U+09A8:
// "প্ন" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
// U+09AA/U+09CD/U+09AA:
// "প্প" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
// U+09AA/U+09CD/U+09AF:
// "প্য" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+09AA/U+09CD/U+09B0:
// "প্র" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09AA/U+09CD/U+09B2:
// "প্ল" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
// U+09AA/U+09CD/U+09B8:
// "প্স" BENGALI LETTER PA/BENGALI SIGN VIRAMA/BENGALI LETTER SA
key("\u09AA", joinMoreKeys("\u09E6", "\u09AA\u09CD\u09A4", "\u09AA\u09CD\u09A8",
"\u09AA\u09CD\u09AA", "\u09AA\u09CD\u09AF", "\u09AA\u09CD\u09B0",
"\u09AA\u09CD\u09B2", "\u09AA\u09CD\u09B8")),
// U+0986: "" BENGALI LETTER AA
key("\u0986"))
.setKeysOfRow(2,
// U+09BE: "া BENGALI VOWEL SIGN AA
// U+0986: "" BENGALI LETTER AA
key("\u09BE", moreKey("\u0986")),
// U+09B8: "" BENGALI LETTER SA
// U+09B8/U+09CD/U+09AC:
// "স্ব" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09B8/U+09CD/U+09A4:
// "স্ত" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+09B8/U+09CD/U+099F:
// "স্ট" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+09B8/U+09CD/U+0995:
// "স্ক" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
// U+09B8/U+09CD/U+09AA:
// "স্প" BENGALI LETTER SA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
key("\u09B8", joinMoreKeys("\u09B8\u09CD\u09AC", "\u09B8\u09CD\u09A4",
"\u09B8\u09CD\u099F", "\u09B8\u09CD\u0995", "\u09B8\u09CD\u09AA")),
// U+09A6: "" BENGALI LETTER DA
// U+09A6/U+09CD/U+09A6:
// "দ্দ" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
// U+09A6/U+09CD/U+09A7:
// "দ্ধ" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
// U+09A6/U+09CD/U+09AC:
// "দ্ব" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09A6/U+09CD/U+09AD:
// "দ্ভ" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER BHA
// U+09A6/U+09CD/U+09AE:
// "দ্ম" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
// U+09A6/U+09CD/U+09AF:
// "দ্য" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+09A6/U+09CD/U+09B0:
// "দ্র" BENGALI LETTER DA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
key("\u09A6", joinMoreKeys("\u09A6\u09CD\u09A6", "\u09A6\u09CD\u09A7",
"\u09A6\u09CD\u09AC", "\u09A6\u09CD\u09AD", "\u09A6\u09CD\u09AE",
"\u09A6\u09CD\u09AF", "\u09A6\u09CD\u09B0")),
// U+09C3: "" BENGALI VOWEL SIGN VOCALIC R
// U+098B: "" BENGALI LETTER VOCALIC R
key("\u09C3", moreKey("\u098B")),
// U+0997: "" BENGALI LETTER GA
// U+0997/U+09CD/U+09A7:
// "গ্ধ" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER DH A
// U+0997/U+09CD/U+09B0:
// "গ্র" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+0997/U+09CD/U+09B2:
// "গ্ল" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
// U+0997/U+09CD/U+09A8:
// "গ্ন" BENGALI LETTER GA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
key("\u0997", joinMoreKeys("\u0997\u09CD\u09A7", "\u0997\u09CD\u09B0",
"\u0997\u09CD\u09B2", "\u0997\u09CD\u09A8")),
// U+09CD: "" BENGALI SIGN VIRAMA
key("\u09CD"),
// U+099C: "" BENGALI LETTER JA
// U+099C/U+09CD/U+099E:
// "জ্ঞ" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER NYA
// U+099C/U+09CD/U+099C:
// "জ্জ" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER JA
// U+099C/U+09CD/U+09AF:
// "জ্ব" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+099C/U+09CD/U+09AC:
// "জ্য" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+099C/U+09CD/U+09B0:
// "জ্র" BENGALI LETTER JA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
key("\u099C", joinMoreKeys("\u099C\u09CD\u099E", "\u099C\u09CD\u099C",
"\u099C\u09CD\u09AF", "\u099C\u09CD\u09AC", "\u099C\u09CD\u09B0")),
// U+0995: "" BENGALI LETTER KA
// U+0995/U+09CD/U+09B7:
// "ক্ষ" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER SSA
// U+0995/U+09CD/U+0995:
// "ক্ক" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
// U+0995/U+09CD/U+099F:
// "ক্ট" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+0995/U+09CD/U+09A4:
// "ক্ত" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+0995/U+09CD/U+09B0:
// "ক্র" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+0995/U+09CD/U+09B8:
// "ক্স" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER SA
// U+0995/U+09CD/U+09B2:
// "ক্ল" BENGALI LETTER KA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u0995", joinMoreKeys("\u0995\u09CD\u09B7", "\u0995\u09CD\u0995",
"\u0995\u09CD\u099F", "\u0995\u09CD\u09A4", "\u0995\u09CD\u09B0",
"\u0995\u09CD\u09B8", "\u0995\u09CD\u09B2")),
// U+09B2: "" BENGALI LETTER LA
// U+09B2/U+09CD/U+0995:
// "ল্ক" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
// U+09B2/U+09CD/U+0997:
// "ল্গ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER GA
// U+09B2/U+09CD/U+099F:
// "ল্ট" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+09B2/U+09CD/U+09A1:
// "ল্ড" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
// U+09B2/U+09CD/U+09A4:
// "ল্ত" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+09B2/U+09CD/U+09A6:
// "ল্দ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
// U+09B2/U+09CD/U+09A7:
// "ল্ধ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
// U+09B2/U+09CD/U+09AA:
// "ল্প" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
// U+09B2/U+09CD/U+09AB:
// "ল্ফ" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER PHA
// U+09B2/U+09CD/U+09AC:
// "ল্ব" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09B2/U+09CD/U+09AE:
// "ল্ম" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
// U+09B2/U+09CD/U+09B2:
// "ল্ল" BENGALI LETTER LA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u09B2", joinMoreKeys("\u09B2\u09CD\u0995", "\u09B2\u09CD\u0997",
"\u09B2\u09CD\u099F", "\u09B2\u09CD\u09A1", "\u09B2\u09CD\u09A4",
"\u09B2\u09CD\u09A6", "\u09B2\u09CD\u09A7", "\u09B2\u09CD\u09AA",
"\u09B2\u09CD\u09AB", "\u09B2\u09CD\u09AC", "\u09B2\u09CD\u09AE",
"\u09B2\u09CD\u09B2")),
// U+0987: "" BENGALI LETTER I
key("\u0987"),
// U+0989: "" BENGALI LETTER U
key("\u0989"))
.setKeysOfRow(3,
// U+09AF: "" BENGALI LETTER YA
// U+09CD/U+09AF: "্য" BENGALI SIGN VIRAMA/BENGALI LETTER YA
key("\u09AF", moreKey("\u09CD\u09AF")),
// U+09B7: "" BENGALI LETTER SSA
// U+09B7/U+09CD/U+0995:
// "ষ্ক" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER KA
// U+09B7/U+09CD/U+099F:
// "ষ্ট" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+09B7/U+09CD/U+09A0:
// "ষ্ঠ" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER TTHA
// U+09B7/U+09CD/U+09A3:
// "ষ্ণ" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER NNA
// U+09B7/U+09CD/U+09AA:
// "ষ্প" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
// U+09B7/U+09CD/U+09AB:
// "ষ্ফ" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER PHA
// U+09B7/U+09CD/U+09AE:
// "ষ্ম" BENGALI LETTER SSA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
key("\u09B7", joinMoreKeys("\u09B7\u09CD\u0995", "\u09B7\u09CD\u099F",
"\u09B7\u09CD\u09A0", "\u09B7\u09CD\u09A3", "\u09B7\u09CD\u09AA",
"\u09B7\u09CD\u09AB", "\u09B7\u09CD\u09AE")),
// U+099A: "" BENGALI LETTER CA
// U+099A/U+09CD/U+099A:
// "চ্চ" BENGALI LETTER CA/BENGALI SIGN VIRAMA/BENGALI LETTER CA
// U+099A/U+09CD/U+099B:
// "চ্ছ" BENGALI LETTER CA/BENGALI SIGN VIRAMA/BENGALI LETTER CHA
key("\u099A", joinMoreKeys("\u099A\u09CD\u099A", "\u099A\u09CD\u099B")),
// U+09AD: "" BENGALI LETTER BHA
// U+09AD/U+09CD/U+09AF:
// "ভ্" BENGALI LETTER BHA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+09AD/U+09CD/U+09B0:
// "ভ্র" BENGALI LETTER BHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09AD/U+09CD/U+09B2:
// "ভ্ল" BENGALI LETTER BHA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u09AD", joinMoreKeys("\u09AD\u09CD\u09AF", "\u09AD\u09CD\u09B0",
"\u09AD\u09CD\u09B2")),
// U+09AC: "" BENGALI LETTER BA
// U+09CD/U+09AC: "্ব" BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09AC/U+09CD/U+09B0:
// "ব্র" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09AC/U+09CD/U+099C:
// "ব্জ" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER JA
// U+09AC/U+09CD/U+09A6:
// "ব্দ" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
// U+09AC/U+09CD/U+09A7:
// "ব্ধ" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
// U+09AC/U+09CD/U+09AC:
// "ব্ব" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09AC/U+09CD/U+09B2:
// "ব্ল" BENGALI LETTER BA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
// U+09F1: "" BENGALI LETTER RA WITH MIDDLE DIAGONAL
// U+09F0: "" BENGALI LETTER RA WITH LOWER DIAGONAL
key("\u09AC", joinMoreKeys("\u09CD\u09AC", "\u09AC\u09CD\u09B0",
"\u09AC\u09CD\u099C", "\u09AC\u09CD\u09A6", "\u09AC\u09CD\u09A7",
"\u09AC\u09CD\u09AC", "\u09AC\u09CD\u09B2", "\u09F1", "\u09F0")),
// U+09A8: "" BENGALI LETTER NA
// U+09A8/U+09CD/U+09A4:
// "ন্ত" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+09A8/U+09CD/U+09A5:
// "ন্থ" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER THA
// U+09A8/U+09CD/U+099F:
// "ন্ট" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+09A8/U+09CD/U+09A6:
// "ন্দ" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER DA
// U+09A8/U+09CD/U+09A7:
// "ন্ধ" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER DHA
// U+09A8/U+09CD/U+09A1:
// "ন্ড" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
// U+09A8/U+09CD/U+09A8:
// "ন্ন" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
// U+09A8/U+09CD/U+09AC:
// "ন্ব" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09A8/U+09CD/U+09AE:
// "ন্ম" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
// U+09A8/U+09CD/U+09B8:
// "ন্স" BENGALI LETTER NA/BENGALI SIGN VIRAMA/BENGALI LETTER SA
key("\u09A8", joinMoreKeys("\u09A8\u09CD\u09A4", "\u09A8\u09CD\u09A5",
"\u09A8\u09CD\u099F", "\u09A8\u09CD\u09A6", "\u09A8\u09CD\u09A7",
"\u09A8\u09CD\u09A1", "\u09A8\u09CD\u09A8", "\u09A8\u09CD\u09AC",
"\u09A8\u09CD\u09AE", "\u09A8\u09CD\u09B8")),
// U+09AE: "" BENGALI LETTER MA
// U+09AE/U+09CD/U+09A8:
// "ম্ন" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
// U+09AE/U+09CD/U+09AA:
// "ম্প" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER PA
// U+09AE/U+09CD/U+09AC:
// "ম্ব" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09AE/U+09CD/U+09AD:
// "ম্ভ" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER BHA
// U+09AE/U+09CD/U+09AE:
// "ম্ম" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
// U+09AE/U+09CD/U+09B0:
// "ম্র" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09AE/U+09CD/U+09B2:
// "ম্ল" BENGALI LETTER MA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u09AE", joinMoreKeys("\u09AE\u09CD\u09A8", "\u09AE\u09CD\u09AA",
"\u09AE\u09CD\u09AC", "\u09AE\u09CD\u09AD", "\u09AE\u09CD\u09AE",
"\u09AE\u09CD\u09B0", "\u09AE\u09CD\u09B2")),
// U+098F: "" BENGALI LETTER E
key("\u098F"),
// U+0993: "" BENGALI LETTER O
key("\u0993"))
.build();
private static final ExpectedKey[][] ALPHABET_SHIFTED_COMMON = new ExpectedKeyboardBuilder()
.setKeysOfRow(1,
// U+09A2: "" BENGALI LETTER DDHA
key("\u09A2"),
// U+09A0: "" BENGALI LETTER TTHA
key("\u09A0"),
// U+09C8: "" BENGALI VOWEL SIGN AI
// U+0990: "" BENGALI LETTER AI
key("\u09C8", moreKey("\u0990")),
// U+09DC: "" BENGALI LETTER RRA
// U+09BC: "" BENGALI SIGN NUKTA
key("\u09DC", moreKey("\u09BC")),
// U+099F: "" BENGALI LETTER TTA
// U+09F3: "" BENGALI RUPEE SIGN
// U+099F/U+09CD/U+099F:
// "ট্ট" BENGALI LETTER TTA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+099F/U+09CD/U+09AC:
// "ট্ব" BENGALI LETTER TTA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+099F/U+09CD/U+09AE:
// "ট্ম" BENGALI LETTER TTA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
key("\u099F", joinMoreKeys("\u09F3", "\u099F\u09CD\u099F", "\u099F\u09CD\u09AC",
"\u099F\u09CD\u09AE")),
// U+099E: "" BENGALI LETTER NYA
// U+099E/U+09CD/U+099A:
// "ঞ্চ" BENGALI LETTER NYA/BENGALI SIGN VIRAMA/BENGALI LETTER CA
// U+099E/U+09CD/U+099B:
// "ঞ্ছ" BENGALI LETTER NYA/BENGALI SIGN VIRAMA/BENGALI LETTER CHA
// U+099E/U+09CD/U+099C:
// "ঞ্জ" BENGALI LETTER NYA/BENGALI SIGN VIRAMA/BENGALI LETTER JA
key("\u099E", joinMoreKeys("\u099E\u09CD\u099A", "\u099E\u09CD\u099B",
"\u099E\u09CD\u099C")),
// U+09C2: "" BENGALI VOWEL SIGN UU
// U+098A: "" BENGALI LETTER UU
key("\u09C2", moreKey("\u098A")),
// U+09C0: "" BENGALI VOWEL SIGN II
// U+0988: "" BENGALI LETTER II
key("\u09C0", moreKey("\u0988")),
// U+09CC: "" BENGALI VOWEL SIGN AU
// U+099A: "" BENGALI LETTER CA
// U+09D7: "" BENGALI AU LENGTH MARK
key("\u09CC", joinMoreKeys("\u099A", "\u09D7")),
// U+09AB: "" BENGALI LETTER PHA
// U+09AB/U+09CD/U+099F:
// "ফ্ট" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER TTA
// U+09AB/U+09CD/U+09AF:
// "ফ্য" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER YA
// U+09AB/U+09CD/U+09B0:
// "ফ্র" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09AB/U+09CD/U+09B2:
// "ফ্ল" BENGALI LETTER PHA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u09AB", joinMoreKeys("\u09AB\u09CD\u099F", "\u09AB\u09CD\u09AF",
"\u09AB\u09CD\u09B0", "\u09AB\u09CD\u09B2")),
// U+098B: "" BENGALI LETTER VOCALIC R
// U+098C: "" BENGALI LETTER VOCALIC L
// U+09E1: "" BENGALI LETTER VOCALIC LL
// U+09F4: "" BENGALI CURRENCY NUMERATOR ONE
// U+09F5: "" BENGALI CURRENCY NUMERATOR TWO
// U+09F6: "" BENGALI CURRENCY NUMERATOR THREE
// U+09E2: "" BENGALI VOWEL SIGN VOCALIC L
// U+09E3: "" BENGALI VOWEL SIGN VOCALIC LL
key("\u098B", joinMoreKeys("\u098C", "\u09E1", "\u09F4", "\u09F5", "\u09F6",
"\u09E2", "\u09E3")))
.setKeysOfRow(2,
// U+0985: "" BENGALI LETTER A
key("\u0985"),
// U+09B6: "" BENGALI LETTER SHA
// U+09B6/U+09CD/U+099A:
// "শ্চ" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER CA
// U+09B6/U+09CD/U+099B:
// "শ্ছ" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER CHA
// U+09B6/U+09CD/U+09A4:
// "শ্ত" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER TA
// U+09B6/U+09CD/U+09A8:
// "শ্ন" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
// U+09B6/U+09CD/U+09AC:
// "শ্ব" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09B6/U+09CD/U+09AE:
// "শ্ম" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
// U+09B6/U+09CD/U+09B0:
// "শ্র" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09B6/U+09CD/U+09B2:
// "শ্ল" BENGALI LETTER SHA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u09B6", joinMoreKeys("\u09B6\u09CD\u099A", "\u09B6\u09CD\u099B",
"\u09B6\u09CD\u09A4", "\u09B6\u09CD\u09A8", "\u09B6\u09CD\u09AC",
"\u09B6\u09CD\u09AE", "\u09B6\u09CD\u09B0", "\u09B6\u09CD\u09B2")),
// U+09A1: "" BENGALI LETTER DDA
// U+09A1/U+09CD/U+09A1:
// "ড্ড" BENGALI LETTER DDA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
key("\u09A1", moreKey("\u09A1\u09CD\u09A1")),
// U+09DD: "" BENGALI LETTER RHA
key("\u09DD"),
// U+0998: "" BENGALI LETTER GHA
key("\u0998"),
// U+09B9: "" BENGALI LETTER HA
// U+09BD: "" BENGALI SIGN AVAGRAHA
// U+09B9/U+09CD/U+09A3:
// "হ্ণ" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER NNA
// U+09B9/U+09CD/U+09A8:
// "হ্ন" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER NA
// U+09B9/U+09CD/U+09AC:
// "হ্ব" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER BA
// U+09B9/U+09CD/U+09AE:
// "হ্ম" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER MA
// U+09B9/U+09CD/U+09B0:
// "হ্র" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER RA
// U+09B9/U+09CD/U+09B2:
// "হ্ল" BENGALI LETTER HA/BENGALI SIGN VIRAMA/BENGALI LETTER LA
key("\u09B9", joinMoreKeys("\u09BD", "\u09B9\u09CD\u09A3", "\u09B9\u09CD\u09A8",
"\u09B9\u09CD\u09AC", "\u09B9\u09CD\u09AE", "\u09B9\u09CD\u09B0",
"\u09B9\u09CD\u09B2")),
// U+099D: "" BENGALI LETTER JHA
key("\u099D"),
// U+0996: "" BENGALI LETTER KHA
key("\u0996"),
// U+09CE: "" BENGALI LETTER KHANDA TA
key("\u09CE"),
// U+0988: "" BENGALI LETTER II
key("\u0988"),
// U+098A: "" BENGALI LETTER UU
key("\u098A"))
.setKeysOfRow(3,
// U+0964: "" DEVANAGARI DANDA
// U+0965: "" DEVANAGARI DOUBLE DANDA
key("\u0964", moreKey("\u0965")),
// U+0999: "ঙ BENGALI LETTER NGA
// U+0999/U+09CD/U+0995: "ঙ্ক"
// U+0999/U+09CD/U+0996: "ঙ্খ"
// U+0999/U+09CD/U+0997: "ঙ্গ"
key("\u0999", joinMoreKeys("\u0999\u09CD\u0995", "\u0999\u09CD\u0996",
"\u0999\u09CD\u0997")),
// U+099B: "" BENGALI LETTER CHA
key("\u099B"),
// U+0983: "" BENGALI SIGN VISARGA
key("\u0983"),
// U+0981: "" BENGALI SIGN CANDRABINDU
key("\u0981"),
// U+09A3: "" BENGALI LETTER NNA
// U+09A3/U+09CD/U+099F:
// "ণ্ট" BENGALI LETTER NNA/BENGALI SIGN VIRAMA/BENGALI LETTER TT/A
// U+09A3/U+09CD/U+09A1:
// "ণ্ড" BENGALI LETTER NNA/BENGALI SIGN VIRAMA/BENGALI LETTER DDA
// U+09A3/U+09CD/U+09A3:
// "ণ্ণ" BENGALI LETTER NNA/BENGALI SIGN VIRAMA/BENGALI LETTER NN
key("\u09A3", joinMoreKeys("\u09A3\u09CD\u099F", "\u09A3\u09CD\u09A1",
"\u09A3\u09CD\u09A3")),
// U+0982: "" BENGALI SIGN ANUSVARA
key("\u0982"),
// U+0990: "" BENGALI LETTER AI
key("\u0990"),
// U+0994: "" BENGALI LETTER AU
key("\u0994"))
.build();
}

View file

@ -0,0 +1,48 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.inputmethod.keyboard.layout.tests;
import com.android.inputmethod.keyboard.layout.LayoutBase;
import com.android.inputmethod.keyboard.layout.LayoutBase.LayoutCustomizer;
import com.android.inputmethod.keyboard.layout.SymbolsShifted;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
import com.android.inputmethod.latin.Constants;
import java.util.Locale;
public class BengaliCustomizer extends LayoutCustomizer {
public BengaliCustomizer(final Locale locale) { super(locale); }
@Override
public ExpectedKey getAlphabetKey() { return BENGALI_ALPHABET_KEY; }
@Override
public ExpectedKey[] getOtherCurrencyKeys() {
return SymbolsShifted.CURRENCIES_OTHER_GENERIC;
}
@Override
public ExpectedKey[] getRightShiftKeys(final boolean isPhone) {
return isPhone ? EMPTY_KEYS : LayoutBase.EXCLAMATION_AND_QUESTION_MARKS;
}
// U+0995: "" BENGALI LETTER KA
// U+0996: "" BENGALI LETTER KHA
// U+0997: "" BENGALI LETTER GA
private static final ExpectedKey BENGALI_ALPHABET_KEY = LayoutBase.key(
"\u0995\u0996\u0997", Constants.CODE_SWITCH_ALPHA_SYMBOL);
}

View file

@ -0,0 +1,54 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.inputmethod.keyboard.layout.tests;
import android.test.suitebuilder.annotation.SmallTest;
import com.android.inputmethod.keyboard.layout.BengaliAkkhor;
import com.android.inputmethod.keyboard.layout.LayoutBase;
import com.android.inputmethod.keyboard.layout.Symbols;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
import java.util.Locale;
/**
* bn_BD: Bengali (Bangladesh)/bengali_akkhor
*/
@SmallTest
public final class TestsBengaliBD extends LayoutTestsBase {
private static final Locale LOCALE = new Locale("bn", "BD");
private static final LayoutBase LAYOUT = new BengaliAkkhor(new BengaliBDCustomzier(LOCALE));
@Override
LayoutBase getLayout() { return LAYOUT; }
private static class BengaliBDCustomzier extends BengaliCustomizer {
public BengaliBDCustomzier(final Locale locale) { super(locale); }
@Override
public ExpectedKey[] getRightShiftKeys(final boolean isPhone) {
return isPhone ? EMPTY_KEYS : LayoutBase.EXCLAMATION_AND_QUESTION_MARKS;
}
@Override
public ExpectedKey getCurrencyKey() { return CURRENCY_RUPEE; }
// U+09F3: "" BENGALI RUPEE SIGN
private static final ExpectedKey CURRENCY_RUPEE = key("\u09F3",
Symbols.CURRENCY_GENERIC_MORE_KEYS);
}
}

View file

@ -19,7 +19,6 @@ package com.android.inputmethod.keyboard.layout.tests;
import android.test.suitebuilder.annotation.SmallTest;
import com.android.inputmethod.keyboard.layout.Bengali;
import com.android.inputmethod.keyboard.layout.Bengali.BengaliCustomizer;
import com.android.inputmethod.keyboard.layout.LayoutBase;
import com.android.inputmethod.keyboard.layout.Symbols;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
@ -40,6 +39,9 @@ public final class TestsBengaliIN extends LayoutTestsBase {
private static class BengaliINCustomzier extends BengaliCustomizer {
public BengaliINCustomzier(final Locale locale) { super(locale); }
@Override
public ExpectedKey[] getLeftShiftKeys(final boolean isPhone) { return EMPTY_KEYS; }
@Override
public ExpectedKey getCurrencyKey() { return CURRENCY_RUPEE; }

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2014, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
** http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Label for "switch to alphabetic" key.
U+0995: "क" BENGALI LETTER KA
U+0996: "ख" BENGALI LETTER KHA
U+0997: "ग" BENGALI LETTER GA -->
<string name="keylabel_to_alpha">&#x0995;&#x0996;&#x0997;</string>
<!-- U+09F3: "৳" BENGALI RUPEE SIGN -->
<string name="keyspec_currency">&#x09F3;</string>
</resources>