lilypond-user
[Top][All Lists]
Advanced

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

Multimeasure rests with chordnames context .. possible bug?


From: Jack Cooper
Subject: Multimeasure rests with chordnames context .. possible bug?
Date: Tue, 25 Sep 2007 22:14:16 -0400 (EDT)

I've been having a problem generating multimeasure rests within
leadsheets, and until recently I made no serious attempt to figure
out what was going on.  What I finally noticed is that lilypond
doesn't generate multimeasure rests when I use the chordnames context.
If I comment out the chordnames part of the score, lilypond correctly
generates multimeasure rests.

I haven't seen anything in the archives addressing this issue, so
I wonder if I've been missing something obvious.  I am currently
using version 2.11.27 under windows, although I noticed this problem
with version 2.10.x as well.  I've attached a copy of one of the 
leadsheet files that exhibits this behaviour..

Cheers,
  Jack
%
%  This lilypond source file produces lead sheet output
%  for a Jack Cooper composition, "Eyes Wide Open".
%  The melody is written out in full in this example- there
%  are no musical repeating elements used.
%

%  the following statement indicates the version of lilypond used to compile 
the source code.
 \version "2.11.25"

%  the following statement invokes certain preferences with regards the syntax 
for sharps and flats.
 \include "english.ly"

%  the following statement sets overall size scaling of music output 
#(set-global-staff-size 15.8) 

%
%  The following section specifies settings for printed output including
%  paper size and margins.  Letter-sized paper must be explicitly stated
%  else the European default, A4, is used.
%  
\paper {
  top-margin = 10\mm
  bottom-margin = 10\mm
%  annotate-spacing = ##t
  left-margin = 12\mm
  page-top-space = #0.5
  head-separation = #0.5
  after-title-space = #0.5
%  between-system-padding = #1.5
%  between-system-space = #0.4
  between-system-padding = #0.8
  between-system-space = #0.1
%  page-spacing-weight = #20
  print-page-number = #f
  #(set-paper-size "letter")
}

%
%  The following section specifies information appearing in the page header and 
footer.
%  An explanation of each setting can be found in lilypond's online 
documentation:
%  
http://lilypond.org/doc/v2.11/Documentation/user/lilypond/Creating-titles#Creating-titles
%
 \header {
       dedication =""
       title = "Eyes Wide Open"
       subtitle = "Lead Sheet"
       subsubtitle = ""
       poet = ""
       composer = "Jack Cooper"
       meter = "Tempo = 124 bpm"
       opus = ""
       arranger = ""
       instrument =""
       piece = ""
       breakbefore =""
       copyright = "Copyright - Jack Cooper, 2001"
       tagline= ""  
 }

