Skip to content

Add smart auto-submit feature#229

Merged
peteonrails merged 1 commit intopeteonrails:mainfrom
siebertm:feature-auto-submit
Mar 11, 2026
Merged

Add smart auto-submit feature#229
peteonrails merged 1 commit intopeteonrails:mainfrom
siebertm:feature-auto-submit

Conversation

@siebertm
Copy link
Contributor

Description

Say "submit" at the end of dictation to strip the word and press Enter, like auto_submit but triggered by voice rather than permanently on.

  • TextProcessor::detect_submit() detects "submit" (case-insensitive, handles trailing punctuation from spoken_punctuation) at end of text
  • config: text.smart_auto_submit (default false), VOXTYPE_SMART_AUTO_SUBMIT env var
  • CLI: --smart-auto-submit / --no-smart-auto-submit on record start/toggle
  • docs: CONFIGURATION.md, USER_MANUAL.md, SMOKE_TESTS.md

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Testing

  • I have tested these changes locally
  • I have run cargo test and all tests pass
  • I have run cargo clippy with no warnings
  • I have run cargo fmt (it shows formatting errors on unrelated code)

Documentation

  • I have updated documentation as needed
  • No documentation changes are needed

Additional Notes

I am no Rust developer. This was vibe-codeed using Claude Code. I have tested the functionality myself. Feel free to just close the PR or tell me what to change!

@peteonrails
Copy link
Owner

Thanks for this, @siebertm - the feature is well designed and the tests are thorough. We'd like to merge this, but it has conflicts with main now (new per-recording CLI overrides landed recently, and the file-based IPC was refactored into generic read_bool_override(name) / cleanup_bool_override(name) helpers).

Could you rebase onto main? The conflicts are in src/cli.rs, src/config.rs, and src/daemon.rs - all straightforward cases of both sides adding fields to the same structs. The main change to adapt to: your read_smart_auto_submit_override() / cleanup_smart_auto_submit_override() functions should use the new generic read_bool_override("smart_auto_submit") / cleanup_bool_override("smart_auto_submit") instead.

@siebertm siebertm force-pushed the feature-auto-submit branch from 0aa2ae5 to 4b47b26 Compare March 3, 2026 10:54
Say "submit" at the end of dictation to automatically press Enter.
Detects trigger words like "submit", "send", and "enter" at the end
of transcribed text, strips them, and simulates an Enter keypress.

- Config: [text] smart_auto_submit = true
- Env: VOXTYPE_SMART_AUTO_SUBMIT=true
- CLI: --smart-auto-submit / --no-smart-auto-submit (daemon and per-recording)
- Pre-compiled regex for trigger detection
- Strips trailing connector punctuation after trigger removal
@siebertm siebertm force-pushed the feature-auto-submit branch from 4b47b26 to fc3731a Compare March 3, 2026 11:04
@siebertm
Copy link
Contributor Author

siebertm commented Mar 3, 2026

@peteonrails this is done. squashed and signed the commit also to make the process happy :D

@peteonrails peteonrails merged commit 97e87a3 into peteonrails:main Mar 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants