hypr: switch rutherford dictation from AltGr to bare Pause

AltGr is itself a modifier, and holding it broke dictation twice:
Hyprland drops long-hold release events for modifier keys, so the
daemon kept recording after the key went up, and the first phrase
injected while the modifier was held never reached the target TUI.
Bare Pause (Fn+F12 on the TypeMatrix) holds no modifier, so neither
applies. The cheatsheet drops the AltGr mention again.
This commit is contained in:
Jeena 2026-09-18 06:50:16 +09:00
parent 6723c9a59e
commit 85c22a3938
2 changed files with 11 additions and 12 deletions

View file

@ -13,14 +13,13 @@ hl.monitor({
-- starts, release stops; the scripts guard the daemon state so stray toggles
-- (key repeat, missed release) can't invert it (see keybindings.lua).
-- Kept per-host so machines that use AltGr for characters aren't affected.
-- Bare AltGr (right Alt on the TypeMatrix) is the hold-to-talk dictation key
-- here. Alt_R is the keysym right Alt produces under us,dvorak (pc's RALT);
-- the se group remaps it to ISO_Level3_Shift for AltGr combos and is left
-- alone on purpose. Press = start (modmask 0: Hyprland excludes the pressed
-- key's own modifier), release = stop (modmask ALT: Alt_R is itself Mod1 and
-- is still active while its release event is processed, so the release bind
-- must carry ALT to match). The scripts guard the daemon state so stray
-- toggles (key repeat, missed release) can't invert it (see keybindings.lua).
-- Kept per-host so machines that use AltGr aren't affected.
hl.bind("Alt_R", hl.dsp.exec_cmd("~/.config/hypr/scripts/whisrs-hold-start.sh"))
hl.bind("ALT + Alt_R", hl.dsp.exec_cmd("~/.config/hypr/scripts/whisrs-hold-stop.sh"), { release = true })
-- Bare Pause (Fn+F12 on the TypeMatrix) is the hold-to-talk dictation key
-- here. It was on bare AltGr before, but a held AltGr is itself a modifier:
-- Hyprland drops its long-hold release events, and the modifier state made
-- the first injected phrase disappear from the target TUI. Pause is not a
-- modifier, so nothing is held while whisrs types. Press starts, release
-- stops; the scripts guard the daemon state so stray toggles (key repeat,
-- missed release) can't invert it (see keybindings.lua). Kept per-host so
-- machines that use Pause aren't affected.
hl.bind("Pause", hl.dsp.exec_cmd("~/.config/hypr/scripts/whisrs-hold-start.sh"))
hl.bind("Pause", hl.dsp.exec_cmd("~/.config/hypr/scripts/whisrs-hold-stop.sh"), { release = true })

View file

@ -2,7 +2,7 @@
│ SUPER + T Open terminal │ │ SUPER + W Close focused window │
│ SUPER + B Open browser │ │ SUPER + M Exit Hyprland │
│ SUPER + E Open file manager │ │ SUPER + V Toggle floating │
│ SUPER+SHIFT+F23 / AltGr / Pause Voice dictation │
│ SUPER+SHIFT+F23 / Pause Voice dictation
└────────────────────────────────────────────────────┘ │ SUPER + P Pseudo split (dwindle) │
┌───────────────── Focus Movement ───────────────────┐ │ SUPER + J Toggle split (dwindle) │
│ SUPER + ←/→/↑/↓ Move focus │ │ SUPER + F Toggle fullscreen │