# Music in Plain Text Jonathan Gregory [[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--04-music-in-plain-text--jonathan-gregory.webm"]] [Download .webm video, 720p, 18M](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--04-music-in-plain-text--jonathan-gregory.webm) LilyPond is an extensible program for producing high-quality sheet music engraved with traditional layout rules. Similar to LaTeX and other typesetting programs, its input format describes the visual layout of the score using commands to define musical expressions. This makes collaboration easier, prevents users from having to adjust layout settings manually, and facilitates digital archiving and distribution of musical scores. In this talk, I begin with an overview of the LilyPond syntax and move on to showcase ways for producing algorithmic compositions and music books using Make, Org and LilyPond-mode. Source files and other materials can be found at and . # Questions ## Do you have any thoughts on generating scores in chant notation (neumes)? I'm not familiar with typesetting chant notation, so I suggest reading this specific section of the manual for information. ## Do you use this to compose or to write up compositions…? No and yes. I use pencil and paper to compose the first draft. Then I move to Emacs to input the notes. Either way it's certainly possible to compose from Emacs directly, especially if you're doing this programatically, so I guess it depends on what you're trying to do. ## Can one use MIDI/USB instruments (like keyboards) to input LilyPond? For example for note heights? [Don't know about Emacs, but Frescobaldi supports MIDI input.] There is a package called `midi-kbd` which creates keyboard events from MIDI input, so I believe the answer is yes, but I don't own a MIDI device, so I haven't tried it. ## Did you ever write huge scores (BigBand/Orchestra) in Emacs? Never, but that's certainly possible. ## Is there a decent OCR for handwritten music→LilyPond? I'm not sure, but if the OCR works with MusicXML, then you can use the `musicxml2ly` command to convert the XML file to a LilyPond file. ## What shell are you using with the fancy autocomplete? Zsh with fzf. ## Do you use any kind of Emacs to MIDI interface besides exporting MIDI from LilyPond? No. # Notes - Emacs + LilyPond. - Similar to LaTeX — has its own file format and syntax, can also export to MIDI. - `(info "(lilypond-learning) Top")` - The contrast between background and foreground is a little too weak. - Uses LilyPond-mode, flycheck. -