lilypond-user
[Top][All Lists]
Advanced

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

Re: fingering


From: Gianmaria Lari
Subject: Re: fingering
Date: Thu, 22 Feb 2018 00:15:37 +0100



On 21 February 2018 at 23:15, Thomas Morley <address@hidden> wrote:
2018-02-21 9:29 GMT+01:00 Gianmaria Lari <address@hidden>:
>
> On 20 February 2018 at 22:30, Thomas Morley <address@hidden>
> wrote:
>>
>> 2018-02-20 18:42 GMT+01:00 Gianmaria Lari <address@hidden>:
>> > On 20 February 2018 at 17:10, Robin Bannister <address@hidden> wrote:
>> >>
>> >>  DJF wrote:
>> >>
>> >>>  perhaps someone else knows if it’s possible to control the vertical
>> >>> spacing within the staff;
>> >>
>> >>
>> >> You can splay it out using Y-offset:
>> >>  <d'-\tweak Y-offset 0.7 \4   b \3   g-\tweak Y-offset -0.9 -2 >1
>> >
>> >
>> > Do you know Robin, if there is any way to avoid the "\tweak ..." and
>> > make
>> > Lilypond automatically spacing the fingering/stringNumber elements?
>> >
>> > Thank you, g.
>>
>>
>>
>> How about:
>>
>> \version "2.19.81"
>>
>> circledFingerStil =
>>   #(lambda (grob)
>>      (circle-stencil (ly:text-interface::print grob) 0.1 0.1))
>>
>> \fixed c' {
>>   \set fingeringOrientations = #'(left)
>>
>>   <g-\tweak stencil \circledFingerStil -2
>>    b-\tweak stencil \circledFingerStil-3
>>    d'-4>1
>>
>>   \override Fingering.stencil = \circledFingerStil
>>   <g-2 b-3 d'-4>1
>> }
>>
>> There _is_ some buit-in code which avoids collisions of Fingering, but
>>  it does not work for StringNumbers or a mix of Fingerings and
>> StringNumbers, afaik.
>>
>> Cheers,
>>   Harm
>
>
> Ciao Harm,
> thanks a lot for your code! It works very well.
>
> But I also have some questions.
>
> The circled and uncircled fingering are not horizontally aligned. Is there
> any way to align them?
>
> Is there any way to make the more easy to manage? I can write something like
> this
>
>   <g-\tweak stencil \circledFingerStil -2
>    b-\tweak stencil \circledFingerStil-3
>    d'-4>1
>
> just to test an idea but I don't want to use it in a real score.
> Is there any way to reduce/encapsulate it to something less intrusive?
>
> Thank you!
> G.

Hi,

try:

\version "2.19.81"

%% returns a stencil (created by `ly:text-interface::print') within a circle
circledFingerStil =
  #(lambda (grob)
     (circle-stencil (ly:text-interface::print grob) 0.1 0.1))

%% tweak-short-cut
cFS =
  \tweak stencil \circledFingerStil
  \etc

adjustFC =
  \override Staff.FingeringColumn.before-line-breaking =
    #(lambda (grob)
       "Sets @code{snap-radius} of @code{FingeringColumn} to @code{3} and
        applies @code{centered-stencil} to every fingering-stencil"
       (let*  ((fingerings (ly:grob-object grob 'fingerings))
               (fingering-ls
                 (if (ly:grob-array? fingerings)
                     (ly:grob-array->list fingerings)
                     '())))
                     (write grob)
         (ly:grob-set-property! grob 'snap-radius 3)
         (for-each
           (lambda (f)
             (ly:grob-set-property! f 'stencil
               (centered-stencil ((ly:grob-property-data f 'stencil) f))))
           fingering-ls)))

{

  %% NB FingeringColumn is created _only_ if `fingeringOrientations' contains
  %% 'left or 'right _and_ more than one Fingering has to be placed there
  \set fingeringOrientations = #'(left)

  %% default
  <c'-1 d'-22 e'-333 f'-4444>1

  %% some circles around Fingerings
  <c'-1 d'\cFS-22 e'\cFS-333 f'-4444>1

  %% some circles around Fingerings plus adjusted FingeringColumn
  \once \adjustFC
  <c'-1 d'\cFS-22 e'\cFS-333 f'-4444>1
}

HTH,
  Harm

Ciao Harm

I just tried it (tomorrow I will try to see if I can understand how does it work) but I get some compilation error:

Starting lilypond-windows.exe 2.19.81 [Untitled]...

Processing `C:/Users/GIANMA~1/AppData/Local/Temp/frescobaldi-u4n32kzb/tmpi018rw4w/document.ly'

Parsing...

C:/Users/GIANMA~1/AppData/Local/Temp/frescobaldi-u4n32kzb/tmpi018rw4w/document.ly:41:11: error: not a rhythmic event

<c'-1 d'

\cFS-22 e'\cFS-333 f'-4444>1


C:/Users/GIANMA~1/AppData/Local/Temp/frescobaldi-u4n32kzb/tmpi018rw4w/document.ly:41:21: error: not a rhythmic event

<c'-1 d'\cFS-22 e'

\cFS-333 f'-4444>1


C:/Users/GIANMA~1/AppData/Local/Temp/frescobaldi-u4n32kzb/tmpi018rw4w/document.ly:45:11: error: not a rhythmic event

<c'-1 d'

\cFS-22 e'\cFS-333 f'-4444>1


C:/Users/GIANMA~1/AppData/Local/Temp/frescobaldi-u4n32kzb/tmpi018rw4w/document.ly:45:21: error: not a rhythmic event

<c'-1 d'\cFS-22 e'

\cFS-333 f'-4444>1


Interpreting music...

Preprocessing graphical objects...

Finding the ideal number of pages...

Fitting music on 1 page...

Drawing systems...

Layout output to `./tmp-lilypond-oAOzSl'...

Converting to `document.pdf'...

Deleting `./tmp-lilypond-oAOzSl'...

#<Grob FingeringColumn >

fatal error: failed files: "C:\\Users\\GIANMA~1\\AppData\\Local\\Temp\\frescobaldi-u4n32kzb\\tmpi018rw4w\\document.ly"

Exited with return code 1.


Thanks, g.

reply via email to

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