%  the following defintion creates a customized chord symbol for "No Chord"
NCString = { <c e g>-\markup { \whiteout { \hspace #-2 "NC" } } }
NCStringX = #(append (sequential-music-to-chord-exceptions NCString #t)
  ignatzekExceptions)

%
%  the following defines the melody notes used in the song's intro
%
intro = {
\set Score.skipBars = ##t
\override MultiMeasureRest #'expand-limit = 1
R1*7 \bar "||"
}
%
%  the following defines the melody notes used in the first verse of the song
%
verseone = {
r4 c'4 e'8 g'8 a'4 |  R1 | 
r4 r8 g8 e'8 e'4 c'8 | R1 | 
r4 r8 g8 e'8 d'8 d'8 c'8 | c'4 r4 r2 | 
r8 c'8 c'8 c'8 e'4 e'4 | c'4 r4 r2 | 
r4 r8 c'8 e'8 g'8 g'8 e'8 |  g'8 (d'8 e'4) r2 | 
r4 r8 g8 e'8 d'8 d'8 c'8 | c'4 r4 r2 |
r4 c'4 e'4 g'4 | g'2 f'8( e'4.) |
d'8 g4. e'8 e'4 c'8~ | 
c'4 r4 r2 | R1 | R1 \bar "||"
}
%
%  the following defines the melody notes used in the second verse of the song
%
versetwo = {
r4  c'4 e'8 g'8 a'4 | R1 | 
r4 r8 g8 e'8 d'8 d'8 c'8 | c'4 r4 r2 |
r2 e'8 d'8 d'8 c'8 | c'4 r4 r2 |
r8 c'8 c'8 e'8~ e'8 d'8 d'8 c'8 | c'4 r4 r2 |
r4 r8 c'8 e'8 g'8 g'8 e'8 | g'8 (d'8 e'4) r2 |
r4 r8 g8 e'8 d'8 d'8 c'8 | c'4 r4 r2 |
r4 c'4 e'4 g'4 | g'2 f'8( e'4.) |
d'8 g4. e'8 e'4 c'8~ |
c'4 r4 r2 \bar "||"
}
%
% the following defines the  melody notes used in the song's bridge
%
bridge = {
r2 c''4 b'4 | a'4 g'4 e'4 g'4 |
a'8 b'4 b'8 ~ b'4 a'8  ( g'8) | 
a'8 g'4. g'8 g'4 e'8~ | 
e'4 r4 r4 c''8 b'8 | 
a'4 g'4 e'4 g'4 |
a'8 b'4 b'8 ~ b'4 a'8 (g'8) | 
a'4 g'4 g'8 g'4 e'8 ~ |
e'4 r4 r4 c''8 b'8 |
g'4 r4 r4 c''8 b'8 |
g'4 r4 r4 c''8 b'8 |
a'4 g'4 g'8 g'8 (e'8) g'8( |
g'8 a'8) r4 r4 e'8 g'8 |
a'4 a'8 a'8~ a'8 a'4 b'8~ |
b'8 a'4. a'4 a'4 |
a'8 g'4. g'8 a'4 g'8~ |
g'4 r4 r2 \bar "||"
}
%
%  the following defines the melody notes used in the final verse of the song
%
versethree = {
r4 c'4 e'8 g'8 g'8 (a'8 | a'4) r4 r2 |
r4 r8 g8 e'8 d'8 d'8 c'8 |
c'4 r4 r2 | r8 e'8 e'4 e'8 d'8 c'8 c'8~|
c'4 r4 r2 | r8 c'8 c'8 e'4 d'8 d'8 c'8 |
c'4 r4 r2 | r4 r8 c'8 e'8 g'8 g'8 e'8 |
g'8 (d'8 e'4) r2 | r8 g8 g8 e'8~ e'8 d'8 d'8 c'8|
c'4 r4 r2 |
r4 c'4 e'4 g'4 |
g'2 f'8( e'4.) | d'8 g4. e'8 e'4 c'8~|
c'4 r4 r2 | r4 c'4 e'4 g'4 |
g'2 f'8( e'4.) | d'8 g4. e'8 e'4 c'8~|
c'4 r4 r2 | r4 c'4 e'4 g'4 |
g'2 f'8( e'4.) | d'8 g4. r2\fermata \bar  "|."
}

%
%  the following defines the structure of the song and specifies
%  the key, time signature, clef and other settings
%
song = {
     \clef treble
     \key c \major
     \time 4/4
     \override MultiMeasureRest #'expand-limit = 1 

     \new Voice =   "intro"      {\intro}
     \new Voice =   "verseone"   {\verseone}
     \new Voice =   "versetwo"   {\versetwo}
     \new Voice =   "bridge"     {\bridge}
     \new Voice =   "versethree" {\versethree}
}

%
%  the following specifies the lyrics used in the first verse
%
lyrVerse = {
\set stanza = \markup {\smaller "Verse 1- "}
 \lyricmode {
  It's get -- ting late 
  and oh so dark
  We're ly -- ing skin to skin
  and talk -- ing heart to heart
  so man -- y things to say
  I don't know where to start
}
\set stanza = \markup {\smaller "Refrain- "}
\lyricmode {
  I'll keep my eyes wide op -- en
  in the dark
}
}
%
%  the following specifies the lyrics used in the second verse
%
lyrVerseTwo = {
\set stanza = \markup {\smaller "Verse 2- "}
\lyricmode {
  You're tell -- ing me
  There's some -- thing in the air
  Dan -- ger's on the loose
  There's no time to be pre -- pared
  There'll be no runn -- ing out
  There'll be no runn -- ing scared
  I'll keep my eyes wide op -- en
  In the dark
}
}
%
%  the following specifies the lyrics used in the bridge
%
lyrBridge = {
\set stanza = \markup {\smaller "Bridge- "}
\lyricmode {
  Well the dark is full of prom -- is -- es and
  sec -- rets un -- ful -- filled
  There are ghouls and ghosts and ske -- le -- tons and
  dreams that have been killed
  Take my hand 
  Take my hand
  Through this grave -- yard we shall walk
  We will find our way to day -- light
  While the night crea -- tures stalk
}
}
%
%  the following specifies the lyrics used in the final verse
%
lyrVerseThree = {
\set stanza = \markup {\smaller "Verse 3- "}
\lyricmode {
  So close your eyes
  And try to hold on tight
  I can't shield you from harm
  But I'll try with all my might
  Un -- til the morn -- ing comes
  And turns dark -- ness in -- to light
  I'll keep my eyes wide op -- en
  In the dark
  I'll keep my eyes wide op -- en
  In the dark
  I'll keep my eyes wide op -- en
}
}

%
%  the following section defines the chords used in the song
%     
harmonies = \chordmode {  
       c1 r1 r r r r r
       \set   chordNameExceptions = #NCStringX c
       \unset chordNameExceptions
       c r r r a:min r r r
       c r r r f g c r r
       \set   chordNameExceptions = #NCStringX c
       \unset chordNameExceptions
       c r r r a:min r r r
       c r r r f g c r
       a:min r c r
       a:min r c r
       f r a:min r d:sus4 d:7
       g g:7 
       \set   chordNameExceptions = #NCStringX c
       \unset chordNameExceptions
       c r r r a:min r r r 
       c r r r f g c r
       f g c r
       f g

}
%
%  -- SCORE DEFINITION --
%  This is where you define how to assemble the elements of a musical score.
%     
 \score {
    <<
     \set Score.skipBars = ##t 
%
%  define the settings for displaying chord names
%
     \context ChordNames = mychords {
         \override ChordName #'font-series =#'bold
         \override ChordName #'font-size = #2       
         \set majorSevenSymbol = "maj7"
         \harmonies
     }
%
%  define staff for vocal melody
%
    \new Staff = vocal <<  
%
%  define "voice" name
%
       \new Voice = "song" { \song } 
%
%  define lyrics to be assigned to melody
%
       \new Lyrics <<   \lyricsto "verseone"    \lyrVerse
                        \lyricsto "versetwo"    \lyrVerseTwo
                        \lyricsto "bridge"      \lyrBridge
                        \lyricsto "versethree"  \lyrVerseThree
       >>
    >>

  >>
     \layout {
%
%  define line width on page
%
      line-width = 190\mm
%
%  define lyric font size and spacing
%
        \context {
            \Lyrics
            \override LyricSpace #'minimum-distance = #1.9
            \override LyricText #'font-size = #1.3
         }

      }
}

reply via email to

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