bug-lilypond
[Top][All Lists]
Advanced

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

abc2ly - church modes, tempo, "-b" option


From: Hans Aberg
Subject: abc2ly - church modes, tempo, "-b" option
Date: Sun, 25 Nov 2007 14:22:51 +0100

Some bugs in abc2ly (LilyPond) 2.11.34, probably easy to fix:

* When using a church mode like E Dorian, ABC expects the pitches to be interpreted relative to the key signature of this mode, that is the two sharps F# and C# in this case; abc2ly just interprets this mode as E major, with four sharps F#, C#, G#, D# then. In other words, in ABC E Dorian, the written notes C (resp. F) should be mapped onto C# (resp. F#), and the others should be as written. But abc2ly also maps G (resp. D) onto G# (resp. D#), and further writes the key signature E major instead of E Dorian. (Example below.)

* abc2ly does not write the tempo mark. An ABC source file may have this entry:
  Q:1/4=120
which should be translated to
  \tempo 4 = 120

(I think it would be nice to fix this, because the MIDI output of LilyPond seems more accurate than of other ABC conversion engines, so it might lead to more use of LilyPond.)

* Then "-b" option seems broken; the equivalent "--beams=None" works, though.

* When executing "abc2ly -h": a typo in the word "success".

  Hans Aberg


Example: The ABC input
T:abc2ly bugs
M:C
L:1/8
Q:1/4=120
K:E Dorian
E<BB>A B>AB<d|F<DA>D B>DA>F|e>ce<g e>Be<g|

I think should have the typeset output of the LilyPond source below, where I have tried to do minimal editing on the output of abc2ly. (It seems also writing the wrong \version in the output.)
----
\version "2.7.40"
\header {
        footnotes = ""
        tagline = "Lily was here 2.11.34 -- automatically converted from ABC"
        title = "abc2ly bugs"
}
voicedefault =  {
\set Score.defaultBarType = "empty"

     \override Staff.TimeSignature #'style = #'C
 \time 4/4 \key e \dorian
 \tempo 4=120
  e'16[    b'8.    b'8.    a'16]    b'8.[    a'16    b'16
   d''8.]  \bar "|"   fis'16[    d'8.    a'8.    d'16]    b'8.[    d'16
a'8. fis'16] \bar "|" e''8.[ cis''16 e''16 g''8.] e''8.[
b'16    e''16    g''8.]  \bar "|"
}

\score{
    <<

        \context Staff="default"
        {
            \voicedefault
        }

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






reply via email to

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