refactor: modularize text injection with a factory and dedicated backend implementations, including a new Wayland clipboard option.
This commit is contained in:
@@ -15,7 +15,7 @@ Built with **.NET 10** and compiled to **Native AOT**, Toak runs as a lightning-
|
||||
- **Multi-Provider Whisper**: Easily swap between Groq and Fireworks AI for state-of-the-art STT APIs.
|
||||
- **Reasoning Capabilities**: Optional reasoning effort settings for complex text processing.
|
||||
- **Modular Skills**: Actionable "System" commands for translation, terminal execution, professional rewriting, and summarization.
|
||||
- **Multiple Backends**: Types directly into your active window (`wtype`, `xdotool`, or `ydotool`), copies to clipboard, or pipes to stdout.
|
||||
- **Multiple Backends**: Types directly into your active window (`wtype`, `xdotool`, or `ydotool`), uses `wl-clipboard` (`wl-copy`/`wl-paste`) for Wayland paste injection, copies to clipboard, or pipes to stdout.
|
||||
- **High-Quality Audio**: Native support for **PipeWire** (`pw-record`) and **FFmpeg** for universal compatibility.
|
||||
- **Beautiful CLI**: Interactive onboarding and configuration powered by `Spectre.Console`.
|
||||
|
||||
@@ -25,7 +25,7 @@ Built with **.NET 10** and compiled to **Native AOT**, Toak runs as a lightning-
|
||||
|
||||
- **.NET 10 SDK** (for building from source)
|
||||
- **Audio Capture**: `pipewire` / `pw-record` (recommended) or `ffmpeg`
|
||||
- **Typing Backend**: `wtype` (Wayland), `xdotool` (X11), or `ydotool` (Virtual Input)
|
||||
- **Typing Backend**: `wtype` (Wayland), `wl-clipboard` (`wl-copy` + Ctrl+V via `wtype`, Wayland), `xdotool` (X11), or `ydotool` (Virtual Input)
|
||||
- **Clipboard**: `wl-copy` (Wayland) or `xclip` (X11)
|
||||
- **API Keys**: API Keys for your chosen providers (Groq, Together AI, Cerebras, or Fireworks).
|
||||
|
||||
@@ -109,7 +109,7 @@ Key settings in `ToakConfig.cs` (managed via `toak onboard` or `toak config`):
|
||||
- `WhisperProvider`: Choice of `groq` (default) or `fireworks`.
|
||||
- `WhisperModel`: The STT model (default: `whisper-large-v3-turbo`).
|
||||
- `WhisperLanguage`: Set spoken language (e.g., `en`, `es`, `fr`).
|
||||
- `TypingBackend`: Choose between `wtype`, `xdotool`, or `ydotool`.
|
||||
- `TypingBackend`: Choose between `wtype`, `wl-clipboard`, `xdotool`, or `ydotool`.
|
||||
- `AudioBackend`: Choose between `pw-record` (PipeWire) or `ffmpeg`.
|
||||
- `MinRecordingDuration`: Set the minimum recording duration in ms (default: `500`).
|
||||
- `ModulePunctuation`: Toggle automatic grammar and punctuation fixing.
|
||||
|
||||
Reference in New Issue
Block a user