lilypond-user
[Top][All Lists]
Advanced

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

Re: Parentheses overrides


From: James Worlton
Subject: Re: Parentheses overrides
Date: Fri, 6 Feb 2015 14:21:53 -0600

This context override is getting me to where I need these to be. Thanks! For this project (a Theory exam), There are no flats, so the strange vertical offset it seems to make isn't an issue.

James W

On Fri, Feb 6, 2015 at 2:10 PM, Pierre Perol-Schneider <address@hidden> wrote:
Oups, I forgot that!
I'll check for a workaround.

BTW, there was this solution but looks strange with flats:

\score {
  \new Staff {
    \parenthesize cis'4. s8 \parenthesize bes4.
  }
  \layout {
    \context {
      \Voice
      \override ParenthesesItem.stencil = #(lambda (grob)
       (let* ((acc (ly:grob-object (ly:grob-parent grob Y) 'accidental-grob))
              (dot (ly:grob-object (ly:grob-parent grob Y) 'dot)))
         (if (not (null? acc)) (ly:pointer-group-interface::add-grob grob 'elements acc))
         (if (not (null? dot)) (ly:pointer-group-interface::add-grob grob 'elements dot))
         (parentheses-item::print grob)))
    }
  }
}


Cheers,
Pierre

2015-02-06 20:53 GMT+01:00 James Worlton <address@hidden>:
On Fri, Feb 6, 2015 at 1:20 PM, Pierre Perol-Schneider <address@hidden> wrote:
As english isn't my native language I'm not sure to find the right words.
Manual says it "computes the width of an object" (see: http://lilypond.org/doc/v2.19/Documentation/extending/callback-functions.html).
With "my" words I'd say that it'll help you to add or reduce the space before and/or after a grob.

Cheers,
Pierre

2015-02-06 20:08 GMT+01:00 James Worlton <address@hidden>:
Thanks, Pierre. That's exactly what I'm looking for. So what does the ParenthesesItem X-extent do?

James W

On Fri, Feb 6, 2015 at 12:49 PM, Pierre Perol-Schneider <address@hidden> wrote:
Hi James,

I understand the idea but I thing you missunderstand the X-extent effect.
If I follow you, you'd rather extent the note head.
So here it goes :

\version "2.19.15"

parenWider = {
  \once\override NoteHead.X-extent = #'(-1.5 . 1.3)
  \once\override Accidental.X-extent = #'(1.5 . 0)
  \once\override Accidental.extra-offset = #'(1.5 . 0)
}

\score {
  \new Staff { \parenWider \parenthesize fis'4 }
}


HTH,
Pierre

Thanks for pointing that out. I think I understand it.

A problem I've now encountered is that the 3 overrides in your solution make ledger lines longer towards the accidental. Neither of the overrides I've tried adding to the parenWider definition make any difference:

\once \override Staff.LedgerLineSpanner.X-extent = #'(1.5 . 0) %various values, both positive and negative have no effect

or

\once \override Staff.LedgerLineSpanner.length-fraction = 0.1 %various values, both positive and negative have no effect

Is there something I'm missing regarding how to override ledger lines?

James W



reply via email to

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