[frogs] Re: cadenza causes barcheck failure? |
[ Thread Index |
Date Index
| More lilynet.net/frogs Archives
]
Dear Frogs (or anybody else interested),
Could someone volunteer to create a patch to the documentation by adding
this to the Known issues and warnings section of Unmetered music in
rhythms.itely?
Thanks,
Carl
On 11/10/09 7:46 AM, "Mats Bengtsson" <mats.bengtsson@xxxxxxxxx> wrote:
> It seems that you have to explicitly create a Voice context when you
> start a piece with \cadenzaOn:
>
> \include "english.ly"
> \new Voice \relative c'{
> \cadenzaOn
> c16^"Solo Free Time" d ef f g2. as4 gs g32 gs g8~ g1 g4 f16 ef d f d
> ef c4 ef8 c16 d g,1 \bar "" c16 d ef f g2 g \glissando g' g16 f ef d c b
> a g f e d c4 b2 e b16 e b1 \bar "||"
> \cadenzaOff
> }
>
> There are a few situations like these, where you explicitly have to
> create a context since LilyPond isn't able to figure out the right thing
> to do itself. I got the clue to this solution by looking at the log
> printouts from LilyPond, which included the line
> warning: cannot find or create `Timing' called `'
> Of course, you have to be a LilyPond nerd to have any idea of what the
> warning means, though.
> You could just as well have done \new Staff instead of \new Voice.
>
> /Mats
>
> chip wrote:
>> Thankyou for the reply - why is it that when I remove the " c1 | "
>> from the beginning and end of your corrected example I then get bar
>> lines throughout the cadenza? I don't want those c1's, they're not
>> part of the piece. Do I have to do some override to make the bar lines
>> invisible? Isn't that part of what \cadenza does (more or less)?
>> I don't understand why a \cadenza section, a completely free-form
>> unmetered cadenza, is causing problems with the other parts. My piece
>> is made up of 7 instrument parts. I've added the entire piece at the
>> bottom of this message.
>> (Oh, btw, there are no forced bar checks anywhere in my piece, so I
>> don't understand why I would get the failure.)
>> Thanks again,
>> Chip
>>
>> Mats Bengtsson wrote:
>>>
>>>
>>> chip wrote:
>>>> why would a
>>>>
>>>> \cadenzaOn
>>>> c16^"Solo Free Time" d ef f g2. as4 gs g32 gs g8~ g1 g4 f16 ef d
>>>> f d ef c4 ef8 c16 d g,1 \bar "" c16 d ef f g2 g \glissando g' g16 f
>>>> ef d c b a g f e d c4 b2 e b16 e b1 \bar "||"
>>>> \cadenzaOff
>>>>
>>>> cause a bar check failure?
>>> It doesn't, at least not by itself! You can only get bar check
>>> failures if you have bar checks, i.e. if you have inserted a | where
>>> you expect the bar line to happen. I tried to turn your incomplete
>>> example into something that can be ran directly in LilyPond, like
>>> \version "2.12.0"
>>> \include "english.ly"
>>> \relative c'{
>>> c1 |
>>> \cadenzaOn
>>> c16^"Solo Free Time" d ef f g2. as4 gs g32 gs g8~ g1 g4 f16 ef d f
>>> d ef c4 ef8 c16 d g,1 \bar "" c16 d ef f g2 g \glissando g' g16 f ef
>>> d c b a g f e d c4 b2 e b16 e b1 \bar "||"
>>> \cadenzaOff
>>> c1 |
>>> }
>>> and I don't see any bar check failures. It's much much easier to
>>> provide relevant answers to a question like this if you include a
>>> complete (but small) example of an .ly file that illustrates your
>>> problem.
>>>
>>> /Mats
>> % LilyPond
>> \include "english.ly"
>> \version "2.12.2"
>>
>> \header{
>> title = "Como"
>> composer = ""
>> arranger = ""
>> }
>> global = { \time 4/4
>> #(override-auto-beam-setting '(end 1 8 * *) 1 4 'Staff)
>> #(override-auto-beam-setting '(end 1 8 * *) 2 4 'Staff)
>> #(override-auto-beam-setting '(end 1 8 * *) 3 4 'Staff)
>> %\override Score.BarNumber #'break-visibility = #'#(#t #t #t)
>> %\override Score.BarNumber #'break-visibility = #end-of-line-invisible
>> %\override Score.BarNumber #'self-alignment-X = #-1
>> \override Glissando #'thickness = #3
>> \override Glissando #'style = #'zigzag
>> \override Glissando #'minimum-length = #6
>> \override Glissando #'springs-and-rods = #ly:spanner::set-spacing-rods
>> \override MultiMeasureRest #'expand-limit = 1
>> \set Score.skipBars = ##t
>> \numericTimeSignature
>> }
>> %%%%% This setup should give me the maximum usable staffs per page %%%%%
>> \paper {
>> top-margin = 0.1\cm
>> page-top-space = 0.1\cm
>> ragged-bottom = ##t
>> left-margin = 20\mm
>> line-width = 175\mm
>> }
>>
>> %%%%% This script sets the 'footer' of the last page to show the
>> current date %%%%%
>> tagline = \markup {
>> \simple #(strftime "%b %d, %Y" (localtime (current-time)))
>> \with-url #"http://lilypond.org/web/"
>> { LilyPond \simple #(lilypond-version) (http://lilypond.org/) }
>> }
>>
>> Baritone = \transpose d b
>> \relative c' {
>> \clef treble \global \key d \major
>> <<{\cadenzaOn
>> s1*8_\markup { \halign #-0 "Alto Sax Intro" } s2. \bar "||"
>> \cadenzaOff}{r1 \fermata}>>
>> e8 d r4 r8 b e d
>> e d r4 r e8 d
>> d2 cs
>> a16 g a b cs b cs d e2
>> d8 cs r4 r8 cs d cs
>> d cs r d e4 d
>> b2 c
>> cs a \bar "||"
>> r4 e'8 d r2
>> r4 e8 d r8 d cs b
>> d4. d8 cs2
>> a16 g a b cs b cs d e2
>> r4 d8 cs r2
>> r4 d8 cs r2
>> b2 c
>> cs a
>> r4 e'8 d r2
>> r4 e8 d r2
>> d4. d8 cs2
>> a16 g a b cs b cs d e2
>> r4 d8 cs r2
>> r4 d8 cs r2
>> R1*3
>> R1
>> R1
>> R1
>> e4. d8 cs4. d8
>> e4 g fs e
>> fs1
>> R1 \bar "||"
>> r4 e8 d r2
>> r4 e8 d r2
>> d4. d8 cs2
>> a16 g a b cs b cs d e2
>> r4 d8 cs r2
>> r4 d8 cs r2
>> R1*2 \bar "||"
>> e8 d r4 r8 b e d
>> e d r4 r e8 d
>> d2 cs
>> a16 g a b cs b cs d e2
>> d8 cs r4 r8 cs d cs
>> d cs r d e4 d
>> b2 c
>> cs a \bar "||"
>> R1*4
>> e'4. d8 cs4. d8
>> e4 g fs e
>> fs1
>> R1 \bar "||"
>> r4 e8 d r2
>> r4 e8 d r2
>> d4. d8 cs2
>> a16 g a b cs b cs d e2
>> r4 d8 cs r2
>> r4 d8 cs r2
>> b2 c
>> cs a \bar "|."
>> }
>>
>> Trombone = \relative c {
>> \clef bass \global \key d \major
>> <<{\cadenzaOn
>> s1*8_\markup { \halign #-0 "Alto Sax Intro" } s2. \bar "||"
>> \cadenzaOff}{r1 \fermata}>>
>> b'8 as r4 r8 fs b as
>> b as r4 r b8 as
>> as2 gs
>> e16 d e fs g fs g a b2
>> as8 gs r4 r8 gs as gs
>> as gs r gs b4 as
>> fs2 fs
>> gs e \bar "||"
>> r4 b'8 as r2
>> r4 b8 as r8 as gs fs
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> fs2 g
>> gs e
>> r4 b'8 as r2
>> r4 b8 as r2
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> R1*3
>> R1
>> R1
>> R1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 b8 as r2
>> r4 b8 as r2
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> R1*2 \bar "||"
>> b8 as r4 r8 fs b as
>> b as r4 r b8 as
>> as2 gs
>> e16 d e fs g fs g a b2
>> as8 gs r4 r8 gs as gs
>> as gs r gs b4 as
>> fs2 fs
>> gs e \bar "||"
>> R1*4
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 b8 as r2
>> r4 b8 as r2
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> fs2 fs
>> gs e \bar "|."
>> }
>>
>> TrumpetTwo = \transpose d e
>> \relative c'' {
>> \clef treble \global \key d \major
>> <<{\cadenzaOn
>> s1*8_\markup { \halign #-0 "Alto Sax Intro" } s2. \bar "||"
>> \cadenzaOff}{r1 \fermata}>>
>> g8 fs r4 r8 d g fs
>> g fs r4 r g8 fs
>> fs2 e
>> cs16 b cs d e d e fs g2
>> fs8 e r4 r8 e fs e
>> fs e r e g4 fs
>> d2 d
>> e cs \bar "||"
>> r4 g'8 fs r2
>> r4 g8 fs r8 fs e d
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 ds
>> e cs
>> r4 g'8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> R1*3
>> r2 \times 2/3 {r8 d e} \times 2/3 {fs g a}
>> b2 a4~ a8 b16 a
>> g1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 g8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> R1*2 \bar "||"
>> r4 a8 g8~ g4 fs
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e fs g2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 d
>> e cs \bar "||"
>> R1
>> r2 \times 2/3 {r8 fs g} \times 2/3 {a b cs}
>> b2 a4~ a8 b16 a
>> g1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 g8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 d
>> e cs \bar "|."
>> }
>>
>> TrumpetTwoTenor = \transpose d e
>> \relative c''' {
>> \clef treble \global \key d \major
>> <<{\cadenzaOn
>> s1*8_\markup { \halign #-0 "Alto Sax Intro" } s2. \bar "||"
>> \cadenzaOff}{r1 \fermata}>>
>> g8 fs r4 r8 d g fs
>> g fs r4 r g8 fs
>> fs2 e
>> cs16 b cs d e d e fs g2
>> fs8 e r4 r8 e fs e
>> fs e r e g4 fs
>> d2 d
>> e cs \bar "||"
>> r4 g'8 fs r2
>> r4 g8 fs r8 fs e d
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 ds
>> e cs
>> r4 g'8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> R1*4
>> b'2 a4~ a8 b16 a
>> g1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 g8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> R1*2 \bar "||"
>> r4 a8 g8~ g4 fs
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e fs g2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 d
>> e cs \bar "||"
>> R1*2
>> b'2 a4~ a8 b16 a
>> g1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 g8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 d
>> e cs \bar "|."
>> }
>>
>> Alto =
>> \relative c'' {
>> \clef treble \global
>> \key b \major
>> \cadenzaOn
>> c16^"Solo Free Time" d ef f g2. as4 gs g32 gs g8~ g1 g4 f16 ef d f d
>> ef c4 ef8 c16 d g,1 \bar "" c16 d ef f g2 g \glissando g' g16 f ef d c
>> b a g f e d c4 b2 e b16 e b1 \bar "||"
>> \cadenzaOff
>> b'8 as r4 r8 fs b as
>> b as r4 r b8 as
>> as2 gs
>> e16 d e fs g fs g a b2
>> as8 gs r4 r8 gs as gs
>> as gs r gs b4 as
>> fs2 fs
>> gs e \bar "||"
>> r4 b'8 as r2
>> r4 b8 as r8 as gs fs
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> fs2 g
>> gs e
>> r4 b'8 as r2
>> r4 b8 as r2
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> R1*3
>> R1
>> R1
>> R1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 b8 as r2
>> r4 b8 as r2
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> R1*2 \bar "||"
>> b8 as~ as4 r8 fs b16 as gs as
>> b8 as r4 r b8 as
>> as2 gs
>> e16 d e fs g fs g a b2
>> as8 gs r4 r8 gs as16 gs fs gs
>> as8 gs~ gs gs b b as gs
>> fs2 fs
>> gs e \bar "||"
>> R1*4
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 b8 as r2
>> r4 b8 as r2
>> as4. a8 gs2
>> e16 ds e fs gs fs gs a as2
>> r4 as8 gs r2
>> r4 as8 gs r2
>> fs2 fs
>> gs e \bar "|."
>> }
>>
>> TrumpetOne = \transpose d e
>> \relative c'' {
>> \clef treble \global \key d \major
>> <<{\cadenzaOn
>> s1*8_\markup { \halign #-0 "Alto Sax Intro" } s2. \bar "||"
>> \cadenzaOff}{r1 \fermata}>>
>> b8 a r4 r8 fs b a
>> b a r4 r b8 a
>> a2 g
>> d16 cs d e fs e fs gs b2
>> a8 g r4 r8 g a g
>> a g r a b4 a
>> f2 fs
>> g fs \bar "||"
>> r4 b8 a r2
>> r4 b8 a r8 a gs fs
>> a4. gs8 g2
>> d16 cs d e fs e fs gs b2
>> r4 a8 g r2
>> r4 a8 g r2
>> fs2 g
>> a e
>> r4 b'8 a r2
>> r4 b8 a r2
>> a4. gs8 g2
>> d16 cs d e fs e fs gs b2
>> r4 a8 g r2
>> r4 a8 g r2
>> R1*3
>> r2 \times 2/3 {r8 fs g} \times 2/3 {a b cs}
>> d2 cs4~ cs8 d16 cs
>> b1
>> b4. a8 g4. a8
>> b4 d cs b
>> b1
>> R1 \bar "||"
>> r4 b8 a r2
>> r4 b8 a r2
>> a4. gs8 g2
>> d16 cs d e fs e fs gs b2
>> r4 a8 g r2
>> r4 a8 g r2
>> R1*2 \bar "||"
>> r4 b8 a~ a4 g
>> r4 b8 a r2
>> a4. gs8 g2
>> d16 cs d e fs e fs gs b2
>> r4 a8 g r2
>> r4 a8 g r2
>> d2 d
>> e cs \bar "||"
>> R1
>> r2 \times 2/3 {r8 fs g} \times 2/3 {a b cs}
>> d2 cs4~ cs8 d16 cs
>> b1
>> b4. a8 g4. a8
>> b4 d cs b
>> b1
>> R1 \bar "||"
>> r4 b8 a r2
>> r4 b8 a r2
>> a4. gs8 g2
>> d16 cs d e fs e fs gs b2
>> r4 a8 g r2
>> r4 a8 g r2
>> f2 fs
>> g fs \bar "|."
>> }
>>
>> Tenor = \transpose d e
>> \relative c''' {
>> \clef treble \global \key d \major
>> <<{\cadenzaOn
>> s1*8_\markup { \halign #-0 "Alto Sax Intro" } s2. \bar "||"
>> \cadenzaOff}{r1 \fermata}>>
>> g8 fs r4 r8 d g fs
>> g fs r4 r g8 fs
>> fs2 e
>> cs16 b cs d e d e fs g2
>> fs8 e r4 r8 e fs e
>> fs e r e g4 fs
>> d2 d
>> e cs \bar "||"
>> r4 g'8 fs r2
>> r4 g8 fs r8 fs e d
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 ds
>> e cs
>> r4 g'8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> R1*3
>> R1
>> R1
>> R1
>> gs4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 g8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> R1*2 \bar "||"
>> g8 fs~ fs4 r8 d g16 fs e fs
>> g8 fs r4 r g8 fs
>> fs2 e
>> cs16 b cs d e d e fs g2
>> fs8 e r4 r8 e fs16 e d e
>> fs8 e~ e e g g fs e
>> d2 d
>> e cs \bar "||"
>> R1*4
>> gs'4. fs8 e4. fs8
>> gs4 b a gs
>> a1
>> R1 \bar "||"
>> r4 g8 fs r2
>> r4 g8 fs r2
>> fs4. f8 e2
>> cs16 b cs d e d e f fs2
>> r4 fs8 e r2
>> r4 fs8 e r2
>> d2 d
>> e cs \bar "|."
>> }
>>
>> %%%%% This section creates the seperate pdf files for each horn %%%%%
>> \book { \score {
>> <<
>> \new Staff <<
>> \set Staff.instrumentName = "Trumpet 1"
>> \context Staff <<
>> \context Voice = "TrumpetOne" { \TrumpetOne }
>>>>
>>>>
>> \new Staff <<
>> \set Staff.instrumentName = "Trumpet 2"
>> \context Staff <<
>> \context Voice = "TrumpetTwo" { \TrumpetTwo }
>>>>
>>>>
>>
>> \new Staff <<
>> \set Staff.instrumentName = "Alto"
>> \context Staff <<
>> \context Voice = "Alto" { \Alto }
>>>>
>>>>
>> \new Staff <<
>> \set Staff.instrumentName = "Tenor (if no Trumpet 2)"
>> \context Staff <<
>> \context Voice = "TrumpetTwoTenor" {
>> \TrumpetTwoTenor }
>>>>
>>>>
>>
>> \new Staff <<
>> \set Staff.instrumentName = "Tenor"
>> \context Staff <<
>> \context Voice = "Tenor" { \Tenor }
>>>>
>>>>
>> \new Staff <<
>> \set Staff.instrumentName = "Baritone Sax"
>> \context Staff <<
>> \context Voice = "Baritone" { \Baritone }
>>>>
>>>>
>> \new Staff <<
>> \set Staff.instrumentName = "Trombone"
>> \context Staff <<
>> \context Voice = "Trombone" { \Trombone }
>>>>
>>>>
>>>>
>> %\midi{}
>> } }
>>
>> %%%%% comment all these \book lines if no score is needed %%%%%%
>> \book { \score { << \new Staff = "TrumpetOne" \with { \remove
>> Instrument_name_engraver } \TrumpetOne >> \header {piece="Trumpet 1"}
>> \layout { indent = 0\mm} } }
>> \book { \score { << \new Staff = "TrumpetTwo" \with { \remove
>> Instrument_name_engraver } \TrumpetTwo >> \header {piece="Trumpet 2"}
>> \layout { indent = 0\mm} } }
>> \book { \score { << \new Staff = "Alto" \with { \remove
>> Instrument_name_engraver } \Alto >> \header {piece="Alto Sax"} \layout
>> { indent = 0\mm} } }
>> \book { \score { << \new Staff = "Tenor" \with { \remove
>> Instrument_name_engraver } \Tenor >> \header {piece="Tenor Sax"}
>> \layout { indent = 0\mm} } }
>> \book { \score { << \new Staff = "Baritone" \with { \remove
>> Instrument_name_engraver } \Baritone >> \header {piece="Baritone Sax"}
>> \layout { indent = 0\mm} } }
>> \book { \score { << \new Staff = "Trombone" \with { \remove
>> Instrument_name_engraver } \Trombone >> \header {piece="Trombone"}
>> \layout { indent = 0\mm} } }
>> \book { \score { << \new Staff = "TrumpetTwoTenor" \with { \remove
>> Instrument_name_engraver } \TrumpetTwoTenor >> \header {piece="Tenor
>> Sax (if no Trumpet 2)"} \layout { indent = 0\mm} } }
>>
>> \layout { \context { \Score } }
>>
>>
>> _______________________________________________
>> lilypond-user mailing list
>> lilypond-user@xxxxxxx
>> http://lists.gnu.org/mailman/listinfo/lilypond-user
>
> --
> =============================================
> Mats Bengtsson
> Signal Processing
> School of Electrical Engineering
> Royal Institute of Technology (KTH)
> SE-100 44 STOCKHOLM
> Sweden
> Phone: (+46) 8 790 8463
> Fax: (+46) 8 790 7260
> Email: mats.bengtsson@xxxxxxxxx
> WWW: http://www.s3.kth.se/~mabe
> =============================================
>
>
>
>
---
----
Join the Frogs!