Skip to content
A simple utility to suggest ID3 tag changes for MP3 collections with a specific format
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


mp_suggest is a simple little organizational tool for MP3 collections. I wrote it a few years ago to help me organize my own collection, and when the Hy Programming Language came out, I decided it was time for a minor exercise. Rewriting mp_suggest in Hy was a perfect opportunity.


May 28, 2016 This code is complete. No further work is being considered. The TODO file is empty.


mp_suggest does not alter your MP3 files; instead, it prints to stdout a simple bash script that invokes the command-line program id3v2; you can capture that script and run it by hand, or pipe the output of mp_suggest through sed to make changes on the fly, or just run the output straight into bash with a unix pipe.


Writing mp_suggest was an interesting exercise in returning to Lisp after all these years. I find that I really enjoyed it (although, honestly, Hy's debugging facilities leave a lot to be desired). The style used inside mp_suggest is most definitely not Lispy; looking through it, with its persistent use of cheap anonymous functions and closures and its function-level metaprogramming, I guess the best language I could compare it to is Coffeescript. I like Coffeescript a lot, but I don't get many opportunities to use it professionally, but the sensibilities of Coffeescript (especially Reginald Braithwaite's Ristrettology and his other books on functional programming) heavily influenced the design decisions I made in mp_suggest.


mp_suggest comes with a complete list of commands that can be seen by running the command with no arguments. See the man page that comes with it.


This program is released under the terms of the GNU General Public License (GNU GPL).

You can find a copy of the license in the file COPYING.

You can’t perform that action at this time.