Control Vim and Vim-like editors with voice commands using speech recognition.
VimSpeak is a voice control tool for Vim and Vim-like editors that converts spoken commands into Vim keystrokes. It allows users to perform editing tasks hands-free by using speech recognition to trigger complex Vim commands, such as text selection, substitution, and navigation. The tool runs as a background console app, sending keystrokes to the active editor window.
Vim users, developers using Vim-like editors (e.g., VsVim in Visual Studio, Sublime Text Vintage Mode), and those interested in accessibility or hands-free coding tools.
It provides a unique, voice-driven interface for Vim's powerful editing commands, enabling faster, hands-free editing without sacrificing Vim's efficiency. As an open-source tool, it offers a customizable, declarative grammar for extending voice command support.
Speak to your editor.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Converts spoken commands like 'select three words' into Vim keystrokes (e.g., v3w), enabling complex editing tasks without a keyboard, as demonstrated in the README's examples.
Works with any editor expecting Vim keystrokes, including Vim, Visual Studio with VsVim, and Sublime Text in Vintage Mode, as tested per the README.
Uses a clear, declarative grammar defined in unit tests and source code, making it easy to understand and extend custom voice commands, as highlighted in the Key Features.
Allows dictation of text while in insert mode, providing flexibility for hands-free text input, as noted in the Key Features section.
Relies on .NET's System.Speech and SendKeys, primarily tested on Windows with only potential Mono support, limiting usability on Linux or macOS without significant tweaks.
Learning requires examining unit tests and source code, as the README advises 'use the source, Luke,' which isn't beginner-friendly and lacks step-by-step guides.
Speech-to-keystroke conversion may fail with complex commands or accents, leading to incorrect edits, and the README admits it's a 'toy' project with limited testing.
Requires .NET installation and speech recognition setup, with potential issues from SendKeys compatibility, adding complexity compared to keyboard-only Vim usage.