1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
![Screenshot of the player](screenshot.png)
## Installation
You will need a relatively recent version of [Node.js](https://nodejs.org/en/), as well as [mpv](https://mpv.io/) (`apt install mpv` and the like work fine).
```
# Please do note --recursive. It clones git submodules.
git clone --recursive https://git.ed1.club/florrie/mtui.git # Or https://notabug.org/towerofnix/mtui.git
cd mtui
npm install
npm link # Or sudo npm link
mtui # Or node .
```
Add music to the `~/Music` folder to make it show up in mtui, or pass `mtui` a
playlist.json file (usually generated by http-music or downloaded from online).
## Bugs or ideas?
Feel free and encouraged to report any bugs (unexpected behavior or crashes) to the [issue tracker on NotABug.org](https://notabug.org/towerofnix/mtui/issues)!
You're also welcome to share any ideas, suggestions, and questions through there.
## Keybindings
* Ctrl+C: exit
* Up, Down: select previous or next item in a listing
* Tab, Shift+Tab: switch between UI elements
* g/G, Home/End: move to the first and last item in a listing
* [: focus the main track/group listing
* ]: focus the queue listing
* Enter: play the selected track
* Ctrl+Up, p: play previous track
* Ctrl+Down, n: play next track
* o: open the selected item through the system
* Shift+Up/Down or drag: select multiple items at once
* Space: toggle pause
* Escape: stop playing the current track
* l: toggle track loop
* Right: seek ahead
* Left: seek back
* m, f: open a menu of actions related to the selected track/group/item(s)
* v, V: increase and decrease playback volume
* Ctrl+F or /: jump to a track or group by entering (part of) its name
* Ctrl+O: open a playlist from a source (like a /path/to/a/folder or a YouTube playlist URL) (you can also just pass this source to `mtui`)
* t, T: switch between playlist tabs
* Ctrl+T: open the current playlist in a new tab (so, clone the current tab)
* Ctrl+W: close the current tab
* Meta+c: create a new music player (for listening to multiple tracks at once, or swapping between two tracks without losing playback position)
* Meta+Up/Down, Meta+p/n: select the previous/next music player (each player has its own independent queue, pause status, etc)
* Meta+a, Meta+!: mark the selected music player so that any keyboard actions - seeking, pausing, etc - apply to it and any other marked players (if no player is marked, which is the default case, actions will apply to the selected music player)
* Meta+x: delete the selected music player
* |: focus the list of music players, if there are at least two music players
* **In the main listing:**
* Enter: if the selected item is a group, enter it; if it's a track, play it
* Backspace: leave the current group (if in one)
* q: queue the selected track or group to play after the track which is selected in the queue
* d: download the selected track (but don't play it)
* **In the queue listing:**
* s: shuffle the queue
* c: clear the queue
* x: remove the selected track from the queue
* Ctrl+L: jump to the track that's currently playing
* **In path displays:** (Path displays are the things that show below the main and queue listings. They show the path of groups to the selected item in the listing.)
* Enter, Space: view the selected item in the main listing
* Left, Right: navigate the path display
* **In a context menu:**
* All the usual controls (up, down, tab, space, enter) work
* Backspace or Escape: close the menu without taking any action
* Type the beginning of the name of an option, like its first letter, to quickly jump to it
* **With a number pad:**
* Should be in NumLock!
* 2, 4, 6, 8: cursor keys (down/left/right/up)
* 5: pause (and any action that would take the space bar)
* 7, 9: focus main track/group, queue listings
* /, \*: decrease, increase playback volume
* .: back (and any action that would take backspace)
* +: open a context menu
* 1, 3: skip to previous, next track
|