Config-Pfad HotKeet, README, MIT-Lizenz
- Einstellungen: %LOCALAPPDATA%\HotKeet (statt hotkeet) - README.md mit Schnellstart, Konfiguration, Projektstruktur - MIT-Lizenz (LICENSE) - Cursor-Regel für README-Pflege Made-with: Cursor
This commit is contained in:
16
.cursor/rules/readme-maintenance.mdc
Normal file
16
.cursor/rules/readme-maintenance.mdc
Normal file
@@ -0,0 +1,16 @@
|
||||
---
|
||||
description: README.md fortlaufend pflegen bei relevanten Änderungen
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# README-Wartung
|
||||
|
||||
Bei Änderungen am Projekt die `README.md` im Repo-Root aktualisieren, wenn betroffen:
|
||||
|
||||
- **Neue Features** → Abschnitt „Schnellstart“ oder „Konfiguration“ ergänzen
|
||||
- **Geänderte Pfade** (Config, Build) → Tabelle/Text anpassen
|
||||
- **Neue Abhängigkeiten** → Voraussetzungen aktualisieren
|
||||
- **Plattform-Änderungen** → Tabelle oder Verweis auf PLATFORM.md
|
||||
- **Projektstruktur** → Verzeichnisbaum anpassen
|
||||
|
||||
Die README soll für neue Nutzer verständlich und aktuell bleiben.
|
||||
@@ -13,7 +13,7 @@
|
||||
- System-Tray mit Icon
|
||||
- PlaySound/MessageBeep für Signaltöne
|
||||
- WM_CLOSE → Minimieren ins Tray
|
||||
- Konfiguration: `%LOCALAPPDATA%\hotkeet\settings.json`
|
||||
- Konfiguration: `%LOCALAPPDATA%\HotKeet\settings.json`
|
||||
- Parakeet-Standardpfade: `C:\voice2text\`
|
||||
|
||||
## Linux
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
### Konfiguration
|
||||
|
||||
- Pfad: `~/.config/hotkeet/settings.json` (oder `$XDG_CONFIG_HOME/hotkeet/`)
|
||||
- Pfad: `~/.config/HotKeet/settings.json` (oder `$XDG_CONFIG_HOME/HotKeet/`)
|
||||
- Parakeet-CLI Standard: `/usr/local/bin/parakeet-cli`
|
||||
- Modell Standard: `/usr/local/share/voice2text/models/parakeet-tdt-0.6b-v3-int8`
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
### Konfiguration
|
||||
|
||||
- Pfad: `~/.config/hotkeet/settings.json` (bzw. `$XDG_CONFIG_HOME/hotkeet/`)
|
||||
- Pfad: `~/.config/HotKeet/settings.json` (bzw. `$XDG_CONFIG_HOME/HotKeet/`)
|
||||
- Parakeet-CLI Standard: `/usr/local/bin/parakeet-cli`
|
||||
|
||||
### Bekannte Einschränkungen
|
||||
@@ -72,4 +72,4 @@ cargo build --release
|
||||
|
||||
## Migration von mediSchnack-dictate
|
||||
|
||||
Alte Konfiguration unter `%LOCALAPPDATA%\medischnack\dictate-settings.json` wird nicht automatisch übernommen. Bei Bedarf manuell nach `hotkeet/settings.json` kopieren.
|
||||
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.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//! Konfiguration für HotKeet.
|
||||
//! Speicherort: Windows %LOCALAPPDATA%\hotkeet\, Linux/macOS ~/.config/hotkeet/
|
||||
//! Speicherort: Windows %LOCALAPPDATA%\HotKeet\, Linux/macOS ~/.config/HotKeet/
|
||||
|
||||
use serde::{Deserialize, Serialize};
|
||||
use std::path::PathBuf;
|
||||
@@ -108,7 +108,7 @@ impl DictateConfig {
|
||||
{
|
||||
let base = std::env::var("LOCALAPPDATA")
|
||||
.unwrap_or_else(|_| std::env::var("USERPROFILE").unwrap_or_else(|_| ".".to_string()));
|
||||
PathBuf::from(base).join("hotkeet").join("settings.json")
|
||||
PathBuf::from(base).join("HotKeet").join("settings.json")
|
||||
}
|
||||
#[cfg(not(windows))]
|
||||
{
|
||||
@@ -118,7 +118,7 @@ impl DictateConfig {
|
||||
.map(|h| format!("{}/.config", h))
|
||||
.unwrap_or_else(|_| ".".to_string())
|
||||
});
|
||||
PathBuf::from(base).join("hotkeet").join("settings.json")
|
||||
PathBuf::from(base).join("HotKeet").join("settings.json")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025 HotKeet Contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
77
README.md
Normal file
77
README.md
Normal file
@@ -0,0 +1,77 @@
|
||||
# HotKeet
|
||||
|
||||
Push-to-Talk Diktier-App mit Offline-Spracherkennung. Hotkey gedrückt = aufnehmen, losgelassen = stoppen, transkribieren, einfügen.
|
||||
|
||||
## Übersicht
|
||||
|
||||
| Komponente | Beschreibung |
|
||||
|------------|--------------|
|
||||
| **HotKeet** | GUI-App: Aufnahme, Transkription, Texteinfügung per Hotkey |
|
||||
| **parakeet-cli** | CLI für Parakeet v3 Speech-to-Text (transcribe-rs) |
|
||||
|
||||
## Schnellstart
|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- Rust (1.70+)
|
||||
- **parakeet-cli** muss gebaut und erreichbar sein (im PATH oder Pfad konfigurieren)
|
||||
- Parakeet-Modell (z.B. `parakeet-tdt-0.6b-v3-int8`)
|
||||
|
||||
### Build
|
||||
|
||||
```bash
|
||||
# parakeet-cli zuerst bauen
|
||||
cd parakeet-cli
|
||||
cargo build --release
|
||||
|
||||
# HotKeet bauen
|
||||
cd ../HotKeet
|
||||
cargo build --release
|
||||
# oder unter Windows: build.cmd
|
||||
```
|
||||
|
||||
### Erste Schritte
|
||||
|
||||
1. HotKeet starten – läuft im Tray
|
||||
2. Rechtsklick auf Tray-Icon → **Einstellungen**
|
||||
3. **parakeet-cli** und **Modellpfad** per „Durchsuchen…“ auswählen (oder leer lassen = Standard)
|
||||
4. **Mikrofon** wählen
|
||||
5. **Speichern**
|
||||
|
||||
Standard-Hotkey: **Ctrl+Shift+D** (drücken = Aufnahme, loslassen = Transkription + Einfügen)
|
||||
|
||||
## Konfiguration
|
||||
|
||||
| Einstellung | Beschreibung |
|
||||
|-------------|-------------|
|
||||
| **Hotkey** | Globaler Push-to-Talk (z.B. Ctrl+Shift+D) |
|
||||
| **Eingabequelle** | Companion-App oder Mikrofon |
|
||||
| **parakeet-cli Pfad** | Leer = im PATH (Standard: parakeet-cli) |
|
||||
| **Modellpfad** | Leer = Standardpfad (plattformabhängig) |
|
||||
| **Einfügemethode** | Auto | Tastaturpuffer | Zwischenablage |
|
||||
|
||||
**Speicherort:** `%LOCALAPPDATA%\HotKeet\settings.json` (Windows) bzw. `~/.config/HotKeet/settings.json` (Linux/macOS)
|
||||
|
||||
## Plattformen
|
||||
|
||||
| Plattform | Status |
|
||||
|-----------|--------|
|
||||
| **Windows** | ✅ Voll unterstützt |
|
||||
| **Linux** | ⚠️ Lauffähig (Tray: libappindicator) |
|
||||
| **macOS** | ⚠️ Lauffähig |
|
||||
|
||||
Details: [HotKeet/PLATFORM.md](HotKeet/PLATFORM.md)
|
||||
|
||||
## Projektstruktur
|
||||
|
||||
```
|
||||
HotKeet/
|
||||
├── HotKeet/ # Diktier-App (Rust, egui)
|
||||
├── parakeet-cli/ # Transkriptions-CLI (Rust, ONNX)
|
||||
├── LICENSE # MIT
|
||||
└── README.md
|
||||
```
|
||||
|
||||
## Lizenz
|
||||
|
||||
[MIT License](LICENSE)
|
||||
Reference in New Issue
Block a user