« get me outta code hell

README.md - mtui - Music Text User Interface - user-friendly command line music player
about summary refs log tree commit diff
path: root/README.md
blob: 784ce6a933c032cf7e2d3a467d9109e210f5bd4e (plain)
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