lilypond-user
[Top][All Lists]
Advanced

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

Re: Fingering position inside chords


From: Thomas Morley
Subject: Re: Fingering position inside chords
Date: Tue, 19 Sep 2017 22:43:00 +0200

2017-09-19 21:51 GMT+02:00 David Kastrup <address@hidden>:
> Marco Bianchi <address@hidden> writes:
>
>> Hi,
>> I'm trying to have all the fingerings aligned to the left as in the picture.
>> Is there a way to move independently every single fingering inside the chord?
>> My workaround (see the code) it's not perfect and uses an hidden note in a 
>> second
>> voice.
>>
>> Thank you very much,
>> have a nice day.
>> Marco
>> *
>>
>> \version "2.19.65"
>> \language "english"
>>
>> \relative c {
>>   \clef "treble_8"
>>   \time 3/8
>>   \key a \major
>>   <<
>>     { \hideNotes \once \override Fingering.extra-offset = #'(-4.2 . -1.4) 
>> gs''8-3 }
>>     \\
>>     { \set fingeringOrientations = #'(left) <bs,-4 ds-2 gs> <bs-4 ds-2 
>> gs-3>4 }
>>   >>
>> }
>
> You could use something like
>
>
>
> It's not particularly great, I'll readily admit.  But at least you can
> do something.
>
> --
> David Kastrup


I tried to get something helpful from FingeringColumn, but I didn't
found any useful pointers apart from the ones grob-interface delivers.
Is it really not possible to get Fingering from FingeringColumn directly ??
(one could catch the PaperColumn and then filter for Fingerings, but
this sounds clumsy...)

Also, fingeringOrientations set left, not only prints Fingering at the
left, but also left-aligned, where I'd prefer them to be center-align.

Anyway, the following seems to work, at least for the posted use-case,
also returning a center-aligned column.
Other use-cases are not tested!!

\version "2.19.65"
\language "english"

\relative c {
  \clef "treble_8"
  \time 3/8

  \override Fingering.stencil =
  #(lambda (grob)
    (let ((stil
           (ly:stencil-aligned-to  (ly:text-interface::print grob) X CENTER)))
     ;;;;
     ;;;; With fingeringOrientations = #'(left) the Fingerings are left-aligned
     ;;;; uncomment (box-stencil ...) and comment 'stil' to view it
     ;;;;

     ;; boxed default-stencil to see left-aligning
     ;(box-stencil (ly:text-interface::print grob) 0 0)
     ;; center-aligned stencil
     stil
       ))

  %%  default is 0.3, the value 3 is my finding, maybe needs to be adjusted
  %\once
  \override Staff.FingeringColumn.snap-radius = 3
  \set fingeringOrientations = #'(left)
  <bs'-4 ds-2 gs-3> <bs-4 ds-2 gs-3>4
}

Cheers,
  Harm



reply via email to

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