### 7.1 Invoking convert-ly

Convert-ly sequentially applies different conversions to upgrade a LilyPond input file. It uses `\version` statements in the file to detect the old version number. For example, to upgrade all LilyPond files in the current directory and its subdirectories, use

                 convert-ly -e --to=1.3.150 `find . -name '*.ly' -print`

The program is invoked as follows:

                 convert-ly [option]... file...

The following options can be given:

`-e,--edit`
  Do an inline edit of the input file. Overrides `--output`.
`-f,--from=`from-patchlevel
  Set the level to convert from. If this is not set, convert-ly will guess this, on the basis of `\version` strings in the file.
`-o,--output=`file
  Set the output file to write.
`-n,--no-version`
  Normally, convert-ly adds a `\version` indicator to the output. Specifying this option suppresses this.
`-s, --show-rules`
  Show all known conversions and exit.
`--to=`to-patchlevel
  Set the goal version of the conversion. It defaults to the latest available version.
`-h, --help`
  Print usage help.

##### Bugs

Not all language changes are handled. Only one output option can be specified.

Read comments on this page, or add one. This page is for LilyPond-2.2.2 (stable-branch).