lilypond-user
[Top][All Lists]
Advanced

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

Re: trouble with end bar and open-repeat (volta) bars at same place.


From: Mike F.
Subject: Re: trouble with end bar and open-repeat (volta) bars at same place.
Date: Tue, 15 Dec 2015 02:11:45 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0

T.Morley, you pointed me in the right direction.  This gave me the \bar"|." I wanted to end the Menuetto with, but still no \bar"|:" to kick off the Trio.

Turns out it was something to do with the \splitBar that I used to get my \mark "Fine" AND my \mark \default.  As near as I can tell, \splitBar caused Lilypond to treat my Trio as the first measure of a new piece, and of course \bar"|:" doesn't print by default.

The snippet in UM 1.4.1 (right before "Written-out repeats") got that sorted for me, once I figured out that it needs to be in both my \outlineSleighRide as well as my <instrument>SleighRide parts.

Thanks Morley and Mrotek.  I would've spent several days finding this without you.  I'm tempted to omit the alternates, but I'll see which style I like best.

Complete code listed below, but I have yet to finish the 3 lower string parts (or lay the outline on top of those parts...)

On 12/14/2015 07:17 PM, Thomas Morley wrote:
#(define-bar-line ".|:-a" "|." ".|:" ".|")

----------------<code>------------------------------

\version "2.18.2"

\header {

title = "Sleigh Ride"

subtitle = "from German Dance, K.605 #3"

instrument = "Score"

composer = "Wolfgang Amadeus Mozart"

}

\paper {

#(set-paper-size "letter")

}

#(ly:set-option 'point-and-click #t)


