My random collection of personal plugins now lives in the beets-kergoth project at pypi and github. In the future I’ll be splitting off some of this into separate pypi projects, and submitting some of it to the core, and I still need to add its very minimal docs to http://readthedocs.io, but this works for now, and is at least split out from my config files and scripts.
This is my personal collection of beets plugins that
are not currently being distributed separately.
Generally useful plugins
These plugins I consider to be useful in general and polished enough
that I intend to either submit them upstream to beets or split off into
separate projects / python packages.
- The Alias Plugin lets you define command aliases,
much like git, and also makes available any beet-prefixed commands
- The Import Inspect Plugin lets you inspect
the metadata changes to be applied when importing.
- The Modify On Import Plugin lets you
define metadata changes to occur on import when the specified
- The Replace Format Plugin defines format
functions for search/replace of text, both single replacements and
applications of a set of replacements like the built in
- The Saved Formats Plugin lets you define
saved, named format strings by storing them in fields for later
- The Saved Queries Plugin lets you save
queries by name for later use.
Special Purpose plugins
These plugins are useful to me, but probably not to anyone else.
musicsourceplugin just forces me to define a
when importing new music, as this is how I organize my library.
sourceis where the music was acquired, e.g. Amazon, iTunes,
picardplugin lets me launch MusicBrainz Picard with the items
I’m importing, either to use it to tag rather than beets, or as an
inspection tool to examine its metadata. This assumes a
beets command exists, as this is how it runs it.
reimportskipfieldsplugin lets you specify fields from
set_fields to also be applied to skipped items on reimport. I use
this to facilitate resuming from a reimport, as it lets me apply a
reimportedfield to anything I tried to reimport, whether I was
able to match it to a candidate or not.
Prototype / Proof of Concept plugins
These plugins were thrown together in experimentation. Some may be worth
cleaning up, but others are useful pretty rarely.
abcalcplugin performs the same calculation as absubmit, but
runs it only against non-MusicBrainz tracks, and stores the low
level values rather than submitting them. I’ve used this to
populate the acoustic fingerprint tags for use by external
existingqueriesplugin adds a couple queries that originated
in the beets source.
hasartplugin adds a query to check for embedded album art.
inlinehookplugin lets you define hooks inline in config.yaml
with python, much the way
inlinedoes for fields.
last_importplugin keeps track of the most recently imported
items with a flexible field.
modifytmplplugin lets you define fields using templates /
format strings. This will be going upstream into the main
otherqueriesplugin defines other random queries of
questionable usefulness at this time.
spotifyexplicitplugin uses the
spotifyplugin to look up
items from my library, determines if Spotify considers these items
as explicit tracks (Parental Advisory), and prints them if so. I use
this to set an
advisoryfield on my tracks.