Compare commits

...

4 Commits

Author SHA1 Message Date
Jules Aguillon
0ae2b73700 Set the 'action' role on number row, numpad and number pane
Some checks failed
Make Apk CI / Build-Apk (push) Has been cancelled
Check translations / check-translations (push) Has been cancelled
Check layouts / check_layout.output (push) Has been cancelled
Check layouts / Generated files (push) Has been cancelled
2025-02-09 14:17:29 +01:00
Jules Aguillon
4eb4abd66b check_layout.py: Check that some keys have a role 2025-02-09 14:10:39 +01:00
Jules Aguillon
de2076beaa Set 'role' for keys in builtin layouts 2025-02-09 14:10:39 +01:00
Jules Aguillon
f0c3a45352 Different color for action keys and space bar
Keys can be made darker or dimmer individually in layouts.
This is done by setting the new 'role' attributes. Roles are "normal",
"action" and "space_bar".

The "action" role is intended to be used for keys like shift, backspace
and other keys from the bottom row.

Themes and special layouts are updated.
2025-02-09 14:10:39 +01:00
89 changed files with 366 additions and 257 deletions

View File

@@ -40,37 +40,50 @@ def unexpected_keys(keys, symbols, msg):
if len(unexpected) > 0: if len(unexpected) > 0:
warn("%s, unexpected: %s" % (msg, key_list_str(unexpected))) warn("%s, unexpected: %s" % (msg, key_list_str(unexpected)))
# Write to [keys] and [dup]. def duplicates(keys):
def parse_row_from_et(row, keys, dup): dup = [ k for k, key_elts in keys.items() if len(key_elts) >= 2 ]
for key in row: if len(dup) > 0:
for attr in key.keys(): warn("Duplicate keys: " + key_list_str(dup))
def should_have_role(keys_map, role, keys):
def is_center_key(key):
def center(key_elt): return key_elt.get("key0", key_elt.get("c"))
return any(( center(key_elt) == key for key_elt in keys_map.get(key, []) ))
def key_roles(key):
return ( key_elt.get("role", "normal") for key_elt in keys_map[key] )
for key in keys:
if is_center_key(key) and role not in key_roles(key):
warn("Key '%s' is not on a key with role=\"%s\"" % (key, role))
# Write to [keys], dict of keyvalue to the key elements they appear in
def parse_row_from_et(row, keys):
for key_elt in row:
for attr in key_elt.keys():
if attr in KEY_ATTRIBUTES: if attr in KEY_ATTRIBUTES:
k = key.get(attr).removeprefix("\\") k = key_elt.get(attr).removeprefix("\\")
if k in keys: dup.add(k) keys.setdefault(k, []).append(key_elt)
keys.add(k)
def parse_layout(fname): def parse_layout(fname):
keys = set() keys = {}
dup = set()
root = ET.parse(fname).getroot() root = ET.parse(fname).getroot()
if root.tag != "keyboard": if root.tag != "keyboard":
return None return None
for row in root: for row in root:
parse_row_from_et(row, keys, dup) parse_row_from_et(row, keys)
return root, keys, dup return root, keys
def parse_row(fname): def parse_row(fname):
keys = set() keys = {}
dup = set()
root = ET.parse(fname).getroot() root = ET.parse(fname).getroot()
if root.tag != "row": if root.tag != "row":
return None return None
parse_row_from_et(root, keys, dup) parse_row_from_et(root, keys)
return root, keys, dup return root, keys
def check_layout(layout): def check_layout(layout):
root, keys, dup = layout root, keys_map = layout
if len(dup) > 0: warn("Duplicate keys: " + key_list_str(dup)) keys = set(keys_map.keys())
duplicates(keys_map)
missing_some_of(keys, "~!@#$%^&*(){}`[]=\\-_;:/.,?<>'\"+|", "ASCII punctuation") missing_some_of(keys, "~!@#$%^&*(){}`[]=\\-_;:/.,?<>'\"+|", "ASCII punctuation")
missing_some_of(keys, "0123456789", "digits") missing_some_of(keys, "0123456789", "digits")
missing_required(keys, ["backspace", "delete"], "Layout doesn't define some important keys") missing_required(keys, ["backspace", "delete"], "Layout doesn't define some important keys")
@@ -91,8 +104,8 @@ def check_layout(layout):
missing_required(keys, ["shift", "loc capslock"], "Missing important key") missing_required(keys, ["shift", "loc capslock"], "Missing important key")
missing_required(keys, ["loc esc", "loc tab"], "Missing programming keys") missing_required(keys, ["loc esc", "loc tab"], "Missing programming keys")
_, bottom_row_keys, _ = parse_row("res/xml/bottom_row.xml") _, bottom_row_keys_map = parse_row("res/xml/bottom_row.xml")
bottom_row_keys = set(bottom_row_keys_map.keys())
if root.get("bottom_row") == "false": if root.get("bottom_row") == "false":
missing_required(keys, bottom_row_keys, missing_required(keys, bottom_row_keys,
"Layout redefines the bottom row but some important keys are missing") "Layout redefines the bottom row but some important keys are missing")
@@ -103,6 +116,10 @@ def check_layout(layout):
if root.get("script") == None: if root.get("script") == None:
warn("Layout doesn't specify a script.") warn("Layout doesn't specify a script.")
should_have_role(keys_map, "action",
[ "shift", "ctrl", "fn", "backspace", "enter" ])
should_have_role(keys_map, "space_bar", [ "space" ])
for fname in sorted(glob.glob("srcs/layouts/*.xml")): for fname in sorted(glob.glob("srcs/layouts/*.xml")):
layout_id, _ = os.path.splitext(os.path.basename(fname)) layout_id, _ = os.path.splitext(os.path.basename(fname))
if layout_id in KNOWN_NOT_LAYOUT: if layout_id in KNOWN_NOT_LAYOUT:

View File

@@ -7,6 +7,9 @@
<attr name="colorKey" format="color"/> <attr name="colorKey" format="color"/>
<!-- Background of the keys when pressed --> <!-- Background of the keys when pressed -->
<attr name="colorKeyActivated" format="color"/> <attr name="colorKeyActivated" format="color"/>
<!-- Adjust the lightness of keys depending on their role. -->
<attr name="colorKeyAction" format="color"/>
<attr name="colorKeySpaceBar" format="color"/>
<!-- Label colors --> <!-- Label colors -->
<attr name="colorLabel" format="color"/> <attr name="colorLabel" format="color"/>
<attr name="colorLabelActivated" format="color"/> <attr name="colorLabelActivated" format="color"/>
@@ -19,6 +22,8 @@
<attr name="keyBorderRadius" format="dimension"/> <attr name="keyBorderRadius" format="dimension"/>
<attr name="keyBorderWidth" format="dimension"/> <attr name="keyBorderWidth" format="dimension"/>
<attr name="keyBorderWidthActivated" format="dimension"/> <attr name="keyBorderWidthActivated" format="dimension"/>
<attr name="keyBorderWidthAction" format="dimension"/>
<attr name="keyBorderWidthSpaceBar" format="dimension"/>
<attr name="keyBorderColorLeft" format="color"/> <attr name="keyBorderColorLeft" format="color"/>
<attr name="keyBorderColorTop" format="color"/> <attr name="keyBorderColorTop" format="color"/>
<attr name="keyBorderColorRight" format="color"/> <attr name="keyBorderColorRight" format="color"/>
@@ -42,6 +47,8 @@
<item name="keyBorderRadius">5dp</item> <item name="keyBorderRadius">5dp</item>
<item name="keyBorderWidth">0dp</item> <item name="keyBorderWidth">0dp</item>
<item name="keyBorderWidthActivated">0dp</item> <item name="keyBorderWidthActivated">0dp</item>
<item name="keyBorderWidthAction">?attr/keyBorderWidth</item>
<item name="keyBorderWidthSpaceBar">?attr/keyBorderWidth</item>
<item name="secondaryDimming">0.25</item> <item name="secondaryDimming">0.25</item>
<item name="greyedDimming">0.5</item> <item name="greyedDimming">0.5</item>
<item name="emoji_key_bg" type="color">?attr/emoji_button_bg</item> <item name="emoji_key_bg" type="color">?attr/emoji_button_bg</item>
@@ -54,8 +61,12 @@
<item name="colorKeyboard">#1b1b1b</item> <item name="colorKeyboard">#1b1b1b</item>
<item name="colorKey">#333333</item> <item name="colorKey">#333333</item>
<item name="colorKeyActivated">#1b1b1b</item> <item name="colorKeyActivated">#1b1b1b</item>
<item name="colorKeyAction">#262626</item>
<item name="colorKeySpaceBar">#2b2b2b</item>
<item name="keyBorderWidth">1.2dp</item> <item name="keyBorderWidth">1.2dp</item>
<item name="keyBorderWidthActivated">0dp</item> <item name="keyBorderWidthActivated">0dp</item>
<item name="keyBorderWidthAction">0dp</item>
<item name="keyBorderWidthSpaceBar">0dp</item>
<item name="keyBorderColorBottom">#404040</item> <item name="keyBorderColorBottom">#404040</item>
<item name="colorLabel">#ffffff</item> <item name="colorLabel">#ffffff</item>
<item name="colorLabelActivated">#3399ff</item> <item name="colorLabelActivated">#3399ff</item>
@@ -69,8 +80,12 @@
<item name="colorKeyboard">#e3e3e3</item> <item name="colorKeyboard">#e3e3e3</item>
<item name="colorKey">#cccccc</item> <item name="colorKey">#cccccc</item>
<item name="colorKeyActivated">#e3e3e3</item> <item name="colorKeyActivated">#e3e3e3</item>
<item name="colorKeyAction">#d9d9d9</item>
<item name="colorKeySpaceBar">#dedede</item>
<item name="keyBorderWidth">0.6dp</item> <item name="keyBorderWidth">0.6dp</item>
<item name="keyBorderWidthActivated">0dp</item> <item name="keyBorderWidthActivated">0dp</item>
<item name="keyBorderWidthAction">0dp</item>
<item name="keyBorderWidthSpaceBar">0dp</item>
<item name="keyBorderColorLeft">#cccccc</item> <item name="keyBorderColorLeft">#cccccc</item>
<item name="keyBorderColorTop">#eeeeee</item> <item name="keyBorderColorTop">#eeeeee</item>
<item name="keyBorderColorRight">#cccccc</item> <item name="keyBorderColorRight">#cccccc</item>
@@ -87,6 +102,8 @@
<item name="colorKeyboard">#000000</item> <item name="colorKeyboard">#000000</item>
<item name="colorKey">#000000</item> <item name="colorKey">#000000</item>
<item name="colorKeyActivated">#333333</item> <item name="colorKeyActivated">#333333</item>
<item name="colorKeyAction">#000000</item>
<item name="colorKeySpaceBar">#000000</item>
<item name="keyBorderWidth">0dp</item> <item name="keyBorderWidth">0dp</item>
<item name="keyBorderWidthActivated">1dp</item> <item name="keyBorderWidthActivated">1dp</item>
<item name="keyBorderColorLeft">#2a2a2a</item> <item name="keyBorderColorLeft">#2a2a2a</item>
@@ -108,6 +125,8 @@
<item name="android:isLightTheme">true</item> <item name="android:isLightTheme">true</item>
<item name="colorKeyboard">#ffffff</item> <item name="colorKeyboard">#ffffff</item>
<item name="colorKey">#ffffff</item> <item name="colorKey">#ffffff</item>
<item name="colorKeyAction">#ffffff</item>
<item name="colorKeySpaceBar">#ffffff</item>
<item name="keyBorderWidth">1dp</item> <item name="keyBorderWidth">1dp</item>
<item name="keyBorderWidthActivated">1dp</item> <item name="keyBorderWidthActivated">1dp</item>
<item name="keyBorderColorLeft">#f0f0f0</item> <item name="keyBorderColorLeft">#f0f0f0</item>
@@ -127,6 +146,8 @@
<item name="android:isLightTheme">true</item> <item name="android:isLightTheme">true</item>
<item name="colorKeyboard">#ffffff</item> <item name="colorKeyboard">#ffffff</item>
<item name="colorKey">#ffffff</item> <item name="colorKey">#ffffff</item>
<item name="colorKeyAction">#ffffff</item>
<item name="colorKeySpaceBar">#ffffff</item>
<item name="keyBorderWidth">2dp</item> <item name="keyBorderWidth">2dp</item>
<item name="keyBorderWidthActivated">5dp</item> <item name="keyBorderWidthActivated">5dp</item>
<item name="keyBorderColorLeft">#000000</item> <item name="keyBorderColorLeft">#000000</item>
@@ -148,6 +169,8 @@
<item name="colorKeyboard">#ffe0b2</item> <item name="colorKeyboard">#ffe0b2</item>
<item name="colorKey">#fff3e0</item> <item name="colorKey">#fff3e0</item>
<item name="colorKeyActivated">#ffcc80</item> <item name="colorKeyActivated">#ffcc80</item>
<item name="colorKeyAction">#ffe9c6</item>
<item name="colorKeySpaceBar">#ffedd0</item>
<item name="colorLabel">#000000</item> <item name="colorLabel">#000000</item>
<item name="colorLabelActivated">#ffffff</item> <item name="colorLabelActivated">#ffffff</item>
<item name="colorLabelLocked">#e65100</item> <item name="colorLabelLocked">#e65100</item>
@@ -166,6 +189,8 @@
<item name="colorKeyboard">#4db6ac</item> <item name="colorKeyboard">#4db6ac</item>
<item name="colorKey">#e0f2f1</item> <item name="colorKey">#e0f2f1</item>
<item name="colorKeyActivated">#00695c</item> <item name="colorKeyActivated">#00695c</item>
<item name="colorKeyAction">#b8e3de</item>
<item name="colorKeySpaceBar">#c3e7e3</item>
<item name="colorLabel">#000000</item> <item name="colorLabel">#000000</item>
<item name="colorLabelActivated">#ffffff</item> <item name="colorLabelActivated">#ffffff</item>
<item name="colorLabelLocked">#64ffda</item> <item name="colorLabelLocked">#64ffda</item>
@@ -184,6 +209,8 @@
<item name="colorKeyboard">@android:color/system_accent1_100</item> <item name="colorKeyboard">@android:color/system_accent1_100</item>
<item name="colorKey">@android:color/system_accent1_0</item> <item name="colorKey">@android:color/system_accent1_0</item>
<item name="colorKeyActivated">@android:color/system_accent1_300</item> <item name="colorKeyActivated">@android:color/system_accent1_300</item>
<item name="colorKeyAction">@android:color/system_accent1_100</item>
<item name="colorKeySpaceBar">@android:color/system_accent1_200</item>
<item name="colorLabel">@android:color/system_accent1_1000</item> <item name="colorLabel">@android:color/system_accent1_1000</item>
<item name="colorLabelActivated">@android:color/system_accent1_1000</item> <item name="colorLabelActivated">@android:color/system_accent1_1000</item>
<item name="colorLabelLocked">@android:color/system_accent1_500</item> <item name="colorLabelLocked">@android:color/system_accent1_500</item>
@@ -195,7 +222,9 @@
<item name="android:isLightTheme">false</item> <item name="android:isLightTheme">false</item>
<item name="colorKeyboard">@android:color/system_neutral1_900</item> <item name="colorKeyboard">@android:color/system_neutral1_900</item>
<item name="colorKey">@android:color/system_accent2_800</item> <item name="colorKey">@android:color/system_accent2_800</item>
<item name="colorKeyActivated">@android:color/system_accent1_800</item> <item name="colorKeyActivated">@android:color/system_accent1_700</item>
<item name="colorKeyAction">@android:color/system_accent2_900</item>
<item name="colorKeySpaceBar">@android:color/system_accent2_900</item>
<item name="colorLabel">@android:color/system_neutral1_0</item> <item name="colorLabel">@android:color/system_neutral1_0</item>
<item name="colorLabelActivated">@android:color/system_accent1_400</item> <item name="colorLabelActivated">@android:color/system_accent1_400</item>
<item name="colorLabelLocked">@android:color/system_accent1_100</item> <item name="colorLabelLocked">@android:color/system_accent1_100</item>
@@ -208,6 +237,8 @@
<item name="colorKeyboard">#191724</item> <item name="colorKeyboard">#191724</item>
<item name="colorKey">#26233a</item> <item name="colorKey">#26233a</item>
<item name="colorKeyActivated">#403d52</item> <item name="colorKeyActivated">#403d52</item>
<item name="colorKeyAction">#2a2740</item>
<item name="colorKeySpaceBar">#2e2b47</item>
<item name="keyBorderWidth">0dp</item> <item name="keyBorderWidth">0dp</item>
<item name="keyBorderWidthActivated">1dp</item> <item name="keyBorderWidthActivated">1dp</item>
<item name="keyBorderColorLeft">#6e6a86</item> <item name="keyBorderColorLeft">#6e6a86</item>

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<row height="0.95"> <row height="0.95">
<key width="1.7" key0="ctrl" key1="loc switch_greekmath" key2="loc meta" key3="loc switch_clipboard" key4="switch_numeric"/> <key width="1.7" role="action" key0="ctrl" key1="loc switch_greekmath" key2="loc meta" key3="loc switch_clipboard" key4="switch_numeric"/>
<key width="1.1" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/> <key width="1.1" role="action" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/>
<key width="4.4" key0="space" key7="switch_forward" key8="switch_backward" key5="cursor_left" key6="cursor_right"/> <key width="4.4" role="space_bar" key0="space" key7="switch_forward" key8="switch_backward" key5="cursor_left" key6="cursor_right"/>
<key width="1.1" key0="loc compose" key7="up" key6="right" key5="left" key8="down" key1="loc home" key2="loc page_up" key3="loc end" key4="loc page_down"/> <key width="1.1" role="action" key0="loc compose" key7="up" key6="right" key5="left" key8="down" key1="loc home" key2="loc page_up" key3="loc end" key4="loc page_down"/>
<key width="1.7" key0="enter" key1="loc voice_typing" key2="action"/> <key width="1.7" role="action" key0="enter" key1="loc voice_typing" key2="action"/>
</row> </row>

