|
View:
New views
12 Messages
—
Rating Filter:
Alert me
|
|
|
constructing a jazz pieceIn constructing a small combo piece, I'm not sure how to modularize individual
parts. For example, notes are specific to a certain instrument whereas a segno or coda is common to all parts. I'm confused as to where these things get inserted. For example, Do I put the coda symbol in each of the trumpet, trombone and clarinet parts or do I do keep each individual part as simple as possible and add the coda instructions at a higher level? And then when each individual part is printed out the codas and segnos are all there. I hope that makes sense. Is there an example somewhere? I'm using "jazz-combo.ly" as a basis for my piece. _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceStan Mulder wrote:
> In constructing a small combo piece, I'm not sure how to modularize individual > parts. > > For example, notes are specific to a certain instrument whereas a segno > or coda is common to all parts. > > I'm confused as to where these things get inserted. > > For example, Do I put the coda symbol in each of the trumpet, trombone and > clarinet parts or do I do keep each individual part as simple as possible and > add the coda instructions at a higher level? > > And then when each individual part is printed out the codas and segnos are all > there. I hope that makes sense. > > Is there an example somewhere? I'm using "jazz-combo.ly" as a basis for my piece. > > > > _______________________________________________ > lilypond-user mailing list > lilypond-user@... > http://lists.gnu.org/mailman/listinfo/lilypond-user > What I do is to put road-map stuff (key changes, time changes, repeats, segnos etc.) in a 'global' block. Then I combine that with parts for the individual part scores, and with the top staff in the main score. Hope this helps. David _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceDavid Bobroff <bobroff <at> centrum.is> writes:
> What I do is to put road-map stuff (key changes, time changes, repeats, > segnos etc.) in a 'global' block. Then I combine that with parts for > the individual part scores, and with the top staff in the main score. David, Is there an example somewhere? Stan _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceStan Mulder wrote:
> David Bobroff <bobroff <at> centrum.is> writes: > >> What I do is to put road-map stuff (key changes, time changes, repeats, >> segnos etc.) in a 'global' block. Then I combine that with parts for >> the individual part scores, and with the top staff in the main score. > > David, > > Is there an example somewhere? > > Stan > > > > _______________________________________________ > lilypond-user mailing list > lilypond-user@... > http://lists.gnu.org/mailman/listinfo/lilypond-user > Don't know if there's a simple example in the docs. What I do looks something like this: global = { \key c \major \time = 4/4 s1^\markup{\bold "Allegro"} s1*8 (you need skips to place your things in the right place) % etc. } sax = \relative c' { %saxophone stuff } trombone = \relative c { % trombone stuff } % The score for the two voices above: \score { \context StaffGroup << \global \context Staff << \sax >> \new Staff << \trombone >> >> } % Score for a part: \score { \context Staff << \global \sax >> } You can put all sorts of things in the 'global' block like rehearsal marks, too. -David _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz piece-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1 Stan Mulder wrote: | In constructing a small combo piece, I'm not sure how to modularize individual | parts. | | For example, notes are specific to a certain instrument whereas a segno | or coda is common to all parts. I've been wondering this myself after having typeset around 50 or so lead sheets with melody, chords and rhythm parts. I've looked at the documentation, but there doesn't seem to be any easy way to separate the structure of the music (i.e., voltas, codas, special barlines, etc) from the music itself (i.e., notes, fingerings, etc.). I vaguely remember that there was some discussion about doing it in a new version of lilypond on the list, but I can't remember if it was going to happen in the current development branch (2.11.x) or not. Is something like this already in the works? Or is there a good way to do it now that I've overlooked? :-) As it is now, I have to specify the structure in all parts (except chords) if I want to be able to print out separate parts. Needless to say (but here I am saying it anyway :-P) it makes part entry more cumbersome and error prone when you have to do it this way. - -- Shamus Attached is an example of how I do my lead sheets currently--maybe it'll spark some ideas for you Stan. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFH/PurmE5b/O3JjkYRAhQzAJ9V/K2pZU3hTRZAiJSG5N21LJFEDACgpohH g4mEPT+ZrzVtpKBSOBDq3FE= =tvj1 -----END PGP SIGNATURE----- \version "2.10.29" \include "pop-chords.ly" \include "english.ly" % Good sizes are 16, 18, & 20 staffSize = #20 #(set-default-paper-size "letter") #(set-global-staff-size staffSize) #(ly:set-option (quote no-point-and-click)) %{ Some useful characters: â â â â â â â ⡠⢠⦠%} \header { %Let's bump up the title size and switch to the chord font. :-) title = \markup { \override #'(font-family . sans) \fontsize #3.5 "As The Deer" } % composer = \markup { \override #'(font-family . sans) \fontsize #1.3 "" } arranger = \markup { \override #'(font-family . sans) \fontsize #1.3 "arr. Ed Smart" } tagline = #(ly:export (string-append "Engraved by JLH and Lilypond " (lilypond-version))) } %{ tweak = #(define-music-function (parser location sym val arg) (symbol? scheme? ly:music?) "Add @code{sym . val} to the @code{tweaks} property of @var{arg}." (set! (ly:music-property arg 'tweaks) (acons sym val (ly:music-property arg 'tweaks))) arg) %} % Useful tweak abbreviations (hn = harmony note) hn = #(define-music-function (parser location arg) (ly:music?) ;; Harmony Note: Set the tweaks property of the passed in note to use a smaller font (set! (ly:music-property arg 'tweaks) (acons 'font-size -3.5 (ly:music-property arg 'tweaks))) arg) % % Lead vocal % LeadVox = \relative c' { \set Voice.autoBeaming = ##f % \set Staff.instrument = #"Lead vox" \clef G \key c \major \override Staff.TimeSignature #'style = #'() \time 4/4 \override Score.SpacingSpanner #'average-spacing-wishes = ##f \set Score.markFormatter = #format-mark-box-letters % Intro \once \override TextScript #'padding = #2.0 s1*0^\markup { \large { Moderate ballad } } %\small \tiny e4 g g e8 [ d ] | % 1 c4. d8 f [ e d c ] | % 2 c4. e8 d4. c8 | % 3 c1 | % 4 \normalsize \repeat volta 2 { % A section \mark \markup { \override #'(font-family . sans) { \box { A } } } e4 g g e8 [ d ] | % 5 c4. d8 f [ e d c ] | % 6 a'4 a8 [ a ] g4. f8 | % 7 g1 | % 8 e4 g g e8 [ d ] | % 9 c4. d8 f ( [ e ) d c ] | % 10 c4. e8 d4. c8 | % 11 c2 ~ c4 r \bar "||" % 12 % B section \mark \markup { \override #'(font-family . sans) { \box { B } } } <c' \hn a \hn e>4 <c \hn a \hn e> <c \hn g \hn e> <c \hn g \hn e>8 [ <b \hn g \hn e> ] | % 13 % <c' \hn a \hn e>4 <c \hn a \hn e> <c \hn g \hn e> <c \hn g \hn e>8 [ <b \hn g \hn e> ] | % 13 <a \hn f \hn c>4 <a \hn d, \hn b> <g \hn e \hn c>4. <\hn e c>8 | % 14 <a \hn f \hn d>4 <a \hn f \hn d> <a \hn f \hn c> <a \hn f \hn c>8 [ <g \hn e \hn c> ] | % 15 <f \hn d \hn a>4 <f \hn d \hn a> << { \voiceOne <e \hn b>2 } \new Voice = "v" { \voiceTwo \override NoteHead #'font-size = #-2.0 a,4 gs \override NoteHead #'font-size = #1.0 } >> \oneVoice | % 16 e'4 g g e8 [ d ] | % 17 c4. d8 f ( [ e ) d c ] | % 18 c4. e8 d4. c8 | % 19 } \alternative { { c2 r | % 20 } { c2 r \bar "||" % 21 } } % A section (modulation) \key d \major \once \override Score.RehearsalMark #'padding = #2.0 \mark \markup { \override #'(font-family . sans) { \box { C } } } fs4 a a fs8 [ e ] | % 22 d4. e8 g [ fs e d ] | % 23 b'4. b8 a4. g8 | % 24 a1 | % 25 fs4 a a fs8 [ e ] | % 26 d4. e8 g [ fs e d ] | % 27 d4. fs8 e4. d8 | % 28 d2 ~ d4 r | % 29 % B section \repeat volta 2 { \mark \markup { \override #'(font-family . sans) { \box { D } } } <d' \hn b \hn fs>4 <d \hn b \hn fs> <d \hn a \hn fs> <d \hn a \hn fs>8 [ <cs \hn a \hn fs> ] | % 30 <b \hn g \hn d>4 <b \hn e, \hn cs> <a \hn fs \hn d>4. <\hn fs d>8 | % 31 <b \hn g \hn e>4 <b \hn g \hn e> <b \hn g \hn d> <b \hn g \hn d>8 [ <a \hn fs \hn d> ] | % 32 <g \hn e \hn b>4 <g \hn e \hn b> << { \voiceOne <fs \hn cs>2 } \new Voice = "v" { \voiceTwo \override NoteHead #'font-size = #-2.0 b,4 as \override NoteHead #'font-size = #1.0 } >> \oneVoice | % 33 fs'4 a a fs8 [ e ] | % 34 d4. e8 g [ fs e d ] | % 35 d4. fs8 e4. d8 | % 36 } \alternative { { d1 | % 37 } { d2 ~ d4 fs8 [ e ] | % 38 } } % Outro d4. fs8 e4. d8 | % 39 d2 ~ d4 fs8 [ e ] | % 40 d4. fs8 e4. d8 | % 41 % d1 | % 42 << { \voiceOne d1 } \context Voice = v { \voiceThree \tiny fs4 a a fs8 [ e ] \normalsize } >> \oneVoice | % 42 %\small \tiny d4. e8 g [ fs e d ] | % 43 d1^\fermata \bar "|." % 44 \normalsize } LeadVoxText = \lyricmode { _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ As the deer pant -- eth for the wa -- ter So my soul long -- eth a -- fter thee You a -- lone are my heartâs de -- sire _ And I long to wor -- ship thee. _ You a -- lone are my strength my shield To you a -- lone may my spi -- rit yield You a -- lone are my heartâs de -- sire _ And I long to wor -- ship thee. thee. I want you more than gold or sil -- ver On -- ly you can sa -- tis -- fy You a -- lone are the real joy gi -- ver And the ap -- ple of my eye. _ You a -- lone are my strength my shield To you a -- lone may my spi -- rit yield You a -- lone are my heartâs de -- sire _ And I long to wor -- ship thee. thee _ and I long to wor -- ship thee _ and I long to wor -- ship thee } LeadVoxTextB = \lyricmode { _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Youâre my friend and you are my bro -- ther E -- ven though you _ are a king I love you more than a -- ny o -- ther So much more than a -- ny -- thing. } % % Chord names % Chords = \chordmode { \override SeparatingGroupSpanner #'padding = #'2.0 %Bah, can't we set this globally? \popChords % Intro c2 e:m/b | % 1 a2:m c/g | % 2 d2:m g4:sus4 g | % 3 c2 g4/c f/c | % 4 \repeat volta 2 { % A section c2 e:m/b | % 5 a2:m c/g | % 6 f2 g:sus2/f | % 7 c2 g4/c f/c | % 8 c2 e:m/b | % 9 a2:m c/g | % 10 d2:m7 g4:sus4 g | % 11 c2. g4/b \bar "||" % 12 % B section a2:m a:m7/g | % 13 f4 g:sus2/f c2/e | % 14 d2:m d:m/c | % 15 d2:m/b e4:sus4 e | % 16 c2 e:m/b | % 17 a2:m c/g | % 18 d2:m g4:sus4 g | % 19 } \alternative { { c2 g4/c f/c | % 20 } { c2 g/a \bar "||" % 21 } } % A section (modulation) d2 fs:m/cs | % 22 b2:m d/a | % 23 g2 a:sus2/g | % 24 d2 a4/d g/d | % 25 d2 fs:m/cs | % 26 b2:m d/a | % 27 e2:m a4:sus4 a | % 28 d2. a4/cs | % 29 % B section \repeat volta 2 { b2:m b:m/a | % 30 g4 a:sus2/g d2/fs | % 31 e2:m e:m/d | % 32 e2:m/cs fs4:sus4 fs | % 33 d2 fs:m/cs | % 34 b2:m d/a | % 35 e2:m7 a4:sus4 a | % 36 } \alternative { { d2. a4/cs | % 37 } { b2:m b:m/a | % 38 } } % Outro e2:m7 a4:sus4 a | % 39 b2.:m b4:m/a | % 40 e2:m7 a4:sus4 a | % 41 d2 fs:m/cs | % 42 b2:m g:sus2 | % 43 d1 \bar "|." % 44 } % % Chord rhythms % % Use a RhythmicStaff on the chords instead of this? % It almost works, but not quite. Doesn't collapse chords above to single notes... StaffC = \relative c { \set Voice.autoBeaming = ##f % \set Staff.instrument = #"Rhythm" \override Staff.TimeSignature #'style = #'() \time 4/4 \override NoteHead #'style = #'slash % Intro c4 c c c | % 1 c4 c c c | % 2 c4 c c c | % 3 c4 c c c | % 4 \repeat volta 2 { % A section c4 c c c | % 5 c4 c c c | % 6 c4 c c c | % 7 c4 c c c | % 8 c4 c c c | % 9 c4 c c c | % 10 c4 c c c | % 11 c4 c c c \bar "||" % 12 % B section c4 c c c | % 13 c4 c c c | % 14 c4 c c c | % 15 c4 c c c | % 16 c4 c c c | % 17 c4 c c_\markup { \italic { rit. } } c | % 18 c4_\markup { \italic { A tempo } } c c c | % 19 } \alternative { { c4 c c c | % 20 } { c4 c c c \bar "||" % 21 } } % A section (modulation) c4 c c c | % 22 c4 c c c | % 23 c4 c c c | % 24 c4 c c c | % 25 c4 c c c | % 26 c4 c c c | % 27 c4 c c c | % 28 c4 c c c | % 29 % B section \repeat volta 2 { c4 c c c | % 30 c4 c c c | % 31 c4 c c c | % 32 c4 c c_\markup { \italic { rit. } } c | % 33 c4_\markup { \italic { A tempo } } c c c | % 34 c4 c c c | % 35 c4 c c c | % 36 } \alternative { { c4 c c c | % 37 } { c4 c c c | % 38 } } % Outro c4 c c c | % 39 c4 c c c | % 40 c4 c c_\markup { \italic { rit. } } c | % 41 c4 c c c | % 42 c4 c c c | % 43 c1-\fermata \bar "|." % 44 } \score { << % \new ChoirStaff = "Vox" << \new Staff = leadStaff { \new Voice = "lead" \LeadVox } \new Lyrics \lyricsto "lead" \LeadVoxText \new Lyrics \lyricsto "lead" \LeadVoxTextB >> \new ChoirStaff = "Rhythm" << \new ChordNames = "chords" \Chords \new RhythmicStaff = "chordRhythm" \StaffC >> \set Score.skipBars = ##t \set Score.melismaBusyProperties = #'() >> \layout { % ragged-last-bottom = ##t ragged-last = ##t } } \paper { #(define fonts (make-pango-font-tree "Times New Roman" "DomCasual BT" "Luxi Mono" (/ staffSize 20))) } % Pop chords as used in English/American popular music % by James L. Hammons % Written against \version "2.8.2" chordFlat = \markup { \hspace #0.2 \tiny \raise #1.0 \flat } chordSharp = \markup { \hspace #0.1 \teeny \raise #1.0 \sharp } popChordsMusic = { % Triads <c g>-\markup { "5" } <c d g>-\markup { "2" } % <c d g>-\markup { "sus2" } <c f g>-\markup { "sus" } % <c f g>-\markup { "sus4" } % <c ees ges>-\markup { \small \raise #1.0 "o" } <c ees ges>-\markup { \raise #0.8 "o" } % <c ees ges>-\markup { "dim" } % <c e gis>-\markup { "aug" } % or + % Sixths <c e g a>-\markup { "6" } <c ees g a>-\markup { "m6" } % Sevenths (including altered) <c e g bes>-\markup { "7" } <c ees g bes>-\markup { "m7" } <c e g b>-\markup { "maj7" } <c f g bes>-\markup { "7sus4" } <c d g bes>-\markup { "7sus2" } <c e ges bes>-\markup { "7" \chordFlat "5" } <c e gis bes>-\markup { "7" \chordSharp "5" } % <c e gis bes>-\markup { "aug7" } % or +7 <c ees g b>-\markup { "m(maj7)" } % <c ees ges beses>-\markup { \small \raise #1.0 { "o" } "7" } <c ees ges beses>-\markup { \raise #0.8 { "o" } "7" } % <c ees ges beses>-\markup { "dim7" } % <c ees ges bes>-\markup { \small \raise #1.0 { #(ly:export (ly:wide-char->utf-8 #x00f8)) } "7" } % <c ees ges bes>-\markup { \raise #0.8 { #(ly:export (ly:wide-char->utf-8 #x00f8)) } "7" } <c ees ges bes>-\markup { "m7" \chordFlat "5" } <c e ges b>-\markup { "maj7" \chordFlat "5" } <c e gis b>-\markup { "maj7" \chordSharp "5" } % Ninths (including altered--incomplete) <c e g bes d'>-\markup { "9" } <c ees g bes d'>-\markup { "m9" } <c e g b d'>-\markup { "maj9" } <c e g d'>-\markup { "add9" } <c e g a d'>-\markup { "6/9" } <c ees g a d'>-\markup { "m6/9" } <c ees g b d'>-\markup { "m(maj9)" } <c e g bes des'>-\markup { "7" \chordFlat "9" } <c e g bes dis'>-\markup { "7" \chordSharp "9" } %dim7add9, dim7b9, dim7#9, 9#5, 9b5, maj9#5, maj9b5, 9sus4, 9sus2 % Elevenths (incomplete) <c e g bes d' f'>-\markup { "11" } <c ees g bes d' f'>-\markup { "m11" } <c e g b d' f'>-\markup { "maj11" } <c e g f'>-\markup { "add11" } <c ees g bes f'>-\markup { "m7add11" } % Thirteenths (incomplete) <c e g bes d' a'>-\markup { "13" } <c ees g bes d' a'>-\markup { "m13" } <c e g b d' a'>-\markup { "maj13" } <c e g a'>-\markup { "add13" } % Misc add chords <c e g bes des' aes'>-\markup { "7" \chordFlat "9" \chordFlat "13" } <c e gis bes des'>-\markup { "7" \chordSharp "5" \chordFlat "9" } <c e g b d' fis'>-\markup { "maj9" \chordSharp "11" } <c e g bes d' fis'>-\markup { "9" \chordSharp "11" } } % Add to existing exceptions popChordsAdd = #(append (sequential-music-to-chord-exceptions popChordsMusic #t) ignatzekExceptions) % Bah, can't we set this globally? % \set chordNameExceptions = #popChords % Bah, this doesn't work either... % #(set chordNameExceptions popChords) % Let's try fixing the accidentals with some Scheme... #(define (chord-name->pop-markup pitch) (let* ((alt (ly:pitch-alteration pitch))) (make-line-markup (list (make-simple-markup (vector-ref #("C" "D" "E" "F" "G" "A" "B") (ly:pitch-notename pitch))) ;; If it's natural, do nothing (if (= alt 0) (make-line-markup (list empty-markup)) (if (= alt FLAT) ;; Otherwise, handle adding the flat symbol (make-line-markup (list (make-hspace-markup 0.3) ;; WAS: 0.4 (make-tiny-markup (make-raise-markup 1.0 (make-musicglyph-markup (string-append "accidentals." (number->string alt))))) ) ) ;; or handle adding the sharp symbol (make-line-markup (list (make-hspace-markup 0.1) ;; WAS: 0.2 (make-teeny-markup (make-raise-markup 1.0 (make-musicglyph-markup (string-append "accidentals." (number->string alt))))) ) ) ) ) ) ) ) ) popChords = { \set chordNameExceptions = #popChordsAdd \set chordRootNamer = #chord-name->pop-markup } _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceDavid Bobroff <bobroff <at> centrum.is> writes:
> You can put all sorts of things in the 'global' block like rehearsal > marks, too. I get it now. Thanks. _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz piece-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1 Thanks for that David. I've been doing this to separate out dynamic markings, but I didn't know you could do the same with voltas and the like. /me goes off to try it - -- Shamus David Bobroff wrote: | Don't know if there's a simple example in the docs. What I do looks | something like this: | | global = { | \key c \major | \time = 4/4 | s1^\markup{\bold "Allegro"} | s1*8 (you need skips to place your things in the right place) | % etc. | } | | sax = \relative c' { | %saxophone stuff | } | | trombone = \relative c { | % trombone stuff | } | | % The score for the two voices above: | | \score { | \context StaffGroup << | \global | \context Staff << | \sax | >> | \new Staff << | \trombone | >> | >> | } | | % Score for a part: | | \score { | \context Staff << | \global | \sax | >> | } | | | You can put all sorts of things in the 'global' block like rehearsal | marks, too. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFH/P+imE5b/O3JjkYRAjPnAJsEPPLMGaOzYntUbWr2aza/Njyc/ACfXDUV jMQnseEglncpAa6ALucgtDQ= =fdj6 -----END PGP SIGNATURE----- _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz piece>>>>> "Stan" == Stan Mulder <st45882wz@...> writes:
Stan> David Bobroff <bobroff <at> centrum.is> writes: >> What I do is to put road-map stuff (key changes, time changes, >> repeats, segnos etc.) in a 'global' block. Then I combine that >> with parts for the individual part scores, and with the top staff >> in the main score. Stan> David, Stan> Is there an example somewhere? The main problem with this approach is that the musical output is incorrect -- `chording' the global section with the individual parts makes the output *look* right without acutally *being* right. Try, e.g., global= { \time 4/4 \key es \major \repeat volta 2 { s1*2 } } notes =\relative c' { es4 f es f | es f es f } \score { \unfoldRepeats \context Staff << \global \notes >> \midi{} \layout{} } -- Dr Peter Chubb http://www.gelato.unsw.edu.au peterc AT gelato.unsw.edu.au http://www.ertos.nicta.com.au ERTOS within National ICT Australia _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz piece-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1 Shamus wrote: | Thanks for that David. I've been doing this to separate out dynamic | markings, but I didn't know you could do the same with voltas and the like. | | /me goes off to try it Wow! Works like a charm! This is not only going to save me lots of time, but what's left of my sanity. :-) Attached is the final result. Thanks again, David! - -- Shamus -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFH/X/VmE5b/O3JjkYRAt5LAJ93hCBNKKTll+ZlHUY9fHIzKSzRrQCfZzal ZPPvLxmqZsXDepMMHvrd6GU= =eFjJ -----END PGP SIGNATURE----- \version "2.10.29" \include "pop-chords.ly" \include "english.ly" % Good sizes are 16, 18, & 20 staffSize = #20 #(set-default-paper-size "letter") #(set-global-staff-size staffSize) #(ly:set-option (quote no-point-and-click)) %{ Some useful characters: â â â â â â â ⡠⢠⦠%} \header { %Let's bump up the title size and switch to the chord font. :-) title = \markup { \override #'(font-family . sans) \fontsize #3.5 "As The Deer" } % composer = \markup { \override #'(font-family . sans) \fontsize #1.3 "" } arranger = \markup { \override #'(font-family . sans) \fontsize #1.3 "arr. Ed Smart" } tagline = #(ly:export (string-append "Engraved by JLH and Lilypond " (lilypond-version))) } %{ tweak = #(define-music-function (parser location sym val arg) (symbol? scheme? ly:music?) "Add @code{sym . val} to the @code{tweaks} property of @var{arg}." (set! (ly:music-property arg 'tweaks) (acons sym val (ly:music-property arg 'tweaks))) arg) %} % Useful tweak abbreviations (hn = harmony note) hn = #(define-music-function (parser location arg) (ly:music?) ;; Harmony Note: Set the tweaks property of the passed in note to use a smaller font (set! (ly:music-property arg 'tweaks) (acons 'font-size -3.5 (ly:music-property arg 'tweaks))) arg) % % Song's structure % Global = { \key c \major \override Staff.TimeSignature #'style = #'() \time 4/4 % Intro \once \override TextScript #'padding = #2.0 s1*0^\markup { \large { Moderate ballad } } s1*4 | % 1-4 \repeat volta 2 { % A section \mark \markup { \override #'(font-family . sans) { \box { A } } } s1*7 | % 5-11 s1 \bar "||" % 12 % B section \mark \markup { \override #'(font-family . sans) { \box { B } } } s1*7 | % 13-19 } \alternative { { s1 | % 20 } { s1 \bar "||" % 21 } } % A section (modulation) \key d \major \once \override Score.RehearsalMark #'padding = #2.0 \mark \markup { \override #'(font-family . sans) { \box { C } } } s1*8 | % 22-29 % B section \repeat volta 2 { \mark \markup { \override #'(font-family . sans) { \box { D } } } s1*7 | % 30-36 } \alternative { { s1 | % 37 } { s1 | % 38 } } % Outro s1*5 | % 39-43 s1 \bar "|." % 44 } % % Lead vocal % LeadVox = \relative c' { \clef G \override Score.SpacingSpanner #'average-spacing-wishes = ##f s1 | % 1 s1 | % 2 s1 | % 3 s1 | % 4 % A section e4 g g e8 d | % 5 c4. d8 f e d c | % 6 a'4 a8 a g4. f8 | % 7 g1 | % 8 e4 g g e8 d | % 9 c4. d8 f ( e ) d c | % 10 c4. e8 d4. c8 | % 11 c2 ~ c4 r | % 12 % B section <c' \hn a \hn e>4 <c \hn a \hn e> <c \hn g \hn e> <c \hn g \hn e>8 <b \hn g \hn e> | % 13 <a \hn f \hn c>4 <a \hn d, \hn b> <g \hn e \hn c>4. <\hn e c>8 | % 14 <a \hn f \hn d>4 <a \hn f \hn d> <a \hn f \hn c> <a \hn f \hn c>8 [ <g \hn e \hn c> ] | % 15 <f \hn d \hn a>4 <f \hn d \hn a> << { \voiceOne <e \hn b>2 } \new Voice = "v" { \voiceTwo \override NoteHead #'font-size = #-3.5 a,4 ( gs ) \override NoteHead #'font-size = #1.0 } >> \oneVoice | % 16 e'4 g g e8 d | % 17 c4. d8 f ( e ) d c | % 18 c4. e8 d4. c8 | % 19 c2 r | % 20 c2 r | % 21 % A section (modulation) fs4 a a fs8 e | % 22 d4. e8 g fs e d | % 23 b'4. b8 a4. g8 | % 24 a1 | % 25 fs4 a a fs8 e | % 26 d4. e8 g fs e d | % 27 d4. fs8 e4. d8 | % 28 d2 ~ d4 r | % 29 % B section <d' \hn b \hn fs>4 <d \hn b \hn fs> <d \hn a \hn fs> <d \hn a \hn fs>8 <cs \hn a \hn fs> | % 30 <b \hn g \hn d>4 <b \hn e, \hn cs> <a \hn fs \hn d>4. <\hn fs d>8 | % 31 <b \hn g \hn e>4 <b \hn g \hn e> <b \hn g \hn d> <b \hn g \hn d>8 <a \hn fs \hn d> | % 32 <g \hn e \hn b>4 <g \hn e \hn b> << { \voiceOne <fs \hn cs>2 } \new Voice = "v" { \voiceTwo \override NoteHead #'font-size = #-3.5 b,4 ( as ) \override NoteHead #'font-size = #1.0 } >> \oneVoice | % 33 fs'4 a a fs8 e | % 34 d4. e8 g fs e d | % 35 d4. fs8 e4. d8 | % 36 d1 | % 37 d2 ~ d4 fs8 e | % 38 % Outro d4. fs8 e4. d8 | % 39 d2 ~ d4 fs8 e | % 40 d4. fs8 e4. d8 | % 41 << { \voiceOne d1 } \context Voice = v { \voiceThree s1 } >> \oneVoice | % 42 s1 | % 43 s1 | % 44 } LeadVoxText = \lyricmode { As the deer pant -- eth for the wa -- ter so my soul long -- eth a -- fter thee, You a -- lone are my heartâs de -- sire _ and I long to wor -- ship thee. _ You a -- lone are my strength my shield; To you a -- lone may my spi -- rit yield. You a -- lone are my heartâs de -- sire _ and I long to wor -- ship thee. thee. I want you more than gold or sil -- ver, on -- ly you can sa -- tis -- fy. You a -- lone are the real joy gi -- ver and the ap -- ple of my eye. _ You a -- lone are my strength my shield; To you a -- lone may my spi -- rit yield. You a -- lone are my heartâs de -- sire _ and I long to wor -- ship thee. thee, _ and I long to wor -- ship thee, _ and I long to wor -- ship thee. } LeadVoxTextB = \lyricmode { Youâre my friend and you are my bro -- ther e -- ven though you _ are a king, I love you more than a -- ny o -- ther so much more than a -- ny -- thing. } % % Riffs % Riffs = \relative c' { % Intro \tiny e4 g g e8 d | % 1 c4. d8 f e d c | % 2 c4. e8 d4. c8 | % 3 c1 | % 4 s1*37 | % 5-41 << { \voiceOne s1 } \context Voice = v { \voiceThree \tiny fs4 a a fs8 e \normalsize } >> \oneVoice | % 42 d4. e8 g fs e d | % 43 d1^\fermata | % 44 \normalsize } % % Chord names % Chords = \chordmode { \override SeparatingGroupSpanner #'padding = #'2.0 %Bah, can't we set this globally? \popChords % Intro c2 e:m/b | % 1 a2:m c/g | % 2 d2:m g4:sus4 g | % 3 c2 g4/c f/c | % 4 % A section c2 e:m/b | % 5 a2:m c/g | % 6 f2 g:sus2/f | % 7 c2 g4/c f/c | % 8 c2 e:m/b | % 9 a2:m c/g | % 10 d2:m7 g4:sus4 g | % 11 c2. g4/b | % 12 % B section a2:m a:m7/g | % 13 f4 g:sus2/f c2/e | % 14 d2:m d:m/c | % 15 d2:m/b e4:sus4 e | % 16 c2 e:m/b | % 17 a2:m c/g | % 18 d2:m g4:sus4 g | % 19 c2 g4/c f/c | % 20 c2 g/a | % 21 % A section (modulation) d2 fs:m/cs | % 22 b2:m d/a | % 23 g2 a:sus2/g | % 24 d2 a4/d g/d | % 25 d2 fs:m/cs | % 26 b2:m d/a | % 27 e2:m a4:sus4 a | % 28 d2. a4/cs | % 29 % B section b2:m b:m/a | % 30 g4 a:sus2/g d2/fs | % 31 e2:m e:m/d | % 32 e2:m/cs fs4:sus4 fs | % 33 d2 fs:m/cs | % 34 b2:m d/a | % 35 e2:m7 a4:sus4 a | % 36 d2. a4/cs | % 37 b2:m b:m/a | % 38 % Outro e2:m7 a4:sus4 a | % 39 b2.:m b4:m/a | % 40 e2:m7 a4:sus4 a | % 41 d2 fs:m/cs | % 42 b2:m g:sus2 | % 43 d1 | % 44 } % % Chord rhythms % % Use a RhythmicStaff on the chords instead of this? % It almost works, but not quite. Doesn't collapse chords above to single notes... Rhythm = { \override Staff.TimeSignature #'style = #'() \override NoteHead #'style = #'slash % Intro c4 c c c | % 1 c4 c c c | % 2 c4 c c c | % 3 c4 c c c | % 4 % A section c4 c c c | % 5 c4 c c c | % 6 c4 c c c | % 7 c4 c c c | % 8 c4 c c c | % 9 c4 c c c | % 10 c4 c c c | % 11 c4 c c c | % 12 % B section c4 c c c | % 13 c4 c c c | % 14 c4 c c c | % 15 c4 c c c | % 16 c4 c c c | % 17 c4 c c c | % 18 c4 c c c | % 19 c4 c c c | % 20 c4 c c c | % 21 % A section (modulation) c4 c c c | % 22 c4 c c c | % 23 c4 c c c | % 24 c4 c c c | % 25 c4 c c c | % 26 c4 c c c | % 27 c4 c c c | % 28 c4 c c c | % 29 % B section c4 c c c | % 30 c4 c c c | % 31 c4 c c c | % 32 c4 c c c | % 33 c4 c c c | % 34 c4 c c c | % 35 c4 c c c | % 36 c4 c c c | % 37 c4 c c c | % 38 % Outro c4 c c c | % 39 c4 c c c | % 40 c4 c c c | % 41 c4 c c c | % 42 c4 c c c | % 43 c1-\fermata | % 44 } Dynamics = \relative c { % Intro s1*17 | % 1-17 s2 s4_\markup { \italic { rit. } } s | % 18 s4_\markup { \italic { A tempo } } s2. | % 19 s1*13 | % 20-32 s2 s4_\markup { \italic { rit. } } s | % 33 s4_\markup { \italic { A tempo } } s2. | % 34 s1*6 | % 35-40 s2 s4_\markup { \italic { rit. } } s | % 41 s1*3 | % 42-44 } \score { << \Global % The "roadmap" that everything else depends on \context Staff << \context Staff << \new Voice = "lead" \LeadVox \new Voice \Riffs >> \new Lyrics \lyricsto "lead" \LeadVoxText \new Lyrics \lyricsto "lead" \LeadVoxTextB >> \new ChoirStaff << \new ChordNames \Chords \new RhythmicStaff << \Rhythm \Dynamics >> >> \set Score.skipBars = ##t \set Score.melismaBusyProperties = #'() >> \layout { % ragged-last-bottom = ##t ragged-last = ##t } } \paper { #(define fonts (make-pango-font-tree "Times New Roman" "DomCasual BT" "Luxi Mono" (/ staffSize 20))) } _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceQuoting Shamus <jlhamm@...>:
> | Thanks for that David. I've been doing this to separate out dynamic > | markings, but I didn't know you could do the same with voltas and the > like. > | > | /me goes off to try it > > Wow! Works like a charm! This is not only going to save me lots of time, > but what's left of my sanity. :-) Attached is the final result. Thanks > again, David! This can certainly be a good practice to separate out annotations or dynamics and such. This is one aspect of separating musical content from typesetting layout. However, for the specific case of \repeat volta, I'm not so certain that it's a good idea to only specify them separately from the music. For example, this means that you will not be able to produce a MIDI file with all repeats played and I seem to recall some other problems that can also appear if you do not specify the repeats in the actual music. /Mats _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceOn Wed, Apr 9, 2008 at 9:38 PM, Mats Bengtsson <mats.bengtsson@...> wrote:
i'm happy to find a way to "globalize" rehearsal marks, double bar lines, etc. can anyone help me figure out why my /global block is creating a new staff below my instrument staves each time? i get the rehearsal marks above everything, but there's an unwanted blank staff below each staff group with the text markup on it.... these are (hopefully) the pertinent snippets: global = { \time 5/4 \set Score.markFormatter = #format-mark-box-letters \tempo 4=108 s1^"Intro - open" s4 | s1 s4 | s4 \mark \default s1 | \repeat unfold 7 { s1 s4 } \bar "||" s4 \mark \default s1 | \repeat unfold 7 { s1 s4 } \bar "||" s4 \mark \default s1 | \repeat unfold 6 { s1 s4 } \bar "|." } %% and then later on in the score block \score { << \new StaffGroup = "horns" << \global \new ChordNames = "trpchords" \transpose c d {\harmony} \new Staff = "trumpet" \trumpet \new ChordNames = "tenorchords" \transpose c d {\harmony} \new Staff = "tenorsaxone" \tenorsaxone \new ChordNames = "chords" \harmony \new Staff = "trbn" \trbn >> \new StaffGroup = "rhythm" << \global \new ChordNames = "chords" \harmony \new PianoStaff = "piano" \piano >> >> } _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
|
|
Re: constructing a jazz pieceHi Bernie,
> i'm happy to find a way to "globalize" rehearsal marks, double bar > lines, etc. > can anyone help me figure out why my /global block is creating > a new staff below my instrument staves each time? Your code adds the \global in its own (implicit) Staff: > \new StaffGroup = "horns" << > \global > \new ChordNames = "trpchords" \transpose c d {\harmony} is the same as > \new StaffGroup = "horns" << > \new Staff \global > \new ChordNames = "trpchords" \transpose c d {\harmony} You need to COMBINE the global stuff with some other staff's music -- see the trumpet staff in the attached (modified) code. Hope this helps! Kieren. %%%%%%%%%%%%%%%%%%%%%% \version "2.11.47" global = { \time 5/4 \set Score.markFormatter = #format-mark-box-letters \tempo 4=108 s1^"Intro - open" s4 | s1 s4 | s4 \mark \default s1 | \repeat unfold 7 { s1 s4 } \bar "||" s4 \mark \default s1 | \repeat unfold 7 { s1 s4 } \bar "||" s4 \mark \default s1 | \repeat unfold 6 { s1 s4 } \bar "|." } harmony = { c'' } trumpet = { c'' } tenorsaxone = { c'' } trbn = { c'' } piano = { c'' } %% and then later on in the score block \score { << \new StaffGroup = "horns" << \new ChordNames = "trpchords" \transpose c d { \harmony } \new Staff = "trumpet" << \global \trumpet >> \new ChordNames = "tenorchords" \transpose c d { \harmony } \new Staff = "tenorsaxone" \tenorsaxone \new ChordNames = "chords" \harmony \new Staff = "trbn" \trbn >> \new StaffGroup = "rhythm" << \new ChordNames = "chords" \harmony \new PianoStaff = "piano" << \new Staff = "rh" \piano \new Staff = "lh" \piano >> >> >> } %%%%%%%%%%%%%%%%%%%%%% _______________________________________________ lilypond-user mailing list lilypond-user@... http://lists.gnu.org/mailman/listinfo/lilypond-user |
| Free embeddable forum powered by Nabble | Forum Help |