A Development Environment for LilyPond
I found a sweet new toy that does stuff when files change January 9, 2019 software musicI found a cool new toy, called entr
. It runs arbitrary commands
if files in an arbitrary list change. It’s a bit like watch
, but a little
more streamlined. I’m now using it to automatically remake PDFs for my
music scores, and it also tells the PDF viewer to reload the document. The
command looks like this:
cd $path; find . -iname '*.ly' | entr -s 'make && pkill -HUP mupdf'
For my music “IDE”, I use a few different programs:
- abduco, for attaching and detaching to the development environment
- dvtm, which splits a terminal into multiple smaller terminals
- vis, which is a vi-like text editor that I like
- mupdf, which is just a simple pdf viewer
- LilyPond, which takes code and converts into (beautiful) sheet music
Below is a gif that demonstrates more or less what my current environment does and how it looks.
Right-click and select “View Image” to see it up close.
Lately I haven’t done anything other than coding, and I haven’t played guitar in what may be months. I definitely want to get back into it, but I want to get better (faster) at writing sheet music so I can have a record of all the songs I’ve learned. I haven’t learned very many songs at all in the twelve or so years I’ve been playing guitar, and I feel it’s time I remedy this.