View File

@@ -2,9 +2,9 @@
<!-- The bottom row used in the clipboard history pane. --> <!-- The bottom row used in the clipboard history pane. -->
<keyboard bottom_row="false"> <keyboard bottom_row="false">
<row height="0.95"> <row height="0.95">
<key key0="switch_back_clipboard"/> <key role="action" key0="switch_back_clipboard"/>
<key width="3" key0="space" key5="cursor_left" key6="cursor_right"/> <key width="3" role="space_bar" key0="space" key5="cursor_left" key6="cursor_right"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
<key key0="enter" key2="action"/> <key role="action" key0="enter" key2="action"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -2,9 +2,9 @@
<!-- The bottom row used in the emoji pane. --> <!-- The bottom row used in the emoji pane. -->
<keyboard bottom_row="false"> <keyboard bottom_row="false">
<row height="0.95"> <row height="0.95">
<key key0="switch_back_emoji"/> <key role="action" key0="switch_back_emoji"/>
<key width="3" key0="space" key5="cursor_left" key6="cursor_right"/> <key role="space_bar" width="3" key0="space" key5="cursor_left" key6="cursor_right"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
<key key0="enter" key2="action"/> <key role="action" key0="enter" key2="action"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="ϡ" key1="⌀"/> <key key0="ϡ" key1="⌀"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ζ" key3="⇌" key4="√"/> <key key0="ζ" key3="⇌" key4="√"/>
<key key0="χ" key3="accent_arrow_right" key4=""/> <key key0="χ" key3="accent_arrow_right" key4=""/>
<key key0="ϛ" key4="∩"/> <key key0="ϛ" key4="∩"/>
@@ -33,15 +33,15 @@
<key key0="β" key1="≤" key3="" key4="1"/> <key key0="β" key1="≤" key3="" key4="1"/>
<key key0="ν" key1="≠" key3="" key4="2"/> <key key0="ν" key1="≠" key3="" key4="2"/>
<key key0="μ" key1="≥" key3="×" key4="3"/> <key key0="μ" key1="≥" key3="×" key4="3"/>
<key width="1.5" key0="backspace" key3="delete"/> <key width="1.5" role="action" key0="backspace" key3="delete"/>
</row> </row>
<row height="0.95"> <row height="0.95">
<key width="1.2" key0="switch_text" key2="loc esc"/> <key width="1.2" role="action" key0="switch_text" key2="loc esc"/>
<key width="1.2" key0="switch_numeric" key2="loc tab"/> <key width="1.2" role="action" key0="switch_numeric" key2="loc tab"/>
<key width="1.2" key0="fn"/> <key width="1.2" role="action" key0="fn"/>
<key width="2.8" key0="space" key1="superscript" key3="subscript"/> <key width="2.8" role="space_bar" key0="space" key1="superscript" key3="subscript"/>
<key width="1.2" key0="0" key2="."/> <key width="1.2" role="action" key0="0" key2="."/>
<key width="1.2" key0="loc compose" key7="up" key6="right" key5="left" key8="down"/> <key width="1.2" role="action" key0="loc compose" key7="up" key6="right" key5="left" key8="down"/>
<key width="1.2" key0="enter" key1="=" key2="action"/> <key width="1.2" role="action" key0="enter" key1="=" key2="action"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<row height="0.75"> <row height="0.75">
<key key0="1" se="!"/> <key role="action" key0="1" se="!"/>
<key key0="2" se="@"/> <key role="action" key0="2" se="@"/>
<key key0="3" se="#"/> <key role="action" key0="3" se="#"/>
<key key0="4" se="$"/> <key role="action" key0="4" se="$"/>
<key key0="5" se="%"/> <key role="action" key0="5" se="%"/>
<key key0="6" sw="^"/> <key role="action" key0="6" sw="^"/>
<key key0="7" sw="&amp;"/> <key role="action" key0="7" sw="&amp;"/>
<key key0="8" sw="*"/> <key role="action" key0="8" sw="*"/>
<key key0="9" sw="("/> <key role="action" key0="9" sw="("/>
<key key0="0" sw=")"/> <key role="action" key0="0" sw=")"/>
</row> </row>

View File

