MuseScore Example Manager for LibreOffice

As a music educator and writer, I am constantly faced with the need to incorporate notated examples into text documents.

Most notation programs include some limited text capabilities, and I have used this for creating simple scale sheets and the like.  But the text facilities built into notation programs are nothing you would want to use to write anything more than a page or so, much less an entire book.  So instead, the usual solution is to export your musical examples as graphics and then import the latter into a word processor document.  But for a work of any length, managing the dozens or hundreds of files that result is quite a chore, and going back and editing an example is a tedious process of finding the original score for the example, editing it, regenerating the graphic, and reinserting it into your word processor document.


As the former software engineer I am, I decided there should be tools to help automate this process, and since no one else was writing them, I would.  The result is my MuseScore Extension Manager for LibreOffice.  You can download it here:

MuseScore should be familiar to readers of this site – it is the free and open source notation program that provides 99% of the power of Finale or SIbelius for 0% of the price.  LibreOffice, for those for don’t know, is a free open source word processor that similarly does virtually everything you might otherwise use Word for.  It is a “fork” of the project, created when it appeared the latter was dead (although this turned out to be premature).  As far as I know, my extension should work with as well as with LibreOffice.  And since both MuseScore and LibreOffice are free and open source, so is my extension.

I used this extension to produce the document shown above.  The basic operation is very simple.  The extension adds a “MuseScore” button to the LibreOffice toolbar (which can see toward the top right).  Position your cursor where you want an example to appear, press the MuseScore button, and a dialog appears in which you can select a regular MuseScore file – no need to manually export a graphic file.  A graphic file will automatically be generated and inserted in your document at the cursor position.  The graphic is inserted as a link to the original score, so editing the example later is very simple.  Ctrl-click on the graphic automatically opens the corresponding score in MuseScore.  After saving the edited example in MuseScore, simply return to LibreOffice, hit the MuseScore button again, and the example is automatically updated in your document.

I’ve already used this to create well over a hundred pages worth of a jazz theory textbook I am working on, and I can’t tell you how much time it has saved.  Maybe even almost as much time as it took develop the extension 🙂

My extension also provides the ability to create examples directly within the text as ABC source for those familiar with that notation language, and to automate the conversion of examples created with MuseScore into ABC.  You might wonder why you would care about this.  I became interested in ABC because, as text-based notation language, it provided a way of communicating with a blind student in my jazz theory & aural skills class.  I think the possibilities opened up by this are incredible, and I hope to follow up on this in the near future with more tools for allowing educators to make their work accessible to the blind.