Am Di., 3. Nov. 2020 um 20:56 Uhr schrieb Viktor Mastoridis <
viktor.mastori...@gmail.com>:

> Hello, I need help with a rather obscure problem. But important to me as
> an educator.
> I tried a few places and everybody pointed here.
>
> In Lilypond 2.18 and before, using the colouring scheme from the snippets (
> https://t1p.de/b7s8) I was able to colour the (fretboard and) dots of the
> fretboard with the root note colour. I would simply use the code:
>  \override FretBoard #'color = #color-notehead.
> (top part of the attached image)
>
> When I upgraded to Lilypond 2.20, the colour from the dots vanished,
> replaced by black (as in the bottom part of the image).
> I didn't change any of the code.
>
> Now, with \override FretBoard  #'(fret-diagram-details dot-color) =
> #'[anyColor] I can override the dot-colour to some static colours - but
> it's a far cry from the beauty and clarity of dynamically coloured dots.
>
> Could someone advise where this went wrong?
>
> Attached is an image with examples, and below is a MWE
> ------------------
> %start of code
> \version "2.20.0"
> \header { title = "Guitar Chords"}
> {
> %Chords
> \storePredefinedDiagram #default-fret-table \chordmode {a}
> #guitar-tuning #"o;o;2-2;2-3;2-4;o;"
> \storePredefinedDiagram #default-fret-table \chordmode {bes}
> #guitar-tuning #"1-1-(;1-1;3-2;3-3;3-4;1-1-);"
> \storePredefinedDiagram #default-fret-table \chordmode {c}
> #guitar-tuning #"3-3;3-4;2-2;o;1-1;o;"
> }
> %Colour map
> #(define color-mapping
> (list
> (cons (ly:make-pitch 0 0 NATURAL) (x11-color 'red3))
> (cons (ly:make-pitch 0 5 NATURAL) (x11-color 'blue3))
> (cons (ly:make-pitch 0 6 FLAT) (x11-color 'magenta3))
> )
> )
> %Compare pitch and alteration (not octave).
> #(define (pitch-equals? p1 p2)
> (and
> (= (ly:pitch-alteration p1) (ly:pitch-alteration p2))
> (= (ly:pitch-notename p1) (ly:pitch-notename p2))))
>
> #(define (pitch-to-color pitch)
> (let ((color (assoc pitch color-mapping pitch-equals?)))
> (if color
> (cdr color))))
> #(define (color-notehead grob)
> (pitch-to-color
> (ly:event-property (event-cause grob) 'pitch)))
> chordNames = \chordmode { a2 bes c }
> \score {
> <<
> \new ChordNames \chordNames
> \new FretBoards
> { \override FretBoards.FretBoard #'size = #'2.0
> \override FretBoard #'(fret-diagram-details finger-code) = #'in-dot
> \override FretBoard #'(fret-diagram-details orientation) = #'portrait
> %This command changes the colour of the fretboard (and used to change the
> dots in 2.18)
> \override FretBoard #'color = #color-notehead
> \chordNamfb.com/viktor.master.uk es
> }
> >>
> }
> %end of code
>
>
> ---
> Viktor🎼Mastoridis
>
>
>
A minimal would look like:
  \new FretBoards { \override FretBoard.color = #red a }
Changing dot-color  in 2.18. but not with 2.20.

Investigating...

Cheers,
  Harm

Reply via email to