mirror of
https://github.com/Helium314/HeliBoard.git
synced 2025-04-21 22:59:10 +00:00
add Arabic PC layout
This commit is contained in:
parent
1c67a85481
commit
dc46c14f9c
10 changed files with 350 additions and 1 deletions
|
@ -9,7 +9,7 @@ android {
|
|||
applicationId "org.dslul.openboard.inputmethod.latin"
|
||||
minSdkVersion 19
|
||||
targetSdkVersion 30
|
||||
versionCode 13
|
||||
versionCode 14
|
||||
versionName '1.4.2'
|
||||
}
|
||||
|
||||
|
|
|
@ -84,6 +84,9 @@
|
|||
<!-- Description for Bulgarian (BEKL) subtype. -->
|
||||
<string name="subtype_bulgarian_bekl" translatable="false">%s (BEKL)</string>
|
||||
|
||||
<!-- Description for Arabic (PC) subtype. -->
|
||||
<string name="subtype_arabic_pc" translatable="false">%s (PC)</string>
|
||||
|
||||
<!-- Compatibility map from subtypeLocale:subtypeExtraValue to keyboardLayoutSet -->
|
||||
<string-array name="locale_and_extra_value_to_keyboard_layout_set_map">
|
||||
<item>en_US:TrySuppressingImeSwitcher,AsciiCapable,SupportTouchPositionCorrection,EmojiCapable</item>
|
||||
|
|
48
app/src/main/res/xml-sw600dp/rows_arabic_pc.xml
Normal file
48
app/src/main/res/xml-sw600dp/rows_arabic_pc.xml
Normal file
|
@ -0,0 +1,48 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2011, 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-auto">
|
||||
<include latin:keyboardLayout="@xml/key_styles_common" />
|
||||
<Row
|
||||
latin:keyWidth="9%p"
|
||||
latin:keyLabelFlags="fontNormal"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/rowkeys_arabic1_pc" />
|
||||
<Key
|
||||
latin:keyStyle="deleteKeyStyle"
|
||||
latin:keyWidth="fillRight" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyWidth="9%p"
|
||||
latin:keyLabelFlags="fontNormal"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/rowkeys_arabic2_pc" />
|
||||
<Key
|
||||
latin:keyStyle="enterKeyStyle"
|
||||
latin:keyWidth="fillRight" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyWidth="9%p"
|
||||
latin:keyLabelFlags="fontNormal"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/rowkeys_arabic3_pc" />
|
||||
</Row>
|
||||
<include latin:keyboardLayout="@xml/row_qwerty4" />
|
||||
</merge>
|
26
app/src/main/res/xml/kbd_arabic_pc.xml
Normal file
26
app/src/main/res/xml/kbd_arabic_pc.xml
Normal file
|
@ -0,0 +1,26 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2011, 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-auto"
|
||||
>
|
||||
<include
|
||||
latin:keyboardLayout="@xml/rows_arabic_pc" />
|
||||
</Keyboard>
|
44
app/src/main/res/xml/keyboard_layout_set_arabic_pc.xml
Normal file
44
app/src/main/res/xml/keyboard_layout_set_arabic_pc.xml
Normal file
|
@ -0,0 +1,44 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2012, The Android Open Source Project
|
||||
**
|
||||
** Licensed under the Apache License, Version 2.0 (the "License");
|
||||
** you may not use this file except in compliance with the License.
|
||||
** You may obtain a copy of the License at
|
||||
**
|
||||
** http://www.apache.org/licenses/LICENSE-2.0
|
||||
**
|
||||
** Unless required by applicable law or agreed to in writing, software
|
||||
** distributed under the License is distributed on an "AS IS" BASIS,
|
||||
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
** See the License for the specific language governing permissions and
|
||||
** limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<KeyboardLayoutSet
|
||||
xmlns:latin="http://schemas.android.com/apk/res-auto">
|
||||
<Feature
|
||||
latin:supportedScript="arabic" />
|
||||
<Element
|
||||
latin:elementName="alphabet"
|
||||
latin:elementKeyboard="@xml/kbd_arabic_pc"
|
||||
latin:enableProximityCharsCorrection="true" />
|
||||
<Element
|
||||
latin:elementName="symbols"
|
||||
latin:elementKeyboard="@xml/kbd_symbols" />
|
||||
<Element
|
||||
latin:elementName="symbolsShifted"
|
||||
latin:elementKeyboard="@xml/kbd_symbols_shift" />
|
||||
<Element
|
||||
latin:elementName="phone"
|
||||
latin:elementKeyboard="@xml/kbd_phone" />
|
||||
<Element
|
||||
latin:elementName="phoneSymbols"
|
||||
latin:elementKeyboard="@xml/kbd_phone_symbols" />
|
||||
<Element
|
||||
latin:elementName="number"
|
||||
latin:elementKeyboard="@xml/kbd_number" />
|
||||
</KeyboardLayoutSet>
|
|
@ -24,6 +24,7 @@
|
|||
keyboard_locale: script_name/keyboard_layout_set
|
||||
af: Afrikaans/qwerty
|
||||
ar: Arabic/arabic
|
||||
ar: Arabic/arabic_pc
|
||||
az_AZ: Azerbaijani (Azerbaijan)/qwerty
|
||||
be_BY: Belarusian (Belarus)/east_slavic
|
||||
bg: Bulgarian/bulgarian
|
||||
|
@ -161,6 +162,14 @@
|
|||
android:imeSubtypeExtraValue="SupportTouchPositionCorrection,EmojiCapable"
|
||||
android:isAsciiCapable="false"
|
||||
/>
|
||||
<subtype android:icon="@drawable/ic_ime_switcher_dark"
|
||||
android:label="@string/subtype_arabic_pc"
|
||||
android:subtypeId="0x590dde41"
|
||||
android:imeSubtypeLocale="ar"
|
||||
android:imeSubtypeMode="keyboard"
|
||||
android:imeSubtypeExtraValue="KeyboardLayoutSet=arabic_pc,EmojiCapable"
|
||||
android:isAsciiCapable="false"
|
||||
/>
|
||||
<subtype android:icon="@drawable/ic_ime_switcher_dark"
|
||||
android:label="@string/subtype_generic"
|
||||
android:subtypeId="0x70b0f974"
|
||||
|
|
78
app/src/main/res/xml/rowkeys_arabic1_pc.xml
Normal file
78
app/src/main/res/xml/rowkeys_arabic1_pc.xml
Normal file
|
@ -0,0 +1,78 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<merge xmlns:latin="http://schemas.android.com/apk/res-auto">
|
||||
<!-- U+0636: "ض" ARABIC LETTER DAD
|
||||
U+0661: "١" ARABIC-INDIC DIGIT ONE -->
|
||||
<Key
|
||||
latin:keySpec="ض"
|
||||
latin:keyHintLabel="1"
|
||||
latin:additionalMoreKeys="1,١" />
|
||||
<!-- U+0635: "ص" ARABIC LETTER SAD
|
||||
U+0662: "٢" ARABIC-INDIC DIGIT TWO -->
|
||||
<Key
|
||||
latin:keySpec="ص"
|
||||
latin:keyHintLabel="2"
|
||||
latin:additionalMoreKeys="2,٢" />
|
||||
<!-- U+0642: "ق" ARABIC LETTER QAF
|
||||
U+0663: "٣" ARABIC-INDIC DIGIT THREE
|
||||
U+06A8: "ڨ" ARABIC LETTER QAF WITH THREE DOTS ABOVE -->
|
||||
<!-- TODO: DroidSansArabic lacks the glyph of U+06A8 ARABIC LETTER QAF WITH THREE DOTS ABOVE -->
|
||||
<Key
|
||||
latin:keySpec="ق"
|
||||
latin:keyHintLabel="3"
|
||||
latin:additionalMoreKeys="3,٣"
|
||||
latin:moreKeys="ڨ" />
|
||||
<!-- U+0641: "ف" ARABIC LETTER FEH
|
||||
U+0664: "٤" ARABIC-INDIC DIGIT FOUR
|
||||
U+06A4: "ڤ" ARABIC LETTER VEH
|
||||
U+06A2: "ڢ" ARABIC LETTER FEH WITH DOT MOVED BELOW
|
||||
U+06A5: "ڥ" ARABIC LETTER FEH WITH THREE DOTS BELOW -->
|
||||
<!-- TODO: DroidSansArabic lacks the glyph of U+06A2 ARABIC LETTER FEH WITH DOT MOVED BELOW -->
|
||||
<!-- TODO: DroidSansArabic lacks the glyph of U+06A5 ARABIC LETTER FEH WITH THREE DOTS BELOW -->
|
||||
<Key
|
||||
latin:keySpec="ف"
|
||||
latin:keyHintLabel="4"
|
||||
latin:additionalMoreKeys="4,٤"
|
||||
latin:moreKeys="ڤ,ڢ,ڥ" />
|
||||
<!-- U+063A: "غ" ARABIC LETTER GHAIN
|
||||
U+0665: "٥" ARABIC-INDIC DIGIT FIVE -->
|
||||
<Key
|
||||
latin:keySpec="غ"
|
||||
latin:keyHintLabel="5"
|
||||
latin:additionalMoreKeys="5,٥" />
|
||||
<!-- U+0639: "ع" ARABIC LETTER AIN
|
||||
U+0666: "٦" ARABIC-INDIC DIGIT SIX -->
|
||||
<Key
|
||||
latin:keySpec="ع"
|
||||
latin:keyHintLabel="6"
|
||||
latin:additionalMoreKeys="6,٦" />
|
||||
<!-- U+0647: "ه" ARABIC LETTER HEH
|
||||
U+0667: "٧" ARABIC-INDIC DIGIT SEVEN
|
||||
U+FEEB: "ﻫ" ARABIC LETTER HEH INITIAL FORM
|
||||
U+0647 U+200D: ARABIC LETTER HEH + ZERO WIDTH JOINER -->
|
||||
<Key
|
||||
latin:keySpec="ه"
|
||||
latin:keyHintLabel="7"
|
||||
latin:additionalMoreKeys="7,٧"
|
||||
latin:moreKeys="ﻫ|ه‍" />
|
||||
<!-- U+062E: "خ" ARABIC LETTER KHAH
|
||||
U+0668: "٨" ARABIC-INDIC DIGIT EIGHT -->
|
||||
<Key
|
||||
latin:keySpec="خ"
|
||||
latin:keyHintLabel="8"
|
||||
latin:additionalMoreKeys="8,٨" />
|
||||
<!-- U+062D: "ح" ARABIC LETTER HAH
|
||||
U+0669: "٩" ARABIC-INDIC DIGIT NINE -->
|
||||
<Key
|
||||
latin:keySpec="ح"
|
||||
latin:keyHintLabel="9"
|
||||
latin:additionalMoreKeys="9,٩" />
|
||||
<!-- U+062C: "ج" ARABIC LETTER JEEM
|
||||
U+0660: "٠" ARABIC-INDIC DIGIT ZERO
|
||||
U+0686: "چ" ARABIC LETTER TCHEH -->
|
||||
<Key
|
||||
latin:keySpec="ج"
|
||||
latin:keyHintLabel="0"
|
||||
latin:additionalMoreKeys="0,٠"
|
||||
latin:moreKeys="چ" />
|
||||
</merge>
|
56
app/src/main/res/xml/rowkeys_arabic2_pc.xml
Normal file
56
app/src/main/res/xml/rowkeys_arabic2_pc.xml
Normal file
|
@ -0,0 +1,56 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<merge xmlns:latin="http://schemas.android.com/apk/res-auto">
|
||||
<!-- U+0634: "ش" ARABIC LETTER SHEEN
|
||||
U+069C: "ڜ" ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE -->
|
||||
<!-- TODO: DroidSansArabic lacks the glyph of U+069C ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE -->
|
||||
<Key
|
||||
latin:keySpec="ش"
|
||||
latin:moreKeys="ڜ" />
|
||||
<!-- U+0633: "س" ARABIC LETTER SEEN -->
|
||||
<Key latin:keySpec="س" />
|
||||
<!-- U+064A: "ي" ARABIC LETTER YEH
|
||||
U+0626: "ئ" ARABIC LETTER YEH WITH HAMZA ABOVE
|
||||
U+0649: "ى" ARABIC LETTER ALEF MAKSURA -->
|
||||
<Key
|
||||
latin:keySpec="ي"
|
||||
latin:moreKeys="ئ,ى" />
|
||||
<!-- U+0628: "ب" ARABIC LETTER BEH
|
||||
U+067E: "پ" ARABIC LETTER PEH -->
|
||||
<Key
|
||||
latin:keySpec="ب"
|
||||
latin:moreKeys="پ" />
|
||||
<!-- U+0644: "ل" ARABIC LETTER LAM
|
||||
U+FEFB: "ﻻ" ARABIC LIGATURE LAM WITH ALEF ISOLATED FORM
|
||||
U+0627: "ا" ARABIC LETTER ALEF
|
||||
U+FEF7: "ﻷ" ARABIC LIGATURE LAM WITH ALEF WITH HAMZA ABOVE ISOLATED FORM
|
||||
U+0623: "أ" ARABIC LETTER ALEF WITH HAMZA ABOVE
|
||||
U+FEF9: "ﻹ" ARABIC LIGATURE LAM WITH ALEF WITH HAMZA BELOW ISOLATED FORM
|
||||
U+0625: "إ" ARABIC LETTER ALEF WITH HAMZA BELOW
|
||||
U+FEF5: "ﻵ" ARABIC LIGATURE LAM WITH ALEF WITH MADDA ABOVE ISOLATED FORM
|
||||
U+0622: "آ" ARABIC LETTER ALEF WITH MADDA ABOVE -->
|
||||
<Key
|
||||
latin:keySpec="ل"
|
||||
latin:moreKeys="ﻻ|لا,ﻷ|لأ,ﻹ|لإ,ﻵ|لآ" />
|
||||
<!-- U+0627: "ا" ARABIC LETTER ALEF
|
||||
U+0622: "آ" ARABIC LETTER ALEF WITH MADDA ABOVE
|
||||
U+0621: "ء" ARABIC LETTER HAMZA
|
||||
U+0623: "أ" ARABIC LETTER ALEF WITH HAMZA ABOVE
|
||||
U+0625: "إ" ARABIC LETTER ALEF WITH HAMZA BELOW
|
||||
U+0671: "ٱ" ARABIC LETTER ALEF WASLA -->
|
||||
<Key
|
||||
latin:keySpec="ا"
|
||||
latin:moreKeys="!fixedColumnOrder!5,آ,ء,أ,إ,ٱ" />
|
||||
<!-- U+062A: "ت" ARABIC LETTER TEH -->
|
||||
<Key latin:keySpec="ت" />
|
||||
<!-- U+0646: "ن" ARABIC LETTER NOON -->
|
||||
<Key latin:keySpec="ن" />
|
||||
<!-- U+0645: "م" ARABIC LETTER MEEM -->
|
||||
<Key latin:keySpec="م" />
|
||||
<!-- U+0643: "ك" ARABIC LETTER KAF
|
||||
U+06AF: "گ" ARABIC LETTER GAF
|
||||
U+06A9: "ک" ARABIC LETTER KEHEH -->
|
||||
<Key
|
||||
latin:keySpec="ك"
|
||||
latin:moreKeys="گ,ک" />
|
||||
</merge>
|
28
app/src/main/res/xml/rowkeys_arabic3_pc.xml
Normal file
28
app/src/main/res/xml/rowkeys_arabic3_pc.xml
Normal file
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<merge xmlns:latin="http://schemas.android.com/apk/res-auto">
|
||||
<!-- U+0638: "ظ" ARABIC LETTER ZAH -->
|
||||
<Key latin:keySpec="ظ" />
|
||||
<!-- U+0637: "ط" ARABIC LETTER TAH -->
|
||||
<Key latin:keySpec="ط" />
|
||||
<!-- U+0630: "ذ" ARABIC LETTER THAL -->
|
||||
<Key latin:keySpec="ذ" />
|
||||
<!-- U+062F: "د" ARABIC LETTER DAL -->
|
||||
<Key latin:keySpec="د" />
|
||||
<!-- U+0632: "ز" ARABIC LETTER ZAIN
|
||||
U+0698: "ژ" ARABIC LETTER JEH -->
|
||||
<Key
|
||||
latin:keySpec="ز"
|
||||
latin:moreKeys="ژ" />
|
||||
<!-- U+0631: "ر" ARABIC LETTER REH -->
|
||||
<Key latin:keySpec="ر" />
|
||||
<!-- U+0648: "و" ARABIC LETTER WAW
|
||||
U+0624: "ؤ" ARABIC LETTER WAW WITH HAMZA ABOVE -->
|
||||
<Key
|
||||
latin:keySpec="و"
|
||||
latin:moreKeys="ؤ" />
|
||||
<!-- U+0629: "ة" ARABIC LETTER TEH MARBUTA -->
|
||||
<Key latin:keySpec="ة" />
|
||||
<!-- U+062B: "ث" ARABIC LETTER THEH -->
|
||||
<Key latin:keySpec="ث" />
|
||||
</merge>
|
57
app/src/main/res/xml/rows_arabic_pc.xml
Normal file
57
app/src/main/res/xml/rows_arabic_pc.xml
Normal file
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
/*
|
||||
**
|
||||
** Copyright 2011, 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-auto">
|
||||
<include latin:keyboardLayout="@xml/key_styles_common" />
|
||||
<switch>
|
||||
<case
|
||||
latin:numberRowEnabled="true"
|
||||
>
|
||||
<Row
|
||||
latin:keyWidth="10%p"
|
||||
>
|
||||
<include
|
||||
latin:keyboardLayout="@xml/rowkeys_symbols1" />
|
||||
</Row>
|
||||
</case>
|
||||
</switch>
|
||||
<Row
|
||||
latin:keyWidth="10%p"
|
||||
latin:keyLabelFlags="fontNormal"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/rowkeys_arabic1_pc" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyWidth="10%p"
|
||||
latin:keyLabelFlags="fontNormal"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/rowkeys_arabic2_pc" />
|
||||
</Row>
|
||||
<Row
|
||||
latin:keyWidth="10%p"
|
||||
latin:keyLabelFlags="fontNormal"
|
||||
>
|
||||
<include latin:keyboardLayout="@xml/rowkeys_arabic3_pc" />
|
||||
<Key
|
||||
latin:keyStyle="deleteKeyStyle"
|
||||
latin:keyWidth="fillRight" />
|
||||
</Row>
|
||||
<include latin:keyboardLayout="@xml/row_qwerty4" />
|
||||
</merge>
|
Loading…
Add table
Reference in a new issue