move bind vs bindr after push-to-talk, remove verbose explanation
This commit is contained in:
@@ -95,11 +95,6 @@ Run `hyprvoice configure` anytime for advanced settings.
|
|||||||
|
|
||||||
## Hyprland Keybindings
|
## Hyprland Keybindings
|
||||||
|
|
||||||
Hyprland has two bind types that matter for voice input:
|
|
||||||
|
|
||||||
- **`bind`** — fires when the key is **pressed down**
|
|
||||||
- **`bindr`** — fires when the key is **released**
|
|
||||||
|
|
||||||
### Simple toggle
|
### Simple toggle
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -121,9 +116,14 @@ bindr = SUPER, R, exec, hyprvoice toggle # key up → stop and transcribe
|
|||||||
|
|
||||||
This gives a walkie-talkie feel: hold the key while speaking, release when done. The daemon receives two `toggle` commands — the first starts recording, the second stops it and triggers transcription.
|
This gives a walkie-talkie feel: hold the key while speaking, release when done. The daemon receives two `toggle` commands — the first starts recording, the second stops it and triggers transcription.
|
||||||
|
|
||||||
### Why `bindr` matters
|
### `bind` vs `bindr`
|
||||||
|
|
||||||
When you press SUPER+R with a regular `bind`, the SUPER modifier is still physically held when the command fires. If hyprvoice tries to inject text while SUPER is down, the compositor interprets the injected keystrokes as SUPER+key combos — leading to stuck modifiers, missed characters, or unexpected window management actions. `bindr` waits until you lift the key, ensuring a clean keyboard state for injection.
|
| Keyword | Fires on |
|
||||||
|
|---------|----------|
|
||||||
|
| `bind` | Key **press** (down) |
|
||||||
|
| `bindr` | Key **release** (up) |
|
||||||
|
|
||||||
|
With `bindr`, modifier keys (SUPER, CTRL, etc.) are fully released before the command executes. This can prevent modifiers from interfering with text injection.
|
||||||
|
|
||||||
## Commands
|
## Commands
|
||||||
|
|
||||||
|
|||||||
+6
-12
@@ -41,15 +41,6 @@ Configuration is stored in `~/.config/hyprvoice/config.toml` and changes are app
|
|||||||
|
|
||||||
Hyprvoice is triggered via Hyprland keybindings. The bind type you choose affects reliability and workflow.
|
Hyprvoice is triggered via Hyprland keybindings. The bind type you choose affects reliability and workflow.
|
||||||
|
|
||||||
### `bind` vs `bindr`
|
|
||||||
|
|
||||||
| Keyword | Fires on | Use for |
|
|
||||||
|---------|----------|---------|
|
|
||||||
| `bind` | Key **press** (down) | Simple toggle, starting recording |
|
|
||||||
| `bindr` | Key **release** (up) | Stopping recording / injecting text |
|
|
||||||
|
|
||||||
With `bindr`, modifier keys (SUPER, CTRL, etc.) are fully released before the command executes. This can prevent modifiers from interfering with text injection.
|
|
||||||
|
|
||||||
### Simple toggle
|
### Simple toggle
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -71,11 +62,14 @@ bindr = SUPER, R, exec, hyprvoice toggle # key up → stop and transcribe
|
|||||||
|
|
||||||
Hold the key while speaking, release when done. Both lines send `toggle` to the daemon — the first starts the pipeline, the second stops it. Because the stop fires on release, modifiers are clean for injection.
|
Hold the key while speaking, release when done. Both lines send `toggle` to the daemon — the first starts the pipeline, the second stops it. Because the stop fires on release, modifiers are clean for injection.
|
||||||
|
|
||||||
### Why modifier release matters
|
### `bind` vs `bindr`
|
||||||
|
|
||||||
When SUPER+R is pressed with a regular `bind`, the SUPER key is still physically held when `hyprvoice toggle` fires. If hyprvoice then injects text (via wtype or ydotool), the compositor sees SUPER+<character> for every keystroke — triggering window management shortcuts instead of typing. Using `bindr` for the stop/inject side ensures modifiers are released first.
|
| Keyword | Fires on |
|
||||||
|
|---------|----------|
|
||||||
|
| `bind` | Key **press** (down) |
|
||||||
|
| `bindr` | Key **release** (up) |
|
||||||
|
|
||||||
This is especially relevant if you use the `wtype` or `ydotool` injection backends. The `clipboard` backend is less affected since it uses paste rather than simulated keystrokes, but `bindr` is still recommended for consistency.
|
With `bindr`, modifier keys (SUPER, CTRL, etc.) are fully released before the command executes. This can prevent modifiers from interfering with text injection.
|
||||||
|
|
||||||
## Unified Provider System
|
## Unified Provider System
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user