Problems with Piano Staff Template

2009-06-01 Thread Mark Austin
I'm trying to engrave a set of tunes. It uses the Piano format with
centred dynamics, so I used the template in the Learning manual,
editing out the stuff used in the manual. However, I can't change the
tempo or key. I've edited the global variable as shown, but it still
comes out in C and common time. Have I removed something I shouldn't
have, or have I missed something

Here's the code:

\version 2.12.0

\include english.ly

\paper {
#(define dump-extents #t)
line-width = 160\mm - 2.0 * 0.4\in
ragged-right = ##t
force-assignment = #
line-width = #(- line-width (* mm  3.00))
}

\layout {

}

\header {

}

global = {
\key g \major
\time 6/8
}

upper = \relative c''' {
\clef treble
g8[ fs g] d4.
}

lower = \relative c {
\clef bass
\stemDown
g8[( d' g)] g,[( d' g)]
}

dynamics = {
s8\mf
}

pedal = {

}

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper \upper
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower  \lower 
\new Dynamics = pedal \pedal
  

  \layout {
% define Dynamics context
\context {
  \type Engraver_group
  \name Dynamics
  \alias Voice
  \consists Output_property_engraver
  \consists Piano_pedal_engraver
  \consists Script_engraver
  \consists New_dynamic_engraver
  \consists Dynamic_align_engraver
  \consists Text_engraver
  \consists Skip_event_swallow_translator
  \consists Axis_group_engraver

  pedalSustainStrings = #'(Ped. *Ped. *)
  pedalUnaCordaStrings = #'(una corda  tre corde)
  \override DynamicLineSpanner #'Y-offset = #0
  \override TextScript #'font-size = #2
  \override TextScript #'font-shape = #'italic
  \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
}
% modify PianoStaff context to accept Dynamics context
\context {
  \PianoStaff
  \accepts Dynamics
}
  }
}

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper \dynamics \pedal 
\new Staff = Staff_pfLower  \global \lower \dynamics \pedal 
  
  \midi { }
}

-- 
Mark Austin

--
For Whigs admit no force but argument
--
\version 2.12.0

\include english.ly

\paper {
	#(define dump-extents #t)
	line-width = 160\mm - 2.0 * 0.4\in
	ragged-right = ##t
	force-assignment = #
	line-width = #(- line-width (* mm  3.00))
}

\layout {
  
}

\header {

}

global = {
	\key g \major
	\time 6/8
}

upper = \relative c''' {
	\clef treble
	g8[ fs g] d4.
}

lower = \relative c {
	\clef bass
	\stemDown
	g8[( d' g)] g,[( d' g)]
}

dynamics = {
	s8\mf
}

pedal = {

}

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper \upper
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower  \lower 
\new Dynamics = pedal \pedal
  

  \layout {
% define Dynamics context
\context {
  \type Engraver_group
  \name Dynamics
  \alias Voice
  \consists Output_property_engraver
  \consists Piano_pedal_engraver
  \consists Script_engraver
  \consists New_dynamic_engraver
  \consists Dynamic_align_engraver
  \consists Text_engraver
  \consists Skip_event_swallow_translator
  \consists Axis_group_engraver

  pedalSustainStrings = #'(Ped. *Ped. *)
  pedalUnaCordaStrings = #'(una corda  tre corde)
  \override DynamicLineSpanner #'Y-offset = #0
  \override TextScript #'font-size = #2
  \override TextScript #'font-shape = #'italic
  \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
}
% modify PianoStaff context to accept Dynamics context
\context {
  \PianoStaff
  \accepts Dynamics
}
  }
}

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper \dynamics \pedal 
\new Staff = Staff_pfLower  \global \lower \dynamics \pedal 
  
  \midi { }
}


Channel Quadrilles.pdf
Description: Adobe PDF document
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: scheme function for transposition

2009-06-01 Thread Josiah Boothby
 I think you have to declare two variables:
 #(define-music-function (parser location trans notes) (ly:music? ly:music?)
 #{
  \transpose c $trans { $notes }
 #})

The problem appears to be that \transpose is expecting a notename, not
a variable, so this has the same problem, and doubled.

Thank you,

Josiah


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread James E. Bailey
You've omitted the \global from your score block. It should happen  
simultaneously with the music, so \global \lower

Am 01.06.2009 um 09:38 schrieb Mark Austin:


I'm trying to engrave a set of tunes. It uses the Piano format with
centred dynamics, so I used the template in the Learning manual,
editing out the stuff used in the manual. However, I can't change the
tempo or key. I've edited the global variable as shown, but it still
comes out in C and common time. Have I removed something I shouldn't
have, or have I missed something

Here's the code:

\version 2.12.0

\include english.ly

\paper {
#(define dump-extents #t)
line-width = 160\mm - 2.0 * 0.4\in
ragged-right = ##t
force-assignment = #
line-width = #(- line-width (* mm  3.00))
}

\layout {

}

\header {

}

global = {
\key g \major
\time 6/8
}

