On 2015-05-14 05:09, Murray-Luke Peard wrote:
[...]
One is to use the Mensurstriche layout, which has bar lines between
staves but not through them. My preferred option is to move the barline
up or down if the note is low or high, and split it if the note is in
the middle.
I've been able to move the barline up and down with the following commands:
upBar = { \override Staff.BarLine #'bar-extent = #'(0.5 . 3) }
downBar = { \override Staff.BarLine #'bar-extent = #'(-3 . -0.5) }
And reset it to normal with
fullBar = { \override Staff.BarLine #'bar-extent = #'(-2 . 2) }
But I can't figure out how to get the split bar line. Ideally, it would
look something like :
topPart = { \override Staff.BarLine #'bar-extent = #'(2 . 3) }
bottomPart = [ \override Staff.BarLine #'bar-extent = #'(-3 . -2) }
but both at the same time!
Can anyone suggest how I might achieve this?
Hi Murray-Luke,
I had the exact same problem a few days ago, in a different context
(read the thread "TimeSignatures over BarLines" from May 07 here:
<http://lists.gnu.org/archive/html/lilypond-user/2015-05/msg00276.html>).
The problem is that the BarLine is drawn only once, and the most recent
extent is taken. There is a solution however: to draw the short BarLine
twice, and move one of the instances as necessary. The code is as follows:
\once \override Staff.BarLine #'stencil =
#(lambda (grob)
(ly:grob-set-property! grob 'bar-extent '(-3 . -2))
(ly:stencil-add
(ly:bar-line::print grob)
(ly:stencil-translate-axis (ly:bar-line::print grob) 5 Y)))
If you want two stubs of different length, you have to work a little bit
harder, but this should get you started.
HTH,
Alexander
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user