From c85b8e25d94582bbc815b1cf63214ce8b129d3db Mon Sep 17 00:00:00 2001 From: Samir Benmendil Date: Mon, 22 Sep 2025 13:54:32 +0100 Subject: [PATCH 1/1] heliboard: add android keyboard config --- heliboard/README.md | 2 ++ heliboard/dvorak.json | 45 ++++++++++++++++++++++++++++++ heliboard/functional-keys.json | 24 ++++++++++++++++ heliboard/numpad.json | 50 ++++++++++++++++++++++++++++++++++ 4 files changed, 121 insertions(+) create mode 100644 heliboard/README.md create mode 100644 heliboard/dvorak.json create mode 100644 heliboard/functional-keys.json create mode 100644 heliboard/numpad.json diff --git a/heliboard/README.md b/heliboard/README.md new file mode 100644 index 0000000..874be19 --- /dev/null +++ b/heliboard/README.md @@ -0,0 +1,2 @@ +The easiest way to configure it seems to be to use the kdeconnect clipboard to +transfer the json files to the device, "select all" then "paste" to replace. diff --git a/heliboard/dvorak.json b/heliboard/dvorak.json new file mode 100644 index 0000000..783275a --- /dev/null +++ b/heliboard/dvorak.json @@ -0,0 +1,45 @@ +[ + [ + { "$": "shift_state_selector", + "default": { "label": "'", "popup": { "relevant": [ + { "label": "@" }] } }, + "shifted": { "label": "\"", "popup": { "relevant": [ + { "label": "@" }] } } + }, + { "label": "p", "type": "normal", "popup": { "main": { "label": "#" } } }, + { "label": "y", "type": "normal", "popup": { "main": { "label": "&" } } }, + { "label": "f", "type": "normal", "popup": { "main": { "label": "*" } } }, + { "label": "g", "type": "normal", "popup": { "main": { "label": "-" } } }, + { "label": "c", "type": "normal", "popup": { "main": { "label": "+" } } }, + { "label": "r", "type": "normal", "popup": { "main": { "label": "(" }, + "relevant": [ { "label": "[" }, { "label": "{" } ] } }, + { "label": "l", "type": "normal", "popup": { "main": { "label": ")" }, + "relevant": [ { "label": "]" }, { "label": "}" } ] } }, + { "type": "placeholder" }, + { "label": "delete", "type": "normal" } + ], + [ + { "label": "a", "type": "normal", "popup": { "main": { "label": "1" } } }, + { "label": "o", "type": "normal", "popup": { "main": { "label": "2" } } }, + { "label": "e", "type": "normal", "popup": { "main": { "label": "3" } } }, + { "label": "u", "type": "normal", "popup": { "main": { "label": "4" } } }, + { "label": "i", "type": "normal", "popup": { "main": { "label": "5" } } }, + { "label": "d", "type": "normal", "popup": { "main": { "label": "6" } } }, + { "label": "h", "type": "normal", "popup": { "main": { "label": "7" } } }, + { "label": "t", "type": "normal", "popup": { "main": { "label": "8" } } }, + { "label": "n", "type": "normal", "popup": { "main": { "label": "9" } } }, + { "label": "s", "type": "normal", "popup": { "main": { "label": "0" } } } + ], + [ + { "label": "q", "type": "normal", "popup": { "main": { "label": "_" } } }, + { "label": "j", "type": "normal", "popup": { "main": { "label": "$$$" }, + "relevant":[{"label":"$$$1"},{"label":"$$$2"},{"label":"$$$3"},{"label":"$$$4"},{"label":"$$$4"}]}}, + { "label": "k", "type": "normal", "popup": { "main": { "label": "\"" } } }, + { "label": "x", "type": "normal", "popup": { "main": { "label": ":" } } }, + { "label": "b", "type": "normal", "popup": { "main": { "label": ";" } } }, + { "label": "m", "type": "normal", "popup": { "main": { "label": "/" } } }, + { "label": "w", "type": "normal", "popup": { "main": { "label": "^" } } }, + { "label": "v", "type": "normal", "popup": { "main": { "label": "=" } } }, + { "label": "z", "type": "normal", "popup": { "main": { "label": "%" } } } + ] +] diff --git a/heliboard/functional-keys.json b/heliboard/functional-keys.json new file mode 100644 index 0000000..ea37b5b --- /dev/null +++ b/heliboard/functional-keys.json @@ -0,0 +1,24 @@ +[ + [ + { "label": "shift" }, + { "type": "placeholder" } + ], + [ + { "label": "numpad", "width": 0.15 }, + { "$": "variation_selector", + "default": { "label": "comma" }, + "email": { "label": "@", "groupId": 1, "type": "function" }, + "uri": { "label": "/", "groupId": 1, "type": "function" } + }, + { "$": "keyboard_state_selector", "languageKeyEnabled": { + "$": "keyboard_state_selector", "alphabet": { + "label": "language_switch" }}}, + { "$": "keyboard_state_selector", "emojiKeyEnabled": { + "$": "keyboard_state_selector", "alphabet": { "label": "emoji" }}}, + { "$": "keyboard_state_selector", "symbols": { "label": "numpad" }}, + { "label": "space" }, + { "label": "period", "labelFlags": 1073741824 }, + { "label": "action", "width": 0.15 } + ] +] + diff --git a/heliboard/numpad.json b/heliboard/numpad.json new file mode 100644 index 0000000..8055794 --- /dev/null +++ b/heliboard/numpad.json @@ -0,0 +1,50 @@ +[ + [ + { "label": "+", "type": "function", "popup": { + "relevant": [ + { "label": "(" }, + { "label": "<" }, + { "label": "±" } + ] + }, "labelFlags": 512 }, + { "label": "1", "type": "numeric" }, + { "label": "2", "type": "numeric" }, + { "label": "3", "type": "numeric" }, + { "label": "%", "type": "function", "popup": { "main": { "label": "$$$"} }, "labelFlags": 512 } + ], + [ + { "label": "-", "type": "function", "popup": { + "relevant": [ + { "label": ")" }, + { "label": ">" }, + { "label": "~" } + ] + }, "labelFlags": 512 }, + { "label": "4", "type": "numeric" }, + { "label": "5", "type": "numeric" }, + { "label": "6", "type": "numeric" }, + { "label": "space", "type": "function" } + ], + [ + { "label": "*", "type": "function", "popup": { + "relevant": [ + { "label": "/" }, + { "label": "×" }, + { "label": "÷" } + ] + }, "labelFlags": 512 }, + { "label": "7", "type": "numeric" }, + { "label": "8", "type": "numeric" }, + { "label": "9", "type": "numeric" }, + { "label": "delete" } + ], + [ + { "label": "alpha", "width": 0.15 }, + { "label": "comma", "width": 0.1 }, + { "label": "symbol", "width": 0.12 }, + { "label": "0", "type": "numeric", "width": -1 }, + { "label": "=", "type": "function", "width": 0.12, "popup": { "relevant": [ { "label": "≠"}, { "label": "≈"} ] } }, + { "label": "period", "width": 0.1 }, + { "label": "action", "width": 0.15 } + ] +] -- 2.50.1