[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

abc2ly - grace notes

From: Hans Aberg
Subject: abc2ly - grace notes
Date: Sun, 25 Nov 2007 23:34:37 +0100

A bug and a rendering problem in abc2ly (LilyPond) 2.11.34, probably easy to fix:

* The option "abc2ly --beams=None" does not nest properly the "["'s it writes in the output with respect to the command \grace{...}. For example, the input
T:abc2ly grace note bug
K:E Dorian
{ga}gdgb {a}g>d g<a|
will produce in the output .ly file:
\grace {    gis''8[    a''8  }   gis''8    dis''8
gis''8    b''8]

But it should be:
\grace {    gis''8[    a''8]  }   gis''8[    dis''8
gis''8    b''8]
That is, an extra "]" within the \grace{...}, and an extra ”[", if called for, on the note following.

* In addition, the written grace note values seem to be too long. ABC does not leave any option to specify the written length of grace notes, so it is up to the renderer for interpretation.

If I look into a folk music book, Robin Williamson, "Fiddle Tunes" (1976), I think:

a. If there is only one note within the ABC grace note construct "{...}", then one can use
\acciaccatura (as to produce a slurred note with a stroke on it).
b. If there are several notes within the ABC grace note construct "{...}", the note values might be 1/4 (or at least 1/2) of the ABC default value (in example above, the field "L:1/8"), and in addition, it seems me one can write \acciaccatura instead of \grace.

I have tried to look for a semantic difference between grace notes using slurs or not, and I have found none.

Below is how I think the "abc2ly --beams=None" output of the example above might look like.

  Hans Aberg

\version "2.7.40"
\header {
        footnotes = ""
        tagline = "Lily was here 2.11.34 -- automatically converted from ABC"
        title = "abc2ly grace note bug"
voicedefault =  {
\set Score.defaultBarType = "empty"

     \override Staff.TimeSignature #'style = #'C
\time 4/4 \key e \major \acciaccatura { gis''32 [ a''32] } gis''8[ dis''8 gis''8 b''8] \acciaccatura { a''8 } gis''8.[ dis''16] gis''16[
a''8.]  \bar "|"


        \context Staff="default"

        \layout {
        \midi {
                \context {
                 \Score tempoWholesPerMinute = #(ly:make-moment  120   4 )

reply via email to

[Prev in Thread] Current Thread [Next in Thread]