diff options
| author | Zitrone | 2025-02-15 10:28:21 +0000 |
|---|---|---|
| committer | GitHub | 2025-02-15 11:28:21 +0100 |
| commit | a22cc39a45be344a7d8627a857ad79cc5cdfc17a (patch) | |
| tree | 59f45c49f258634c32dec13560dbef36a4c23b55 /srcs/layouts | |
| parent | 7e86ca70cd37fe4f38c4e66850961e47b2688b99 (diff) | |
| download | unexpected-keyboard-a22cc39a45be344a7d8627a857ad79cc5cdfc17a.tar.gz unexpected-keyboard-a22cc39a45be344a7d8627a857ad79cc5cdfc17a.zip | |
layouts/latn_bone.xml: improve (#760)
* layouts/latn_bone.xml: use new syntax and add most missing keys
new syntax: n/s/e/w/ne/nw/se/sw instead of key{1..8}
Some keys were missing keys according to the tests, this adds them in a
similar way to latn_neo2.
Only `switch_forward` didn't fit (because of the 0
at the bottom of the spacebar).
* layouts/latn_bone.xml: even better bone
- use number row to unclutter rest of keyboard
- use modmap for special shift functions of bone layout
- add missing loc characters
- use standard bottom bar
- add diacritics from the 3 dead key keys on bone
- 2 small keys left and right of the number row (don't fit all 6
diacritics, so they leak onto the number keys)
- row 1 is full too, so the dead keys from the left of that row leak
onto the keys there as well
open questions:
- should bone rely on the math layer or use modmap?
- possibility to combine diacritics?
Diffstat (limited to 'srcs/layouts')
| -rw-r--r-- | srcs/layouts/latn_bone.xml | 153 |
1 files changed, 106 insertions, 47 deletions
diff --git a/srcs/layouts/latn_bone.xml b/srcs/layouts/latn_bone.xml index a99f338..16cb35d 100644 --- a/srcs/layouts/latn_bone.xml +++ b/srcs/layouts/latn_bone.xml @@ -1,27 +1,92 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8"?> <!-- https://neo-layout.org/Layouts/bone/ --> -<keyboard name="Bone" bottom_row="false" script="latin"> - <!-- first row + characters from number row: +<keyboard name="Bone" script="latin" embedded_number_row="true"> + <modmap> + <!-- shift on number row: + 1234567890 -> °§ℓ»«$€„“” + --> + <shift a="1" b="°"/> + <shift a="2" b="§"/> + <shift a="3" b="ℓ"/> + <shift a="4" b="»"/> + <shift a="5" b="«"/> + <shift a="6" b="$"/> + <shift a="7" b="€"/> + <shift a="8" b="„"/> + <shift a="9" b="“"/> + <shift a="0" b="”"/> + + <!-- shift on bottom row: + ,. -> –• + --> + <shift a="," b="–"/> + <shift a="." b="•"/> + </modmap> + <!-- number row: + left of numbers: + accent_circonflexe/superscript + accent_caron/subscript + ↻ + accent_dot_above + accent_hook_above/accent_horn + accent_dot_below + numbers: + 1234567890 + °§ℓ»«$€„“” -> shift modmap + ¹²³›‹¢¥‚‘’ + ₁₂₃♀♂⚥ϰ⟨⟩₀v + + right of numbers: + accent_grave + accent_cedille/accent_ogonek + accent_ring + accent_trema + accent_rough_breathing (not implemented yet) + accent_macron/accent_macron_below (not implemented yet) + --> + <row> + <!--left side--> + <key width="0.5" key0="loc accent_circonflexe" nw="superscript"/> + <key key0="1" ne="¹" se="₁" nw="loc accent_caron" n="subscript"/> + <key key0="2" ne="²" se="₂" nw="↻"/> + <key key0="3" ne="³" se="₃" nw="loc accent_dot_above"/> + <key key0="4" ne="›" se="♀" nw="loc accent_hook_above" n="loc accent_horn"/> + <key key0="5" ne="‹" se="♂" nw="loc accent_dot_below"/> + <!--right side--> + <key key0="6" nw="¢" sw="⚥" ne="loc accent_macron"/> + <key key0="7" nw="¥" sw="ϰ"/> + <key key0="8" nw="‚" sw="⟨" ne="loc accent_trema"/> + <key key0="9" nw="‘" sw="⟩" ne="loc accent_ring"/> + <key key0="0" nw="’" sw="₀" ne="loc accent_cedille" n="loc accent_ogonek"/> + <key width="0.5" key0="loc accent_grave"/> + </row> + <!-- first row: jduaxphlmwß …_[]^!<>=&ſ - °§ℓ»«$€„“”— - ›‹¢¥‚‘’ + + from the accent key on this row: + accent_aigu + accent_tilde + accent_double_aigu + accent_slash/accent_bar + accent_smooth_breathing (not implemented yet) + accent_breve --> <row> <!--left side--> - <key key0="j" key2="°" key4="…"/> - <key key0="d" key2="§" key4="_"/> - <key key0="u" key2="ℓ" key4="["/> - <key key0="a" key2="»" key4="]" key1="›"/> - <key key0="x" key2="«" key4="^" key1="‹"/> - <!--middle--> - <key key0="p" key7="¢" key8="!"/> + <key key0="j" se="…" n="loc esc"/> + <key key0="d" se="_"/> + <key key0="u" se="["/> + <key key0="a" se="]"/> + <key key0="x" se="^"/> + <!--center--> + <key key0="p" s="!" ne="loc accent_breve"/> <!--right side--> - <key key0="h" key1="€" key3="<" key4="7" key2="¥"/> - <key key0="l" key1="„" key3=">" key4="8" key2="‚"/> - <key key0="m" key1="“" key3="=" key4="9" key2="‘"/> - <key key0="w" key1="”" key3="&" key2="’"/> - <key key0="ß" key1="—" key3="ſ"/> + <key key0="h" sw="<"/> + <key key0="l" sw=">" ne="loc accent_double_aigu"/> + <key key0="m" sw="=" ne="loc accent_slash" n="loc accent_bar"/> + <key key0="w" sw="&" ne="loc accent_tilde"/> + <key key0="ß" sw="ſ" n="loc accent_aigu"/> </row> <!--second row: ctieobnrsgq @@ -29,19 +94,19 @@ --> <row> <!--left side--> - <key key0="c" key4="\\"/> - <key key0="t" key4="/"/> - <key key0="i" key4="{"/> - <key key0="e" key4="}"/> - <key key0="o" key4="*"/> - <!--middle--> - <key key0="b" key8="\?"/> + <key key0="c" se="\\" ne="loc tab"/> + <key key0="t" se="/"/> + <key key0="i" se="{"/> + <key key0="e" se="}"/> + <key key0="o" se="*"/> + <!--center--> + <key key0="b" s="\?"/> <!--right side--> - <key key0="n" key3="(" key4="4"/> - <key key0="r" key3=")" key4="5"/> - <key key0="s" key3="-" key4="6"/> - <key key0="g" key3=":"/> - <key key0="q" key3="@"/> + <key key0="n" sw="("/> + <key key0="r" sw=")"/> + <key key0="s" sw="-"/> + <key key0="g" sw=":"/> + <key key0="q" sw="\@"/> </row> <!--third row -> compressed to also fit shift and backspace: fvüäöyz,.k @@ -49,24 +114,18 @@ --> <row> <!--left side--> - <key width="1.5" key0="shift" key4="\#"/> - <key key0="f" key4="$"/> - <key key0="v" key4="|"/> - <key key0="ü" key4="~"/> - <key key0="ä" key4="`"/> + <key width="1.5" key0="shift" + se="\#"/> + <key key0="f" se="$"/> + <key key0="v" se="|"/> + <key key0="ü" se="~"/> + <key key0="ä" se="`"/> <!--right side--> - <key key0="ö" key3="+"/> - <key key0="y" key3="%" key4="1"/> - <key key0="z" key3="," key1=""" key4="2"/> - <key key0="k" key3="." key1="'" key4="3"/> - <key width="1.5" key0="backspace" key3=";" key1="delete"/> - </row> - <!--bottom row--> - <row height="0.95"> - <key width="1.8" 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="5.0" key0="space" key7="switch_forward" key8="0"/> - <key width="1.2" key5="left" key6="right" key7="up" key8="down"/> - <key width="1.8" key0="enter" key3="action"/> + <key key0="ö" sw="+"/> + <key key0="y" sw="%"/> + <key key0="z" sw="," nw="""/> + <key key0="k" sw="." nw="'"/> + <key width="1.5" key0="backspace" + sw=";" nw="delete"/> </row> </keyboard> |
