mirror of
https://github.com/Julow/Unexpected-Keyboard.git
synced 2025-06-20 17:57:52 +02:00
Add layouts 'he_il_1452_1' and 'he_il_1452_2'
This commit is contained in:
parent
eb0df72ba1
commit
51ce2ccdf1
@ -28,6 +28,8 @@
|
|||||||
<item>jcuken_ua</item>
|
<item>jcuken_ua</item>
|
||||||
<item>bangla</item>
|
<item>bangla</item>
|
||||||
<item>hindi</item>
|
<item>hindi</item>
|
||||||
|
<item>he_il_1452_1</item>
|
||||||
|
<item>he_il_1452_2</item>
|
||||||
<item>custom</item>
|
<item>custom</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string-array name="pref_layout_entries">
|
<string-array name="pref_layout_entries">
|
||||||
@ -58,6 +60,8 @@
|
|||||||
<item>ЙЦУКЕН (Українська)</item>
|
<item>ЙЦУКЕН (Українська)</item>
|
||||||
<item>বাংলা</item>
|
<item>বাংলা</item>
|
||||||
<item>हिन्दी</item>
|
<item>हिन्दी</item>
|
||||||
|
<item>Hebrew SI-1452-1</item>
|
||||||
|
<item>Hebrew SI-1452-2</item>
|
||||||
<item>@string/pref_layout_e_custom</item>
|
<item>@string/pref_layout_e_custom</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
<string-array name="pref_accents_entries">
|
<string-array name="pref_accents_entries">
|
||||||
|
41
res/xml/he_il_1452_1.xml
Normal file
41
res/xml/he_il_1452_1.xml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<keyboard>
|
||||||
|
<row>
|
||||||
|
<key key0="/" key2="1" key3="!" key4="esc"/>
|
||||||
|
<key key0="'" key2="2" key3="\@" key1=";"/>
|
||||||
|
<key key0="ק" key2="3" key3="\#" key1="€"/>
|
||||||
|
<key key0="ר" key2="4" key3="$" key1="₪"/>
|
||||||
|
<key key0="א" key2="5" key3="%"/>
|
||||||
|
<key key0="ט" key2="6" key3="^" key4="ole_placeholder"/>
|
||||||
|
<key key0="ו" key2="7" key3="&" key4="meteg_placeholder"/>
|
||||||
|
<key key0="ן" key2="8" key3="*"/>
|
||||||
|
<key key0="ם" key2="9" key3="b(" key4="lrm"/>
|
||||||
|
<key key0="פ" key2="0" key3="b)" key4="rlm"/>
|
||||||
|
<key key0="backspace" key2="delete" key3="f11_placeholder" key4="f12_placeholder"/>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<key key0="ש" key2="`" key1="tab" key3="sindot_placeholder" key4="shindot_placeholder" width="1.333"/>
|
||||||
|
<key key0="ד" key1="~" width="1.0333"/>
|
||||||
|
<key key0="ג" key1="geresh" key2="gershayim" width="1.0333"/>
|
||||||
|
<key key0="כ" width="1.0333"/>
|
||||||
|
<key key0="ע" width="1.0333"/>
|
||||||
|
<key key0="י" key2="-" key3="_" key4="maqaf" width="1.0333"/>
|
||||||
|
<key key0="ח" key2="=" key3="+" width="1.0333"/>
|
||||||
|
<key key0="ל" key2="b[" key3="b{" width="1.0333"/>
|
||||||
|
<key key0="ך" key2="b]" key3="b}" width="1.0333"/>
|
||||||
|
<key key0="ף" key2="," key3=""" key1=":" width="1.4006"/>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<key key0="\\" key1="|" key2="shift" key3="loc capslock"/>
|
||||||
|
<key key0="ז"/>
|
||||||
|
<key key0="ס"/>
|
||||||
|
<key key0="ב"/>
|
||||||
|
<key key0="ה"/>
|
||||||
|
<key key0="נ"/>
|
||||||
|
<key key0="מ"/>
|
||||||
|
<key key0="צ"/>
|
||||||
|
<key key0="ת" key1="blt"/>
|
||||||
|
<key key0="ץ" key1="bgt"/>
|
||||||
|
<key key0="." key1="\?"/>
|
||||||
|
</row>
|
||||||
|
</keyboard>
|
39
res/xml/he_il_1452_2.xml
Normal file
39
res/xml/he_il_1452_2.xml
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<keyboard>
|
||||||
|
<row>
|
||||||
|
<key key0="ץ" key2="1" key3="!" key4="esc"/>
|
||||||
|
<key key0="ן" key2="2" key3="\@" key1=";"/>
|
||||||
|
<key key0="ק" key2="3" key3="\#" key1="€"/>
|
||||||
|
<key key0="ר" key2="4" key3="$" key1="₪"/>
|
||||||
|
<key key0="א" key2="5" key3="%"/>
|
||||||
|
<key key0="ט" key2="6" key3="^" key4="ole_placeholder"/>
|
||||||
|
<key key0="ו" key2="7" key3="&" key4="meteg_placeholder"/>
|
||||||
|
<key key0="ת" key2="8" key3="*"/>
|
||||||
|
<key key0="ם" key2="9" key3="b(" key4="lrm"/>
|
||||||
|
<key key0="פ" key2="0" key3="b)" key4="rlm" width="1.333"/>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<key key0="ש" key2="`" key1="tab" key3="sindot_placeholder" key4="shindot_placeholder" width="1.333"/>
|
||||||
|
<key key0="ד" key1="~"/>
|
||||||
|
<key key0="ג" key1="geresh" key2="gershayim"/>
|
||||||
|
<key key0="כ"/>
|
||||||
|
<key key0="ע"/>
|
||||||
|
<key key0="י" key2="-" key3="_" key4="maqaf"/>
|
||||||
|
<key key0="ח" key2="=" key3="+"/>
|
||||||
|
<key key0="ל" key2="b[" key3="b{"/>
|
||||||
|
<key key0="ך" key2="b]" key3="b}"/>
|
||||||
|
<key key0="ף" key2="'" key3=""" key1=":"/>
|
||||||
|
</row>
|
||||||
|
<row>
|
||||||
|
<key key0="\\" key1="|" key2="shift" key3="loc capslock"/>
|
||||||
|
<key key0="ז"/>
|
||||||
|
<key key0="ס"/>
|
||||||
|
<key key0="ב"/>
|
||||||
|
<key key0="ה" />
|
||||||
|
<key key0="נ"/>
|
||||||
|
<key key0="מ" key1="blt" key2=","/>
|
||||||
|
<key key0="צ" key1="bgt" key2="."/>
|
||||||
|
<key key0="/" key1="\?"/>
|
||||||
|
<key key0="backspace" key2="delete" key3="f11_placeholder" key4="f12_placeholder" width="1.333"/>
|
||||||
|
</row>
|
||||||
|
</keyboard>
|
@ -9,6 +9,7 @@
|
|||||||
<subtype android:label="%s" android:languageTag="es" android:imeSubtypeLocale="es_ES" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty_es,extra_keys=accent_grave|accent_aigu|accent_tilde|accent_trema|€"/>
|
<subtype android:label="%s" android:languageTag="es" android:imeSubtypeLocale="es_ES" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty_es,extra_keys=accent_grave|accent_aigu|accent_tilde|accent_trema|€"/>
|
||||||
<subtype android:label="%s" android:languageTag="fr" android:imeSubtypeLocale="fr_FR" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=azerty,extra_keys=accent_grave|accent_aigu|accent_circonflexe|accent_cedille|accent_trema|€"/>
|
<subtype android:label="%s" android:languageTag="fr" android:imeSubtypeLocale="fr_FR" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=azerty,extra_keys=accent_grave|accent_aigu|accent_circonflexe|accent_cedille|accent_trema|€"/>
|
||||||
<subtype android:label="%s" android:languageTag="hu" android:imeSubtypeLocale="hu_HU" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwertz_hu,extra_keys=accent_aigu|accent_trema|accent_ogonek|€"/>
|
<subtype android:label="%s" android:languageTag="hu" android:imeSubtypeLocale="hu_HU" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwertz_hu,extra_keys=accent_aigu|accent_trema|accent_ogonek|€"/>
|
||||||
|
<subtype android:label="%s" android:languageTag="he" android:imeSubtypeLocale="he_IL" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=he_il_1452_1,extra_keys=₪|€"/>
|
||||||
<subtype android:label="%s" android:languageTag="it" android:imeSubtypeLocale="it_IT" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty,extra_keys=accent_grave|accent_aigu|€"/>
|
<subtype android:label="%s" android:languageTag="it" android:imeSubtypeLocale="it_IT" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty,extra_keys=accent_grave|accent_aigu|€"/>
|
||||||
<subtype android:label="%s" android:languageTag="ko" android:imeSubtypeLocale="ko_KR" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty_ko"/>
|
<subtype android:label="%s" android:languageTag="ko" android:imeSubtypeLocale="ko_KR" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty_ko"/>
|
||||||
<subtype android:label="%s" android:languageTag="lt" android:imeSubtypeLocale="lt_LT" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty,extra_keys=accent_ogonek|accent_caron|accent_dot_above|accent_macron|€"/>
|
<subtype android:label="%s" android:languageTag="lt" android:imeSubtypeLocale="lt_LT" android:imeSubtypeMode="keyboard" android:isAsciiCapable="true" android:imeSubtypeExtraValue="default_layout=qwerty,extra_keys=accent_ogonek|accent_caron|accent_dot_above|accent_macron|€"/>
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<key key0="q" key2="1" key4="esc"/>
|
<key key0="q" key2="1" key4="esc"/>
|
||||||
<key key0="w" key1="~" key2="2" key3="\@"/>
|
<key key0="w" key1="~" key2="2" key3="\@"/>
|
||||||
<key key0="e" key1="!" key2="3" key3="\#" key4="loc €"/>
|
<key key0="e" key1="!" key2="3" key3="\#" key4="loc €"/>
|
||||||
<key key0="r" key2="4" key3="$"/>
|
<key key0="r" key2="4" key3="$" key1="loc ₪"/>
|
||||||
<key key0="t" key2="5" key3="%"/>
|
<key key0="t" key2="5" key3="%"/>
|
||||||
<key key0="y" key2="6" key3="^"/>
|
<key key0="y" key2="6" key3="^"/>
|
||||||
<key key0="u" key2="7" key3="&"/>
|
<key key0="u" key2="7" key3="&"/>
|
||||||
|
@ -362,6 +362,8 @@ final class Config
|
|||||||
case "qwertz_hu": id = R.xml.qwertz_hu; break;
|
case "qwertz_hu": id = R.xml.qwertz_hu; break;
|
||||||
case "qwertz_sk": id = R.xml.qwertz_sk; break;
|
case "qwertz_sk": id = R.xml.qwertz_sk; break;
|
||||||
case "ru_jcuken": id = R.xml.local_ru_jcuken; break;
|
case "ru_jcuken": id = R.xml.local_ru_jcuken; break;
|
||||||
|
case "he_il_1452_1": id = R.xml.he_il_1452_1; break;
|
||||||
|
case "he_il_1452_2": id = R.xml.he_il_1452_2; break;
|
||||||
}
|
}
|
||||||
return KeyboardData.load(res, id);
|
return KeyboardData.load(res, id);
|
||||||
}
|
}
|
||||||
|
@ -156,6 +156,10 @@ class KeyModifier
|
|||||||
{
|
{
|
||||||
case F11: return "f11";
|
case F11: return "f11";
|
||||||
case F12: return "f12";
|
case F12: return "f12";
|
||||||
|
case SHINDOT: return "shindot";
|
||||||
|
case SINDOT: return "sindot";
|
||||||
|
case OLE: return "ole";
|
||||||
|
case METEG: return "meteg";
|
||||||
default: return null;
|
default: return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -198,6 +202,7 @@ class KeyModifier
|
|||||||
case ',': return "·";
|
case ',': return "·";
|
||||||
case '!': return "¡";
|
case '!': return "¡";
|
||||||
case '?': return "¿";
|
case '?': return "¿";
|
||||||
|
case '|': return "¦";
|
||||||
// arrows
|
// arrows
|
||||||
case '↖': return "⇖";
|
case '↖': return "⇖";
|
||||||
case '↑': return "⇑";
|
case '↑': return "⇑";
|
||||||
@ -243,6 +248,20 @@ class KeyModifier
|
|||||||
case '⊂': return "⊆";
|
case '⊂': return "⊆";
|
||||||
case '⊃': return "⊇";
|
case '⊃': return "⊇";
|
||||||
case '±': return "∓";
|
case '±': return "∓";
|
||||||
|
// hebrew niqqud
|
||||||
|
case 'ק': return "qamats"; // kamatz
|
||||||
|
case 'ר': return "hataf_qamats"; // reduced kamatz
|
||||||
|
case 'ו': return "holam";
|
||||||
|
case 'ם': return "rafe";
|
||||||
|
case 'פ': return "patah"; // patach
|
||||||
|
case 'ש': return "sheva";
|
||||||
|
case 'ד': return "dagesh"; // or mapiq
|
||||||
|
case 'ח': return "hiriq";
|
||||||
|
case 'ף': return "hataf_patah"; // reduced patach
|
||||||
|
case 'ז': return "qubuts"; // kubuts
|
||||||
|
case 'ס': return "segol";
|
||||||
|
case 'ב': return "hataf_segol"; // reduced segol
|
||||||
|
case 'צ': return "tsere";
|
||||||
// other
|
// other
|
||||||
case ' ': return "nbsp";
|
case ' ': return "nbsp";
|
||||||
default: return null;
|
default: return null;
|
||||||
|
@ -72,7 +72,11 @@ final class KeyValue
|
|||||||
{
|
{
|
||||||
REMOVED,
|
REMOVED,
|
||||||
F11,
|
F11,
|
||||||
F12
|
F12,
|
||||||
|
SHINDOT,
|
||||||
|
SINDOT,
|
||||||
|
OLE,
|
||||||
|
METEG
|
||||||
}
|
}
|
||||||
|
|
||||||
public static enum Kind
|
public static enum Kind
|
||||||
@ -357,10 +361,50 @@ final class KeyValue
|
|||||||
case "space": return charKey("\r", ' ', FLAG_KEY_FONT | FLAG_SECONDARY);
|
case "space": return charKey("\r", ' ', FLAG_KEY_FONT | FLAG_SECONDARY);
|
||||||
case "nbsp": return charKey("\u237d", '\u00a0', FLAG_SMALLER_FONT);
|
case "nbsp": return charKey("\u237d", '\u00a0', FLAG_SMALLER_FONT);
|
||||||
|
|
||||||
|
/* bidi */
|
||||||
|
case "lrm": return charKey("↱", '\u200e', 0); // Send left-to-right mark
|
||||||
|
case "rlm": return charKey("↰", '\u200f', 0); // Send right-to-left mark
|
||||||
|
case "b(": return charKey("(", ')', 0);
|
||||||
|
case "b)": return charKey(")", '(', 0);
|
||||||
|
case "b[": return charKey("[", ']', 0);
|
||||||
|
case "b]": return charKey("]", '[', 0);
|
||||||
|
case "b{": return charKey("{", '}', 0);
|
||||||
|
case "b}": return charKey("}", '{', 0);
|
||||||
|
case "blt": return charKey("<", '>', 0);
|
||||||
|
case "bgt": return charKey(">", '<', 0);
|
||||||
|
|
||||||
case "removed": return placeholderKey(Placeholder.REMOVED);
|
case "removed": return placeholderKey(Placeholder.REMOVED);
|
||||||
case "f11_placeholder": return placeholderKey(Placeholder.F11);
|
case "f11_placeholder": return placeholderKey(Placeholder.F11);
|
||||||
case "f12_placeholder": return placeholderKey(Placeholder.F12);
|
case "f12_placeholder": return placeholderKey(Placeholder.F12);
|
||||||
|
|
||||||
|
/* hebrew niqqud */
|
||||||
|
case "qamats": return charKey("\u05E7\u05B8", '\u05B8', 0); // kamatz
|
||||||
|
case "patah": return charKey("\u05E4\u05B7", '\u05B7', 0); // patach
|
||||||
|
case "sheva": return charKey("\u05E9\u05B0", '\u05B0', 0);
|
||||||
|
case "dagesh": return charKey("\u05D3\u05BC", '\u05BC', 0); // or mapiq
|
||||||
|
case "hiriq": return charKey("\u05D7\u05B4", '\u05B4', 0);
|
||||||
|
case "segol": return charKey("\u05E1\u05B6", '\u05B6', 0);
|
||||||
|
case "tsere": return charKey("\u05E6\u05B5", '\u05B5', 0);
|
||||||
|
case "holam": return charKey("\u05D5\u05B9", '\u05B9', 0);
|
||||||
|
case "qubuts": return charKey("\u05E7\u05BB", '\u05BB', 0); // kubuts
|
||||||
|
case "hataf_patah": return charKey("\u05D7\u05B2\u05E4\u05B7", '\u05B2', 0); // reduced patach
|
||||||
|
case "hataf_qamats": return charKey("\u05D7\u05B3\u05E7\u05B8", '\u05B3', 0); // reduced kamatz
|
||||||
|
case "hataf_segol": return charKey("\u05D7\u05B1\u05E1\u05B6", '\u05B1', 0); // reduced segol
|
||||||
|
case "shindot": return charKey("\u05E9\u05C1", '\u05C1', 0);
|
||||||
|
case "shindot_placeholder": return placeholderKey(Placeholder.SHINDOT);
|
||||||
|
case "sindot": return charKey("\u05E9\u05C2", '\u05C2', 0);
|
||||||
|
case "sindot_placeholder": return placeholderKey(Placeholder.SINDOT);
|
||||||
|
/* hebrew punctuation */
|
||||||
|
case "geresh": return charKey("\u05F3", '\u05F3', 0);
|
||||||
|
case "gershayim": return charKey("\u05F4", '\u05F4', 0);
|
||||||
|
case "maqaf": return charKey("\u05BE", '\u05BE', 0);
|
||||||
|
/* hebrew biblical */
|
||||||
|
case "rafe": return charKey("\u05E4\u05BF", '\u05BF', 0);
|
||||||
|
case "ole": return charKey("\u05E2\u05AB", '\u05AB', 0);
|
||||||
|
case "ole_placeholder": return placeholderKey(Placeholder.OLE);
|
||||||
|
case "meteg": return charKey("\u05DE\u05BD", '\u05BD', 0); // or siluq or sof-pasuq
|
||||||
|
case "meteg_placeholder": return placeholderKey(Placeholder.METEG);
|
||||||
|
|
||||||
case "copy": return editingKey("copy", Editing.COPY);
|
case "copy": return editingKey("copy", Editing.COPY);
|
||||||
case "paste": return editingKey("paste", Editing.PASTE);
|
case "paste": return editingKey("paste", Editing.PASTE);
|
||||||
case "cut": return editingKey("cut", Editing.CUT);
|
case "cut": return editingKey("cut", Editing.CUT);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user