Documentation in English

Made-with: Cursor
This commit is contained in:
2026-03-06 19:47:37 +01:00
parent f093a06f23
commit c90d2627df
4 changed files with 89 additions and 91 deletions

View File

@@ -1,16 +1,16 @@
--- ---
description: README.md fortlaufend pflegen bei relevanten Änderungen description: Keep README.md up to date when making relevant changes
alwaysApply: true alwaysApply: true
--- ---
# README-Wartung # README Maintenance
Bei Änderungen am Projekt die `README.md` im Repo-Root aktualisieren, wenn betroffen: When changing the project, update `README.md` in the repo root if affected:
- **Neue Features** → Abschnitt „Schnellstart oder „Konfiguration“ ergänzen - **New features** → Add to "Quick Start" or "Configuration" section
- **Geänderte Pfade** (Config, Build) → Tabelle/Text anpassen - **Changed paths** (config, build) → Update table/text
- **Neue Abhängigkeiten** → Voraussetzungen aktualisieren - **New dependencies** → Update prerequisites
- **Plattform-Änderungen** → Tabelle oder Verweis auf PLATFORM.md - **Platform changes** → Update table or reference to PLATFORM.md
- **Projektstruktur** → Verzeichnisbaum anpassen - **Project structure** → Adjust directory tree
Die README soll für neue Nutzer verständlich und aktuell bleiben. The README should remain clear and up to date for new users.

View File

