CI (.github/workflows/ci.yml): - Three parallel jobs on push & PR: cargo test (jarvis-core), cargo clippy (lint, warnings-as-errors), cargo check (workspace). Windows runner, stable toolchain, rust-cache for fast incremental builds. - Deliberately skips release build of jarvis-gui — that needs Node+npm +Tauri bundler and would balloon CI to ~10min per push. Drop Ukrainian: - Delete ua.ftl, remove UA from SUPPORTED_LANGUAGES. - config.rs: prune UA arms from get_wake_phrases / get_wake_grammar / get_phrases_to_remove / get_llm_trigger_phrases / get_llm_system_prompt. - stt/vosk.rs: drop UA → uk language mapping. - tray menu: drop "Українська" entry. - frontend: drop UA from Header.svelte language list, settings page language map, i18n.ts fallback. - 82 command.toml files stripped of every `ua = [...]` block (205 blocks total). Handled via subagent — TOML still parses, all 6 command tests pass. .gitignore: stop tracking dev.env / dll_probe*.py / imports_full.txt which were sitting in working tree. Tests: 128 pass (no regression). Workspace still compiles end-to-end.
76 lines
1.6 KiB
TOML
76 lines
1.6 KiB
TOML
# Media playback control via Windows virtual media keys.
|
|
# Works with anything that listens to global media keys: Spotify, Yandex Music,
|
|
# YouTube in browser (when tab is focused), Foobar2000, Winamp, etc.
|
|
# No OAuth, no API keys — just sends VK_MEDIA_* via PowerShell SendKeys.
|
|
|
|
[[commands]]
|
|
id = "media.play_pause"
|
|
type = "lua"
|
|
script = "key.lua"
|
|
sandbox = "full"
|
|
timeout = 2000
|
|
|
|
[commands.phrases]
|
|
ru = [
|
|
"пауза",
|
|
"продолжи",
|
|
"плей",
|
|
"включи музыку",
|
|
"выключи музыку",
|
|
"приостанови музыку",
|
|
"снова музыку",
|
|
]
|
|
en = ["pause", "play", "resume music", "stop music"]
|
|
|
|
|
|
[[commands]]
|
|
id = "media.next"
|
|
type = "lua"
|
|
script = "key.lua"
|
|
sandbox = "full"
|
|
timeout = 2000
|
|
|
|
[commands.phrases]
|
|
ru = [
|
|
"следующий трек",
|
|
"следующую песню",
|
|
"перемотай вперёд",
|
|
"вперёд трек",
|
|
"переключи на следующую",
|
|
"next",
|
|
]
|
|
en = ["next track", "next song", "skip"]
|
|
|
|
|
|
[[commands]]
|
|
id = "media.prev"
|
|
type = "lua"
|
|
script = "key.lua"
|
|
sandbox = "full"
|
|
timeout = 2000
|
|
|
|
[commands.phrases]
|
|
ru = [
|
|
"предыдущий трек",
|
|
"предыдущую песню",
|
|
"перемотай назад",
|
|
"назад трек",
|
|
"переключи на предыдущую",
|
|
"previous",
|
|
]
|
|
en = ["previous track", "previous song", "back"]
|
|
|
|
|
|
[[commands]]
|
|
id = "media.stop"
|
|
type = "lua"
|
|
script = "key.lua"
|
|
sandbox = "full"
|
|
timeout = 2000
|
|
|
|
[commands.phrases]
|
|
ru = [
|
|
"стоп музыка",
|
|
"останови плеер",
|
|
]
|
|
en = ["stop", "stop player"]
|