Most accessibility tooling is fixed-function: a vendor decided which adaptations exist and how they behave. Rebind treats adaptation as a script, so the threshold, the timing, and the feedback are all yours to tune, per person and per task.
Use case
Input that adapts to the person.
One-switch workflows, tremor filtering, sticky keys with audio feedback, and input that adapts to the person using it. Built with Rebind's Luau scripting.
use cases / accessibility
Long press and short press as separate actions
One physical switch can carry two meanings. A tap and a hold become two different keys.
-- rebind: min_sdk=3.2.2
-- rebind: name=Tap-Hold Splitter
local cfg = UI.Schema({
holdMs = UI.Slider(400, { min = 150, max = 1500, label = "Hold threshold (ms)" }),
})
function OnUp(key, duration)
if key == "F24" then
if duration >= cfg.holdMs then
HID.Combo("LCtrl+Enter")
else
HID.Combo("Enter")
end
return false
end
return true
end
The threshold is a slider in the auto-generated settings panel, so the person using it adjusts it without touching code.
What else fits here
Tremor filtering with a configurable smoothing threshold.
Dwell click: the cursor holds still, the click fires.
A switch-access scanner driven from a single button.
Sticky keys with a custom timeout and an audio confirmation per modifier.
An input lock that enforces rest breaks on a schedule you choose.
Generate any of these in RebindGPT, or read about our accessibility work.