I think this is the way it works now:
A \bar is put only on the staff that the note that precedes it was
put on. If it matches up with a | bar in another voice, then the \bar
is put on both staves and they join up. If it matches up with another
\bar that is put on the other staff, the two join up. See attached
for illustrations.
Honestly, I find it difficult to imagine that anyone would inflict
mismatched repeats/bars in a score on a conductor, as Mats seems to
want, but hopefully everyone can agree that no keyboardist would ever
want such a construct. So, maybe in PianoStaff context, \bars could
always cover both staves regardless of where/how they are specified?
John
-----------------------------------------
%test \bar LilyPond 1.2.14
\score{
\context PianoStaff \notes<
\context Staff=up<
\time 4/4;
\clef treble;
\autochange Staff
\context Voice=va<
\stemup
\context Thread=ta{
%a1
d''16 e'' f'' g'' a'' a' cis'' a' d''4. e''8 \bar "||";
%a2
f''16 d'' g'' e'' a'' f'' e'' d'' cis''8 a'' a''4 \bar "||";
%a3
a''16 g'' f'' e'' d'' c'' bes' a' bes'8 g'' g''4 \bar "||";
%a4
g''16 f'' e'' d'' c'' bes' a' g' a'8 f'' f''4 \bar "||";
%a5
f''16 e'' d'' c'' bes' a' g' f' g'8 e'' e''4 \bar "||";
%a6
e''16 d'' cis'' b' a' g' f' e' \bar "||"; f' d' g' e' a' f' e' d' |
%a7
cis'16 a d' b e' cis' f' d' \bar "||"; g' e' a' f' b' g' cis'' a' |
%a8
d''4 d' d d, \bar "||";
%a9
d,2^\prall r \bar "|.";
}>
\autochange Staff
\context Voice=vb<
\stemdown
\context Thread=tb{
%b1
s2 d'16 e' f' g' a' a cis' a |
%b2
d'8 e' f' g' a' a' a' a' |
%b3
a'8 a' a' f' g bes' bes' bes' |
%b4
g'8 g' g' e' f' a' f' a'
%b5
d'8 f' d' d' e g' g' g'
%b6
a8 a \bar "||"; a a \bar "||"; d e \bar "||"; f g
%b7
a8 s cis' d' e' f' g' a'
}>>
\context Staff=down<
\clef bass;
s1*9
>>
\paper{
}}