optionalCut = {\once \override Score.RehearsalMark.break-visibility = #begin-of-line-invisible

\mark \markup { "Opt. cut to "\raise #1 \musicglyph #"scripts.coda"} }

thecodasign = \mark \markup {\musicglyph #"scripts.coda" "Coda"}

thesegno = \mark \markup {\musicglyph #"scripts.segno"}

varcodasign = \mark \markup {\musicglyph #"scripts.varcoda"}

Radjust = \once \override Score.RehearsalMark.self-alignment-X = #RIGHT

Ladjust = \once \override Score.RehearsalMark.self-alignment-X = #LEFT

gotocoda = { \once \override Score.RehearsalMark.break-visibility = #begin-of-line-invisible

\Radjust \mark \markup { "Go to "\musicglyph #"scripts.coda" } \bar"||" }

blankClefKey = {\once \override Staff.KeySignature.break-visibility = #all-invisible

\once \override Staff.Clef.break-visibility = #all-invisible

}

codetta = {\mark \markup \line {\musicglyph #"scripts.coda" \hspace #-1.3 \musicglyph #"scripts.coda"} }

fineFermata = { \once \override Score.RehearsalMark.break-visibility = #begin-of-line-invisible

\Radjust \mark \markup {"Fine"} \mark \markup {\musicglyph #"scripts.ufermata" }

\bar "|." }

fine = { \once \override Score.RehearsalMark.break-visibility = #begin-of-line-invisible

\Radjust \mark \markup {"Fine"}

\bar "|." }

fineNoEndBar = { \once \override Score.RehearsalMark.break-visibility = #begin-of-line-invisible

\Radjust \mark \markup {"Fine"}

\mark \markup {\musicglyph #"scripts.ufermata" }

}

DCalfineNoBars = {\Radjust \mark \markup {"D.C. al Fine"} \blankClefKey \stopStaff \cadenzaOn }

DCalfine = {\Radjust \mark \markup {"D.C. al Fine"} \bar "||" \blankClefKey \stopStaff \cadenzaOn }

DCalcoda = {\Radjust \mark \markup {"D.C. al Coda"} \bar "||" \blankClefKey \stopStaff \cadenzaOn }

DSalfine = {\Radjust \mark \markup {"D.S. al Fine"} \bar "||" \blankClefKey \stopStaff \cadenzaOn }

DSalcoda = {\Radjust \mark \markup {"D.S. al Coda"} \bar "||" \blankClefKey \stopStaff \cadenzaOn }

showClefKey = {\once \override Staff.KeySignature.break-visibility = #all-visible

\once \override Staff.Clef.break-visibility = #all-visible

}

resumeStaff = { s32 % Add a whee bit of staff before the clef!

\cadenzaOff \startStaff % Resume bar count and show staff lines again

\bar ""

}

%% whitespace between D.S./D.C. and the Coda:

codaspace = {\repeat unfold 2 {s4 s4 s4 s4 \noBreak \bar "" }}

theCoda = {\noBreak \codaspace \resumeStaff \showClefKey \thecodasign}

%% -------------------end-of-coda-segno-macros------------------

%% --------------------for codas/segno/fine \marks on the "same" barline

splitBar = {

\cadenzaOn

\once \omit Score.TimeSignature

\time 1/16

s16 \bar ""

\cadenzaOff

}

mscoreFormat = {

\set Score.skipBars = ##t

% \override Score.BarNumber.break-visibility = #end-of-line-invisible %%every bar is numbered.!!!

%% remove previous line to get barnumbers only at beginning of system.

\accidentalStyle modern-cautionary

\set Score.markFormatter = #format-mark-box-letters %%boxed rehearsal-marks

\override Score.TimeSignature.style = #'() %%makes timesigs always numerical

\compressFullBarRests

\override Score.BarNumber.break-visibility = #'#(#f #t #t) % everywhere except endbar on line

\set Score.barNumberVisibility = #(every-nth-bar-number-visible 4)

% Left-align bar numbers

\override Score.BarNumber.self-alignment-X = #LEFT

\override Glissando.style = #'trill

\override MultiMeasureRest.expand-limit = #1

}

globalSleighRide = {

\mscoreFormat

\key f \major

\numericTimeSignature

\time 3/4

}

outlineSleighRide = {

\tempo "Menuetto" 4=180

\repeat volta 2 { s2.*7 | } % 1-7

\alternative {

{ s2. | } % 8

{ s2. | } % 9

} % end alternative

\mark \default % rehearsal A

\repeat volta 2 { s2.*7 | } % 10-16

\alternative {

{ s2. | } % 17

{ s2. \bar ".|:-a"} % 18

} % end alternative

\fine

\splitBar

\mark \default % rehearsal B

\key bes \major

\tempo "Trio"

\repeat volta 2 {

\once \override Score.BreakAlignment.break-align-orders =

#(make-vector 3 '(instrument-name

left-edge

ambitus

breathing-sign

clef

key-signature

time-signature

staff-bar

custos))

\once \override Staff.TimeSignature.space-alist =

#'((first-note . (fixed-space . 2.0))

(right-edge . (extra-space . 0.5))

;; free up some space between time signature

;; and repeat bar line

(staff-bar . (extra-space . 1)))

\bar ".|:"

% B

s4. s4. | % 19

s2.*6 | % 20-25

} % end volta repeat

\alternative {

{ s2. | } % 26

{ s2. | } % 27

} % end alternative

\mark \default % rehearsal C

\repeat volta 2 { s2.*7 | } % 28-34

\alternative {

{ s2. | } % 35

{ s2. | } % 36

} % end alternative

\key f \major

\DCalfine

} % end outlineSleighRide

violinISleighRideMenuetto = \relative c'' {

\globalSleighRide

\repeat volta 2 {

f'4-. \f \downbow c-. r | % 1

c-. a-. r | % 2

c\downbow a8\downbow a a a | % 3

a4 f c8(\downbow f) | % 4

f( e) d-. c-. c( f) | % 5

f( e) d-. c-. c( f) | % 6

f( e) d-. c-. d-. e-. | % 7

} % end volta repeats

\alternative {

{ f4 r r | } % 8

{ f4 r r | } % 9

} % end alternative

% A

\repeat volta 2 {

g\downbow g g | % 10

e c c8( e) | % 11

g g g g g g | % 12

e4 c c8(\downbow f) | % 13

f( e) d-. c-. c( f) | % 14

f( e) d-. c-. c( f) | % 15

f( e) d-. c-. c-. e-. | % 16

} % end volta repeat

\alternative {

{ f4 r r | } % 17

{ f4 r r | } % 18

} % end alternative

} % end violinISleighRideMenuetto

violinISleighRideTrio = \relative c'' {

\splitBar

\time 3/4

% Trio

% B

\repeat volta 2 {

\once \override Score.BreakAlignment.break-align-orders =

#(make-vector 3 '(instrument-name

left-edge

ambitus

breathing-sign

clef

key-signature

time-signature

staff-bar

custos))

\once \override Staff.TimeSignature.space-alist =

#'((first-note . (fixed-space . 2.0))

(right-edge . (extra-space . 0.5))

;; free up some space between time signature

;; and repeat bar line

(staff-bar . (extra-space . 1)))

\bar ".|:"

r4 d,8(\p f d4)^\markup { \small { Sleigh bells may be added in the trio. You're in charge delegate!} } | % 19

r es8( f es4) | % 20

r es8( f es4) | % 21

r\< d8( f d4) | % 22

r\! d8( f d4) | % 23

r es8( f es4) | % 24

r\> es8( f es f) | % 25

} % end volta repeat

\alternative{

{d4\! r r | } % 26

{d r r | } % 27

} % end alternatives

% C

\repeat volta 2 {

r es8( g es4) | % 28

r d8( f d4) | % 29

r es8( g es4) | % 30

r d8( f d4) | % 3

r es8( f es4) | % 3

r d8( f d4) | % 3

r es8( f es f) | % 3

} % end volta repeat

\alternative {

{ d4 r r | } % 3

{ d r r | } % 3

}

} % end violinISleighrideTrio

violinISleighRide = { \violinISleighRideMenuetto \violinISleighRideTrio }

violinISleighrideMIDI = { \violinISleighRideMenuetto \violinISleighRideTrio \violinISleighRideMenuetto }

violinIISleighRide = \relative c'' {

\globalSleighRide

% Music follows here.

}

violaSleighRide = \relative c' {

\globalSleighRide

% Music follows here.

}

violinIIISleighRide = \violaSleighRide

celloSleighRide = \relative c {

\globalSleighRide

% Music follows here.

}

contrabassSleighRide = \celloSleighRide

violinIPartSleighRide = \new Staff \with {

instrumentName = "Violin I"

midiInstrument = "violin"

} { <<\outlineSleighRide \violinISleighRide >> }

violinIIPartSleighRide = \new Staff \with {

instrumentName = "Violin II"

midiInstrument = "violin"

} { << \violinIISleighRide >> }

violaPartSleighRide = \new Staff \with {

instrumentName = "Viola"

midiInstrument = "viola"

} { << \clef alto \violaSleighRide >> }

celloPartSleighRide = \new Staff \with {

instrumentName = "Cello"

midiInstrument = "cello"

} { \clef bass << \celloSleighRide >> }

contrabassPartSleighRide = \new Staff \with {

instrumentName = "Contrabass"

midiInstrument = "contrabass"

} { << \clef "bass_8" \contrabassSleighRide >> }

\score {

<<

\violinIPartSleighRide

\violinIIPartSleighRide

\violaPartSleighRide

\celloPartSleighRide

>>

\layout { }

\midi { }

}

-----------------------<\code>------------------------------



reply via email to

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