@@ -1,59 +1,59 @@
# HotKeet Plattform-Unterstützung # HotKeet Platform Support
## Übersicht ## Overview
| Plattform | Status | Hinweise | | Platform | Status | Notes |
|-----------|--------|----------| |----------|--------|-------|
| **Windows** | ✅ Voll unterstützt | Primäre Zielplattform | | **Windows** | ✅ Fully supported | Primary target platform |
| **Linux** | ⚠️ Lauffähig mit Anpassungen | Tray, Audio, Hotkeys funktionieren | | **Linux** | ⚠️ Runs with adjustments | Tray, audio, hotkeys work |
| **macOS** | ⚠️ Lauffähig mit Anpassungen | Tray-Events müssen im Main-Thread laufen | | **macOS** | ⚠️ Runs with adjustments | Tray events must run in main thread |
## Windows ## Windows
- System-Tray mit Icon - System tray with icon
- PlaySound/MessageBeep für Signaltöne - PlaySound/MessageBeep for audio feedback
- WM_CLOSE → Minimieren ins Tray - WM_CLOSE → minimize to tray
- Konfiguration: `%LOCALAPPDATA%\HotKeet\settings.json` - Configuration: `%LOCALAPPDATA%\HotKeet\settings.json`
- Parakeet-Standardpfade: `C:\voice2text\` - Parakeet default paths: `C:\voice2text\`
## Linux ## Linux
### Voraussetzungen ### Prerequisites
- **Tray**: `libappindicator3` oder `libayatana-appindicator3` (für System-Tray) - **Tray**: `libappindicator3` or `libayatana-appindicator3` (for system tray)
- **Audio**: `cpal` nutzt ALSA/PulseAudio - **Audio**: `cpal` uses ALSA/PulseAudio
- **Hotkeys**: `rdev` benötigt evtl. Root oder Input-Gruppe für globale Hotkeys - **Hotkeys**: `rdev` may require root or input group for global hotkeys
### Konfiguration ### Configuration
- Pfad: `~/.config/HotKeet/settings.json` (oder `$XDG_CONFIG_HOME/HotKeet/`) - Path: `~/.config/HotKeet/settings.json` (or `$XDG_CONFIG_HOME/HotKeet/`)
- Parakeet-CLI Standard: `/usr/local/bin/parakeet-cli` - Parakeet-CLI default: `/usr/local/bin/parakeet-cli`
- Modell Standard: `/usr/local/share/voice2text/models/parakeet-tdt-0.6b-v3-int8` - Model default: `/usr/local/share/voice2text/models/parakeet-tdt-0.6b-v3-int8`
### Bekannte Einschränkungen ### Known Limitations
- **Wayland**: Tray-Support kann je nach Desktop-Umgebung variieren - **Wayland**: Tray support may vary by desktop environment
- **Signaltöne**: Terminal-Bell (`\x07`) statt System-Sounds - **Audio feedback**: Terminal bell (`\x07`) instead of system sounds
- **Fokus-Wiederherstellung**: `target_hwnd` (SetForegroundWindow) nur unter Windows - **Focus restoration**: `target_hwnd` (SetForegroundWindow) Windows only
## macOS ## macOS
### Voraussetzungen ### Prerequisites
- **Tray**: `tray-item` nutzt Cocoa; macOS erfordert, dass UI-Events im Main-Thread verarbeitet werden - **Tray**: `tray-item` uses Cocoa; macOS requires UI events in main thread
- **Audio**: `cpal` nutzt CoreAudio - **Audio**: `cpal` uses CoreAudio
- **Hotkeys**: `rdev` ggf. Berechtigungen für Eingabemonitoring nötig - **Hotkeys**: `rdev` may need permissions for input monitoring
### Konfiguration ### Configuration
- Pfad: `~/.config/HotKeet/settings.json` (bzw. `$XDG_CONFIG_HOME/HotKeet/`) - Path: `~/.config/HotKeet/settings.json` (or `$XDG_CONFIG_HOME/HotKeet/`)
- Parakeet-CLI Standard: `/usr/local/bin/parakeet-cli` - Parakeet-CLI default: `/usr/local/bin/parakeet-cli`
### Bekannte Einschränkungen ### Known Limitations
- **Tray**: Unter macOS müssen Tray-Events im Main-Thread laufen; ggf. Anpassung nötig - **Tray**: On macOS, tray events must run in main thread; adjustment may be needed
- **Signaltöne**: Terminal-Bell statt System-Sounds - **Audio feedback**: Terminal bell instead of system sounds
- **Fokus**: Kein HWNDquivalent - **Focus**: No HWND equivalent
## Build ## Build
@@ -68,8 +68,8 @@ cargo build --release
cargo build --release cargo build --release
``` ```
**Hinweis**: Die `.cargo/config.toml` enthält Windows-spezifische Linker-Flags und wird unter Linux/macOS ignoriert. **Note**: `.cargo/config.toml` contains Windows-specific linker flags and is ignored on Linux/macOS.
## Migration von mediSchnack-dictate ## Migration from mediSchnack-dictate
Alte Konfiguration unter `%LOCALAPPDATA%\medischnack\dictate-settings.json` oder `%LOCALAPPDATA%\hotkeet\settings.json` wird nicht automatisch übernommen. Bei Bedarf manuell nach `HotKeet\settings.json` kopieren. Old configuration under `%LOCALAPPDATA%\medischnack\dictate-settings.json` or `%LOCALAPPDATA%\hotkeet\settings.json` is not migrated automatically. Copy manually to `HotKeet\settings.json` if needed.

View File

@@ -1,77 +1,77 @@
# HotKeet # HotKeet
Push-to-Talk Diktier-App mit Offline-Spracherkennung. Hotkey gedrückt = aufnehmen, losgelassen = stoppen, transkribieren, einfügen. Push-to-Talk dictation app with offline speech recognition. Hold hotkey = record, release = stop, transcribe, paste.
## Übersicht ## Overview
| Komponente | Beschreibung | | Component | Description |
|------------|--------------| |-----------|-------------|
| **HotKeet** | GUI-App: Aufnahme, Transkription, Texteinfügung per Hotkey | | **HotKeet** | GUI app: recording, transcription, text insertion via hotkey |
| **parakeet-cli** | CLI für Parakeet v3 Speech-to-Text (transcribe-rs) | | **parakeet-cli** | CLI for Parakeet v3 Speech-to-Text (transcribe-rs) |
## Schnellstart ## Quick Start
### Voraussetzungen ### Prerequisites
- Rust (1.70+) - Rust (1.70+)
- **parakeet-cli** muss gebaut und erreichbar sein (im PATH oder Pfad konfigurieren) - **parakeet-cli** must be built and available (in PATH or configure path)
- Parakeet-Modell (z.B. `parakeet-tdt-0.6b-v3-int8`) - Parakeet model (e.g. `parakeet-tdt-0.6b-v3-int8`)
### Build ### Build
```bash ```bash
# parakeet-cli zuerst bauen # Build parakeet-cli first
cd parakeet-cli cd parakeet-cli
cargo build --release cargo build --release
# HotKeet bauen # Build HotKeet
cd ../HotKeet cd ../HotKeet
cargo build --release cargo build --release
# oder unter Windows: build.cmd # or on Windows: build.cmd
``` ```
### Erste Schritte ### First Steps
1. HotKeet starten läuft im Tray 1. Start HotKeet runs in system tray
2. Rechtsklick auf Tray-Icon → **Einstellungen** 2. Right-click tray icon → **Settings**
3. **parakeet-cli** und **Modellpfad** per „Durchsuchen…“ auswählen (oder leer lassen = Standard) 3. Select **parakeet-cli** and **model path** via "Browse…" (or leave empty = default)
4. **Mikrofon** wählen 4. Choose **microphone**
5. **Speichern** 5. **Save**
Standard-Hotkey: **Ctrl+Shift+D** (drücken = Aufnahme, loslassen = Transkription + Einfügen) Default hotkey: **Ctrl+Shift+D** (hold = record, release = transcribe + paste)
## Konfiguration ## Configuration
| Einstellung | Beschreibung | | Setting | Description |
|-------------|-------------| |---------|-------------|
| **Hotkey** | Globaler Push-to-Talk (z.B. Ctrl+Shift+D) | | **Hotkey** | Global Push-to-Talk (e.g. Ctrl+Shift+D) |
| **Eingabequelle** | Companion-App oder Mikrofon | | **Input source** | Companion app or microphone |
| **parakeet-cli Pfad** | Leer = im PATH (Standard: parakeet-cli) | | **parakeet-cli path** | Empty = in PATH (default: parakeet-cli) |
| **Modellpfad** | Leer = Standardpfad (plattformabhängig) | | **Model path** | Empty = default path (platform-dependent) |
| **Einfügemethode** | Auto | Tastaturpuffer | Zwischenablage | | **Paste method** | Auto | Keyboard buffer | Clipboard |
**Speicherort:** `%LOCALAPPDATA%\HotKeet\settings.json` (Windows) bzw. `~/.config/HotKeet/settings.json` (Linux/macOS) **Storage location:** `%LOCALAPPDATA%\HotKeet\settings.json` (Windows) or `~/.config/HotKeet/settings.json` (Linux/macOS)
## Plattformen ## Platforms
| Plattform | Status | | Platform | Status |
|-----------|--------| |----------|--------|
| **Windows** | ✅ Voll unterstützt | | **Windows** | ✅ Fully supported |
| **Linux** | ⚠️ Lauffähig (Tray: libappindicator) | | **Linux** | ⚠️ Runs (Tray: libappindicator) |
| **macOS** | ⚠️ Lauffähig | | **macOS** | ⚠️ Runs |
Details: [HotKeet/PLATFORM.md](HotKeet/PLATFORM.md) Details: [HotKeet/PLATFORM.md](HotKeet/PLATFORM.md)
## Projektstruktur ## Project Structure
``` ```
HotKeet/ HotKeet/
├── HotKeet/ # Diktier-App (Rust, egui) ├── HotKeet/ # Dictation app (Rust, egui)
├── parakeet-cli/ # Transkriptions-CLI (Rust, ONNX) ├── parakeet-cli/ # Transcription CLI (Rust, ONNX)
├── LICENSE # MIT ├── LICENSE # MIT
└── README.md └── README.md
``` ```
## Lizenz ## License
[MIT License](LICENSE) [MIT License](LICENSE)

View File

@@ -1,18 +1,16 @@
# parakeet-cli # parakeet-cli
CLI für Parakeet v3 Speech-to-Text (transcribe-rs). Wird von mediSchnack als natives Offline-Modell genutzt. CLI for Parakeet v3 Speech-to-Text (transcribe-rs). Used by HotKeet as native offline model.
## Build ## Build
```bash ```bash
cd mediSchnack/parakeet-cli cd parakeet-cli
cargo build --release cargo build --release
``` ```
**Hinweis:** Bei Rust < 1.88 muss `ort` auf eine kompatible Version gepinnt werden: **Note:** With Rust < 1.88, pin `ort` to a compatible version:
```bash ```bash
cargo update -p ort -p ort-sys --precise 2.0.0-rc.10 cargo update -p ort -p ort-sys --precise 2.0.0-rc.10
``` ```
Die `parakeet-cli.exe` wird beim mediSchnack-Build automatisch nach `bin/` kopiert, sofern sie unter `parakeet-cli/target/release/` existiert.