Hi Stephen,

On Wed, Apr 22, 2015 at 12:24 PM, Stephen MacNeil <classicalja...@gmail.com>
wrote:

> Harm , Thomas Morley and others
> I like to follow the discussions even if I don't understand/need something
> because I usually learn a lot and sometimes even adapt some ideas or code
> into something I can use later.
>
> In this thread I was amazed that the scheme created could interpret the
> chords!!! I tend to analyze music (almost daily). Usually I print it out
> and go over it and mark in what I need. When I saw this i instantly tried
> it on some of my scores and was amazed.
>
> Now where I was lost was -
> 1. is it possible to make it read polyphony? <<\top \\ \bottom>> without
> re writing it as a chord?
> 2. the ability to add it to any score as needed for analysis
>

If I'm understanding you correctly, you mean to be able to feed it, say, a
Beethoven sonata and have it provide a Roman numeral analysis?  Sorting out
harmonic rhythm, embellishing tones, deciding on the current key, etc.?Now
that would be a lifetime's labor :)

The task is so complex with any but the simplest music, and there is so
much room for alternate interpretation, that all that is feasible is a
convenient way to format the symbols that the analyst requires.

As an example of a simple formatter, see the code here:
http://www.mail-archive.com/lilypond-user%40gnu.org/msg96575.html

A more representative usage of the code at the link would be:


%%%%%%%%%%%%%%%%%  EXAMPLE %%%%%%%%%%%%%%%%%%%%%%

bassline = \relative c' {
  \clef bass
  \key g \major
  \time 3/4
  g4 fis f
  e es es
  d2 dis4
  e2.
  \bar "||"
}

analysis = \lyricmode {
  \set stanza = #"G:     " % use spaces to adjust position of key indication
  \markup \rN { I }
  \markup \rN { V 6 5 }
  \markup \rN { vii o 4 3 / IV }
  \markup \rN { IV 6 }
  \markup \rN { ii h 4 3 }
  \markup \rN { Fr + 6 }
  \markup \rN { I 6 4 }
  \markup \rN { vii o 7 / vi }
  \markup \rN { vi }
}

\score {
  \new Staff <<
    \new Voice = "bass" { \bassline }
    \new Lyrics \lyricsto "bass" { \analysis }
  >>
  \layout {
    \context {
      \Score
      \override SpacingSpanner #'shortest-duration-space = #6
    }
  }
}


%%%%%%%%%%
Hope this is helpful,
David
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to