lilypond-user
[Top][All Lists]
Advanced

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

Re: empty-stencil versus point-stencil (was "Re: Text *in* score - Stopp


From: Thomas Morley
Subject: Re: empty-stencil versus point-stencil (was "Re: Text *in* score - Stopped staves - Horizontal spacing")
Date: Sat, 11 Mar 2017 16:07:22 +0100

2017-03-11 15:36 GMT+01:00 Kieren MacMillan <address@hidden>:
> Hi David,
>
>>>> \markup \with-dimensions #empty-interval #empty-interval
>>>
>>> I prefer
>>> \markup \with-dimensions-from \null
>>
>> Different thing.  \null corresponds to a point-stencil (single-point
>> intervals), the first one corresponds to an empty-stencil (empty intervals).
>
> Thanks for the clarification!
>
>
> I have three questions on this topic:
>
>
> 1. Will ‘point-stencil’ still be unseen? Or does it literally output 1 point 
> [which could be seen at a high enough magnification]?

Always unseen, afaict.

Also, regard:
#(pretty-print
  (list
    (ly:stencil-extent point-stencil X)
    (ly:stencil-extent empty-stencil X)
    empty-interval
    (interval-length '(0 . 0))
    (interval-length empty-interval)))

>
>
> 2. [Sometimes…? All the time…?] When I use
>
>     \mark \markup \with-dimensions #empty-interval #empty-interval    [**]
>
> the log gives
>
>     warning: RehearsalMark has empty extent and non-empty stencil
>
> But output is as expected, and no other use of [**] seems to throw the same 
> error.

Same for \tempo.
In more invasive stencil overrides you may notice it more frequently ...

> Is there a better way to make my RehearsalMark markup not interact with the 
> spacing engine?

That I don't know.

>
> 3. I’ve tried to simplify
>
>     \with-dimensions #empty-interval #empty-interval
>
> by making it a tweak like
>
>     nodim = -\tweak \with-dimensions #empty-interval #empty-interval \etc
>
> But every combination of that which I’ve tried hasn’t worked. What is the 
> correct incantation, so that I can later say
>
>    c’-\nodim \markup “foo”
>
> or
>
>    c’-\markup \nodim “foo"


One possibility:

nodim-markup = \markup \with-dimensions #empty-interval #empty-interval \etc
\markup { \nodim "foo" }

See "Changes"

Cheers,
  Harm



reply via email to

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