[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fingering
From: |
David Kastrup |
Subject: |
Re: fingering |
Date: |
Mon, 21 Jan 2019 22:23:10 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) |
Aaron Hill <address@hidden> writes:
> This variation works:
>
> %%%%
> \version "2.19.82"
> { \set fingeringOrientations = #'(left)
> \override Fingering.stencil = #(lambda (grob)
> (ly:make-stencil '() '(0 . 0) '(0 . 0)))
That's just #point-stencil .
> <g'-2 c''-4> }
> %%%%
>
> Here we have a valid, albeit empty, stencil. This bypasses the
> programming error.
>
> ----
>
> Ignoring the programming error, there is another issue with how \omit
> * behaves. Consider the following:
>
> %%%%
> \version "2.19.82"
>
> circledFingerStil = #(lambda (grob)
> (circle-stencil (ly:text-interface::print grob) 0.1 0.1))
> cFS = \tweak stencil \circledFingerStil \etc
>
> { \omit Fingering
> <g'-2 c''-\cFS-4> }
> %%%%
>
> Using \omit Fingering is supposed to eliminate Fingering grobs until
> it is \undone. The problem is that \tweak also modifies the stencil,
> cancelling out the effect of the \omit.
I fail to see the problem. You specify a specific stencil explicitly
not referring to the original definition and get it.
If that's not what you want, you could most certainly have written
something like
\version "2.19.82"
circledFingerStil = #(grob-transformer 'stencil
(lambda (grob old)
(and (ly:stencil? old) (circle-stencil old 0.1 0.1))))
cFS = \tweak stencil \circledFingerStil \etc
{ \omit Fingering
<g'-2 c''-\cFS-4> }
--
David Kastrup