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
|
![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
* <kbd><kbd>Ctrl</kbd>+<kbd>C</kbd></kbd> - exit
* <kbd>Up</kbd> and <kbd>Down</kbd> - select previous or next item in a listing
* <kbd>Tab</kbd> and <kbd><kbd>Shift</kbd>+<kbd>Tab</kbd></kbd> - switch between UI elements
* <kbd>g</kbd> and <kbd>G</kbd> (shift+G) - move to the first and last item in a listing
* <kbd>[</kbd> - focus the main track/group listing
* <kbd>]</kbd> - focus the queue listing
* <kbd>Enter</kbd> - play the selected track
* <kbd><kbd>Shift</kbd>+<kbd>Up</kbd></kbd> or <kbd>p</kbd> - play previous track
* <kbd><kbd>Shift</kbd>+<kbd>Down</kbd></kbd> or <kbd>n</kbd> - play next track
* <kbd>Space</kbd> - toggle pause
* <kbd>Escape</kbd> - stop playing the current track
* <kbd>l</kbd> - toggle track loop
* <kbd>Right</kbd> - seek ahead
* <kbd>Left</kbd> - seek back
* <kbd>m</kbd> or <kbd>f</kbd> - open a menu of actions related to the selected track or group
* <kbd>v</kbd> and <kbd>V</kbd> - increase and decrease playback volume
* <kbd><kbd>Ctrl</kbd>+<kbd>F</kbd></kbd> or <kbd>/</kbd> - jump to a track or group by entering (part of) its name
* <kbd><kbd>Ctrl</kbd>+<kbd>O</kbd></kbd> - 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`)
* <kbd>t</kbd> and <kbd>T</kbd> (shift+T) - switch between playlist tabs
* <kbd><kbd>Ctrl</kbd>+<kbd>T</kbd></kbd> - open the current playlist in a new tab (so, clone the current tab)
* <kbd><kbd>Ctrl</kbd>+<kbd>W</kbd></kbd> - close the current tab
* **In the main listing:**
* <kbd>Enter</kbd> - if the selected item is a group, enter it; if it's a track, play it
* <kbd>Backspace</kbd> - leave the current group (if in one)
* <kbd>q</kbd> - queue the selected track or group to play after any other items in the queue (usually after the current track)
* <kbd>Q</kbd> (shift+Q) - queue the selected track or group to play immediately after what's currently playing
* <kbd>d</kbd> - download the selected track (but don't play it)
* **In the queue listing:**
* <kbd>s</kbd> - shuffle the queue
* <kbd>c</kbd> - clear the queue
* <kbd>x</kbd> - remove the selected track from the queue
* <kbd><kbd>Ctrl</kbd>+<kbd>L</kbd></kbd> - 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.)
* <kbd>Enter</kbd> or <kbd>Space</kbd> - view the selected item in the main listing
* <kbd>Left</kbd> and <kbd>Right</kbd> - navigate the path display
* **In a context menu:**
* All the usual controls (up, down, tab, space, enter) work
* <kbd>Backspace</kbd> or <kbd>Escape</kbd> - 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!
* <kbd>2</kbd>, <kbd>4</kbd>, <kbd>6</kbd>, <kbd>8</kbd> - cursor keys (down/left/right/up)
* <kbd>5</kbd> - pause (and any action that would take the space bar)
* <kbd>7</kbd>, <kbd>9</kbd> - focus main track/group, queue listings
* <kbd>/<kbd>, <kbd>\*</kbd> - decrease, increase playback volume
* <kbd>.</kbd> - back (and any action that would take backspace)
* <kbd>+</kbd> - open a context menu
* <kbd>1</kbd>, <kbd>3</kbd> - skip to previous, next track
|