Tree


.gitignorecommits | blame
Makefilecommits | blame
README.mdcommits | blame
bin/
doc/
src/
test/
tools/

README.md

# mcol

Terminal browser for an MPD release archive, written in Chez Scheme.

Paths are read as:

- `artist/album`
- `label/artist/release`

Parent paths are not counted as releases. All recognized files are scanned; no
date cutoff is applied.

## Run

Requires Chez Scheme 10.4 or newer. Playback requires `mpc`.

```sh
make tui INPUT=/path/to/releases
```

Input is chosen from `--input`, then `MCOL_INPUT`, then the current directory:

```sh
export MCOL_INPUT=~/src/mtmn.name/releases
make tui
```

## Keys

```text
m  months       w  weeks       l  labels
a  artists      s  search      r  random play
p  play release  q  queue release
nn next page    pp prev page   b  back
?  help         /  filter
```

Enter a row number to open it. Commands such as `:month 2026-08`,
`:day 2026-08-11`, `:label Warp`, `:artist Autechre`, and `:search Autechre`
are also accepted.

Use `p 4 5 2` to append visible releases 4, 5, and 2 and start the first one.
Use `q 4 5 2` to append them without changing playback.

## Build and install

```sh
make build
make test INPUT=/path/to/releases
make install                 # /usr/local
make install PREFIX=~/.local
```

See `mcol(1)` after installation. Set `NO_COLOR=1` to disable colour.