lilypond-user
[Top][All Lists]
Advanced

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

Re: Help Needed to make chord chart over two pages


From: Michael Werner
Subject: Re: Help Needed to make chord chart over two pages
Date: Sun, 27 Aug 2023 03:26:15 -0400

On Sat, Aug 26, 2023 at 8:45 AM JacquelineUkulele-Guitar Grant <jackiemusicgrant@hotmail.com> wrote:
Hi All

Hi Jacqueline,
 
I am new to this Lilipond user help group, I aplopgize if I am breaking any rules are guideline.

I have been use Lilypond for a few year, even though I do not fully understand it.

I am trying to make a Chord Chart that goes over two pages, in what I call a "ukulele layout".  A "ukulele layout" being where the chords are in line with the lyrics.
I also, in the long run, I am looking to do a other layout of the same song but in what I call  a "guitar layout". A "guitar layout" being where the chords are above the lyrics.
For both of the layouts I want the option of going over two page, should I need to.

Here is the code for the "ukulele layout", which fills up one page., but if I try and add another verse (just as a test) it goes funny!
Thanks

First of all, I'm certainly no expert. So there may well be better ways to do these things. But, here goes.  First off: 

 \version "2.18.2"  % necessary for upgrading to future LilyPond versions. 


This version is *really* old. I would strongly recommend upgrading to the latest version, which at this moment is 2.24.2 for the stable branch.
 

 \header{ 

  title = "ODE TO BILLIE JOE - KEY // - VERSION 2" 

  subtitle = "For melody" 

arranger = "HELP NEEDED TO DO A TWO PAGE CHORD CHART" 

copyright = "HELP NEEDED TO DO A TWO PAGE CHORD CHART" 

tagline = "HELP NEEDED TO DO A TWO PAGE CHORD CHART" 

 

} 

 

\layout {  

 indent = 0.0 

 } 

 

melody = \relative c' { \key a \major 

|  \partial 4.  e'8  e8[  e8]  | e4  e8 e8  r8 e8  e8[ e8]  | e8[ e8]  a8 a8  e8 e4 e8 ~ | e1      | 

} 

text = \lyricmode { 

\set stanza = #" " It was the third of June a -- no -- ther sleep -- y, dust -- y, Del -- ta Day. 

} 


If you aren't going to be using stanza numbers you actually don't need to use \set stanza - it defaults to not putting a stanza number. So the above line can become:

text = \lyricmode {
  It was the third of June a -- no -- ther sleep -- y, dust -- y, Del -- ta Day.

 

 \score{ << 

\new Voice = "one" { \melody } 

\new Lyrics \lyricsto "one" \text 

>> 

\layout { } 

} 

 

\markup { \column { 


And the line right above here is the problem. The \markup command creates a single markup block, which isn't readily breakable by Lilypond's page breaking system. What's needed here is instead the \markuplist command. This creates a series of single lines that are easily and smoothly breakable as needed. One possible caveat is that a verse could wind up split by a page break. If you want to keep each verse as an intact block then each verse can be wrapped in a \column block.
 

 % Verse One 

\line   \fontsize #-0.8 { Verse 1}  

 

\line   \fontsize #-0.8 { It was the \bold [D7]  third of \bold [D7/A] June another \bold [Am7] sleepy, dusty, Delta \bold [D7] day. \bold [D7/A]  \bold [D7]  \bold [D7/A]}  

 

\line   \fontsize #-0.8 { I was  \bold [D7] out chopping cotton, and my \bold [Am7] brot-her was bailing \bold [D7] hay. \bold [D7/A] \bold [D7] \bold [D7/A]  } 

 

\line   \fontsize #-0.8 { And at  \bold [G7] din-ner time we stopped and walked \bold [G7] back to the house to \bold [G7] eat. } 

 

\line  \fontsize #-0.5 {And momma  \bold [D7] holler-ed out the back door 'y'all re- \bold [D7] -mem-ber to wipe your \bold [D7] feet'. } 

 

\line  { And then she  \bold [G7] said I got some news this \bold [G7] morn-in' from Choctaw \bold [G7] Ridge.  } 

\line  \fontsize #-0.5 { Today  \bold [D7] Bill-ie Joe McAllister jumped \bold [C7] off the Tallahatchie \bold [D7] Bridge.  \bold [D7/A] \bold [D7] \bold [D7/A]  } 


With all the \fontsize commands here, I would suggest just putting a single one at the top so as to affect all the text at once. That would help keep things more uniform in appearance.
 

 %to make a line look blank, for vertical space between lines 

\line   \fontsize #-40 {. } 


A better way to do this is use the \vspace command. It's specifically made to handle this. I tend to use a single variable with this - that way I can adjust all the spacing at once and keep it uniform.

I've snipped the rest as it's basically just repeating all this so far. The code for the verses would then be:

\score {
  <<
    \new Voice = "one" { \melody }
    \new Lyrics \lyricsto "one" \text
  >>
  \layout { }
}

section_spacing = 1 % This is the variable for the spacing between verses

\markuplist {
  \fontsize #-1 {

    \vspace #1.5

    \column {
      % Verse One
      \line { Verse 1 }
      \line { It was the \bold [D7]  third of \bold [D7/A] June another \bold [Am7] sleepy, dusty, Delta \bold [D7] day. \bold [D7/A]  \bold [D7]  \bold [D7/A] }
      \line { I was  \bold [D7] out chopping cotton, and my \bold [Am7] brot-her was bailing \bold [D7] hay. \bold [D7/A] \bold [D7] \bold [D7/A] }
      \line { And at  \bold [G7] din-ner time we stopped and walked \bold [G7] back to the house to \bold [G7] eat. }
      \line { And momma  \bold [D7] holler-ed out the back door 'y'all re- \bold [D7] -mem-ber to wipe your \bold [D7] feet'. }
      \line { And then she  \bold [G7] said I got some news this \bold [G7] morn-in' from Choctaw \bold [G7] Ridge. }
      \line { Today  \bold [D7] Bill-ie Joe McAllister jumped \bold [C7] off the Tallahatchie \bold [D7] Bridge.  \bold [D7/A] \bold [D7] \bold [D7/A] }
    }

    \vspace #section_spacing

    \column {
      % verse Two
      \line  { Verse 2}
      \line  { And  \bold [D7] pop-pa said to \bold [D7/A] momma as he \bold [Am7] passed around the black-eyed  peas. \bold [D7/A] \bold [D7] \bold [D7/A] }
      \line  { Well Billie \bold [D7] Joe never had a lick of \bold [Am7] sense, pass the biscuits  \bold [D7] please. \bold [D7/A] \bold [D7] \bold [D7/A] }
      \line  { There's \bold [G7] five more acres in the \bold [G7] low-er forty I got to \bold [G7] plow. }
      \line  { And momma \bold [D7] said it was a shame a- \bold [D7] -bout Billie Joe any \bold [D7] -how.}
      \line  { \bold [G7] noth-ing ever comes to no \bold [G7] good up on Choctaw \bold [G7] Ridge. }  
      \line  { And \bold [D7] Bill-ie Joe McAllister jumped  \bold [C7] off the Tallahatchie \bold [D7] Bridge.  \bold [D7/A] \bold [D7] \bold [D7/A] }
    }
  }
}

I'm showing just two verses here to save space, as all the rest will simply follow the same pattern. The first \vspace command with the fixed value is just for the space between the music and the first verse. The spacing between the verses will be adjusted via the section_spacing variable. Also, by putting the \fontsize command at the top and enclosing all of the verses in a pair of curly brackets, the font size of all the verse text can be adjusted at once, keeping all the following text a uniform size.

As written, the code I show here will keep each verse together, so they won't be split at a page break. If you would rather allow the verses to be split by page breaks, then a small change will allow this:

\markuplist {
  \column-lines {
    \fontsize #-1 {

      \vspace #1.5

      % Verse One
      \line { Verse 1 }
      \line { It was the \bold [D7]  third of \bold [D7/A] June another \bold [Am7] sleepy, dusty, Delta \bold [D7] day. \bold [D7/A]  \bold [D7]  \bold [D7/A] }
      \line { I was  \bold [D7] out chopping cotton, and my \bold [Am7] brot-her was bailing \bold [D7] hay. \bold [D7/A] \bold [D7] \bold [D7/A] }
      \line { And at  \bold [G7] din-ner time we stopped and walked \bold [G7] back to the house to \bold [G7] eat. }
      \line { And momma  \bold [D7] holler-ed out the back door 'y'all re- \bold [D7] -mem-ber to wipe your \bold [D7] feet'. }
      \line { And then she  \bold [G7] said I got some news this \bold [G7] morn-in' from Choctaw \bold [G7] Ridge. }
      \line { Today  \bold [D7] Bill-ie Joe McAllister jumped \bold [C7] off the Tallahatchie \bold [D7] Bridge.  \bold [D7/A] \bold [D7] \bold [D7/A] }

      \vspace #section_spacing

      % verse Two
      \line  { Verse 2}
      \line  { And  \bold [D7] pop-pa said to \bold [D7/A] momma as he \bold [Am7] passed around the black-eyed  peas. \bold [D7/A] \bold [D7] \bold [D7/A] }
      \line  { Well Billie \bold [D7] Joe never had a lick of \bold [Am7] sense, pass the biscuits  \bold [D7] please. \bold [D7/A] \bold [D7] \bold [D7/A] }
      \line  { There's \bold [G7] five more acres in the \bold [G7] low-er forty I got to \bold [G7] plow. }
      \line  { And momma \bold [D7] said it was a shame a- \bold [D7] -bout Billie Joe any \bold [D7] -how.}
      \line  { \bold [G7] noth-ing ever comes to no \bold [G7] good up on Choctaw \bold [G7] Ridge. }  
      \line  { And \bold [D7] Bill-ie Joe McAllister jumped  \bold [C7] off the Tallahatchie \bold [D7] Bridge.  \bold [D7/A] \bold [D7] \bold [D7/A] }
    }
  }
}

The change here is to remove each of the \column commands, and insert a single \column-lines command just after the \markuplist command. Basically, \column makes a single markup object that isn't breakable, while \column-lines creates a whole series of smaller markup objects.

Hopefully all that made at least some sense. Text formatting can get a bit ... interesting at times. As you said, things can go a bit funny at times when the software insists on doing what we *tell* it to do instead of what we *want* it to do.
--
Michael


reply via email to

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