[Top][All Lists]

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

Re: Peculiar behavior of barlines

From: Thomas Morley
Subject: Re: Peculiar behavior of barlines
Date: Wed, 18 Mar 2020 11:05:40 +0100

Am Mo., 16. März 2020 um 19:23 Uhr schrieb Sami Amiris <address@hidden>:
> Hello all.
> I would like the barlines that span both staves (not the barlines in each
> individual staff alone) at the middle of the line to have the same behaviour
> at the next end (to the right) and the start of the line below at the very
> left. In other words, A1, A2 and A3 should all be the same as A1, likewise
> for the B's and C's in the example provided- at least I think so. Currently
> this doesn't happen. Is it possible?
> <>
> In general, bottom staff wins at A2 and A3 (and B's and C's accordingly),
> overriding the middle inter-staff portion of the barlines which shows nicely
> at A1. Any remedy?
> Also, can the single barline be aligned with the second line of the double
> barline at the end, to avoid showing that little portion of the staff? Start
> and middle of line are fine as placements, but the end is a bit off
> (consistent though).
> I put the example in the lilybin to not burden the post with a lot of
> clutter. I hope I did not overstep my bounds.
> Thank you.
> --
> Sent from:


there are two reasons why you've got no reply so far.

(1) The matter is not uncomplicated.
(2) Your code is far from minimal.
You ask about BarLines. Why do you code all that clutter, like \paper
\key \time \scaleDurations \set Timing.measureLength \set
Indentation is bad as well.

Speaking only for me (2) is the reason why your request was placed at
the bottom of my TODO-list.

That said and if I understand correctly...

You seem to think the last entry of the list provided to
\defineBarline will set the behaviour of the SpanBar.
That's not the whole story. Let's take a pseudo-code example:

\defineBarline "a" #'("b" "c" "d")

In the middle of a line \bar "a" will print a SpanBar as defined by
(the hopefully predefined) "d"
At the end of a line \bar "a" will print a SpanBar as defined by (the
hopefully predefined) "b"
At the begin of a line \bar "a" will print a SpanBar as defined by
(the hopefully predefined) "c"

Your own BarLine-definitions always refer to the defaults, "|" and
"||", for end and begin of lines.
Btw, it makes no sense to define identically BarLines.

\defineBarLine "||-end" #'("||" #f " !")
\defineBarLine "||-beg"  #'("||" #f "!")
\defineBarLine "||-!"  #'("||-end" "||-beg" "!")
\defineBarLine "|-dashedSpan" #'("|" "|" "!")
\defineBarLine "|-!" #'("|-dashedSpan" "|-dashedSpan" "!")

Should do the trick.
Use \bar "||-!" and \bar "|-!"


reply via email to

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