7 releases
0.1.6 | Feb 23, 2020 |
---|---|
0.1.5 | Nov 7, 2019 |
0.1.3 | Oct 31, 2019 |
#1119 in Audio
25 downloads per month
74KB
2K
SLoC
RUM Player
RUM is a terminal music player, that able to play remote media from different sources (currently only Ya.Music).
Usage
Playing media is performed via mpv player, thus it need to be accessible.
cargo install rum-player
# by default installed at ~/.cargo/bin, you may add it to path:
export PATH=$PATH:~/.cargo/bin
rum-player
Currently, the tool has 3 main views: search panel, tracks listing and playlist.
Hotkeys
Hotkeys can be set via toml config, that should be placed at $XDG_CONFIG_HOME
for Linux, or at $HOME/Library/Preferences
for macOS. All bindings must be specified at [hotkey]
table and should be in form (note quotes): "Event" = "Action"
. Hotkeys might also be specified for a particular view or context (currently only for one at a time) via subtable. If no context specified then hotkey considered as global and will be used with a lower priority. Here is a config example:
[hotkey]
"PointerUp" = "ArrowUp"
"PointerDown" = "ArrowDown"
"NextTrack" = "+"
"PrevTrack" = "-"
"Forward5" = "Ctrl++"
"Backward5" = "Ctrl+-"
[hotkey.search]
"PointerUp" = "ArrowDown"
"PointerDown" = "ArrowUp"
[hotkey.tracklist]
"Enter" = "Alt+0"
Default hotkeys are the following:
- Arrow Up/Down - scroll up/down displayed list;
- Arrow Left/Right - switch to previous/next track;
- Backspace (at track list view) - display back to search panel;
- Tab - switch between search types (currently track & album search are available);
- Ctrl+a (at track list view) - add all tracks to playlist;
- Ctrl+s - stop playback and clear playlist;
- Ctrl+p - pause/unpause playback;
- Alt+a (at artist search) - switch to artist albums;
- Alt+t (at artist search) - switch to artist tracks;
- Alt+s - switch to related artist(s);
- Alt+p - switch to playlist view;
- ] - skip 5 seconds forward of currently played track;
- [ - skip 5 seconds backward of currently played track;
- Enter - select item at list view (at track list view append to the end of playlist, rather than replacing it);
- Ctrl+c/Delete - quit the program.
Development
For development you need a nightly compiler, since dependency requires it: rustup default toolchain nightly
. Afterwards you may build sources via cargo build
and start hacking. Please also use rustfmt & clippy at development process: rustup component add rustfmt clippy
.
Dependencies
~24MB
~438K SLoC