LilyPond
Prev | Chapter 7. Outputs | Next

## LilyPond

FOMUS currently creates notation files for LilyPond versions 2.4 and 2.6. The `OUTPUT` setting keyword to use is `:LILYPOND`. FOMUS outputs a slightly different file depending on whether LilyPond version 2.4 or 2.6 is installed to insure that it compiles correctly (a file for one version may give an error when compiled in the other version). A `.ly` extension is added to the base filename to make the complete output filename. When FOMUS loads it looks for LilyPond and viewer application executables in several locations in the filesystem. If these executables are in an uncommon location or the user wants to specify these herself, several options exist for setting the pathnames and changing command line arguments. When setup correctly, FOMUS can automatically compile the output file and launch a viewer (a PostScript viewing application in Gnome or KDE or the Preview application in OS X).

Tremolos might be represented by displaying slash marks (like in the MusicXML `:XML-1NOTE-TREMOLO-KLUDGE` and `:XML-MULTINOTE-TREMOLO-KLUDGE` options) in rare cases where they can't be indicated properly.

### LilyPond Options

`:FILENAME` | `:VIEW-OPTS` | `:OUT-EXT`
`:PROCESS` | `:VERSION` | `:TEXT-MARKUP`
`:VIEW` | `:FILEHEAD` | `:TEXTDYN-MARKUP`
`:EXE` | `:SCOREHEAD` | `:TEXTTEMPO-MARKUP`
`:OPTS` | `:LILY-PARTHEAD` | `:TEXTNOTE-MARKUP`
`:VIEW-EXE` | `:LILY-PARTNAME` | `:TEXTACC-MARKUP`

### Alphabetical Listing of Options

`:EXE`

  This is a string specifying the path and filename to the LilyPond executable. The full pathname may or may not need to be specified depending on the Lisp implementation. This overrides the `LILYPOND-EXE` setting if used.

`:OPTS`

  This is a list of strings representing options to be passed to the LilyPond executable. The default is currently `'("--ps")` for Linux or `'("--pdf")` for OS X/Windows, specifying that LilyPond should generate either a PostScript or PDF format file. This overrides the `LILYPOND-OPTS` setting if used.

`:FILEHEAD`

  This is a string or list of strings representing text to be inserted directly into the output file. Each string in the list is followed by a carriage return. The text is inserted near the top of the file at a point before any score or part data appears.

`:FILENAME`

  This is a string representing the output filename. It overrides the `FILENAME` setting if used.

`:OUT-EXT`

  This is a string specifying the extension for the output filename that is created when LilyPond is run. The default is `"ps"` for Linux and `"pdf"` for OS X/Windows. This overrides the `LILYPOND-OUT-EXT` setting if used.

`:LILY-PARTHEAD`

  This option is specified in `PART` part objects and is valid only for that part. It is a string or list of strings representing text to be inserted directly into the output file. Each string is followed by a carriage return. The text inserted at the beginning of a staff section just before note, rest and other information appears for that part in the file.

`:LILY-PARTNAME`

  This option is specified in `PART` part objects and is valid only for that part. It is a string representing a part name used to uniquely identify the part in the output file. If it isn't supplied, FOMUS automatically generates a name.

`:PROCESS`

  If set to `T`, indicates that FOMUS should call LilyPond to process the output file once it's been written. If set to `NIL`, only the output file is written and no processing occurs (unless `VIEW` is set to `T`).

`:SCOREHEAD`

  This is a string or list of strings representing text to be inserted directly into the output file at the beginning of a score block. Each string in the list is followed by a carriage return.

`:TEXT-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text above or below the staff. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\italic{~A}}"`.

`:TEXTACC-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when engraving accidentals as text. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\\markup{\\tiny{~A}}"`.

`:TEXTDYN-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text in a dynamic-type font. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\dynamic{\italic{\bold{~A}}}}"`.

`:TEXTNOTE-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text above single notes. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\italic{~A}}"`.

`:TEXTTEMPO-MARKUP`

  This is a "wrapper" string specifying LilyPond markup instructions to be used when printing text in a heavy "tempo" font. The string must have an `~A` or similar substring to indicate where to place the actual text (as if in a call to `FORMAT`). The default value is `"\markup{\bold{\huge{~A}}}"`.

`:VERSION`

  If set to a string (for example, `"2.8"`), forces FOMUS to output LilyPond files for that version.

`:VIEW`

  If set to `T`, indicates that FOMUS should call LilyPond to process the output file then open the results with a viewer program for immediate viewing. If set to `NIL`, no viewer application is opened.

`:VIEW-EXE`

  This is a string specifying the path and filename to the executable for the viewer application. The full pathname may or may not need to be specified depending on the Lisp implementation. The default application depends on what is installed on the user's machine, and should be one appropriate for viewing PostScript files. This overrides the `LILYPOND-VIEW-EXE` setting if used.

`:VIEW-OPTS`

  This is a list of strings representing options to be passed to the viewer application executable. This overrides the `LILYPOND-VIEW-OPTS` setting if used.

Prev | Up | Next
Data | Home | MusicXML