Improve bone layout (#748)

* shell.nix: fix gradle error

error was:
> \> Task :compileDebugJavaWithJavac FAILED
> error: Source option 7 is no longer supported. Use 8 or later.
> error: Target option 7 is no longer supported. Use 8 or later.

fixed by overriding the jdk version for gradle to openjdk17

* layouts/latn_bone: fix layout

- fix alignment with tabs mess
- make like actual bone layout, instead of trying to fit it into a 10 key
  wide keyboard
  - fixes missing üäö
  - fix missing $
  - moves q and ß where they belong
  - remove all of the diacritic keys (they can be added through the
    settings as extra keys)
  - kept the number row extra keys integration into top row
  - kept the idea of compressing , and . into the swipe actions of the
    bottom row
  - kept the number keys as key4 in the layer4 positions (instead of
    moving them to a number row, which i also considered)
This commit is contained in:
Zitrone 2024-09-19 21:57:26 +00:00 committed by GitHub
parent 7454389f48
commit b21bf3fffd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 63 additions and 36 deletions

View File

@ -64,7 +64,7 @@ Layout includes some ASCII punctuation but not all, missing: (, ), <, >, [, ], {
# latn_bepo_fr # latn_bepo_fr
0 warnings 0 warnings
# latn_bone # latn_bone
Layout includes some ASCII punctuation but not all, missing: $ Layout doesn't define some important keys, missing: loc esc, loc tab
Layout redefines the bottom row but some important keys are missing, missing: cursor_left, cursor_right, loc compose, loc end, loc home, loc page_down, loc page_up, loc switch_clipboard, loc switch_greekmath, loc voice_typing, switch_backward Layout redefines the bottom row but some important keys are missing, missing: cursor_left, cursor_right, loc compose, loc end, loc home, loc page_down, loc page_up, loc switch_clipboard, loc switch_greekmath, loc voice_typing, switch_backward
2 warnings 2 warnings
# latn_colemak # latn_colemak

View File

@ -15,12 +15,13 @@ let
ANDROID_SDK_ROOT = "${android.androidsdk}/libexec/android-sdk"; ANDROID_SDK_ROOT = "${android.androidsdk}/libexec/android-sdk";
gradle = pkgs.gradle.override { java = jdk; };
# Without this option, aapt2 fails to run with a permissions error. # Without this option, aapt2 fails to run with a permissions error.
gradle_wrapped = pkgs.runCommandLocal "gradle-wrapped" { gradle_wrapped = pkgs.runCommandLocal "gradle-wrapped" {
nativeBuildInputs = with pkgs; [ makeBinaryWrapper ]; nativeBuildInputs = with pkgs; [ makeBinaryWrapper ];
} '' } ''
mkdir -p $out/bin mkdir -p $out/bin
ln -s ${pkgs.gradle}/bin/gradle $out/bin/gradle ln -s ${gradle}/bin/gradle $out/bin/gradle
wrapProgram $out/bin/gradle \ wrapProgram $out/bin/gradle \
--add-flags "-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_SDK_ROOT}/build-tools/${build_tools_version}/aapt2" --add-flags "-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_SDK_ROOT}/build-tools/${build_tools_version}/aapt2"
''; '';

View File

@ -1,46 +1,72 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!-- https://neo-layout.org/Layouts/bone/ --> <!-- https://neo-layout.org/Layouts/bone/ -->
<keyboard name="Bone" bottom_row="false" script="latin"> <keyboard name="Bone" bottom_row="false" script="latin">
<!-- first row + characters from number row:
jduaxphlmwß
…_[]^!<>=&ſ
°§ℓ»«$€„“”—
›‹¢¥‚‘’
-->
<row> <row>
<key key0="j" key2="loc esc" key4="…"/> <!--left side-->
<key key0="d" key2="°" key4="_"/> <key key0="j" key2="°" key4="…"/>
<key key0="u" key2="§" key4="["/> <key key0="d" key2="§" key4="_"/>
<key key0="a" key4="]"/> <key key0="u" key2="" key4="["/>
<key key0="x" key4="^"/> <key key0="a" key2="»" key4="]" key1=""/>
<key key0="p" key3="!" key4="7"/> <key key0="x" key2="«" key4="^" key1=""/>
<key key0="h" key3="&lt;" key4="8"/> <!--middle-->
<key key0="l" key1="" key3="&gt;" key4="9"/> <key key0="p" key7="¢" key8="!"/>
<key key0="m" key1="≠" key3="="/> <!--right side-->
<key key0="w" key3="&amp;"/> <key key0="h" key1="€" key3="&lt;" key4="7" key2="¥"/>
<key key0="l" key1="„" key3="&gt;" key4="8" key2=""/>
<key key0="m" key1="“" key3="=" key4="9" key2=""/>
<key key0="w" key1="”" key3="&amp;" key2=""/>
<key key0="ß" key1="—" key3="ſ"/>
</row> </row>
<!--second row:
ctieobnrsgq
\/{}*?()-:@
-->
<row> <row>
<key key0="c" key2="loc tab" key4="\\"/> <!--left side-->
<key key0="t" key1="accent_circonflexe" key2="accent_caron" key4="/"/> <key key0="c" key4="\\"/>
<key key0="i" key1="accent_aigu" key2="accent_grave" key4="{"/> <key key0="t" key4="/"/>
<key key0="e" key1="accent_cedille" key2="accent_ogonek" key4="}"/> <key key0="i" key4="{"/>
<key key0="o" key1="accent_ring" key2="accent_dot_above" key4="*"/> <key key0="e" key4="}"/>
<key key0="b" key2="accent_macron" key3="\?" key4="4"/> <key key0="o" key4="*"/>
<key key0="n" key2="accent_tilde" key3="(" key4="5"/> <!--middle-->
<key key0="r" key2="accent_trema" key3=")" key4="6"/> <key key0="b" key8="\?"/>
<key key0="s" key2="accent_slash" key3="-"/> <!--right side-->
<key key0="g" key1="\@" key3=":"/> <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="@"/>
</row> </row>
<!--third row -> compressed to also fit shift and backspace:
fvüäöyz,.k
#$|~`+%"';
-->
<row> <row>
<key width="1.5" key0="shift" key4="\#" key2="loc capslock"/> <!--left side-->
<key key0="f" key4="|"/> <key width="1.5" key0="shift" key4="\#"/>
<key key0="v" key4="~"/> <key key0="f" key4="$"/>
<key key0="ß" key4="`"/> <key key0="v" key4="|"/>
<key key0="y" key3="%" key4="1"/> <key key0="ü" key4="~"/>
<key key0="z" key1="&quot;" key3="+" key4="2"/> <key key0="ä" key4="`"/>
<key key0="q" key1="&apos;" key3="," key4="3"/> <!--right side-->
<key key0="k" key3="."/> <key key0="ö" key3="+"/>
<key width="1.5" key0="backspace" key1="delete" key3=";"/> <key key0="y" key3="%" key4="1"/>
<key key0="z" key3="," key1="&quot;" key4="2"/>
<key key0="k" key3="." key1="&apos;" key4="3"/>
<key width="1.5" key0="backspace" key3=";" key1="delete"/>
</row> </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" 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" key0="fn" key1="loc alt" key2="loc change_method" key3="switch_emoji" key4="config"/>
<key width="4.0" key0="space" key7="switch_forward" key8="0"/> <key width="5.0" key0="space" key7="switch_forward" key8="0"/>
<key width="1.2" key7="up" key6="right" key5="left" key8="down"/> <key width="1.2" key5="left" key6="right" key7="up" key8="down"/>
<key width="1.8" key0="enter" key3="action"/> <key width="1.8" key0="enter" key3="action"/>
</row> </row>
</keyboard> </keyboard>