Learn R Programming

tuneR (version 1.4.7)

lilyinput: Providing LilyPond compatible input

Description

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.

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)

Value

Nothing is returned, but a file is written.

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.

Author

Andrea Preußer and Uwe Ligges ligges@statistik.tu-dortmund.de

Details

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

References

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

Preußer, A., Ligges, U. und Weihs, C. (2002): Ein R Exportfilter für das Notations- und Midi-Programm LilyPond. Arbeitsbericht 35. Fachbereich Statistik, Universität Dortmund. (german)

See Also

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.