upper = \relative c''' {
\clef treble
g8[ fs g] d4.
}

lower = \relative c {
\clef bass
\stemDown
g8[( d' g)] g,[( d' g)]
}

dynamics = {
s8\mf
}

pedal = {

}

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper \upper
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower  \lower 
\new Dynamics = pedal \pedal




  \layout {
% define Dynamics context
\context {
  \type Engraver_group
  \name Dynamics
  \alias Voice
  \consists Output_property_engraver
  \consists Piano_pedal_engraver
  \consists Script_engraver
  \consists New_dynamic_engraver
  \consists Dynamic_align_engraver
  \consists Text_engraver
  \consists Skip_event_swallow_translator
  \consists Axis_group_engraver

  pedalSustainStrings = #'(Ped. *Ped. *)
  pedalUnaCordaStrings = #'(una corda  tre corde)
  \override DynamicLineSpanner #'Y-offset = #0
  \override TextScript #'font-size = #2
  \override TextScript #'font-shape = #'italic
  \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
}
% modify PianoStaff context to accept Dynamics context
\context {
  \PianoStaff
  \accepts Dynamics
}
  }
}

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper \dynamics \pedal 
\new Staff = Staff_pfLower  \global \lower \dynamics \pedal 



  \midi { }
}

--
Mark Austin

--
For Whigs admit no force but argument
--Channel Quadrilles.lyChannel  
Quadrilles.pdf___

lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


James E. Bailey



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: scheme function for transposition

2009-06-01 Thread Marc Hohl

Josiah Boothby schrieb:

I think you have to declare two variables:
#(define-music-function (parser location trans notes) (ly:music? ly:music?)
#{
 \transpose c $trans { $notes }
#})



  

Sorry, I forgot to answer to the list, but as my proposal doesn't
work anyway, it doesn't matter.

The problem appears to be that \transpose is expecting a notename, not
a variable, so this has the same problem, and doubled.
  

Searching in the archives, I found in

http://lists.gnu.org/archive/html/lilypond-user/2007-09/msg00084.html

that \transpose can't be used with variables, but there is

(ly:music-transpose music expression pitch)

which you could use instead.

Marc


Thank you,

Josiah

  

http://lists.gnu.org/archive/html/lilypond-user/2007-09/msg00084.html


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: emacs lilypond-mode

2009-06-01 Thread Helge Kruse

Moin Thomas,

Error codes are created by the operating system and reported by the 
application. The error code may be dependent on the context.


The context that you reported looks like a CreateFile 
http://msdn.microsoft.com/en-us/library/aa363858(VS.85).aspx context. 
In this case it means ERROR_FILE_NOT_FOUND 
http://msdn.microsoft.com/en-us/library/ms681382.aspx;, the system 
cannot find the file specified. That's in contrast to error code 3 
ERROR_PATH_NOT_FOUND, so only your file name is incorrect.


Regards,
Helge

Thomas wrote:

PS
somebody out there must know what error code 2 in the lilypond-context 
means ... I even searched the .el files, but no result
or is this an emacs error? would be at least interesting, if not helpfull to 
find that out...

cheers
thomas 






___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user





___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Tim Rowe
2009/6/1 Carl D. Sorensen c_soren...@byu.edu:

 You are welcome to pursue this, if you are interested in it.  It is not my
 interest.

I think it shows the impossibility of what you are trying to achieve,
at least in the completely general case, although pushing the
boundaries closer to that general case is valuable of course. Beyond
trivial cases, a combination of notes does not have /a/ name, it has
many names depending on the musical context.  For jazz chords, the
chord notes and the chord names really need to be separated (perhaps
an optional name following the notes) unless the software can
understand the musical context better than a lot of musicians. Or just
stick with chord mode.

-- 
Tim Rowe


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: scheme function for transposition

2009-06-01 Thread Gilles THIBAULT




   \transpose c $trans { \firstNotes }
string:2:17: error: syntax error, unexpected MUSIC_IDENTIFIER,
expecting NOTENAME_PITCH or TONICNAME_PITCH


The only solution i know is to use the scheme equivalent of \transpose :
ly:music-transpose
But it is a bit harder...



firstNotes = \relative c' { c4 d e f }

first = #(define-music-function (parser location trans)(ly:music?)
(let* (
   (trans-note (car (ly:music-property trans 'elements)))
   (trans-pitch (ly:music-property trans-note 'pitch))
   (delta-pitch (ly:pitch-diff trans-pitch (ly:make-pitch -1 0 0
;% (display delta-pitch)(newline)
(ly:music-transpose (ly:music-deep-copy firstNotes) delta-pitch)
))

\score {
   \new Staff  \firstNotes  
   \new Staff  \first d 
   \new Staff  \first e

 
}

%%%

Gilles




___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: [Issue?] hiding Accidental(s) on tied note(s) after a line break

2009-06-01 Thread David Kastrup
Joe Neeman joenee...@gmail.com writes:

[...]

 p.s. Despite [As a result of?] banging my head against this
 particular wall, I think I learned a little about Scheme +
 Lilypond... that's some consolation!  =)

 If it's any additional consolation, your approach would have been
 perfectly ok were it not for the idiosyncrasies of Accidental.

Wouldn't it make more sense then first to apply his approach, and then
make sure that it actually works as intended?

It would appear to me that this would cause fewer surprises and
maintenance headaches in future.

It would appear that his approach was foiled by kinks in the current
implementation, and the long-term solution should prefer getting rid of
kinks rather than adding new ones.

Note that I don't have any actual knowledge of the code: it is just that
this conversation sets off my alarm bells.

-- 
David Kastrup



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread Mark Austin
Thanks James. Works a treat now. However, this means the error is in
the template in the Learning Manual, since I copied it straight over.

The first few lines of the first \score block should be:

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper 
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower \global \lower 
\new Dynamics = pedal \pedal
  

A subsidiary question. What does the second \score block do?

On 01/06/2009, James E. Bailey derhindem...@googlemail.com wrote:
 You've omitted the \global from your score block. It should happen
 simultaneously with the music, so \global \lower
 Am 01.06.2009 um 09:38 schrieb Mark Austin:

 I'm trying to engrave a set of tunes. It uses the Piano format with
 centred dynamics, so I used the template in the Learning manual,
 editing out the stuff used in the manual. However, I can't change the
 tempo or key. I've edited the global variable as shown, but it still
 comes out in C and common time. Have I removed something I shouldn't
 have, or have I missed something

 Here's the code:
snip

-- 
Mark Austin

--
For Whigs admit no force but argument
--


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread Mats Bengtsson



Mark Austin wrote:

Thanks James. Works a treat now. However, this means the error is in
the template in the Learning Manual, since I copied it straight over.

The first few lines of the first \score block should be:

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper 
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower \global \lower 
\new Dynamics = pedal \pedal
  
  

Yes of course! Carl or John, could you fix this in LSR and in the GIT copy?

A subsidiary question. What does the second \score block do?
  
Since it contains a \midi{} block but not \layout{} block, it's used to 
produce the MIDI file.


/Mats



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread Jonathan Kulp

Mats Bengtsson wrote:



Mark Austin wrote:

Thanks James. Works a treat now. However, this means the error is in
the template in the Learning Manual, since I copied it straight over.

The first few lines of the first \score block should be:

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper 
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower \global \lower 
\new Dynamics = pedal \pedal
  
  

Yes of course! Carl or John, could you fix this in LSR and in the GIT copy?

A subsidiary question. What does the second \score block do?
  


I'm having trouble getting the LSR database to come up, and when I 
opened the template in my source code it said at the top not to edit 
this file. Also I still can't pull from git:


git.sv.gnu.org[0: 199.232.41.69]: errno=Connection refused
fatal: unable to connect a socket (Connection refused)

I've never seen this message before. Is it a problem on my end, or are 
they still sorting things out at git?


Jon

Since it contains a \midi{} block but not \layout{} block, it's used to 
produce the MIDI file.


/Mats




--
Jonathan Kulp
http://www.jonathankulp.com


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread Graham Percival
On Mon, Jun 01, 2009 at 06:51:59AM -0500, Jonathan Kulp wrote:

 I'm having trouble getting the LSR database to come up, and when I  
 opened the template in my source code it said at the top not to edit  
 this file.

Yes; it should only be changed in LSR.

 Also I still can't pull from git:

 git.sv.gnu.org[0: 199.232.41.69]: errno=Connection refused
 fatal: unable to connect a socket (Connection refused)

 I've never seen this message before. Is it a problem on my end, or are  
 they still sorting things out at git?

Yes, git is still hosed.

Cheers,
- Graham


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


partcombine/instrumentName problem

2009-06-01 Thread Garrett Fitzgerald
I have the following code in my ConductorScore.ly. The first one, with
the combined parts, doesn't print the instumentName: the second one,
with just one part, does. Anybody know offhand how to fix this?
Thanks. (Files are available at
http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=1643, if that's
relevant to the answer.)

  \new Staff \with { printPartCombineTexts = ##f } {

  \set Staff.midiInstrument = bassoon
  \set Staff.instrumentName = Bassoon
  \set Staff.shortInstrumentName = Bass.

  \partcombine \bassoonOne \bassoonTwo

  }

  \new Staff \with { printPartCombineTexts = ##f } {
\set Staff.midiInstrument = clarinet
\set Staff.instrumentName = Eb Clarinet
\set Staff.shortInstrumentName = Eb Clar.

\clarinetInEb
  }


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Tim McNamara


On Jun 1, 2009, at 4:13 AM, Tim Rowe wrote:


2009/6/1 Carl D. Sorensen c_soren...@byu.edu:

You are welcome to pursue this, if you are interested in it.  It  
is not my

interest.


I think it shows the impossibility of what you are trying to achieve,
at least in the completely general case, although pushing the
boundaries closer to that general case is valuable of course. Beyond
trivial cases, a combination of notes does not have /a/ name, it has
many names depending on the musical context.  For jazz chords, the
chord notes and the chord names really need to be separated (perhaps
an optional name following the notes) unless the software can
understand the musical context better than a lot of musicians. Or just
stick with chord mode.


Particularly when entering the notes and the root is not the chord  
name.  For example, a chord I saw in a Pat Martino chart would have  
included:


d des fes aes

which was written as Dbmin/D.  I have no idea how one would make  
LilyPond properly interpret slash chords or compound chords from note  
entries.  Rendering chords written as chord names (des2:m5/d) would  
of course be simpler.



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: partcombine/instrumentName problem

2009-06-01 Thread James E. Bailey
I don't know enough about \partcombine to tell you why, but if you  
use the \new Staff \with { instrumentName = Bassoon }, you should get  
what you want. At least, I got it, but I curiously got two scores  
with the following code:

\score {
   \new Staff \with {
 printPartCombineTexts = ##f
 midiInstrument = bassoon
 instrumentName = Bassoon
 shortInstrumentName = Bass.
  }  \partcombine \bassoonOne \bassoonTwo 
}

And, can someone explain why this score block produces a midi file?

Am 01.06.2009 um 15:06 schrieb Garrett Fitzgerald:


I have the following code in my ConductorScore.ly. The first one, with
the combined parts, doesn't print the instumentName: the second one,
with just one part, does. Anybody know offhand how to fix this?
Thanks. (Files are available at
http://www.mutopiaproject.org/cgibin/piece-info.cgi?id=1643, if that's
relevant to the answer.)

  \new Staff \with { printPartCombineTexts = ##f } {

  \set Staff.midiInstrument = bassoon
  \set Staff.instrumentName = Bassoon
  \set Staff.shortInstrumentName = Bass.

  \partcombine \bassoonOne \bassoonTwo

  }

  \new Staff \with { printPartCombineTexts = ##f } {
\set Staff.midiInstrument = clarinet
\set Staff.instrumentName = Eb Clarinet
\set Staff.shortInstrumentName = Eb Clar.

\clarinetInEb
  }


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


James E. Bailey



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: [ANN] Nederlandstalig LilyPond forum / Dutch LilyPond user forum

2009-06-01 Thread Arno Rog
Grammostola Rosea rosea.grammostola at gmail.com writes:


 Ik kan me niet registreren... krijg geen email...
 
Check even je 'spam-box', bij mij verdween hij linea-recta in de spam.

AWRog




___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Compiling files with lots of data

2009-06-01 Thread Mike Solomon
Hey lilypond users,
I am compiling a file w/ many notes (on the order of 5*(3^7) 32nd notes
including spaces) that, @ the interpreting music stage, counted up to
2184.  I started it last night and it has been running for upwards of 9h
using version 2.13.0 on a 1.5 GHz PowerPC running OS X 10.4.11 .  I am
wondering if there are any steps I can take (short of just putting less dots
on the page) to speed up the process?  Attached is the file (sorry that it
is not a minimal example - by its nature, it is maximal, although you'll see
very quickly that the vast majority of it is similar).
There are a few things in it that I suspect may be causing the problem,
so my question would be: for any one of these things, will its inclusion
make lily run slower when she is processing large amounts of data?

1)  I have set timing = ##f instead of using cadenzaOn
2)  I have removed the Bar_engraver.
3)  I have set the Stem stencil to ##f instead of removing the
Stem_engraver.

Additionally, if there are any other optimization suggestions you have,
please let me know!

Cheers,
~Mike



pleasework.ly
Description: Binary data
___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: partcombine/instrumentName problem

2009-06-01 Thread Gilles THIBAULT

  \score {
 \new Staff \with {
   printPartCombineTexts = ##f
   midiInstrument = bassoon
   instrumentName = Bassoon
   shortInstrumentName = Bass.
}  \partcombine \bassoonOne \bassoonTwo 
  }

This solution seems to work great.
I think that the strange behaviour of \partCombine is related to \grace notes
Here is a little example :


partA = \relative { \grace { fis8 } g1 }
partB = \relative { \grace { dis8 } e1 }

\score { 
 
\new Staff { 
%% here it's work
\partcombine \partA \partB
 
 }
\new Staff { 
%% here it's doesn't work
\set Staff.instrumentName = bassoon 
\partcombine \partA \partB
}
 
}
%

Gilles___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Thomas
I was just brainstorming, I don`t expect anybody to implement that :-)
 ... I just thought, if music (as long as it's not abstract) follows some 
basic principles, why this is not reflected in the chord naming sometimes.

Slash Chords are a good example ... they are a good, easily readable 
instruction what notes to play, but they don't reflect the harmonic function 
of the chord.
I'm sure an illiterate gypsy guitarist could improvise very well over that 
Pat Martino song, because he recognizes the tonic or dominat character of 
that chord by ear...
that is the underlying harmonic function ... although he shouldn't be able 
to do that, because slash chords are considered modern, sophisticated, 
difficult

Lets say, that Martino song has a key and a tonic, and the harmony moves in 
a chain of fifth, half- and whole-tones towards oe away from that tonic, 
then the  Dbmin/D
very likely has a dominant or tonic finction within this chain (depending on 
the rest of this song) and could be named after this function ... but that 
would be more difficult to read probably.

Don't let me be misunderstood... thats just brainstorming about naming jazz 
chords in general (and how chord names sometimes obscure whats going on 
harmonically) ... to implement something like this
would be very difficult, I guess ... I'm only starting to work with lilypond 
and didn't want to introduce overambitiuos goals. I think what you are 
planning to do is very valuable and does not need a deep discussion about 
harmony etc.
cheers
thomas

.

Tim McNamara tim...@bitstream.net schrieb im Newsbeitrag 
news:cf58f389-2dc8-4eef-9cf9-ccd8b7af7...@bitstream.net...

 On Jun 1, 2009, at 4:13 AM, Tim Rowe wrote:

 2009/6/1 Carl D. Sorensen c_soren...@byu.edu:

 You are welcome to pursue this, if you are interested in it.  It  is not 
 my
 interest.

 I think it shows the impossibility of what you are trying to achieve,
 at least in the completely general case, although pushing the
 boundaries closer to that general case is valuable of course. Beyond
 trivial cases, a combination of notes does not have /a/ name, it has
 many names depending on the musical context.  For jazz chords, the
 chord notes and the chord names really need to be separated (perhaps
 an optional name following the notes) unless the software can
 understand the musical context better than a lot of musicians. Or just
 stick with chord mode.

 Particularly when entering the notes and the root is not the chord  name. 
 For example, a chord I saw in a Pat Martino chart would have  included:

 d des fes aes

 which was written as Dbmin/D.  I have no idea how one would make  LilyPond 
 properly interpret slash chords or compound chords from note  entries. 
 Rendering chords written as chord names (des2:m5/d) would  of course be 
 simpler. 





___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: scheme function for transposition

2009-06-01 Thread Josiah Boothby
 The only solution i know is to use the scheme equivalent of \transpose :
    ly:music-transpose
 But it is a bit harder...

 

 firstNotes = \relative c' { c4 d e f }

 first = #(define-music-function (parser location trans)(ly:music?)
 (let* (
   (trans-note (car (ly:music-property trans 'elements)))
   (trans-pitch (ly:music-property trans-note 'pitch))
   (delta-pitch (ly:pitch-diff trans-pitch (ly:make-pitch -1 0 0
 ;% (display delta-pitch)(newline)
 (ly:music-transpose (ly:music-deep-copy firstNotes) delta-pitch)
 ))

 \score {
   \new Staff  \firstNotes     \new Staff  \first d   \new Staff  \first e
  
 }

 %%%

Thank you, this works well. I'm trying to understand what's going on
in the scheme code. Transposition normally takes the two pitch names
as parameters (e.g., \transpose c es \notes). Is the above code
something flexible enough that it could work with the first of those
being something other than c? (e.g., \transpose f g \notes)

Thanks again,

Josiah


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Marc Hohl

Thomas schrieb:

I was just brainstorming, I don`t expect anybody to implement that :-)
 ... I just thought, if music (as long as it's not abstract) follows some 
basic principles, why this is not reflected in the chord naming sometimes.


Slash Chords are a good example ... they are a good, easily readable 
instruction what notes to play, but they don't reflect the harmonic function 
of the chord.
I'm sure an illiterate gypsy guitarist could improvise very well over that 
Pat Martino song, because he recognizes the tonic or dominat character of 
that chord by ear...
that is the underlying harmonic function ... although he shouldn't be able 
to do that, because slash chords are considered modern, sophisticated, 
difficult


Lets say, that Martino song has a key and a tonic, and the harmony moves in 
a chain of fifth, half- and whole-tones towards oe away from that tonic, 
then the  Dbmin/D
very likely has a dominant or tonic finction within this chain (depending on 
the rest of this song) and could be named after this function ... but that 
would be more difficult to read probably.


Don't let me be misunderstood... thats just brainstorming about naming jazz 
chords in general (and how chord names sometimes obscure whats going on 
harmonically) ... to implement something like this
would be very difficult, I guess ... I'm only starting to work with lilypond 
and didn't want to introduce overambitiuos goals. I think what you are 
planning to do is very valuable and does not need a deep discussion about 
harmony etc.

cheers
thomas
  

I think this is far from being implemented, but it is a nice idea to let
the computer do some kind of harmonic analysis to name a given
chord structure properly. And with the book from Pöhlert as a
starting point, this seems to be doable (at least Pöhlert tries to remove
as much mystery out of the jazz theory as possible).

Marc

.

Tim McNamara tim...@bitstream.net schrieb im Newsbeitrag 
news:cf58f389-2dc8-4eef-9cf9-ccd8b7af7...@bitstream.net...
  

On Jun 1, 2009, at 4:13 AM, Tim Rowe wrote:



2009/6/1 Carl D. Sorensen c_soren...@byu.edu:

  
You are welcome to pursue this, if you are interested in it.  It  is not 
my

interest.


I think it shows the impossibility of what you are trying to achieve,
at least in the completely general case, although pushing the
boundaries closer to that general case is valuable of course. Beyond
trivial cases, a combination of notes does not have /a/ name, it has
many names depending on the musical context.  For jazz chords, the
chord notes and the chord names really need to be separated (perhaps
an optional name following the notes) unless the software can
understand the musical context better than a lot of musicians. Or just
stick with chord mode.
  
Particularly when entering the notes and the root is not the chord  name. 
For example, a chord I saw in a Pat Martino chart would have  included:


d des fes aes

which was written as Dbmin/D.  I have no idea how one would make  LilyPond 
properly interpret slash chords or compound chords from note  entries. 
Rendering chords written as chord names (des2:m5/d) would  of course be 
simpler. 







___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user

  




___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Grammostola Rosea

Marc Hohl wrote:

Thomas schrieb:

I was just brainstorming, I don`t expect anybody to implement that :-)
 ... I just thought, if music (as long as it's not abstract) follows 
some basic principles, why this is not reflected in the chord naming 
sometimes.


Slash Chords are a good example ... they are a good, easily readable 
instruction what notes to play, but they don't reflect the harmonic 
function of the chord.
I'm sure an illiterate gypsy guitarist could improvise very well over 
that Pat Martino song, because he recognizes the tonic or dominat 
character of that chord by ear...
that is the underlying harmonic function ... although he shouldn't be 
able to do that, because slash chords are considered modern, 
sophisticated, difficult


Lets say, that Martino song has a key and a tonic, and the harmony 
moves in a chain of fifth, half- and whole-tones towards oe away from 
that tonic, then the  Dbmin/D
very likely has a dominant or tonic finction within this chain 
(depending on the rest of this song) and could be named after this 
function ... but that would be more difficult to read probably.


Don't let me be misunderstood... thats just brainstorming about 
naming jazz chords in general (and how chord names sometimes obscure 
whats going on harmonically) ... to implement something like this
would be very difficult, I guess ... I'm only starting to work with 
lilypond and didn't want to introduce overambitiuos goals. I think 
what you are planning to do is very valuable and does not need a deep 
discussion about harmony etc.

cheers
thomas
  

I think this is far from being implemented, but it is a nice idea to let
the computer do some kind of harmonic analysis to name a given
chord structure properly. And with the book from Pöhlert as a
starting point, this seems to be doable (at least Pöhlert tries to remove
as much mystery out of the jazz theory as possible).
Such a application as Improvisor is using scientific analysis to compose 
jazz songs..

It's GPL AFAIK
http://www.cs.hmc.edu/~keller/jazz/improvisor/

\r


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Grammostola Rosea

Tim McNamara wrote:


On Jun 1, 2009, at 4:13 AM, Tim Rowe wrote:


2009/6/1 Carl D. Sorensen c_soren...@byu.edu:

You are welcome to pursue this, if you are interested in it.  It is 
not my

interest.


I think it shows the impossibility of what you are trying to achieve,
at least in the completely general case, although pushing the
boundaries closer to that general case is valuable of course. Beyond
trivial cases, a combination of notes does not have /a/ name, it has
many names depending on the musical context.  For jazz chords, the
chord notes and the chord names really need to be separated (perhaps
an optional name following the notes) unless the software can
understand the musical context better than a lot of musicians. Or just
stick with chord mode.


Particularly when entering the notes and the root is not the chord 
name.  For example, a chord I saw in a Pat Martino chart would have 
included:


d des fes aes

which was written as Dbmin/D.  I have no idea how one would make 
LilyPond properly interpret slash chords or compound chords from note 
entries.  Rendering chords written as chord names (des2:m5/d) would of 
course be simpler.



I agree with this.

Couldn't there be an 'automatic chord mode' and an 'mode which just 
display the chord names', not the notes?


\r


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Carl D. Sorensen



On 6/1/09 12:50 PM, Grammostola Rosea rosea.grammost...@gmail.com wrote:

 Tim McNamara wrote:
 
 On Jun 1, 2009, at 4:13 AM, Tim Rowe wrote:
 
 2009/6/1 Carl D. Sorensen c_soren...@byu.edu:
 
 You are welcome to pursue this, if you are interested in it.  It is
 not my
 interest.
 
 I think it shows the impossibility of what you are trying to achieve,
 at least in the completely general case, although pushing the
 boundaries closer to that general case is valuable of course. Beyond
 trivial cases, a combination of notes does not have /a/ name, it has
 many names depending on the musical context.  For jazz chords, the
 chord notes and the chord names really need to be separated (perhaps
 an optional name following the notes) unless the software can
 understand the musical context better than a lot of musicians. Or just
 stick with chord mode.
 
 Particularly when entering the notes and the root is not the chord
 name.  For example, a chord I saw in a Pat Martino chart would have
 included:
 
 d des fes aes
 
 which was written as Dbmin/D.  I have no idea how one would make
 LilyPond properly interpret slash chords or compound chords from note
 entries.  

As far as I can see, there is very little hope for LilyPond making the right
decision about this chord entered in note mode.  The first note is not the
root of the chord, so it would require substantial computation time to try
to identify the chord properly (and there's no guarantee that the proper
chord identification is unique, based upon just the set of notes).  I'm not
even proposing to *try* to attack this problem.

As far as my current plan goes, this chord would be identified as a D chord
of some type, as is the current practice in LilyPond.  If the root and
inversion have not been identified (which they will not be when chords are
entered in note mode), then the first note in the chord is identified as the
root, which gives weird chord names.


 Rendering chords written as chord names (des2:m5/d) would of
 course be simpler.

Yes, and that functionality is not currently as strong as we'd like it to
be, I think.  That's what I'm proposing to rework, when I get the chance.

 
 I agree with this.
 
 Couldn't there be an 'automatic chord mode' and an 'mode which just
 display the chord names', not the notes?
 

What do you mean by 'automatic chord mode', and  'mode which just displays
the chord names'?

We currently have a context which just displays the chord names.  It's
called ChordNames.

We *don't* have a mode which just *accepts* chord names.  We have a mode
(chord mode) that accepts a root, a modifier, a maximum chord step, and can
add, remove, and modify chord steps, including moving a pitch to the bass or
adding a pitch to the bass.  This mode does not use chord names per se,
because chord names tend to be ambiguous (all one needs to do is look at the
variety of names for a given chord as defined by a set of pitches to see
this).  Parsers tend not to deal well with ambiguities, so what we have is a
completely non-ambiguous input format.  Someone who understands the
chordmode input format can look at a chordmode expression and determine
exactly what pitches are intended to be included in the chord.

A chordnamemode *input* mode has been proposed a couple of times.  This mode
would take only a root (and optionally, a slash or alternate bass note), and
everything else about the chord would be in the form of a markup.  For
american jazz chords, this functionality seems to be feasible (but it
couldn't handle the german practice of making minor chords have a lower case
root name, instead of an upper case root name for a major chord).  But I do
not have the expertise to implement such a mode, and I'm not really
interested in spending my time to develop such a mode.  For somebody who is
familiar with the parser, it may not be a huge deal to implement such an
input mode.   

If we had such a mode, we could add properties to a ChordEvent, I think we
could add the necessary properties to store the chord name information that
was generated by the input.  And the ChordNames context could be modified to
display those (except that I'm not sure how slash notes would be handled;
but I would guess it's possible to do so).

I guess that the bottom line to this ongoing request for a chord name
*input* mode may be able to be implemented, but it will likely take somebody
who is interested in it deciding to put in the time to make it happen, like
Marc has done with tablature.  Discussions about how it might work, what the
input syntax should be, etc. can be held, but they will remain just
interesting reference material until somebody decides to do something about
it.

Thanks,

Carl



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread Jonathan Kulp

Mats Bengtsson wrote:



Mark Austin wrote:

Thanks James. Works a treat now. However, this means the error is in
the template in the Learning Manual, since I copied it straight over.

The first few lines of the first \score block should be:

\score {
  \new PianoStaff = PianoStaff_pf 
\new Staff = Staff_pfUpper  \global \upper 
\new Dynamics = Dynamics_pf \dynamics
\new Staff = Staff_pfLower \global \lower 
\new Dynamics = pedal \pedal
  
  

Yes of course! Carl or John, could you fix this in LSR and in the GIT copy?

A subsidiary question. What does the second \score block do?
  


Ok I fixed this in LSR.  Does that mean it will show up properly in the 
docs next time they're recompiled, or do I need to fix it somewhere else 
as well?


Jon
--
Jonathan Kulp
http://www.jonathankulp.com


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Problems with Piano Staff Template

2009-06-01 Thread Carl D. Sorensen



On 6/1/09 1:38 PM, Jonathan Kulp jonlancek...@gmail.com wrote:

 Mats Bengtsson wrote:
 
 
 Mark Austin wrote:
 Thanks James. Works a treat now. However, this means the error is in
 the template in the Learning Manual, since I copied it straight over.
 
 The first few lines of the first \score block should be:
 
 \score {
   \new PianoStaff = PianoStaff_pf 
 \new Staff = Staff_pfUpper  \global \upper 
 \new Dynamics = Dynamics_pf \dynamics
 \new Staff = Staff_pfLower \global \lower 
 \new Dynamics = pedal \pedal
 
  
 Yes of course! Carl or John, could you fix this in LSR and in the GIT copy?
 A subsidiary question. What does the second \score block do?
  
 
 Ok I fixed this in LSR.  Does that mean it will show up properly in the
 docs next time they're recompiled, or do I need to fix it somewhere else
 as well?

By fixing it in LSR, when makelsr.py is run, the new versions will get into
the docs, IIUC.

Thanks,

Carl




___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread lasconic

Hi, 
Just in case it can be helpful, someone (Karl) post a pdf he wrote on
MuseScore (http://www.musescore.org) mailing list about chord name display.
Musescore is a free GPL WYSIWYG scorewriter (with lilypond export
capabilities)
Maybe it can be helpful to your current and future work on chord names
engraving for light music. Here is the discussion thread: 
http://n2.nabble.com/Setting-file-associations-for-Windows-td2729864i20.html#a2859233

Here is the link to the pdf : 
http://www.njonjo.net/chordfonts/chordfonts.pdf

HIH
Lasconic


-- 
View this message in context: 
http://www.nabble.com/Lilypond-and-Jazz-chords-tp23778843p23820508.html
Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com.



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: scheme function for transposition

2009-06-01 Thread Gilles THIBAULT

Is the above code something flexible
enough that it could work with the first of those
being something other than c?
(e.g., \transpose f g \notes)

Just change
   (ly:make-pitch -1 0 0) (pitch c)
by
(ly:make-pitch -1 3 0) (pitch f)
( 0 = c, 1 = d,  etc ...)

If you do want 2 parameters, proceed as for one (copy/past) changing only 
the names.


%
firstNotes = \relative c' { c4 d e f }

first = #(define-music-function (parser location root trans)(ly:music? 
ly:music?)

(let* (
   (trans-note (car (ly:music-property trans 'elements)))
   (trans-pitch (ly:music-property trans-note 'pitch))
   (root-note (car (ly:music-property root 'elements)))
   (root-pitch (ly:music-property root-note 'pitch))
   (delta-pitch (ly:pitch-diff trans-pitch root-pitch)))
(ly:music-transpose (ly:music-deep-copy firstNotes) delta-pitch)
))

\score {
\new Staff  \firstNotes
 \new Staff  \first c d
 \new Staff  \first d fis
 \new Staff  \first e a
 
}

%%
Gilles 





___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


adding to LSR the thumbnail image is not correct

2009-06-01 Thread chip
I have added my template to the LSR but the thumbnail image that appears 
is not correct. I have tried as both Standalone Snippet and as Large 
Snippet. Is there something I can do to fix this so the thumbnail 
appears as it should?

Regards,
chip


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Better MIDI

2009-06-01 Thread Peter Chubb

Hi,

  I've put up a page on how to get more realistic sounding MIDI output
  from current LilyPond, along with the scripts and scheme code used, at
  http://www.nicta.com.au/people/chubbp/articulate

  It has before-and-after MIDI samples to listen to, and a full
  description of what the script does and how to use it.

  Is there any way that the scheme code can be distributed with
  LilyPond?  It's fairly useful now, but could do with going over by
  some real experts for improvement. In particular I'd like to get rid
  of the double pass over all the notes (first to find out what to do
  then to do it), and the hacked up communication between the two
  passes.  I'd also like to do something about trills and turns with
  alterations, and do a better calculation for trill duration.

--
Dr Peter Chubb  peter DOT chubb AT nicta.com.au
http://www.ertos.nicta.com.au   ERTOS within National ICT Australia
   Kernel Engineering Group (KEG): Where Systems Brew.


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Tim McNamara


On Jun 1, 2009, at 2:33 PM, Carl D. Sorensen wrote:

A chordnamemode *input* mode has been proposed a couple of times.   
This mode
would take only a root (and optionally, a slash or alternate bass  
note), and

everything else about the chord would be in the form of a markup.  For
american jazz chords, this functionality seems to be feasible (but it
couldn't handle the german practice of making minor chords have a  
lower case

root name, instead of an upper case root name for a major chord).


Carl succinctly illuminates another problem, which is that LilyPond  
works with many different musical systems.  I am only familiar with  
what he calls American jazz chords and would be out to sea if a  
German chart was placed in front of me- or one of the many other  
notation systems with which I am unfamiliar.  Heck, I am out to sea  
often enough with American jazz charts!  Any changes to the chordname  
function would need to be context-sensitive to the needs of many  
musical systems.


Would it be feasible to make differences in chord naming conventions  
part of language-specific files, like \include english.ly or \include  
german.ly etc.?  Or does that just end up resulting in multiple  
exceptions and complicating things immensely?



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Carl D. Sorensen



On 6/1/09 8:56 PM, Tim McNamara tim...@bitstream.net wrote:

 
 
 On Jun 1, 2009, at 2:33 PM, Carl D. Sorensen wrote:
 
 A chordnamemode *input* mode has been proposed a couple of times.
 This mode
 would take only a root (and optionally, a slash or alternate bass
 note), and
 everything else about the chord would be in the form of a markup.  For
 american jazz chords, this functionality seems to be feasible (but it
 couldn't handle the german practice of making minor chords have a
 lower case
 root name, instead of an upper case root name for a major chord).
 
 Carl succinctly illuminates another problem, which is that LilyPond
 works with many different musical systems.  I am only familiar with
 what he calls American jazz chords and would be out to sea if a
 German chart was placed in front of me- or one of the many other
 notation systems with which I am unfamiliar.  Heck, I am out to sea
 often enough with American jazz charts!  Any changes to the chordname
 function would need to be context-sensitive to the needs of many
 musical systems.
 
 Would it be feasible to make differences in chord naming conventions
 part of language-specific files, like \include english.ly or \include
 german.ly etc.?  Or does that just end up resulting in multiple
 exceptions and complicating things immensely?

I think this idea is interesting, but I would be opposed to it.  I use
nederlands (default) note names, but I want American chord names.

As long as we have a relatively simple command to change chord name modes,
I think we're OK.

Carl



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Better MIDI

2009-06-01 Thread Carl D. Sorensen



On 6/1/09 5:29 PM, Peter Chubb lily.u...@chubb.wattle.id.au wrote:

 
 
 Hi,
 
   I've put up a page on how to get more realistic sounding MIDI output
   from current LilyPond, along with the scripts and scheme code used, at
   http://www.nicta.com.au/people/chubbp/articulate

Peter,

I haven't had a chance to look at your code, since I don't have a login to
your server, and it wasn't attached to your email to the list.

The improved MIDI sounded good to me.  I'd like to get it into the
distribution.

As a first step, it could be included in an optional add-in.  The way to
make it work is probably to first split your scheme and lilypond code.

I'd recommend that you put your scheme code in a new file that could be
placed in the scm/ directory, perhaps something
like articulation.scm.

And then you'll have your lilypond syntax stuff in articulation.ly file that
can be placed in the ly/ directory and included in a lilypond file.

Then, you can post your articulation.scm and articulation.ly files on the
lilypond-devel list, where it will be reviewed by the experts.

 
   It has before-and-after MIDI samples to listen to, and a full
   description of what the script does and how to use it.
 
   Is there any way that the scheme code can be distributed with
   LilyPond?  It's fairly useful now, but could do with going over by
   some real experts for improvement. In particular I'd like to get rid
   of the double pass over all the notes (first to find out what to do
   then to do it), and the hacked up communication between the two
   passes.  I'd also like to do something about trills and turns with
   alterations, and do a better calculation for trill duration.

Sounds great.  The best way to get a review is to post code on -devel.

Thanks,

Carl



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Carl D. Sorensen



On 6/1/09 1:45 PM, lasconic lasco...@gmail.com wrote:

 
 
 Hi,
 Just in case it can be helpful, someone (Karl) post a pdf he wrote on
 MuseScore (http://www.musescore.org) mailing list about chord name display.
 Musescore is a free GPL WYSIWYG scorewriter (with lilypond export
 capabilities)
 Maybe it can be helpful to your current and future work on chord names
 engraving for light music. Here is the discussion thread:
 http://n2.nabble.com/Setting-file-associations-for-Windows-td2729864i20.html#a
 2859233
 
 Here is the link to the pdf :
 http://www.njonjo.net/chordfonts/chordfonts.pdf
 

Thank your for this link.  It is always helpful to see what other people
propose for standards.

Personally, I don't like the look of this proposed standard.  I'm sure it
could be implemented in LilyPond, but I have seen other layouts that I find
more pleasing than this one.

Thanks,

Carl



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Compiling files with lots of data

2009-06-01 Thread -Eluze

is this from midi input? 

if so you should be sure to apply appropriate --allow-tuplet= options.
also, funny durations like s32*231 could indicate some kind of grace notes
in the original music

see 
http://lilypond.org/doc/v2.12/Documentation/user/lilypond-program/Invoking-midi2ly
http://lilypond.org/doc/v2.12/Documentation/user/lilypond-program/Invoking-midi2ly
 
for more details
furthermore, specific Voice options - eg. \voiceOne - should be added
manually
-- 
View this message in context: 
http://www.nabble.com/Compiling-files-with-lots-of-data-tp23817155p23826238.html
Sent from the Gnu - Lilypond - User mailing list archive at Nabble.com.



___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Lilypond and Jazz chords

2009-06-01 Thread Brett Duncan

Carl D. Sorensen wrote:

As far as I can see, there is very little hope for LilyPond making the right
decision about this chord entered in note mode.  The first note is not the
root of the chord, so it would require substantial computation time to try
to identify the chord properly (and there's no guarantee that the proper
chord identification is unique, based upon just the set of notes).  I'm not
even proposing to *try* to attack this problem.


I agree - determining the chord name based soley on the notes is 
problematic. What do you call c d f g? My first impression is Csus2,4, 
but I've seen the same chord notated as G7sus4/C and even as Dm7add4/C 
(no mention of the missing 5th). A lot of the time, the context (or the 
way the composer/songwriter is thinking about the composition) 
determines the way the chord is named.



As far as my current plan goes, this chord would be identified as a D chord
of some type, as is the current practice in LilyPond.  If the root and
inversion have not been identified (which they will not be when chords are
entered in note mode), then the first note in the chord is identified as the
root, which gives weird chord names.


And it doesn't even do that right at times. In my earlier email, I 
mentioned the chord d f aes c that has d as the first note, but the 
generated chord name is C b6/sus4/sus2.


The only way I think that generating more intelligent chord names 
could be achieved would be to have some way to tag a note in the chord 
to identify it as the chord root.




Rendering chords written as chord names (des2:m5/d) would of
course be simpler.


Yes, and that functionality is not currently as strong as we'd like it to
be, I think.  That's what I'm proposing to rework, when I get the chance.


I agree with this.

Couldn't there be an 'automatic chord mode' and an 'mode which just
display the chord names', not the notes?



What do you mean by 'automatic chord mode', and  'mode which just displays
the chord names'?

We currently have a context which just displays the chord names.  It's
called ChordNames.

We *don't* have a mode which just *accepts* chord names.  We have a mode
(chord mode) that accepts a root, a modifier, a maximum chord step, and can
add, remove, and modify chord steps, including moving a pitch to the bass or
adding a pitch to the bass.  This mode does not use chord names per se,
because chord names tend to be ambiguous (all one needs to do is look at the
variety of names for a given chord as defined by a set of pitches to see
this).  Parsers tend not to deal well with ambiguities, so what we have is a
completely non-ambiguous input format.  Someone who understands the
chordmode input format can look at a chordmode expression and determine
exactly what pitches are intended to be included in the chord.


True - the current chord mode is unambiguous, and IMO easy to 
understand. The one aspect of it I don't like occurs when you enter 
something like c:4 or c:m2 - anyone familiar with chord names like C4 or 
Cm2 will be expecting a triad with an added 4th or 2nd (or maybe a 
suspended 4th or 2nd, depending on what convention is being followed). 
What you actually get is c e f and c d. Of course, the manual _does_ 
make it clear what's going on, and you work around it with c:5.4 or 
c:m5.2, but it doesn't sit well with what is generally understood about 
chord names, namely that they are based around *triads*. I would prefer 
to see the notes of the triad remain regardless of the suffix, unless 
they are specifically removed with ^ (or 'sus' in the case of the 3rd). 
But I can live with the current syntax.


I'm more interested in getting saner output from ChordNames. When I 
enter c e f g Lilypond generates Csus4add3 as the chord name. Blehh!


Brett


___
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user