@@ -1,36 +1,36 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<keyboard bottom_row="false"> <keyboard bottom_row="false">
<row> <row>
<key width="0.75" key0="loc esc" key2="~" key4="!"/> <key width="0.75" role="action" key0="loc esc" key2="~" key4="!"/>
<key width="0.75" key0="(" key2="[" key4="{"/> <key width="0.75" role="action" key0="(" key2="[" key4="{"/>
<key key0="7" key1="&lt;" key2="&gt;"/> <key key0="7" key1="&lt;" key2="&gt;"/>
<key key0="8" key2="∞"/> <key key0="8" key2="∞"/>
<key key0="9" key2="π"/> <key key0="9" key2="π"/>
<key width="0.75" key0="*" key1="√" key2="×" key3="\#"/> <key width="0.75" role="action" key0="*" key1="√" key2="×" key3="\#"/>
<key width="0.75" key0="/" key1="%" key3="÷"/> <key width="0.75" role="action" key0="/" key1="%" key3="÷"/>
</row> </row>
<row> <row>
<key width="0.75" key0="loc tab" key2="|" key4="\\"/> <key width="0.75" role="action" key0="loc tab" key2="|" key4="\\"/>
<key width="0.75" key0=")" key2="]" key4="}"/> <key width="0.75" role="action" key0=")" key2="]" key4="}"/>
<key key0="4" key1="box" key3="arrows"/> <key key0="4" key1="box" key3="arrows"/>
<key key0="5" key7="up" key6="right" key5="left" key8="down"/> <key key0="5" key7="up" key6="right" key5="left" key8="down"/>
<key key0="6"/> <key key0="6"/>
<key width="0.75" key0="+" key1="Σ" key2="$"/> <key width="0.75" role="action" key0="+" key1="Σ" key2="$"/>
<key width="0.75" key0="-" key1="^"/> <key width="0.75" role="action" key0="-" key1="^"/>
</row> </row>
<row> <row>
<key width="0.75" key0="switch_greekmath"/> <key width="0.75" role="action" key0="switch_greekmath"/>
<key width="0.75" key0="shift" key2="fn" key4="loc alt"/> <key width="0.75" role="action" key0="shift" key2="fn" key4="loc alt"/>
<key key0="1" key1="superscript" key2="ordinal" key3="subscript"/> <key key0="1" key1="superscript" key2="ordinal" key3="subscript"/>
<key key0="2"/> <key key0="2"/>
<key key0="3"/> <key key0="3"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
<row height="0.95"> <row height="0.95">
<key width="1.5" key0="switch_text" key2="ctrl"/> <key width="1.5" role="action" key0="switch_text" key2="ctrl"/>
<key width="1.5" key0="0"/> <key width="1.5" key0="0"/>
<key width="0.75" key0="." key1=":" key2="," key3=";"/> <key width="0.75" role="action" key0="." key1=":" key2="," key3=";"/>
<key width="0.75" key0="space" key1="&quot;" key2="'" key3="loc compose" key4="_"/> <key width="0.75" role="action" key0="action" key1="&quot;" key2="'" key3="loc compose" key4="_"/>
<key width="1.5" key0="enter" key1="±" key2="action" key3="="/> <key width="1.5" role="action" key0="enter" key1="±" key2="action" key3="="/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -1,27 +1,27 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<keyboard bottom_row="false"> <keyboard bottom_row="false">
<row> <row>
<key key0="7"/> <key role="action" key0="7"/>
<key key0="8"/> <key role="action" key0="8"/>
<key key0="9"/> <key role="action" key0="9"/>
<key key0="/"/> <key role="action" key0="/"/>
</row> </row>
<row> <row>
<key key0="4"/> <key role="action" key0="4"/>
<key key0="5"/> <key role="action" key0="5"/>
<key key0="6"/> <key role="action" key0="6"/>
<key key0="*"/> <key role="action" key0="*"/>
</row> </row>
<row> <row>
<key key0="1"/> <key role="action" key0="1"/>
<key key0="2"/> <key role="action" key0="2"/>
<key key0="3"/> <key role="action" key0="3"/>
<key key0="-"/> <key role="action" key0="-"/>
</row> </row>
<row height="0.95"> <row height="0.95">
<key key0="0"/> <key role="action" key0="0"/>
<key key0="."/> <key role="action" key0="."/>
<key key0="="/> <key role="action" key0="="/>
<key key0="+"/> <key role="action" key0="+"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -4,24 +4,24 @@
<key shift="1.0" key0="1"/> <key shift="1.0" key0="1"/>
<key key0="2" indication="ABC"/> <key key0="2" indication="ABC"/>
<key key0="3" indication="DEF"/> <key key0="3" indication="DEF"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
<row> <row>
<key shift="1.0" key0="4" indication="GHI"/> <key shift="1.0" key0="4" indication="GHI"/>
<key key0="5" indication="JKL"/> <key key0="5" indication="JKL"/>
<key key0="6" indication="MNO"/> <key key0="6" indication="MNO"/>
<key key0="(" key1="paste" key2="=" key3=":" key4="-"/> <key role="action" key0="(" key1="paste" key2="=" key3=":" key4="-"/>
</row> </row>
<row> <row>
<key shift="1.0" key0="7" indication="PQRS"/> <key shift="1.0" key0="7" indication="PQRS"/>
<key key0="8" indication="TUV"/> <key key0="8" indication="TUV"/>
<key key0="9" indication="WXYZ"/> <key key0="9" indication="WXYZ"/>
<key key0=")" key2="," key3="/" key4="."/> <key role="action" key0=")" key2="," key3="/" key4="."/>
</row> </row>
<row> <row>
<key shift="1.0" key0="*" key1="switch_text" key3="switch_numeric"/> <key role="action" shift="1.0" key0="*" key1="switch_text" key3="switch_numeric"/>
<key key0="0" key3="+" key4="space"/> <key key0="0" key3="+" key4="space"/>
<key key0="\#" key7="up" key6="right" key5="left" key8="down"/> <key role="action" key0="\#" key7="up" key6="right" key5="left" key8="down"/>
<key key0="action" key2="enter"/> <key role="action" key0="action" key2="enter"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -353,7 +353,17 @@ public class Keyboard2View extends View
x += k.shift * _keyWidth; x += k.shift * _keyWidth;
float keyW = _keyWidth * k.width - _tc.horizontal_margin; float keyW = _keyWidth * k.width - _tc.horizontal_margin;
boolean isKeyDown = _pointers.isKeyDown(k); boolean isKeyDown = _pointers.isKeyDown(k);
Theme.Computed.Key tc_key = isKeyDown ? _tc.key_activated : _tc.key; Theme.Computed.Key tc_key;
if (isKeyDown)
tc_key = _tc.key_activated;
else
switch (k.role)
{
case Action: tc_key = _tc.key_action; break;
case Space_bar: tc_key = _tc.key_space_bar; break;
default:
case Normal: tc_key = _tc.key; break;
}
drawKeyFrame(canvas, x, y, keyW, keyH, tc_key); drawKeyFrame(canvas, x, y, keyW, keyH, tc_key);
if (k.keys[0] != null) if (k.keys[0] != null)
drawLabel(canvas, k.keys[0], keyW / 2f + x, y, keyH, isKeyDown, tc_key); drawLabel(canvas, k.keys[0], keyW / 2f + x, y, keyH, isKeyDown, tc_key);

View File

@@ -407,12 +407,14 @@ public final class KeyboardData
public final float shift; public final float shift;
/** String printed on the keys. It has no other effect. */ /** String printed on the keys. It has no other effect. */
public final String indication; public final String indication;
/** Keys are rendered differently according to their role. */
public final Role role;
/** Whether a key was declared with the 'loc' prefix. */ /** Whether a key was declared with the 'loc' prefix. */
public static final int F_LOC = 1; public static final int F_LOC = 1;
public static final int ALL_FLAGS = F_LOC; public static final int ALL_FLAGS = F_LOC;
protected Key(KeyValue[] ks, KeyValue antic, int f, float w, float s, String i) protected Key(KeyValue[] ks, KeyValue antic, int f, float w, float s, String i, Role role_)
{ {
keys = ks; keys = ks;
anticircle = antic; anticircle = antic;
@@ -420,6 +422,7 @@ public final class KeyboardData
width = Math.max(w, 0f); width = Math.max(w, 0f);
shift = Math.max(s, 0f); shift = Math.max(s, 0f);
indication = i; indication = i;
role = role_;
} }
/** Read a key value attribute that have a synonym. Having both synonyms /** Read a key value attribute that have a synonym. Having both synonyms
@@ -488,9 +491,11 @@ public final class KeyboardData
float width = attribute_float(parser, "width", 1f); float width = attribute_float(parser, "width", 1f);
float shift = attribute_float(parser, "shift", 0.f); float shift = attribute_float(parser, "shift", 0.f);
String indication = parser.getAttributeValue(null, "indication"); String indication = parser.getAttributeValue(null, "indication");
String role_str = parser.getAttributeValue(null, "role");
Role role = (role_str == null) ? Role.Normal : Role.parse(role_str);
while (parser.next() != XmlPullParser.END_TAG) while (parser.next() != XmlPullParser.END_TAG)
continue; continue;
return new Key(ks, anticircle, keysflags, width, shift, indication); return new Key(ks, anticircle, keysflags, width, shift, indication, role);
} }
/** Whether key at [index] as [flag]. */ /** Whether key at [index] as [flag]. */
@@ -502,7 +507,7 @@ public final class KeyboardData
/** New key with the width multiplied by 's'. */ /** New key with the width multiplied by 's'. */
public Key scaleWidth(float s) public Key scaleWidth(float s)
{ {
return new Key(keys, anticircle, keysflags, width * s, shift, indication); return new Key(keys, anticircle, keysflags, width * s, shift, indication, role);
} }
public void getKeys(Map<KeyValue, KeyPos> dst, int row, int col) public void getKeys(Map<KeyValue, KeyPos> dst, int row, int col)
@@ -523,12 +528,12 @@ public final class KeyboardData
for (int j = 0; j < keys.length; j++) ks[j] = keys[j]; for (int j = 0; j < keys.length; j++) ks[j] = keys[j];
ks[i] = kv; ks[i] = kv;
int flags = (keysflags & ~(ALL_FLAGS << i)); int flags = (keysflags & ~(ALL_FLAGS << i));
return new Key(ks, anticircle, flags, width, shift, indication); return new Key(ks, anticircle, flags, width, shift, indication, role);
} }
public Key withShift(float s) public Key withShift(float s)
{ {
return new Key(keys, anticircle, keysflags, width, s, indication); return new Key(keys, anticircle, keysflags, width, s, indication, role);
} }
public boolean hasValue(KeyValue kv) public boolean hasValue(KeyValue kv)
@@ -538,6 +543,23 @@ public final class KeyboardData
return true; return true;
return false; return false;
} }
public static enum Role
{
Normal,
Action, // Generally Shift, Delete and keys on the bottom row
Space_bar;
public static Role parse(String str)
{
switch (str)
{
case "action": return Action;
case "space_bar": return Space_bar;
default: case "normal": return Normal;
}
}
}
} }
// Not using Function<KeyValue, KeyValue> to keep compatibility with Android 6. // Not using Function<KeyValue, KeyValue> to keep compatibility with Android 6.
@@ -554,7 +576,7 @@ public final class KeyboardData
for (int i = 0; i < ks.length; i++) for (int i = 0; i < ks.length; i++)
if (k.keys[i] != null) if (k.keys[i] != null)
ks[i] = apply(k.keys[i], k.keyHasFlag(i, Key.F_LOC)); ks[i] = apply(k.keys[i], k.keyHasFlag(i, Key.F_LOC));
return new Key(ks, k.anticircle, k.keysflags, k.width, k.shift, k.indication); return new Key(ks, k.anticircle, k.keysflags, k.width, k.shift, k.indication, k.role);
} }
} }

View File

