1 个不稳定版本
| 0.1.0 | 2020 年 6 月 14 日 |
|---|
#511 在 命令行界面
58KB
1.5K SLoC
mpdsh
描述
使用 Rust 编写的类似壳的 MPD(音乐播放器守护进程)客户端。
这是一个简单的 CLI 应用程序。您可以使用 ls 和 cd 等命令轻松控制 MPD。此外,rustyline 完成功能将帮助您输入目录和文件名称。
https://crates.io/crates/rustyline
示例
用法
Usage: mpdsh [options]
Options:
-h, --host localhost
MPD host address
-p, --port 6600 MPD port number
-d, --protolog Output protocol log to stderr.
-v, --version Print version info and exit.
--help Print this help menu.
命令
-
help- 显示命令列表
-
cd[<DIR>]- 更改目录
- 您可以使用键进行完成。
-
ls[-l] [<DIR|FILE>]- 列出文件或目录
- [-l] 更多信息(仅文件)
- 您可以使用键进行完成。
-
pl[-l]- 显示播放列表
- [-l] 更多信息
- FLG
=>当前停止或正在播放的歌曲。 - FLG
.下一个要播放的歌曲。 - 别名(
plist)
-
add[<FILE|DIR>]- 将文件添加到播放列表(递归添加目录)。
- 如果没有指定文件,则针对当前目录下的所有文件。
- 您可以使用键进行完成。
- 别名(
a)
-
add_top[<FILE|DIR>]- 将文件添加到播放列表顶部(递归添加目录)。
- 您可以使用键进行完成。
- 别名(
at)
-
add_uri<URI> [<POSITION>]- 将文件添加到播放列表。
- 互联网广播等 URL。
-
del<POS>|<START:END>- 从播放列表中删除歌曲。
-
clr- 从播放列表中删除所有歌曲。
-
move <POS>|<START:END> <TOPOS>- 移动播放列表中的歌曲。
-
play[<POS>]- 开始播放播放列表。
- 别名(
p)
-
stop- 停止播放。
- 别名(
s)
-
pause- 切换暂停播放。
- 别名(
u)
-
resume- 切换继续播放。
- 别名(
e)
-
prev- 播放播放列表中的上一首歌曲。
- 别名(
r)
-
next- 播放播放列表中的下一首歌曲。
- 别名(
n)
-
random[<STATE>]- 将随机状态设置为 STATE,STATE 应为 0 或 1。
- 或显示当前值
-
重复[<STATE>]- 将重复状态设置为STATE,STATE应为0或1。
- 或显示当前值。
-
单次<STATE>- 将单次状态设置为STATE,STATE可以是0、1或
oneshot - 当单次激活时,在当前歌曲播放结束后停止播放,或者如果启用了“重复”模式,则重复播放歌曲。
- 或显示当前值。
- 将单次状态设置为STATE,STATE可以是0、1或
-
音量<VOL>- 将音量设置为VOL,音量范围是0-100。
- 或显示当前值。
- 别名(
v)
-
状态- 报告播放器的当前状态和音量级别。
- 别名(
st)
-
更新- 更新MPD上的音乐数据库
-
命令<MPDCOMMAND> [<MPDCOMMAND_ARG> ...]- 执行MPD协议命令(见:https://www.musicpd.org/doc/html/protocol.html)
-
退出- 退出此程序。
- 别名(
q)
操作
-
<TAB>键- 文件名补全
-
<UP><DOWN>键- 历史搜索
构建中
git clone https://github.com/zuntan/mpdsh.git
cd mpdsh
cargo build
cargo run -- -h
许可证
mpdsh可根据您的选择以下任一许可证授权
- Apache许可证,版本2.0(LICENSE-APACHE)
- MIT许可证(LICENSE-MIT)
后记
这是我用Rust写的第一篇。
Rust受到很多人的喜爱,我也会喜欢它。但我现在正被Rust编译器责骂。
我的爱还不足。
依赖
~8MB
~153K SLoC