aboutsummaryrefslogtreecommitdiffstats
path: root/src/main.rs
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-11-02 13:35:56 +0100
committersalmonik <salmonik@tuta.io>2026-11-02 13:35:56 +0100
commit5dfb5b4ce521a44eb4e9173d20c58e665c78e979 (patch)
tree514508f9bef90444b867a68abfeb2ad365c44d14 /src/main.rs
parentaudio: open the output at the track's rate instead of pw-alsa's 44100 (diff)
downloadrsplayer-5dfb5b4ce521a44eb4e9173d20c58e665c78e979.tar.gz
rsplayer-5dfb5b4ce521a44eb4e9173d20c58e665c78e979.zip
ctl: interactive shell with history, editing and completion
`rsp ctl` opens a prompt in the spirit of bluetoothctl. Lines are parsed with the same clap definitions as the one-shot CLI, so every command and flag works exactly as it does from a terminal, `help <command>` included. Tab completes subcommands, and track/album/artist paths for `play` through `db-complete` (run out of process, keeping its 100 ms timeout away from the input loop). History lives in the state directory. Piped input falls back to a plain line loop, so `rsp ctl < commands` works without a terminal.
Diffstat (limited to '')
-rw-r--r--src/main.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs
index 4bc4498..0138ea2 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -8,6 +8,7 @@
8mod audio; 8mod audio;
9mod cli; 9mod cli;
10mod config; 10mod config;
11mod ctl;
11mod daemon; 12mod daemon;
12mod database; 13mod database;
13mod mpris; 14mod mpris;