how about barre = #(define-music-function (bend location str ) (number?)
#{ \once \override FretBoard.before-line-breaking = #(lambda (grob) ;(display (ly:grob-property grob 'dot-placement-list)) (ly:grob-set-property! grob 'dot-placement-list (cons `(barre 6 1 ,str) (ly:grob-property grob 'dot-placement-list)))) #}) fMajorEShape = { <f,-1 c-3 f-4 a-2 c'-1 f'-1> } gMajorEShape = { \transpose f g { \fMajorEShape } } \new FretBoards { \barre #1 \transpose f g { \fMajorEShape } \barre \gMajorEShape \barre #3 <g,-1 d-3 g-4 b-2 d'-1 g'-1> \set FretBoards.minimumFret = #3 \barre #4 \gMajorEShape } HTH stephen On Wed, May 20, 2015 at 4:52 AM, pls <p.l.schm...@gmx.de> wrote: > > On 20.05.2015, at 01:58, Thomas Morley <thomasmorle...@gmail.com> wrote: > > Hi Patrick, > > maybe this will get you started: > > \version "2.19.15" > > \new FretBoards { > > \override FretBoard.before-line-breaking = > #(lambda (grob) > ;(display (ly:grob-property grob 'dot-placement-list)) > (ly:grob-set-property! grob 'dot-placement-list > (cons '(barre 6 1 1) (ly:grob-property grob 'dot-placement-list)))) > > <f,-1 c-3 f-4 a-2 c'-1 f'-1> > } > > > Hi Harm, > > thanks a million! It certainly does get me started. I think this should > be added to the snippet repository. I could prepare a snippet illustrating > your code and some other overrides of details of automatically generated > fret diagrams. Something like that: > > \version "2.19.15" > > barre = { > \once \override FretBoard.before-line-breaking = > #(lambda (grob) > ;(display (ly:grob-property grob 'dot-placement-list)) > (ly:grob-set-property! grob 'dot-placement-list > (cons '(barre 6 1 1) (ly:grob-property grob 'dot-placement-list)))) > } > > fMajorEShape = { <f,-1 c-3 f-4 a-2 c'-1 f'-1> } > > \new FretBoards { > \override FretBoards.FretBoard.size = #'2 > \override FretBoard.fret-diagram-details.barre-type = #'straight > \override FretBoard.fret-diagram-details.finger-code = #'in-dot > % \override FretBoard.fret-diagram-details.dot-color = #'white > % \override FretBoard.fret-diagram-details.finger-code = #'below-string > \override FretBoard.fret-diagram-details.number-type = #'roman-upper > % \override FretBoard.fret-diagram-details.orientation = > #'opposing-landscape > \override FretBoard.fret-diagram-details.mute-string = #"M" > % \override FretBoard.fret-diagram-details.label-dir = #DOWN > \override FretBoard.fret-diagram-details.open-string = #"0" > % \override FretBoard.fret-diagram-details.string-count = #4 % doesn’t > work > % \override FretBoard.fret-diagram-details.fret-count = #3 > \barre > <f,-1 c-3 f-4 a-2 c'-1 f'-1> > } > > > What do you think? > > Oh wait, I just tried to transpose the chord but the barre indication is > always printed at the first fret: > > \version "2.19.15" > > barre = { > \once \override FretBoard.before-line-breaking = > #(lambda (grob) > ;(display (ly:grob-property grob 'dot-placement-list)) > (ly:grob-set-property! grob 'dot-placement-list > (cons '(barre 6 1 1) (ly:grob-property grob 'dot-placement-list)))) > } > > fMajorEShape = { <f,-1 c-3 f-4 a-2 c'-1 f'-1> } > gMajorEShape = { \transpose f g { \fMajorEShape } } > > \new FretBoards { > \barre > \transpose f g { \fMajorEShape } > \barre > \gMajorEShape > \barre > <g,-1 d-3 g-4 b-2 d'-1 g'-1> > \set FretBoards.minimumFret = #3 > \barre > \gMajorEShape > } > > > Is there any way to move it up the fretboard? > > Thanks again! > patrick > > > > > > On 19.05.2015, at 20:45, pls <p.l.schm...@gmx.de> wrote: > > Hi all, > > LilyPond’s automatic fret diagrams really are a very helpful feature! More > often than not it helps to not having to predefine and store a diagram in a > lookup table. But it has one little drawback: it doesn’t automatically > include a barre indication when several strings are to be covered by one > finger. The default diagram actually looks a bit as if six fingers were > needed to play this chord (see example). > > \version "2.19.15" > { > \new FretBoards { > <f,-1 c-3 f-4 a-2 c'-1 f'-1> > } > } > > I have had a look at the \override options of the FretBoard and many > details are customizable but of course it’s not possible to override a > barre indication that isn’t there. Now, is there a known way to (manually) > add barre indications to automatic fret diagrams or do I have to use > predefined fret diagrams for barre chords in general? > > tia > patrick > > >
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user