Very cool! I like this idea -- it's an interesting way of looking at your collection.
FWIW, one way of installing non-standard beets plugins is with the "pluginpath" config option:
but setuptools/pip installation can interfere with this.
A couple of thoughts about the interface to the plugin:
- For command-line interfaces, people typically like to distinguish argument values from "control signals" by making the latter look like --flags. For example, I might find:
$ beet top artists --by time --in 1990
a bit more grokkable since it makes it obvious which words are special.
- To make the "in" clause more general, have you considered allowing a beets query to appear there? For example, I might be interested in "top artists --in genre:indie" or something. We don't currently have range queries in the standard syntax, but this would be interesting to add.
Awesome work!
Adrian