@@ -12,6 +12,8 @@ public class Theme
// Key colors // Key colors
public final int colorKey; public final int colorKey;
public final int colorKeyActivated; public final int colorKeyActivated;
public final int colorKeyAction;
public final int colorKeySpaceBar;
// Label colors // Label colors
public final int lockedColor; public final int lockedColor;
@@ -25,6 +27,8 @@ public class Theme
public final float keyBorderRadius; public final float keyBorderRadius;
public final float keyBorderWidth; public final float keyBorderWidth;
public final float keyBorderWidthActivated; public final float keyBorderWidthActivated;
public final float keyBorderWidthAction;
public final float keyBorderWidthSpaceBar;
public final int keyBorderColorLeft; public final int keyBorderColorLeft;
public final int keyBorderColorTop; public final int keyBorderColorTop;
public final int keyBorderColorRight; public final int keyBorderColorRight;
@@ -39,6 +43,8 @@ public class Theme
TypedArray s = context.getTheme().obtainStyledAttributes(attrs, R.styleable.keyboard, 0, 0); TypedArray s = context.getTheme().obtainStyledAttributes(attrs, R.styleable.keyboard, 0, 0);
colorKey = s.getColor(R.styleable.keyboard_colorKey, 0); colorKey = s.getColor(R.styleable.keyboard_colorKey, 0);
colorKeyActivated = s.getColor(R.styleable.keyboard_colorKeyActivated, 0); colorKeyActivated = s.getColor(R.styleable.keyboard_colorKeyActivated, 0);
colorKeyAction = s.getColor(R.styleable.keyboard_colorKeyAction, colorKey);
colorKeySpaceBar = s.getColor(R.styleable.keyboard_colorKeySpaceBar, colorKey);
// colorKeyboard = s.getColor(R.styleable.keyboard_colorKeyboard, 0); // colorKeyboard = s.getColor(R.styleable.keyboard_colorKeyboard, 0);
colorNavBar = s.getColor(R.styleable.keyboard_navigationBarColor, 0); colorNavBar = s.getColor(R.styleable.keyboard_navigationBarColor, 0);
isLightNavBar = s.getBoolean(R.styleable.keyboard_windowLightNavigationBar, false); isLightNavBar = s.getBoolean(R.styleable.keyboard_windowLightNavigationBar, false);
@@ -53,6 +59,8 @@ public class Theme
keyBorderRadius = s.getDimension(R.styleable.keyboard_keyBorderRadius, 0); keyBorderRadius = s.getDimension(R.styleable.keyboard_keyBorderRadius, 0);
keyBorderWidth = s.getDimension(R.styleable.keyboard_keyBorderWidth, 0); keyBorderWidth = s.getDimension(R.styleable.keyboard_keyBorderWidth, 0);
keyBorderWidthActivated = s.getDimension(R.styleable.keyboard_keyBorderWidthActivated, 0); keyBorderWidthActivated = s.getDimension(R.styleable.keyboard_keyBorderWidthActivated, 0);
keyBorderWidthAction = s.getDimension(R.styleable.keyboard_keyBorderWidthAction, 0);
keyBorderWidthSpaceBar = s.getDimension(R.styleable.keyboard_keyBorderWidthSpaceBar, 0);
keyBorderColorLeft = s.getColor(R.styleable.keyboard_keyBorderColorLeft, colorKey); keyBorderColorLeft = s.getColor(R.styleable.keyboard_keyBorderColorLeft, colorKey);
keyBorderColorTop = s.getColor(R.styleable.keyboard_keyBorderColorTop, colorKey); keyBorderColorTop = s.getColor(R.styleable.keyboard_keyBorderColorTop, colorKey);
keyBorderColorRight = s.getColor(R.styleable.keyboard_keyBorderColorRight, colorKey); keyBorderColorRight = s.getColor(R.styleable.keyboard_keyBorderColorRight, colorKey);
@@ -61,7 +69,7 @@ public class Theme
} }
/** Interpolate the 'value' component toward its opposite by 'alpha'. */ /** Interpolate the 'value' component toward its opposite by 'alpha'. */
int adjustLight(int color, float alpha) static int adjustLight(int color, float alpha)
{ {
float[] hsv = new float[3]; float[] hsv = new float[3];
Color.colorToHSV(color, hsv); Color.colorToHSV(color, hsv);
@@ -98,6 +106,8 @@ public class Theme
public final Key key; public final Key key;
public final Key key_activated; public final Key key_activated;
public final Key key_action;
public final Key key_space_bar;
public Computed(Theme theme, Config config, float keyWidth) public Computed(Theme theme, Config config, float keyWidth)
{ {
@@ -107,8 +117,10 @@ public class Theme
// added on the right and on the bottom of every keys. // added on the right and on the bottom of every keys.
margin_top = config.marginTop + vertical_margin / 2; margin_top = config.marginTop + vertical_margin / 2;
margin_left = horizontal_margin / 2; margin_left = horizontal_margin / 2;
key = new Key(theme, config, keyWidth, false); key = new Key(theme, config, keyWidth, false, KeyboardData.Key.Role.Normal);
key_activated = new Key(theme, config, keyWidth, true); key_action = new Key(theme, config, keyWidth, false, KeyboardData.Key.Role.Action);
key_space_bar = new Key(theme, config, keyWidth, false, KeyboardData.Key.Role.Space_bar);
key_activated = new Key(theme, config, keyWidth, true, KeyboardData.Key.Role.Normal);
indication_paint = init_label_paint(config, null); indication_paint = init_label_paint(config, null);
indication_paint.setColor(theme.subLabelColor); indication_paint.setColor(theme.subLabelColor);
} }
@@ -127,20 +139,37 @@ public class Theme
final Paint _sublabel_paint; final Paint _sublabel_paint;
final Paint _special_sublabel_paint; final Paint _special_sublabel_paint;
public Key(Theme theme, Config config, float keyWidth, boolean activated) public Key(Theme theme, Config config, float keyWidth, boolean activated,
KeyboardData.Key.Role role)
{ {
bg_paint.setColor(activated ? theme.colorKeyActivated : theme.colorKey); border_radius = config.borderConfig ? config.customBorderRadius * keyWidth : theme.keyBorderRadius;
if (config.borderConfig) int bg_color;
if (activated)
{ {
border_radius = config.customBorderRadius * keyWidth; bg_color = theme.colorKeyActivated;
border_width = config.customBorderLineWidth; border_width = theme.keyBorderWidthActivated;
bg_paint.setAlpha(config.keyActivatedOpacity);
} }
else else
{ {
border_radius = theme.keyBorderRadius; switch (role)
border_width = activated ? theme.keyBorderWidthActivated : theme.keyBorderWidth; {
case Action:
bg_color = theme.colorKeyAction;
border_width = theme.keyBorderWidthAction;
break;
case Space_bar:
bg_color = theme.colorKeySpaceBar;
border_width = theme.keyBorderWidthSpaceBar;
break;
default:
bg_color = theme.colorKey;
border_width = config.borderConfig ? config.customBorderLineWidth : theme.keyBorderWidth;
break;
} }
bg_paint.setAlpha(activated ? config.keyActivatedOpacity : config.keyOpacity); bg_paint.setAlpha(config.keyOpacity);
}
bg_paint.setColor(bg_color);
border_left_paint = init_border_paint(config, border_width, theme.keyBorderColorLeft); border_left_paint = init_border_paint(config, border_width, theme.keyBorderColorLeft);
border_top_paint = init_border_paint(config, border_width, theme.keyBorderColorTop); border_top_paint = init_border_paint(config, border_width, theme.keyBorderColorTop);
border_right_paint = init_border_paint(config, border_width, theme.keyBorderColorRight); border_right_paint = init_border_paint(config, border_width, theme.keyBorderColorRight);

View File

@@ -37,6 +37,6 @@
<key key0="ز" key3="."/> <key key0="ز" key3="."/>
<key key0="ظ" key3="&#1567;"/> <key key0="ظ" key3="&#1567;"/>
<key key0="د"/> <key key0="د"/>
<key width="1.0" key0="backspace" key2="delete"/> <key width="1.0" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -37,6 +37,6 @@
<key key0="و" key1="ۋ" key4="ۊ"/> <key key0="و" key1="ۋ" key4="ۊ"/>
<key key0="چ"/> <key key0="چ"/>
<key key0="ٚ" key1="ٛ"/> <key key0="ٚ" key1="ٛ"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -39,6 +39,6 @@
<key key0="و" key1=","/> <key key0="و" key1=","/>
<key key0="ز" key1="."/> <key key0="ز" key1="."/>
<key key0="ظ" key1="&#1567;"/> <key key0="ظ" key1="&#1567;"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -34,6 +34,6 @@
<key key0="ب" key1="ٮ" /> <key key0="ب" key1="ٮ" />
<key key0="ن" key2="&#1548;" key3="&#1563;"/> <key key0="ن" key2="&#1548;" key3="&#1563;"/>
<key key0="م" key2="." key3=":" /> <key key0="م" key2="." key3=":" />
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -39,6 +39,6 @@
<key key0="و" key1=","/> <key key0="و" key1=","/>
<key key0="ز" key1="."/> <key key0="ز" key1="."/>
<key key0="ظ" key1="&#1567;"/> <key key0="ظ" key1="&#1567;"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -36,6 +36,6 @@
<key key0="پ" key2="&#1567;"/> <key key0="پ" key2="&#1567;"/>
<key key0="و"/> <key key0="و"/>
<key key0="چ"/> <key key0="چ"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -37,7 +37,7 @@
<key key0="խ" key3="\\" key2="|"/> <key key0="խ" key3="\\" key2="|"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="զ"/> <key key0="զ"/>
<key key0="ղ"/> <key key0="ղ"/>
<key key0="ց"/> <key key0="ց"/>
@@ -46,6 +46,6 @@
<key key0="ն" key4="/" key2="\?"/> <key key0="ն" key4="/" key2="\?"/>
<key key0="մ" key4=";" key2=":"/> <key key0="մ" key4=";" key2=":"/>
<key key0="շ" key4="&apos;" key2="&quot;"/> <key key0="շ" key4="&apos;" key2="&quot;"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="দ" key1="_" key2="ধ" key3="(" key4=")"/> <key key0="দ" key1="_" key2="ধ" key3="(" key4=")"/>
</row> </row>
<row> <row>
<key width="1.4" key0="shift" key2="loc capslock"/> <key width="1.4" role="action" key0="shift" key2="loc capslock"/>
<key shift="0.1" key0="্র" key2="্য" key3="\#" key4="*"/> <key shift="0.1" key0="্র" key2="্য" key3="\#" key4="*"/>
<key key0="ো" key1="ৌ" key2="ও" key3="ঔ" key4="\@"/> <key key0="ো" key1="ৌ" key2="ও" key3="ঔ" key4="\@"/>
<key key0="ে" key1="ৈ" key2="এ" key3="ঐ" key4="%"/> <key key0="ে" key1="ৈ" key2="এ" key3="ঐ" key4="%"/>
@@ -32,6 +32,6 @@
<key key0="ন" key1="৳" key2="ণ" key3=";" key4="."/> <key key0="ন" key1="৳" key2="ণ" key3=";" key4="."/>
<key key0="স" key1="&quot;" key2="ষ" key3="!" key4=","/> <key key0="স" key1="&quot;" key2="ষ" key3="!" key4=","/>
<key key0="ম" key1="'" key2="শ" key3="\?" key4="।"/> <key key0="ম" key1="'" key2="শ" key3="\?" key4="।"/>
<key shift="0.1" width="1.4" key0="backspace" key2="delete"/> <key shift="0.1" width="1.4" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="ল" key1="ং" key2="॥" key3="halfspace" /> <key key0="ল" key1="ং" key2="॥" key3="halfspace" />
</row> </row>
<row> <row>
<key width="1.5" key0="shift" /> <key width="1.5" role="action" key0="shift" />
<key key0="য়" key1="য" /> <key key0="য়" key1="য" />
<key key0="শ" key1="ঢ়" /> <key key0="শ" key1="ঢ়" />
<key key0="চ" key1="ছ" key2="ৃ" key3="," /> <key key0="চ" key1="ছ" key2="ৃ" key3="," />
@@ -32,6 +32,6 @@
<key key0="ব" key1="ভ" key2="\?" key3="্" /> <key key0="ব" key1="ভ" key2="\?" key3="্" />
<key key0="ন" key1="ণ" key2=":" key3=";" /> <key key0="ন" key1="ণ" key2=":" key3=";" />
<key key0="ম" key1="ঙ" key2="&quot;" key3="'" /> <key key0="ম" key1="ঙ" key2="&quot;" key3="'" />
<key width="1.5" key0="backspace" key2="delete" /> <key width="1.5" role="action" key0="backspace" key2="delete" />
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="п" key2="|" key3="\\"/> <key key0="п" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="я"/> <key key0="я"/>
<key key0="ч"/> <key key0="ч"/>
<key key0="ё" key1="е"/> <key key0="ё" key1="е"/>
@@ -37,6 +37,6 @@
<key key0="т" key1="₮" key2="\?" key3="/"/> <key key0="т" key1="₮" key2="\?" key3="/"/>
<key key0="ь" key1="ъ" key2=":" key3=";"/> <key key0="ь" key1="ъ" key2=":" key3=";"/>
<key key0="в" key1="ю" key2="&quot;" key3="'"/> <key key0="в" key1="ю" key2="&quot;" key3="'"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -40,7 +40,7 @@
<key key0="э" key2="|" key3="\\"/> <key key0="э" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="я"/> <key key0="я"/>
<key key0="ч"/> <key key0="ч"/>
<key key0="с"/> <key key0="с"/>
@@ -50,6 +50,6 @@
<key key0="ь" key2="\?" key3="/"/> <key key0="ь" key2="\?" key3="/"/>
<key key0="б" key2=":" key3=";"/> <key key0="б" key2=":" key3=";"/>
<key key0="ю" key2="&quot;" key3="'"/> <key key0="ю" key2="&quot;" key3="'"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="э" key2="|" key3="\\"/> <key key0="э" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.18" key0="shift" key2="loc capslock"/> <key width="1.18" role="action" key0="shift" key2="loc capslock"/>
<key width="0.96" key0="я"/> <key width="0.96" key0="я"/>
<key width="0.96" key0="ч"/> <key width="0.96" key0="ч"/>
<key width="0.96" key0="с"/> <key width="0.96" key0="с"/>
@@ -37,6 +37,6 @@
<key width="0.96" key0="ь" key1="ъ" key2="\?" key3="/"/> <key width="0.96" key0="ь" key1="ъ" key2="\?" key3="/"/>
<key width="0.96" key0="б" key2=":" key3=";"/> <key width="0.96" key0="б" key2=":" key3=";"/>
<key width="0.96" key0="ю" key2="&quot;" key3="'"/> <key width="0.96" key0="ю" key2="&quot;" key3="'"/>
<key width="1.18" key0="backspace" key2="delete"/> <key width="1.18" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="є" key2="|" key3="\\"/> <key key0="є" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.1" key0="shift" key2="loc capslock"/> <key width="1.1" role="action" key0="shift" key2="loc capslock"/>
<key key0="я"/> <key key0="я"/>
<key key0="ч" /> <key key0="ч" />
<key key0="с" /> <key key0="с" />
@@ -37,6 +37,6 @@
<key key0="ь" key2=":" key3=";"/> <key key0="ь" key2=":" key3=";"/>
<key key0="б" key2="&quot;" key3="'"/> <key key0="б" key2="&quot;" key3="'"/>
<key key0="ю" key1="«" key2="»"/> <key key0="ю" key1="«" key2="»"/>
<key width="1.1" key0="backspace" key2="delete"/> <key width="1.1" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -62,7 +62,7 @@
<key key0="ћ" ne="`" sw="|"/> <key key0="ћ" ne="`" sw="|"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" nw="loc superscript" ne="loc capslock" sw="loc subscript"/> <key width="1.5" role="action" key0="shift" nw="loc superscript" ne="loc capslock" sw="loc subscript"/>
<key key0="ж" nw="loc undo" ne="loc redo" sw="&lt;" se="&gt;"/> <key key0="ж" nw="loc undo" ne="loc redo" sw="&lt;" se="&gt;"/>
<key key0="џ" ne="loc cut"/> <key key0="џ" ne="loc cut"/>
<key key0="ц" ne="loc copy"/> <key key0="ц" ne="loc copy"/>
@@ -71,6 +71,6 @@
<key key0="н" nw="!" ne="\?" sw="/"/> <key key0="н" nw="!" ne="\?" sw="/"/>
<key key0="м" ne=";" sw=","/> <key key0="м" ne=";" sw=","/>
<key key0="ђ" ne=":" sw="."/> <key key0="ђ" ne=":" sw="."/>
<key width="1.5" key0="backspace" ne="delete"/> <key width="1.5" role="action" key0="backspace" ne="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="ч" key1="„" key2="“"/> <key key0="ч" key1="„" key2="“"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ю"/> <key key0="ю"/>
<key key0="й"/> <key key0="й"/>
<key key0="ъ" key1="loc accent_cedille" key2="&lt;" key4=">"/> <key key0="ъ" key1="loc accent_cedille" key2="&lt;" key4=">"/>
@@ -36,6 +36,6 @@
<key key0="п" key2="&quot;" key3="'"/> <key key0="п" key2="&quot;" key3="'"/>
<key key0="р" key3=","/> <key key0="р" key3=","/>
<key key0="л" key3="."/> <key key0="л" key3="."/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="л" key1="щ" key2="|" key3="\\" key4="ю"/> <key key0="л" key1="щ" key2="|" key3="\\" key4="ю"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="з"/> <key key0="з"/>
<key key0="ь" key3="ѝ"/> <key key0="ь" key3="ѝ"/>
<key key0="ц" key2="&lt;" key3="."/> <key key0="ц" key2="&lt;" key3="."/>
@@ -32,6 +32,6 @@
<key key0="б" key2="\?" key3="/"/> <key key0="б" key2="\?" key3="/"/>
<key key0="н" key2=":" key3=";"/> <key key0="н" key2=":" key3=";"/>
<key key0="м" key2="&quot;" key3="'"/> <key key0="м" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="э" key7="\?" key3="/" /> <key key0="э" key7="\?" key3="/" />
</row> </row>
<row> <row>
<key width="1.18" key0="shift" key2="loc capslock" /> <key width="1.18" role="action" key0="shift" key2="loc capslock" />
<key width="0.96" key0="я" key7="`" key8=";" /> <key width="0.96" key0="я" key7="`" key8=";" />
<key width="0.96" key0="ч" key7="*" key8=":" /> <key width="0.96" key0="ч" key7="*" key8=":" />
<key width="0.96" key0="с" key7="&amp;" key8="\#" /> <key width="0.96" key0="с" key7="&amp;" key8="\#" />

View File

@@ -27,7 +27,7 @@
<key key0="э" key7="/" key8="|" /> <key key0="э" key7="/" key8="|" />
</row> </row>
<row> <row>
<key width="1.18" key0="shift" /> <key width="1.18" role="action" key0="shift" />
<key width="0.96" key0="ꙗ" key7="combining_breve" key8=";" /> <key width="0.96" key0="ꙗ" key7="combining_breve" key8=";" />
<key width="0.96" key0="ч" key7="combining_pokrytie" key8=":" /> <key width="0.96" key0="ч" key7="combining_pokrytie" key8=":" />
<key width="0.96" key0="с" key7="combining_inverted_breve" key8="`" /> <key width="0.96" key0="с" key7="combining_inverted_breve" key8="`" />

View File

@@ -25,6 +25,6 @@
<key key0="।" key1="," key2=";" key3="!" key4="\?"/> <key key0="।" key1="," key2=";" key3="!" key4="\?"/>
<key key0="़" key1="॰" key2="" key3="-" key4="॒"/> <key key0="़" key1="॰" key2="" key3="-" key4="॒"/>
<key key0="५" key1="१" key2="३" key3="७" key4="९" key5="४" key6="६" key7="२" key8="८"/> <key key0="५" key1="१" key2="३" key3="७" key4="९" key5="४" key6="६" key7="२" key8="८"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="त" key1="थ" key2="ख़" key3="(" key4=")"/> <key key0="त" key1="थ" key2="ख़" key3="(" key4=")"/>
</row> </row>
<row> <row>
<key width="1.4" key0="shift" key2="loc capslock"/> <key width="1.4" role="action" key0="shift" key2="loc capslock"/>
<key shift="0.1" key0="ट" key1="ठ" key2="ड़" key3="\#" key4="*"/> <key shift="0.1" key0="ट" key1="ठ" key2="ड़" key3="\#" key4="*"/>
<key key0="ं" key1="ँ" key2="।" key3="ॐ" key4="\@"/> <key key0="ं" key1="ँ" key2="।" key3="ॐ" key4="\@"/>
<key key0="म" key1="ण" key2="य" key3="य़" key4="%"/> <key key0="म" key1="ण" key2="य" key3="य़" key4="%"/>
@@ -32,6 +32,6 @@
<key key0="व" key2="ढ़" key3=";" key4="."/> <key key0="व" key2="ढ़" key3=";" key4="."/>
<key key0="ल" key1="ळ" key2="फ़" key3="!" key4=","/> <key key0="ल" key1="ळ" key2="फ़" key3="!" key4=","/>
<key key0="स" key1="श" key2="ष" key3="\?" key4="।"/> <key key0="स" key1="श" key2="ष" key3="\?" key4="।"/>
<key shift="0.1" width="1.4" key0="backspace" key2="delete"/> <key shift="0.1" width="1.4" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -29,7 +29,7 @@
<key key0="ल" key1="ऌ" key2="।" key3 ="ॢ" key4="॥"/> <key key0="ल" key1="ऌ" key2="।" key3 ="ॢ" key4="॥"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ज्ञ" key2="|" key3="\\" key4="ऍ"/> <key key0="ज्ञ" key2="|" key3="\\" key4="ऍ"/>
<key key0="ष" key1="क्ष" key3 ="ॅ" key4="ॉ"/> <key key0="ष" key1="क्ष" key3 ="ॅ" key4="ॉ"/>
<key key0="च" key2="&lt;" key3=","/> <key key0="च" key2="&lt;" key3=","/>
@@ -37,6 +37,6 @@
<key key0="ब" key2="\?" key3="/"/> <key key0="ब" key2="\?" key3="/"/>
<key key0="न" key1="ङ" key2=":" key3=";" key4="ऽ"/> <key key0="न" key1="ङ" key2=":" key3=";" key4="ऽ"/>
<key key0="म" key1="ॐ" key2="&quot;" key3="'" key4="ँ"/> <key key0="म" key1="ॐ" key2="&quot;" key3="'" key4="ँ"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -28,7 +28,7 @@
<key key0="ჩ" key1="ჭ"/> <key key0="ჩ" key1="ჭ"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ზ" key1="ჵ"/> <key key0="ზ" key1="ჵ"/>
<key key0="ხ" key1="ჴ" key2="loc †"/> <key key0="ხ" key1="ჴ" key2="loc †"/>
<key key0="ც" key2="&lt;" key3="."/> <key key0="ც" key2="&lt;" key3="."/>
@@ -38,6 +38,6 @@
<key key0="მ" key2="&quot;" key3="'"/> <key key0="მ" key2="&quot;" key3="'"/>
<key key0="ძ"/> <key key0="ძ"/>
<key key0="ჟ"/> <key key0="ჟ"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="ლ" key1="₾" key2="|" key3="\\"/> <key key0="ლ" key1="₾" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ზ" key1="ძ" key2="ჵ"/> <key key0="ზ" key1="ძ" key2="ჵ"/>
<key key0="ხ" key2="ჴ" key3="loc †"/> <key key0="ხ" key2="ჴ" key3="loc †"/>
<key key0="ც" key1="ჩ" key3="&lt;" key4="."/> <key key0="ც" key1="ჩ" key3="&lt;" key4="."/>
@@ -32,7 +32,7 @@
<key key0="ბ" key2="\?" key3="/"/> <key key0="ბ" key2="\?" key3="/"/>
<key key0="ნ" key1="ჼ" key2="`" key3=":" key4=";"/> <key key0="ნ" key1="ჼ" key2="`" key3=":" key4=";"/>
<key key0="მ" key2="&quot;" key3="'"/> <key key0="მ" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="accent_aigu" key1="accent_trema" key3="accent_grave"/> <key key0="accent_aigu" key1="accent_trema" key3="accent_grave"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ζ"/> <key key0="ζ"/>
<key key0="χ"/> <key key0="χ"/>
<key key0="ψ" key2="&lt;" key3="."/> <key key0="ψ" key2="&lt;" key3="."/>
@@ -33,6 +33,6 @@
<key key0="β" key2="\?" key3="/"/> <key key0="β" key2="\?" key3="/"/>
<key key0="ν" key2=":" key3=";"/> <key key0="ν" key2=":" key3=";"/>
<key key0="μ" key2="&quot;" key3="'"/> <key key0="μ" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="લ" key1="।" key2="|" key3="\\" key4="॥"/> <key key0="લ" key1="।" key2="|" key3="\\" key4="॥"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ઞ" key1="જ્ઞ" key2="ૅ" key3="ઙ" key4="ઍ"/> <key key0="ઞ" key1="જ્ઞ" key2="ૅ" key3="ઙ" key4="ઍ"/>
<key key0="ષ" key1="ક્ષ" key2="ૉ" key3="઼" key4="ઑ"/> <key key0="ષ" key1="ક્ષ" key2="ૉ" key3="઼" key4="ઑ"/>
<key key0="ચ" key2="&lt;" key3="."/> <key key0="ચ" key2="&lt;" key3="."/>
@@ -32,6 +32,6 @@
<key key0="બ" key2="\?" key3="/"/> <key key0="બ" key2="\?" key3="/"/>
<key key0="ન" key2=":" key3=";"/> <key key0="ન" key2=":" key3=";"/>
<key key0="મ" key1="ૐ" key2="&quot;" key3="'" key4="॑" key6="ઽ"/> <key key0="મ" key1="ૐ" key2="&quot;" key3="'" key4="॑" key6="ઽ"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="ㅣ" key2="|" key3="\\"/> <key key0="ㅣ" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ㅋ"/> <key key0="ㅋ"/>
<key key0="ㅌ" key1="ㄾ" key3="&lt;" key4="&gt;"/> <key key0="ㅌ" key1="ㄾ" key3="&lt;" key4="&gt;"/>
<key key0="ㅊ" key3="."/> <key key0="ㅊ" key3="."/>
@@ -32,6 +32,6 @@
<key key0="ㅠ" key1="ㅞ" key2="ㅝ" key3="/" key4="\?"/> <key key0="ㅠ" key1="ㅞ" key2="ㅝ" key3="/" key4="\?"/>
<key key0="ㅜ" key2="ㅟ" key3=";" key4=":"/> <key key0="ㅜ" key2="ㅟ" key3=";" key4=":"/>
<key key0="ㅡ" key2="ㅢ" key3="'" key4="&quot;"/> <key key0="ㅡ" key2="ㅢ" key3="'" key4="&quot;"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -12,7 +12,7 @@
<key key0="ן" key2="8" key3="*"/> <key key0="ן" key2="8" key3="*"/>
<key key0="ם" key2="9" key3="b(" key4="lrm"/> <key key0="ם" key2="9" key3="b(" key4="lrm"/>
<key key0="פ" key2="0" key3="b)" key4="rlm"/> <key key0="פ" key2="0" key3="b)" key4="rlm"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
<row> <row>
<key key0="ש" key2="`" key1="loc tab" key3="sindot_placeholder" key4="shindot_placeholder" width="1.333"/> <key key0="ש" key2="`" key1="loc tab" key3="sindot_placeholder" key4="shindot_placeholder" width="1.333"/>

View File

@@ -35,6 +35,6 @@
<key key0="מ" key1="blt" key2=","/> <key key0="מ" key1="blt" key2=","/>
<key key0="צ" key1="bgt" key2="."/> <key key0="צ" key1="bgt" key2="."/>
<key key0="/" key1="\?"/> <key key0="/" key1="\?"/>
<key key0="backspace" key2="delete" width="1.333"/> <key role="action" key0="backspace" key2="delete" width="1.333"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,6 +25,6 @@
<key key0="।" key1="'" key2="&quot;" key3="." key4="," key6="॥"/> <key key0="।" key1="'" key2="&quot;" key3="." key4="," key6="॥"/>
<key key0="" key1=":" key2=";" key3="-" key4="_"/> <key key0="" key1=":" key2=";" key3="-" key4="_"/>
<key key0="೫" key1="೧" key2="೩" key3="೭" key4="೯" key5="೪" key6="೬" key7="೨" key8="೮"/> <key key0="೫" key1="೧" key2="೩" key3="೭" key4="೯" key5="೪" key6="೬" key7="೨" key8="೮"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -26,13 +26,13 @@
<key key0="m" key1="£" key3="µ"/> <key key0="m" key1="£" key3="µ"/>
</row> </row>
<row> <row>
<key width="2.0" key0="shift" key2="loc capslock"/> <key width="2.0" role="action" key0="shift" key2="loc capslock"/>
<key key0="w" key1="\\" key2="`" key3="&lt;" key4="&gt;"/> <key key0="w" key1="\\" key2="`" key3="&lt;" key4="&gt;"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c" key2="\?" key3=","/> <key key0="c" key2="\?" key3=","/>
<key key0="v" key2="." key3=";"/> <key key0="v" key2="." key3=";"/>
<key key0="b" key2="/" key3=":"/> <key key0="b" key2="/" key3=":"/>
<key key0="n" key2="+" key3="="/> <key key0="n" key2="+" key3="="/>
<key width="2.0" key0="backspace" key2="delete"/> <key width="2.0" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,13 +27,13 @@
<key key0="m" key3="*"/> <key key0="m" key3="*"/>
</row> </row>
<row> <row>
<key width="2.0" key0="shift" key2="loc capslock"/> <key width="2.0" role="action" key0="shift" key2="loc capslock"/>
<key key0="w" key3="&lt;" key4="&gt;"/> <key key0="w" key3="&lt;" key4="&gt;"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c" key1="loc accent_cedille" key2="ç" key3="," key4="\?"/> <key key0="c" key1="loc accent_cedille" key2="ç" key3="," key4="\?"/>
<key key0="v" key3=";" key4="."/> <key key0="v" key3=";" key4="."/>
<key key0="b" key3=":" key4="/"/> <key key0="b" key3=":" key4="/"/>
<key key0="n" key1="loc accent_tilde" key2="§" key4="!"/> <key key0="n" key1="loc accent_tilde" key2="§" key4="!"/>
<key width="2.0" key0="backspace" key2="delete"/> <key width="2.0" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -26,7 +26,7 @@
<key width="1.1" key0="m" key2="&quot;"/> <key width="1.1" key0="m" key2="&quot;"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="capslock" key3="&lt;"/> <key width="1.5" role="action" key0="shift" key2="capslock" key3="&lt;"/>
<key key0="y" key4="%"/> <key key0="y" key4="%"/>
<key key0="x" key4="\@"/> <key key0="x" key4="\@"/>
<key key0="k" key4="~"/> <key key0="k" key4="~"/>
@@ -35,6 +35,6 @@
<key key0="g" key3="/" key4="\\"/> <key key0="g" key3="/" key4="\\"/>
<key key0="h"/> <key key0="h"/>
<key key0="f"/> <key key0="f"/>
<key width="1.5" key0="backspace" key2="delete" key3=">"/> <key width="1.5" role="action" key0="backspace" key2="delete" key3=">"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -49,7 +49,7 @@
--> -->
<row> <row>
<!--left side--> <!--left side-->
<key width="1.5" key0="shift" key4="\#"/> <key width="1.5" role="action" key0="shift" key4="\#"/>
<key key0="f" key4="$"/> <key key0="f" key4="$"/>
<key key0="v" key4="|"/> <key key0="v" key4="|"/>
<key key0="ü" key4="~"/> <key key0="ü" key4="~"/>
@@ -59,14 +59,14 @@
<key key0="y" key3="%" key4="1"/> <key key0="y" key3="%" key4="1"/>
<key key0="z" key3="," key1="&quot;" key4="2"/> <key key0="z" key3="," key1="&quot;" key4="2"/>
<key key0="k" key3="." key1="&apos;" key4="3"/> <key key0="k" key3="." key1="&apos;" key4="3"/>
<key width="1.5" key0="backspace" key3=";" key1="delete"/> <key width="1.5" role="action" key0="backspace" key3=";" key1="delete"/>
</row> </row>
<!--bottom row--> <!--bottom row-->
<row height="0.95"> <row height="0.95">
<key width="1.8" key0="ctrl" key2="loc meta" key4="switch_numeric"/> <key width="1.8" role="action" key0="ctrl" key2="loc meta" key4="switch_numeric"/>
<key width="1.2" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/> <key width="1.2" role="action" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/>
<key width="5.0" key0="space" key7="switch_forward" key8="0"/> <key width="5.0" role="space_bar" key0="space" key7="switch_forward" key8="0"/>
<key width="1.2" key5="left" key6="right" key7="up" key8="down"/> <key width="1.2" role="action" key5="left" key6="right" key7="up" key8="down"/>
<key width="1.8" key0="enter" key3="action"/> <key width="1.8" role="action" key0="enter" key3="action"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock" width="1.5" /> <key role="action" key0="shift" key2="loc capslock" width="1.5" />
<key key0="z" key1="," key2="."/> <key key0="z" key1="," key2="."/>
<key key0="x" key1="&gt;" key2="&lt;"/> <key key0="x" key1="&gt;" key2="&lt;"/>
<key key0="c" key1="{" key2="}" key3="loc accent_cedille"/> <key key0="c" key1="{" key2="}" key3="loc accent_cedille"/>
@@ -35,7 +35,7 @@
<key key0="b" key1="(" key2=")"/> <key key0="b" key1="(" key2=")"/>
<key key0="k" key1=";" key2=":"/> <key key0="k" key1=";" key2=":"/>
<key key0="m" key1="|" key2="\?" /> <key key0="m" key1="|" key2="\?" />
<key key0="backspace" key1="delete" shift="0.25" width="1.25"/> <key role="action" key0="backspace" key1="delete" shift="0.25" width="1.25"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<keyboard name="Dvorak" script="latin"> <keyboard name="Dvorak" script="latin">
<row> <row>
<key key0="shift" width="1.5" key2="loc esc" key4="loc tab"/> <key role="action" key0="shift" width="1.5" key2="loc esc" key4="loc tab"/>
<key key0="p" key1="loc accent_ring" key2="." key3="&lt;"/> <key key0="p" key1="loc accent_ring" key2="." key3="&lt;"/>
<key key0="y" key1="loc accent_grave" key2="," key3="&gt;"/> <key key0="y" key1="loc accent_grave" key2="," key3="&gt;"/>
<key key0="f" key4="loc €"/> <key key0="f" key4="loc €"/>
@@ -9,7 +9,7 @@
<key key0="c" key1="loc accent_trema" key2="loc accent_circonflexe" key3="{" key4="}"/> <key key0="c" key1="loc accent_trema" key2="loc accent_circonflexe" key3="{" key4="}"/>
<key key0="r" key3="[" key4="]"/> <key key0="r" key3="[" key4="]"/>
<key key0="l" key2="=" key3="+" key4="loc £"/> <key key0="l" key2="=" key3="+" key4="loc £"/>
<key key0="backspace" key2="delete" width="1.5"/> <key role="action" key0="backspace" key2="delete" width="1.5"/>
</row> </row>
<row> <row>
<key key0="a" key2="1" key3="loc å" key4="!"/> <key key0="a" key2="1" key3="loc å" key4="!"/>

View File

@@ -29,7 +29,7 @@
<key key0="y" key3="\@"/> <key key0="y" key3="\@"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key1="loc esc" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key1="loc esc" key2="loc capslock"/>
<key key0="ü" key4="\#"/> <key key0="ü" key4="\#"/>
<key key0="ö" key4="$"/> <key key0="ö" key4="$"/>
<key key0="ä" key4="|"/> <key key0="ä" key4="|"/>
@@ -38,14 +38,14 @@
<key key0="b" key4="+"/> <key key0="b" key4="+"/>
<key key0="m" key4="%"/> <key key0="m" key4="%"/>
<key key0="." key1="," key3="&quot;" key4="'"/> <key key0="." key1="," key3="&quot;" key4="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
<row height="0.95"> <row height="0.95">
<key width="1.7" key0="ctrl" key1="loc switch_greekmath" key2="loc meta" key4="switch_numeric"/> <key width="1.7" role="action" key0="ctrl" key1="loc switch_greekmath" key2="loc meta" key4="switch_numeric"/>
<key width="1.1" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/> <key width="1.1" role="action" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/>
<key width="4.4" key0="space" key7="switch_forward" key8="switch_backward" key5="cursor_left" key6="cursor_right"/> <key width="4.4" role="space_bar" key0="space" key7="switch_forward" key8="switch_backward" key5="cursor_left" key6="cursor_right"/>
<key width="1.1" key0="loc compose" key7="up" key6="right" key5="left" key8="down" key1="loc home" key2="loc page_up" key3="loc end" key4="loc page_down"/> <key width="1.1" role="action" key0="loc compose" key7="up" key6="right" key5="left" key8="down" key1="loc home" key2="loc page_up" key3="loc end" key4="loc page_down"/>
<key key0="j" key4=";"/> <key key0="j" key4=";"/>
<key width="1.7" key0="enter" key1="loc voice_typing" key2="action"/> <key width="1.7" role="action" key0="enter" key1="loc voice_typing" key2="action"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -31,7 +31,7 @@
<key key0="ə"/> <key key0="ə"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="." key4="ç"/> <key key0="c" key2="&lt;" key3="." key4="ç"/>
@@ -40,6 +40,6 @@
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'" key4="₼"/> <key key0="m" key2="&quot;" key3="'" key4="₼"/>
<key key0="ş"/> <key key0="ş"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -26,7 +26,7 @@
<key key0="ç" key1="|"/> <key key0="ç" key1="|"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c"/> <key key0="c"/>
@@ -34,6 +34,6 @@
<key key0="b"/> <key key0="b"/>
<key key0="n" key1="&lt;" key2="&gt;" key3="," key4="."/> <key key0="n" key1="&lt;" key2="&gt;" key3="," key4="."/>
<key key0="m" key1=":" key2=";" key3="/" key4="\?"/> <key key0="m" key1=":" key2=";" key3="/" key4="\?"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="accent_circonflexe" key2="accent_trema" key3="accent_grave" /> <key key0="accent_circonflexe" key2="accent_trema" key3="accent_grave" />
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="."/> <key key0="c" key2="&lt;" key3="."/>
@@ -34,6 +34,6 @@
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;"/> <key key0="m" key2="&quot;"/>
<key key0="'" key2="accent_aigu" key3="£"/> <key key0="'" key2="accent_aigu" key3="£"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="&quot;" key2="'" key3="$" key4="!"/> <key key0="l" key1="&quot;" key2="'" key3="$" key4="!"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key4="ž"/> <key key0="z" key4="ž"/>
<key key0="x" key1="loc †" key3="\#"/> <key key0="x" key1="loc †" key3="\#"/>
<key key0="c" key3="&amp;" key4="č"/> <key key0="c" key3="&amp;" key4="č"/>
@@ -32,6 +32,6 @@
<key key0="b" key1="&lt;" key2="&gt;" key3="{" key4="}"/> <key key0="b" key1="&lt;" key2="&gt;" key3="{" key4="}"/>
<key key0="n" key1="\?" key2="." key3="," key4="ň"/> <key key0="n" key1="\?" key2="." key3="," key4="ň"/>
<key key0="m" key1=":" key2="*" key3="-" key4="_"/> <key key0="m" key1=":" key2="*" key3="-" key4="_"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="ø" key1="'" key3="&quot;"/> <key key0="ø" key1="'" key3="&quot;"/>
</row> </row>
<row> <row>
<key shift="0.5" width="1.5" key0="shift" key2="loc capslock"/> <key shift="0.5" width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c"/> <key key0="c"/>
@@ -35,7 +35,7 @@
<key key0="b" key2=";" key4=","/> <key key0="b" key2=";" key4=","/>
<key key0="n" key2=":" key4="."/> <key key0="n" key2=":" key4="."/>
<key key0="m" key2="-" key4="_"/> <key key0="m" key2="-" key4="_"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="ñ" key1="·" key3="ç" /> <key key0="ñ" key1="·" key3="ç" />
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/> <key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/>
@@ -33,6 +33,6 @@
<key key0="b" key2="\?" key3="/" key4="¿"/> <key key0="b" key2="\?" key3="/" key4="¿"/>
<key key0="n" key1="accent_tilde" key2=":" key3=";"/> <key key0="n" key1="accent_tilde" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="ä"/> <key key0="ä"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key4="ž"/> <key key0="z" key4="ž"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="."/> <key key0="c" key2="&lt;" key3="."/>
@@ -36,6 +36,6 @@
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key key0="õ"/> <key key0="õ"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="accent_aigu" key2="accent_dot_above" key3="€" key4="£"/> <key key0="accent_aigu" key2="accent_dot_above" key3="€" key4="£"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="."/> <key key0="c" key2="&lt;" key3="."/>
@@ -33,6 +33,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="\#" key2="~" key3="'" key4="\@"/> <key key0="l" key1="\#" key2="~" key3="'" key4="\@"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key2="|" key3="\\"/> <key key0="z" key2="|" key3="\\"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key1="loc accent_cedille" key2="&lt;"/> <key key0="c" key1="loc accent_cedille" key2="&lt;"/>
@@ -32,6 +32,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key2=":" key3="," key4=";"/> <key key0="n" key2=":" key3="," key4=";"/>
<key key0="m" key3="."/> <key key0="m" key3="."/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="ʻ"/> <key key0="ʻ"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="."/> <key key0="c" key2="&lt;" key3="."/>
@@ -34,6 +34,6 @@
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key key0="accent_macron"/> <key key0="accent_macron"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="$" key3="/"/> <key key0="l" key1="$" key3="/"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key3="&lt;" key4="&gt;"/> <key key0="z" key3="&lt;" key4="&gt;"/>
<key key0="x" key1="loc †" key4="\#"/> <key key0="x" key1="loc †" key4="\#"/>
<key key0="c" key4="&amp;"/> <key key0="c" key4="&amp;"/>
@@ -32,6 +32,6 @@
<key key0="b" key1="\?" key3="," key4=";"/> <key key0="b" key1="\?" key3="," key4=";"/>
<key key0="n" key1=":" key3="."/> <key key0="n" key1=":" key3="."/>
<key key0="m" key1="_" key3="-"/> <key key0="m" key1="_" key3="-"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key2="|" key3="¥"/> <key key0="l" key2="|" key3="¥"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3=","/> <key key0="c" key2="&lt;" key3=","/>
@@ -32,6 +32,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key2="_" key3="\\"/> <key key0="n" key2="_" key3="\\"/>
<key key0="m" key2="`" key3="\@"/> <key key0="m" key2="`" key3="\@"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -38,7 +38,7 @@
<key key0="l" key2="|" key3="\\"/> <key key0="l" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="." key4="ç"/> <key key0="c" key2="&lt;" key3="." key4="ç"/>
@@ -46,7 +46,7 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="ė" key4="€"/> <key key0="ė" key4="€"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key4="ž"/> <key key0="z" key4="ž"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="." key4="č"/> <key key0="c" key2="&lt;" key3="." key4="č"/>
@@ -34,7 +34,7 @@
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key key0="ų"/> <key key0="ų"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="ļ" key2="|" key3="/" key4="\\"/> <key key0="l" key1="ļ" key2="|" key3="/" key4="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key1="ž"/> <key key0="z" key1="ž"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key1="č"/> <key key0="c" key1="č"/>
@@ -32,6 +32,6 @@
<key key0="b" key2="\?" key3="&lt;" key4="&gt;"/> <key key0="b" key2="\?" key3="&lt;" key4="&gt;"/>
<key key0="n" key1="ņ" key2="`" key3=":" key4=";"/> <key key0="n" key1="ņ" key2="`" key3=":" key4=";"/>
<key key0="m" key1="'" key2="&quot;" key3="," key4="."/> <key key0="m" key1="'" key2="&quot;" key3="," key4="."/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key c="ż"/> <key c="ż"/>
</row> </row>
<row> <row>
<key width="1.5" c="shift" ne="loc capslock"/> <key width="1.5" role="action" c="shift" ne="loc capslock"/>
<key c="z"/> <key c="z"/>
<key c="x" ne="loc †"/> <key c="x" ne="loc †"/>
<key c="c" ne="&lt;" sw="."/> <key c="c" ne="&lt;" sw="."/>
@@ -36,7 +36,7 @@
<key c="n" ne=":" sw=";"/> <key c="n" ne=":" sw=";"/>
<key c="m" ne="&quot;" sw="'"/> <key c="m" ne="&quot;" sw="'"/>
<key c="ċ"/> <key c="ċ"/>
<key width="1.5" c="backspace" ne="delete"/> <key width="1.5" role="action" c="backspace" ne="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key2="|" key3="\\"/> <key key0="l" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/> <key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/>
@@ -32,6 +32,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key1="loc accent_tilde" key2=":" key3=";"/> <key key0="n" key1="loc accent_tilde" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key2="|" key3="\\" key4="ł"/> <key key0="l" key2="|" key3="\\" key4="ł"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key4="ż"/> <key key0="z" key4="ż"/>
<key key0="x" key2="loc †" key4="ź"/> <key key0="x" key2="loc †" key4="ź"/>
<key key0="c" key1="loc accent_cedille" key2="&lt;" key3="." key4="ć"/> <key key0="c" key1="loc accent_cedille" key2="&lt;" key3="." key4="ć"/>
@@ -32,6 +32,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key1="loc accent_tilde" key2=":" key3=";" key4="ń"/> <key key0="n" key1="loc accent_tilde" key2=":" key3=";" key4="ń"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key2="|" key3="\\"/> <key key0="l" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/> <key key0="c" key1="loc accent_cedille" key2="&lt;" key3="."/>
@@ -32,6 +32,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key1="loc accent_tilde" key2=":" key3=";"/> <key key0="n" key1="loc accent_tilde" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -27,7 +27,7 @@
<key key0="ä" key1="'" key3="&quot;"/> <key key0="ä" key1="'" key3="&quot;"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c"/> <key key0="c"/>
@@ -36,6 +36,6 @@
<key key0="n" key2=":" key4="."/> <key key0="n" key2=":" key4="."/>
<key key0="m" key2="-" key4="_"/> <key key0="m" key2="-" key4="_"/>
<key width="1.0" key0="." key1="!" key2="\?" key3="'" key4=","/> <key width="1.0" key0="." key1="!" key2="\?" key3="'" key4=","/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="(" key2=")" key3="ĺ" key4="ľ"/> <key key0="l" key1="(" key2=")" key3="ĺ" key4="ľ"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z" key4="ž"/> <key key0="z" key4="ž"/>
<key key0="x" key1="loc †" key2="\#"/> <key key0="x" key1="loc †" key2="\#"/>
<key key0="c" key4="č"/> <key key0="c" key4="č"/>
@@ -32,6 +32,6 @@
<key key0="b" key1="&lt;" key2="&gt;" key3=";" key4=":"/> <key key0="b" key1="&lt;" key2="&gt;" key3=";" key4=":"/>
<key key0="n" key3="_" key4="ň"/> <key key0="n" key3="_" key4="ň"/>
<key key0="m" key1="!" key2="\?" key3="," key4="."/> <key key0="m" key1="!" key2="\?" key3="," key4="."/>
<key width="1.5" key0="backspace" key3="delete"/> <key width="1.5" role="action" key0="backspace" key3="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -33,7 +33,7 @@
<key key0="č" ne="`" sw="|"/> <key key0="č" ne="`" sw="|"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" nw="loc superscript" ne="loc capslock" sw="loc subscript"/> <key width="1.5" role="action" key0="shift" nw="loc superscript" ne="loc capslock" sw="loc subscript"/>
<key key0="z" nw="loc undo" ne="ž"/> <key key0="z" nw="loc undo" ne="ž"/>
<key key0="x" nw="loc cut"/> <key key0="x" nw="loc cut"/>
<key key0="c" nw="loc copy" ne="ć"/> <key key0="c" nw="loc copy" ne="ć"/>
@@ -41,6 +41,6 @@
<key key0="b" nw="!" ne="\?" sw="/"/> <key key0="b" nw="!" ne="\?" sw="/"/>
<key key0="n" ne=";" sw=","/> <key key0="n" ne=";" sw=","/>
<key key0="m" ne=":" sw="."/> <key key0="m" ne=":" sw="."/>
<key width="1.5" key0="backspace" ne="delete"/> <key width="1.5" role="action" key0="backspace" ne="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -28,7 +28,7 @@
<key key0="â" key3="\@"/> <key key0="â" key3="\@"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x"/> <key key0="x"/>
<key key0="j" key2="&lt;" key3="." key4="c"/> <key key0="j" key2="&lt;" key3="." key4="c"/>
@@ -38,6 +38,6 @@
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key key0="c" key4="ç"/> <key key0="c" key4="ç"/>
<key key0="š" key4="ş"/> <key key0="š" key4="ş"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -28,7 +28,7 @@
<key key0="l" key2="|" key3="\\"/> <key key0="l" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key1="ç" key2="&lt;" key3="."/> <key key0="c" key1="ç" key2="&lt;" key3="."/>
@@ -36,6 +36,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -46,7 +46,7 @@ doc/Possible-key-values.md for the keys that have a special meaning.
<key c="l" ne="|" sw="\\"/> <key c="l" ne="|" sw="\\"/>
</row> </row>
<row> <row>
<key width="1.5" c="shift" ne="loc capslock"/> <key width="1.5" role="action" c="shift" ne="loc capslock"/>
<key c="z"/> <key c="z"/>
<key c="x" ne="loc †"/> <key c="x" ne="loc †"/>
<key c="c" ne="&lt;" sw="."/> <key c="c" ne="&lt;" sw="."/>
@@ -54,6 +54,6 @@ doc/Possible-key-values.md for the keys that have a special meaning.
<key c="b" ne="\?" sw="/"/> <key c="b" ne="\?" sw="/"/>
<key c="n" ne=":" sw=";"/> <key c="n" ne=":" sw=";"/>
<key c="m" ne="&quot;" sw="'"/> <key c="m" ne="&quot;" sw="'"/>
<key width="1.5" c="backspace" ne="delete"/> <key width="1.5" role="action" c="backspace" ne="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="ʻ"/> <key key0="ʻ"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="c" key2="&lt;" key3="."/> <key key0="c" key2="&lt;" key3="."/>
@@ -34,7 +34,7 @@
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key key0="ʼ"/> <key key0="ʼ"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="l" key2="|" key3="\\"/> <key key0="l" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key1="accent_tilde" key2="loc †"/> <key key0="x" key1="accent_tilde" key2="loc †"/>
<key key0="c" key2="&lt;" key3="."/> <key key0="c" key2="&lt;" key3="."/>
@@ -33,6 +33,6 @@
<key key0="b" key2="\?" key3="/"/> <key key0="b" key2="\?" key3="/"/>
<key key0="n" key2=":" key3=";"/> <key key0="n" key2=":" key3=";"/>
<key key0="m" key2="&quot;" key3="'"/> <key key0="m" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="l" key1="'" key3="\#"/> <key key0="l" key1="'" key3="\#"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key1="&gt;" key2="|" key3="&lt;"/> <key key0="y" key1="&gt;" key2="|" key3="&lt;"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c"/> <key key0="c"/>
@@ -33,6 +33,6 @@
<key key0="b" key1=";" key3=","/> <key key0="b" key1=";" key3=","/>
<key key0="n" key1=":" key3="."/> <key key0="n" key1=":" key3="."/>
<key key0="m" key1="_" /> <key key0="m" key1="_" />
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="&quot;" key2="'" key3="$" key4="!"/> <key key0="l" key1="&quot;" key2="'" key3="$" key4="!"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key2="ý"/> <key key0="y" key2="ý"/>
<key key0="x" key1="loc †" key3="\#"/> <key key0="x" key1="loc †" key3="\#"/>
<key key0="c" key3="&amp;" key4="č"/> <key key0="c" key3="&amp;" key4="č"/>
@@ -32,6 +32,6 @@
<key key0="b" key1="&lt;" key2="&gt;" key3="{" key4="}"/> <key key0="b" key1="&lt;" key2="&gt;" key3="{" key4="}"/>
<key key0="n" key1="\?" key2="." key3="," key4="ň"/> <key key0="n" key1="\?" key2="." key3="," key4="ň"/>
<key key0="m" key1=":" key2="*" key3="-" key4="_"/> <key key0="m" key1=":" key2="*" key3="-" key4="_"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="accent_aigu" key1="accent_trema"/> <key key0="accent_aigu" key1="accent_trema"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key2="ý"/> <key key0="y" key2="ý"/>
<key key0="x" key1="loc †" key3="\#"/> <key key0="x" key1="loc †" key3="\#"/>
<key key0="c" key3="&amp;" key4="č"/> <key key0="c" key3="&amp;" key4="č"/>
@@ -34,6 +34,6 @@
<key key0="n" key1="\?" key2="." key3="," key4="ň"/> <key key0="n" key1="\?" key2="." key3="," key4="ň"/>
<key key0="m" key1=":" key2="*" key3="-" key4="_"/> <key key0="m" key1=":" key2="*" key3="-" key4="_"/>
<key key0="accent_caron" key1="accent_circonflexe"/> <key key0="accent_caron" key1="accent_circonflexe"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key2="ľ" key3="\\" key4="ĺ"/> <key key0="l" key2="ľ" key3="\\" key4="ĺ"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key1="÷" key2="ý"/> <key key0="y" key1="÷" key2="ý"/>
<key key0="x" key1="∙" key3="×" key4="loc †"/> <key key0="x" key1="∙" key3="×" key4="loc †"/>
<key key0="c" key1="\#" key2="γ" key3="&amp;" key4="č"/> <key key0="c" key1="\#" key2="γ" key3="&amp;" key4="č"/>
@@ -32,6 +32,6 @@
<key key0="b" key1=";" key2="♭" key3=":" key4="β"/> <key key0="b" key1=";" key2="♭" key3=":" key4="β"/>
<key key0="n" key1="," key3="." key4="ň"/> <key key0="n" key1="," key3="." key4="ň"/>
<key key0="m" key1="&quot;" key3="\'"/> <key key0="m" key1="&quot;" key3="\'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -28,7 +28,7 @@
<key key0="ä"/> <key key0="ä"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key shift="0.5" key0="y" key1="&gt;" key2="|" key3="&lt;"/> <key shift="0.5" key0="y" key1="&gt;" key2="|" key3="&lt;"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c"/> <key key0="c"/>
@@ -36,6 +36,6 @@
<key key0="b" key1=";" key3=","/> <key key0="b" key1=";" key3=","/>
<key key0="n" key1=":" key3="."/> <key key0="n" key1=":" key3="."/>
<key key0="m" key1="_"/> <key key0="m" key1="_"/>
<key shift="0.5" width="1.5" key0="backspace" key2="delete"/> <key shift="0.5" width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -28,7 +28,7 @@
<key key0="à" key1="ï" key2="ä"/> <key key0="à" key1="ï" key2="ä"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key1="&gt;" key2="|" key3="&lt;"/> <key key0="y" key1="&gt;" key2="|" key3="&lt;"/>
<key key0="x"/> <key key0="x"/>
<key key0="c" key3="ç"/> <key key0="c" key3="ç"/>
@@ -37,6 +37,6 @@
<key key0="n" key1=":" key3="."/> <key key0="n" key1=":" key3="."/>
<key key0="m" key1="_" key3="-"/> <key key0="m" key1="_" key3="-"/>
<key key0="ê" key1="â" key2="î" key3="ô" key4="û"/> <key key0="ê" key1="â" key2="î" key3="ô" key4="û"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -24,7 +24,7 @@
<key key0="l" key1="$" key3="/"/> <key key0="l" key1="$" key3="/"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key3="&lt;" key4="&gt;"/> <key key0="y" key3="&lt;" key4="&gt;"/>
<key key0="x" key1="loc †" key4="\#"/> <key key0="x" key1="loc †" key4="\#"/>
<key key0="c" key4="&amp;"/> <key key0="c" key4="&amp;"/>
@@ -32,7 +32,7 @@
<key key0="b" key1="\?" key3="," key4=";"/> <key key0="b" key1="\?" key3="," key4=";"/>
<key key0="n" key1=":" key3="."/> <key key0="n" key1=":" key3="."/>
<key key0="m" key1="_" key3="-"/> <key key0="m" key1="_" key3="-"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -22,10 +22,10 @@
<key key0="j" key1="{" key2="}" key3="|" key4="+"/> <key key0="j" key1="{" key2="}" key3="|" key4="+"/>
<key key0="k" key1="[" key2="]" key3="'" key4="&quot;"/> <key key0="k" key1="[" key2="]" key3="'" key4="&quot;"/>
<key key0="l" key1="(" key2=")" key3="ĺ" key4="ľ"/> <key key0="l" key1="(" key2=")" key3="ĺ" key4="ľ"/>
<key key0="backspace" key3="delete"/> <key role="action" key0="backspace" key3="delete"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key1="$" key3="ý"/> <key key0="y" key1="$" key3="ý"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c" key4="č"/> <key key0="c" key4="č"/>

View File

@@ -25,7 +25,7 @@
<key key0="ë" key1="¤"/> <key key0="ë" key1="¤"/>
</row> </row>
<row> <row>
<key key0="shift" key2="loc capslock"/> <key role="action" key0="shift" key2="loc capslock"/>
<key key0="y" key1="&gt;" key2="|" key3="&lt;"/> <key key0="y" key1="&gt;" key2="|" key3="&lt;"/>
<key key0="x" key1="loc †"/> <key key0="x" key1="loc †"/>
<key key0="c"/> <key key0="c"/>
@@ -34,6 +34,6 @@
<key key0="n" key1=":" key3="."/> <key key0="n" key1=":" key3="."/>
<key key0="m" key1="_" /> <key key0="m" key1="_" />
<key key0="ç" key1="×" key3="÷"/> <key key0="ç" key1="×" key3="÷"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="i" key2="|" key3="\\"/> <key key0="i" key2="|" key3="\\"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="z"/> <key key0="z"/>
<key key0="x" key2="loc †"/> <key key0="x" key2="loc †"/>
<key key0="m"/> <key key0="m"/>
@@ -33,6 +33,6 @@
<key key0="v" key2="&gt;" key3=","/> <key key0="v" key2="&gt;" key3=","/>
<key key0="k" key2="\?" key3="/"/> <key key0="k" key2="\?" key3="/"/>
<key key0="l" key2="&quot;" key3="'"/> <key key0="l" key2="&quot;" key3="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -47,6 +47,6 @@
<key key0="𐑒" key2="\?" key3="/"/> <key key0="𐑒" key2="\?" key3="/"/>
<key key0="𐑢" key2=":" key3=";"/> <key key0="𐑢" key2=":" key3=";"/>
<key key0="𐑛" key2="&quot;" key3="'"/> <key key0="𐑛" key2="&quot;" key3="'"/>
<key key0="backspace" key2="delete"/> <key role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>

View File

@@ -25,7 +25,7 @@
<key key0="இ" key3="ஈ"/> <key key0="இ" key3="ஈ"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ண"/> <key key0="ண"/>
<key key0="ஒ" key3="ஓ"/> <key key0="ஒ" key3="ஓ"/>
<key key0="உ" key2="&lt;" key3="ஊ" key4="."/> <key key0="உ" key2="&lt;" key3="ஊ" key4="."/>
@@ -33,7 +33,7 @@
<key width="1.05" key0="ெ" key2="\?" key3="ே" key4="/"/> <key width="1.05" key0="ெ" key2="\?" key3="ே" key4="/"/>
<key width="1.3" key0="ஔ" key2=":" key3="ௌ" key4=";"/> <key width="1.3" key0="ஔ" key2=":" key3="ௌ" key4=";"/>
<key key0="அ" key2="&quot;" key3="ஆ" key4="'"/> <key key0="அ" key2="&quot;" key3="ஆ" key4="'"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
<modmap> <modmap>

View File

@@ -24,7 +24,7 @@
<key width="1.15" key0="ل" key1="َ" key3="." key5="ْ" key7="ُ" key8="ِ"/> <key width="1.15" key0="ل" key1="َ" key3="." key5="ْ" key7="ُ" key8="ِ"/>
</row> </row>
<row> <row>
<key width="1.5" key0="shift" key2="loc capslock"/> <key width="1.5" role="action" key0="shift" key2="loc capslock"/>
<key key0="ز" key2="ذ"/> <key key0="ز" key2="ذ"/>
<key key0="ش" key2="ژ"/> <key key0="ش" key2="ژ"/>
<key key0="چ" key2="ث" key3="۔" key4="چھ"/> <key key0="چ" key2="ث" key3="۔" key4="چھ"/>
@@ -32,6 +32,6 @@
<key key0="ب" key2="بھ" key3="/" key4="\\"/> <key key0="ب" key2="بھ" key3="/" key4="\\"/>
<key key0="ن" key2="ں" key3=";" key4=":"/> <key key0="ن" key2="ں" key3=";" key4=":"/>
<key key0="م" key5="ّ" key6="ً" key7="ٌ" key8="ٍ"/> <key key0="م" key5="ّ" key6="ً" key7="ٌ" key8="ٍ"/>
<key width="1.5" key0="backspace" key2="delete"/> <key width="1.5" role="action" key0="backspace" key2="delete"/>
</row> </row>
</keyboard> </keyboard>