Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/hugo-heagren/consult-emms

Consult interface to Emacs MultiMedia System
https://github.com/hugo-heagren/consult-emms

consult emacs embark emms

Last synced: 19 days ago
JSON representation

Consult interface to Emacs MultiMedia System

Awesome Lists containing this project

README

        

#+TITLE: consult-emms.el
#+AUTHOR: Hugo Heagren

Consult-based interface to EMMS, the Emacs MultiMedia System.

* Entry points
Unlike other packages, this package provides no keybindings, and none
of these entry points take prefix arguments to alter their behaviour
in relation to one another. This is intentional: users are meant to
design their own workflows and wrapper commands over these entry
points in a way that suits them. These four commands will probably
cover most /functionality/ most people will want, but exactly how you
use it is up to you.

** ~consult-emms-library~
Add elements of the EMMS library (a track, an artist, an album, etc.) to the current playlist.

Configure the variable ~consult-emms-library-sources~ to alter which inputs are listed.
The following sources are currently implemented:
- ~consult-emms--source-album~
- ~consult-emms--source-track~
- ~consult-emms--source-artist~
- ~consult-emms--source-stream~

Annotations for each element (e.g. track length, number of tracks in an album etc.) will be added in the future.

** ~consult-emms-current-playlist~
Jump to selected track in the current playlist.

** ~consult-emms-metaplaylist~
An analogue of ~emms-metaplaylist-mode~.
Choose an EMMS playlist buffer from all the currently open ones.
The chosen playlist is then presented in the minbuffer for you to select a track from, just like with consult-emms-current-playlist~.
(In fact, selecting the current playlist from ~consult-emms-metaplaylist~ is functionally identical to running ~consult-emms-metaplaylist~.)

** ~consult-emms-playlists~
Jump to any track in any playlist.
Like ~consult-emms-current-playlist~, but presents /all/ currently open EMMS playlists, each as a separate source/category.

* Embark Integration (not yet implemented)
There will be a distinct package (though kept in the same repo) for embark integration.
This should have things like:
- acting on a track, add the album or artist to which it belongs (or maybe present the it in a new completion session?)
- edit metadata
- view lyrics for a track

This will be especially useful with ~consult-emms-playlist~.