lilypond-auto
[Top][All Lists]
Advanced

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

Re: [Lilypond-auto] Issue 2981 in lilypond: Bugs with \set Staff.whichBa


From: lilypond
Subject: Re: [Lilypond-auto] Issue 2981 in lilypond: Bugs with \set Staff.whichBar
Date: Sat, 08 Dec 2012 22:43:54 +0000


Comment #1 on issue 2981 by address@hidden: Bugs with \set Staff.whichBar
http://code.google.com/p/lilypond/issues/detail?id=2981

'whichBar is a strange property. Actually, the strange thing is that the Default_bar_line_engraver continually sets and resets this property, whereas most properties will stay at the values given by the \set command in user input.

It would be nice to use whichBar in a less-strange manner, but that would be a big change because of the way whichBar is checked for possible line-breaks.

The place in the documentation that says '\set Staff.whichBar = "|:" will create a start-repeat bar in this staff only' is in the Internals Reference section on Default_bar_line_engraver, auto-generated from 'define-grob-properties.scm', so we should only expect it to work when we also move the engraver to the Staff context:
<< { c' \set Staff.whichBar = "||" c' c' c' }
  { c' \once \set Staff.whichBar = "||" c' c' c' c' c' c' c' } >>
\layout {
  \context { \Staff \consists "Default_bar_line_engraver" }
  \context { \Score \remove "Default_bar_line_engraver" } }

I suggest adding ".. if the engraver is in the Staff context" to that line in the documentation.

The version above with \once\set Staff.whichBar did work as the bug-reporter suggested, until the fix for issue 153. Maybe we could have \once\set Context.property restore the original value (keeping issue 153 correct) but *only* if there was an original value in the specified context.

I would rather ask users (like me) to use \set and \unset pairs for this strange case.

Attachments:
        2981.png  5.6 KB




reply via email to

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