The LilyPond input syntax is routinely changed to simplify it or improve it in different ways. As a side effect of this, the LilyPond interpreter often is no longer compatible with older input files. To remedy this, the program convert-ly can be used to deal with most of the syntax changes between LilyPond versions.
\version statements in the input files to detect the
old version number. In most cases, to upgrade your input file it is
sufficient to run
convert-ly -e myfile.ly
MacOS X users may execute this command under the menu entry `Compile > Update syntax'.
If there are no changes to myfile.ly and file called myfile.ly.NEW is created, then myfile.ly is already updated.
convert-ly always converts up to the last syntax change handled by
it. This means that the
\version number left in the file is
usually lower than the version of convert-ly itself.
To upgrade LilyPond fragments in texinfo files, use
convert-ly --from=... --to=... --no-version *.itely
To see the changes in the LilyPond syntax between two versions, use
convert-ly --from=... --to=... -s
To upgrade many files at once, combine
standard unix commands. This example will upgrade all
files in the current directory
for f in *.ly; do convert-ly -e $f; done;
In general, the program is invoked as follows:
convert-ly [option]... file...
The following options can be given:
\versionstrings in the file.
\versionindicator to the output. Specifying this option suppresses this.