lilyinput

0th

Percentile

Providing LilyPond compatible input

A function (in development!) that writes a file to be processed by LilyPond by extracting the relevant information (e.g. pitch, length, ...) from columns of a data frame. The music notation software LilyPond can “transcribe” such an input file into sheet music.

Keywords
file, interface
Usage
lilyinput(X, file = "Rsong.ly", Major = TRUE, key = "c",
clef = c("treble", "bass", "alto", "tenor"), time = "4/4",
endbar = TRUE, midi = TRUE, tempo = "2 = 60",
textheight = 220, linewidth = 150, indent = 0, fontsize = 14)
Arguments
X

A data frame containing 4 named components (columns):

• note: Integer - the notes' pitch in halftones from diapason (a), i.e. 0 for diapason a, 3 for c', ...

• duration: Integer - denominator of lengths of the notes, e.g. 8 for a quaver.

• punctate: Logical - whether to punctate a note.

• slur: Logical - TRUE indicates to start a slur, or to end it. That means that the first, third, ... occurences of TRUE start slurps, while the second, fourth, ... occurences end slurps. Note that it is only possible to draw one slur at a time.

file

The file to be written for LilyPond's input.

Major

Logical indicating major key (if TRUE) or minor key.

key

Keynote, necessary to set sharps/flats.

clef

Integer indicating the kind of clef, supported are "treble" (default), "bass", "alto", and "tenor".

time

Character indicating which meter to use, examples are: "3/4", "4/4".

endbar

Logical indicating whether to set an ending bar at the end of the sheet music.

midi

Logical indicating whether Midi output (by LilyPond) is desirable.

tempo

Character specifying the tempo to be used for the Midi file if midi = TRUE. The default, "2 = 60" indicates: 60 half notes per minute, whereas "4 = 90" indicates 90 quarters per minute.

textheight

Textheight of the sheet music to be written by LilyPond.

linewidth

Linewidth of the sheet music to be written by LilyPond.

indent

Indentation of the sheet music to be written by LilyPond.

fontsize

Fontsize of the sheet music to be written by LilyPond.

Details

Details will be given when development has reached a stable stage ...!

Value

Nothing is returned, but a file is written.

Note

This function is in development!!! Everything (and in particular its user interface) is subject to change!!!

References

The LilyPond development team (2005): LilyPond - The music typesetter. http://www.lilypond.org/, Version 2.7.20.

Preu<df>er, A., Ligges, U. und Weihs, C. (2002): Ein R Exportfilter f<U+32824873> Notations- und Midi-Programm LilyPond. Arbeitsbericht 35. Fachbereich Statistik, Universit<e4>t Dortmund. (german)

quantMerge prepares the data to be written into the LilyPond format; quantize and quantplot generate another kind of plot; and exhaustive example is given in tuneR.