I had been trying to use Finale for handbells but kept running into an
issue when I wanted handchimes ( x-notehead) and handbells (regular
notehead). Lilypond has been just the thing - thank you, thank you, thank
you!

I have worked up two templates for when I start a new piece, which are
definitely works in progress. I do have the Finale percussion font on my PC
so I am using the damp symbol (and others) from this font, rather than
building my own.

Both of these should compile on 2.18.2 which is what I have downloaded and
am using.


On 31 May 2018 at 07:44, Stanton Sanderson <stans...@gmail.com> wrote:

> I’ve attempted some handbell pieces for our bell choir. Attached is one
> which has a few special symbols. Not intended as samples of “good practice!”
>
> Stan
>
>
> _______________________________________________
> lilypond-user mailing list
> lilypond-user@gnu.org
> https://lists.gnu.org/mailman/listinfo/lilypond-user
>
>
\version "2.18.2"
\language "english"

\header {
  % dedication = \markup { \italic "dedication text - use percent sign if no dedication" }
  title = "TITLE"
  subtitle = "for 3 octaves Handbell trio"
  composer = "name of composer"
  arranger = "Arranged by name of arranger"
  copyright = \markup { \column { " " "Copyright © date name of copyright holder" } }
  tagline = ##f
  % tagline = "transcribed 201x-xx-xx by S Buckingham using lilypond version 2.18.2"
}

\paper {  #(set-paper-size "letter")
              system-system-spacing #'basic-distance = #14
              last-bottom-spacing  = #20
              ragged-bottom = ##f
              top-margin = 10
              bottom-margin = 10
              left-margin = 15
              right-margin = 15
              % first-page-number = 2 % use to change page numbering
              }

\layout {  \context {  \Voice  \consists "Melody_engraver"    }  }

% function parentheAll allows for accidental symbol to be included in parentheses
parentheAll = #(define-music-function (parser location note) (ly:music?)
#{
  \once \override ParenthesesItem.font-size = #-1
  \once \override ParenthesesItem.stencil = #(lambda (grob)
       (let* ((acc (ly:grob-object (ly:grob-parent grob Y) 'accidental-grob))
              (dot (ly:grob-object (ly:grob-parent grob Y) 'dot)))
         (if (not (null? acc)) (ly:pointer-group-interface::add-grob grob 'elements acc))
         (if (not (null? dot)) (ly:pointer-group-interface::add-grob grob 'elements dot))
         (parentheses-item::print grob)))
  \parenthesize $note
#})



global = {    %handbells used chart
  \key c \major
  \numericTimeSignature
}

handbellsusedone = \relative c' {     % input notes for treble handbells used
  \clef treble
  \key c \major
       % count handbell notes & spaces to get time signature
  \numericTimeSignature \time 20/4 \once \omit Staff.TimeSignature 
  \override Staff.BarLine.color = #white  
  \override Stem.transparent = ##t
       % use spaces as needed to get bar to desired length
       s4^\markup { \left-column { " " "3 octaves - Handbells used: 26" } } 
           s s s s s s s e4_\markup { \column { \small \italic "4 bells shared" 
                                                 \small \italic "Peri&Karen"} }  
           fs g a s gs b c cs d e fs 
}

handbellsusedtwo = \relative c' {     % input notes for treble handbells used
  \clef treble
  \key c \major
       % count handbell notes & spaces to get time signature
  \once \omit Staff.TimeSignature 
  \override Staff.BarLine.color = #white  
  \override Stem.transparent = ##t
       % use spaces as needed to get bar to desired length
       b4 c4 cs s d ds f s e fs g a s s s s s s s s 
}

handbellsusedthree = \relative c {     % input notes for bass handbells used
  \clef bass  
  \once \omit Staff.TimeSignature
  \key c \major
  \override Staff.BarLine.color = #white  
  \override Stem.transparent = ##t
       % use spaces as needed to get bar to desired length
        b'4^\markup { \column { \small \italic "3 bells shared" \small \italic "Karen&Sue" } }
             c cs s_\markup { \column { " " \small \italic
                                        "PERFORMANCE NOTE: recommend setup on 4 tables" } }
             s s s s cs, d ds e fs g gs a as bf s s
}

 \score {     % setup staffgroup with treble & bass handbells used
      <<
     \new Staff \accidentalStyle forget
          \handbellsusedone
     \new Staff \handbellsusedtwo
     \new Staff \handbellsusedthree
    >>
    }  

global = {
  \key d \major
  \numericTimeSignature
       % input initial time signature here
  \time 6/8
  \tempo "Moderately" 4. = 80
  \override Score.BarNumber.break-visibility = ##(#f #t #t)
  \set Score.currentBarNumber = #1
% Permit first bar number to be printed
  \bar ""
}

% this section has special handbells articulations and extra dynamic markings
subP = \markup { "sub." \dynamic p }
subMP = \markup { "sub." \dynamic mp }
mart = \markup { \magnify #0.7 ▼ }
martlift = \markup { \concat { \magnify #0.7 ▼ \magnify #1.3 ↑ } }
malltab = \markup { ⨥ }
swingthree = \markup { \center-column {⮍ 3} } 
swingone = \markup { \center-column {⮍ 1} }
rightsubMP = \tweak DynamicText.self-alignment-X #CENTER
         #(make-dynamic-script (markup  #:normal-text "sub." #:dynamic "mp"))
rightF = \tweak DynamicText.self-alignment-X #RIGHT
         #(make-dynamic-script (markup  #:dynamic "f" #:normal-text "   "))
         
% handy codings for use in the score
%         \override Stem.direction = #DOWN
%         \override Stem.direction = #UP
%         \revert Stem.direction
%         \pageBreak
%         \noPageBreak
%         \break
%         \noBreak

%  change key with the following code line - remember to change key in both upper and lower primary
%         \key f \major <- lower case for key name, then major or minor after the slash
%  to stop cautionary accidentals at a key signature change, use in both clefs:
%       \once \set Staff.printKeyCancellation = ##f
% to show cautionary accidentals - use ? after note name for bracketed accidental
%                                              - use ! after note name for accidental symbol alone

% switch to diamond noteheads for handchimes
%         \override NoteHead.style = #'harmonic-mixed
% and if you need to go back to regular noteheads
%         \revert NoteHead.style

%         b2\rest e4\rest c8 c     | %m## <- position rests on particular note lines or spaces
% to position whole rest R hanging from 2nd staff line
%         \override MultiMeasureRest.staff-position = #2
%         R1 R R     | %m1thru3

% to push a column of notes over to the right
%         \once \override NoteColumn.force-hshift = #1.5

%  add dynamics above with the '^' or below with the '_' followed by slash then letters or abbreviations 
%         for example:  _\cresc or ^\f  or  _\fermata
%  add articulations or text in the same way
%         for example:  ^"LV"  ^\staccato
% use markup to combine dynamics and articulations for proper placement
%         ^\markup { \concat { \dynamic f " LV" } }
%         ^\markup { \left-column { \dynamic mf  "R" } } 
% use \whiteout inside a markup to cover up bar lines between staves

% to get handbell damp symbol which is found in the Finale Percussion font as the keystroke '3'
%     _\markup { \override #' (font-name . "Finale Percussion") { 3 } } 
% to get lines between staves indicating melody changes stave
%       \once  \showStaffSwitch
 %      \change Staff = "down"  or \change Staff = "up"
 
%  to turn on or off the autobeaming
%        c4 c8 \change Staff = "up" d \autoBeamOff e[ \change Staff = "down" c] 
%                 \autoBeamOn \once \showStaffSwitch \change Staff = "up" e f     | %m50

%         \bar "||"     <- double bar line
%         \bar "|."      <- final bar line

%  trills to fill bar
%         \override TrillSpanner.to-barline = ##t
%  remove letters "tr" from front of trill to make it a Shake
%         \override TrillSpanner.bound-details.left.text = ##f
%  attach "Sk" as articulation and start trill
%         c1^"SK"^\startTrillSpan
%  stop trill on next note
%       c4 \stopTrillSpan 

% arpeggio bracket up left side of note column
%       \arpeggioBracket < c' e g c  >1 \arpeggio

%  to draw a circle around an enlarged bar number:
%  first Increase the size of the next bar number by 2
%        \once \override Score.BarNumber.font-size = #2  
% then Draw a circle round the next bar number
%       \once \override Score.BarNumber.stencil = #(make-stencil-circler 0.1 0.25 ly:text-interface::print)

ringerone = \relative c' { % music for treble handbells
  \global
  \override Stem.color = #black
  \clef treble
  \numericTimeSignature \time 6/8
   \override MultiMeasureRest.staff-position = #2
        R2.     | %m1
% add music for ringer one here

}

ringertwo = \relative c' { % music for upper handbells accompaniment line
  \global
  \override Stem.color = #black
  \clef treble
  \numericTimeSignature \time 6/8
% add music for ringer two here
}

ringerthree = \relative c {  % music for bass handbells and staff switches
  \global
  \clef bass
  \numericTimeSignature \time 6/8
% add music for ringer three here
}

 \score {  % handbells for trio, two treble and one bass
              <<  \new Staff = "ringerone" \with { \override StaffSymbol.staff-space = #1.3
                                                                         instrumentName = #"Peri "
                                                                         shortInstrumentName = #"P "
                                                                          \accidentalStyle modern
                                                                             midiInstrument = "acoustic grand" }
                                                                      << \ringerone >>
                    \new Staff = "ringertwo" \with { \override StaffSymbol.staff-space = #1.3
                                                                         instrumentName = #"Karen "
                                                                         shortInstrumentName = #"K "
                                                                                \accidentalStyle modern  
                                                                                  midiInstrument = "acoustic grand" } 
                                                                       { \clef treble << \ringertwo >> }

                    \new Staff = "ringerthree" \with { \override StaffSymbol.staff-space = #1.3
                                                                         instrumentName = #"Sue "
                                                                         shortInstrumentName = #"S "                                                                                \accidentalStyle modern  
                                                                                  midiInstrument = "acoustic grand" } 
                                                                       { \clef bass << \ringerthree >> }
              >>
              \layout { #(layout-set-staff-size 24) }
              \midi { }
              }
\version "2.18.2"
\language "english"

\header {
  dedication = \markup { \italic "dedication text - use percent sign if no dedication" }
  title = "TITLE"
  subtitle = "for ? octaves of Handbells with optional Handchimes"
  %composer = "composer's name"
  %arranger = "Arranged by arranger's name"
  copyright = \markup { \column { " " "Copyright © date by name" } }
  tagline = "transcribed 201x-xx-xx by S Buckingham using lilypond version 2.18.2"
  % tagline = ##f   % if no tagline is wanted
}

\paper {  #(set-paper-size "letter")
              system-system-spacing #'basic-distance = #24
              last-bottom-spacing  = #20
              ragged-bottom = ##f
              top-margin = 10
              bottom-margin = 10
              left-margin = 15
              right-margin = 15
              footnote-separator-markup = \markup { \column { " " " " } } % removes horizontal line above footnotes
              footnote-footer-padding = 1
              print-first-page-number = ##t
              first-page-number = 3 % use to change page numbering
              }

\layout {  \context {  \Voice  \consists "Melody_engraver"    }  }

% this section has special handbells articulations and extra dynamic markings
subP = \markup { "sub." \dynamic p }
subMP = \markup { "sub." \dynamic mp }
mart = \markup { \magnify #0.7 ▼ }
martlift = \markup { \fontsize #+6 \override #' (font-name . "Finale Percussion") { 7 } } 
malltab = \markup { ⨥ }
damptab = \markup { \fontsize #+6 \override #' (font-name . "Finale Percussion") { 3 } }
swingthree = \markup { \center-column {⮍ 3} } 
swingone = \markup { \center-column {⮍ 1} }
rightsubMP = \tweak DynamicText.self-alignment-X #CENTER
         #(make-dynamic-script (markup  #:normal-text "sub." #:dynamic "mp"))
rightF = \tweak DynamicText.self-alignment-X #RIGHT
         #(make-dynamic-script (markup  #:dynamic "f" #:normal-text "   "))
eightnote = \markup { \fontsize #+2 \override #' (font-name . "Maestro") { e } } 
quartnote = \markup { \fontsize #+2 \override #' (font-name . "Maestro") { q } }
halphnote = \markup { \fontsize #+2 \override #' (font-name . "Maestro") { h } } 
         
% function parentheAll allows for accidental symbol to be included in parentheses
parentheAll = #(define-music-function (parser location note) (ly:music?)
#{
  \once \override ParenthesesItem.font-size = #-1
  \once \override ParenthesesItem.stencil = #(lambda (grob)
       (let* ((acc (ly:grob-object (ly:grob-parent grob Y) 'accidental-grob))
              (dot (ly:grob-object (ly:grob-parent grob Y) 'dot)))
         (if (not (null? acc)) (ly:pointer-group-interface::add-grob grob 'elements acc))
         (if (not (null? dot)) (ly:pointer-group-interface::add-grob grob 'elements dot))
         (parentheses-item::print grob)))
  \parenthesize $note
#})

global = {    %handbells used chart
  \key c \major
  \numericTimeSignature
}

handbellsusedtreble = \relative c' {     % input notes for treble handbells used
  \clef treble
  \key c \major
       % count handbell notes & spaces to get time signature
  \numericTimeSignature \time 33/4 \once \omit Staff.TimeSignature 
  \override Staff.BarLine.color = #white  
  \override Stem.transparent = ##t
       % use spaces as needed to get bar to desired length
       d4^\markup { \left-column { "  " "  " "x octaves - Handbells used: xx" } } 
            s e s f s g s gs s a s bf s b s c s d s e s f s g s a s bf s b s c 
}

handbellsusedbass = \relative c {     % input notes for bass handbells used
  \clef bass  
  \once \omit Staff.TimeSignature
  \key c \major
  \override Staff.BarLine.color = #white  
  \override Stem.transparent = ##t
       % use spaces as needed to get bar to desired length
       c s  cs s s d s s e s s f s s g s s gs s s a s s bf s s b s s c s s cs
}

 \score {     % setup staffgroup with treble & bass handbells used
      <<
     \new Staff \accidentalStyle forget
          \handbellsusedtreble
     \new Staff \handbellsusedbass
    >>
    }  

handchimesused = \relative c' {     % input notes for handchimes used on a single staff with clef change
  \time 19/4 \once \omit Staff.TimeSignature
  \override Staff.BarLine.color = #white  
  \override Stem.transparent = ##t
  \clef bass
       c,4^\markup { \left-column { "  " "x octave(s) - Handchimes used: xx" } } 
            cs d e f g gs a bf 
}
 \score {     % setup staff with handchimes used
      <<
     \new Staff \accidentalStyle forget
     \handchimesused
    >>
    \layout { \context {
      \Score
      \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/16)
    } }
 }  
% composer & arranger between handbells used and first system
\markup { \column { "                                                                    (ADD SPACES TO FILL LINE)                          COMPOSER'S NAME"
                      \italic "                                                                    (ADD SPACES TO FILL LINE)       Arranged by ARRANGER'S NAME"
                                " " " "} }

global = {
  \key c \major
  \numericTimeSignature
       % input initial time signature here
  \time 4/4
  \tempo "text for initial tempo marking"
  \override Score.BarNumber.break-visibility = ##(#f #t #t)
  \set Score.currentBarNumber = #1
% Permit first bar number to be printed
  \bar ""
}

% handy codings for use in the score
%         \override Stem.direction = #DOWN
%         \override Stem.direction = #UP
%         \revert Stem.direction
%         \pageBreak
%         \noPageBreak
%         \break
%         \noBreak

%  change key with the following code line - remember to change key in both upper and lower primary
%         \key f \major <- lower case for key name, then major or minor after the slash
%  to stop cautionary accidentals at a key signature change, use in both clefs:
%       \once \set Staff.printKeyCancellation = ##f
% to show cautionary accidentals - use ? after note name for bracketed accidental
%                                              - use ! after note name for accidental symbol alone

% switch to diamond noteheads for handchimes
%         \override NoteHead.style = #'harmonic-mixed
% and if you need to go back to regular noteheads
%         \revert NoteHead.style

%         b2\rest e4\rest c8 c     | %m## <- position rests on particular note lines or spaces
% to position whole rest R hanging from 2nd staff line
%         \override MultiMeasureRest.staff-position = #2
%         R1 R R     | %m1thru3

% to push a column of notes over to the right
%         \once \override NoteColumn.force-hshift = #1.5

%  add dynamics above with the '^' or below with the '_' followed by slash then letters or abbreviations 
%         for example:  _\cresc or ^\f  or  _\fermata
%  add articulations or text in the same way
%         for example:  ^"LV"  ^\staccato

% use markup to combine dynamics and articulations for proper placement
%         ^\markup { \concat { \dynamic f " LV" } }
%         ^\markup { \left-column { \dynamic mf  "R" } } 
% move markup text in horizontal direction between staves
%        \once \override TextScript.padding = #2.5 % <- change value to get spacing needed
% other handy commands for adjusting markup location
%        \once \override TextScript.self-alignment-X = 0
%        \once \override TextScript.extra-offset = #'(0 . -2)

% move hairpin in horizontal direction between staves 
%       \once \override DynamicLineSpanner.padding = #2.5 % <- change value to get spacing needed
% move dynamic marking in vertical direction to line up with hairpin
%       \once \override DynamicLineSpanner.staff-padding = #2.5 % <- change value to get spacing needed

% use \whiteout inside a markup to cover up bar lines between staves

% to get handbell damp symbol which is found in the Finale Percussion font as the keystroke '3'
%     _\markup { \fontsize #+4 \override #' (font-name . "Finale Percussion") { 3 } }

% handbell swing-down-up  markup
%       \markup { "Sw" " " \fontsize #+6 \override #'(font-name . "Finale Percussion") { 1 } " "
%                        \fontsize #+6 \override #'(font-name . "Finale Percussion") { 2 } }

% to get lines between staves indicating when melody changes stave
%       \once  \showStaffSwitch
 %      \change Staff = "down"  or \change Staff = "up"
 
%  to turn on or off the autobeaming
%        c4 c8 \change Staff = "up" d \autoBeamOff e[ \change Staff = "down" c] 
%                 \autoBeamOn \once \showStaffSwitch \change Staff = "up" e f     | %m50

%         \bar "||"     <- double bar line
%         \bar "|."      <- final bar line

%  trills to fill bar
%         \override TrillSpanner.to-barline = ##t
%  remove letters "tr" from front of trill to make it a Shake
%         \override TrillSpanner.bound-details.left.text = ##f
%  attach "Sk" as articulation and start trill
%         c1^"SK"^\startTrillSpan
%  stop trill on next note
%       c4 \stopTrillSpan
% shift left side of trill mark away from notes
%       \override TrillSpanner.bound-details.left.padding = 2
% shift right side of trill mark away from notes or bar line
 %      \override TrillSpanner.bound-details.right.padding = 1

% arpeggio bracket up left side of note column
%       \arpeggioBracket < c' e g c  >1 \arpeggio

%  to draw a circle around an enlarged bar number:
%  first Increase the size of the next bar number by 2
%        \once \override Score.BarNumber.font-size = #2  
% then Draw a circle round the next bar number
%       \once \override Score.BarNumber.stencil = #(make-stencil-circler 0.1 0.25 ly:text-interface::print)

% helpful tempo markup
%    \tempo \markup { "(" \quartnote " = ca. 104-112)" }

%  \override NoteHead.style = #'cross
%  \footnote #'(-1 . -2) \markup { \small \center-column { "text of footnote - first line"
%                                                                                   "text of footnote - second line" } } 
%  \footnote #'(1 . -2) \markup { \small \center-column { "text of footnote - first line"
%                                                                                  "text of footnote - second line" } }
% to hide tempo marking
% \once \hide Score.MetronomeMark

upperOne = \relative c' { % music for treble handbells
  \global
  \clef treble
  \override MultiMeasureRest.staff-position = #2
  \footnote " " #'(0 . 0) \markup { \normal-text "Duration: approx. 2:55" } 

        R1 _\markup { \override #' (font-name . "Finale Percussion") { 3  } } R R      | %m1thru end of piece
        R R R R R R R R R R R R R R R R R R R R 
        % add measures 4 thru end of piece     
}

upperTwo = \relative c' { % music for upper handbells accompaniment line
  \global
  \clef treble
  \override MultiMeasureRest.staff-position = #2
  \override Stem.direction = #DOWN
        s1 s s     | %m1thru end of piece
       % add measure 4 thru end of piece
}

upperThree = \relative c' { % music for miscellaneous bits
  \global
  \clef treble
  \override MultiMeasureRest.staff-position = #2
       % add measures 1 thru 69       
}
  
lowerOne = \relative c {  % music for bass handbells and staff switches
  \global
  \clef bass
  \override MultiMeasureRest.staff-position = #2
       R1^\mp R R     | %m1thru3
       R R R R R R R R R R R R R R R R R R R R
       % add measures 4 thru end of piece
}

lowerTwo = \relative c { % music for lower bass line in handbells & handchimes
  \global
  \clef bass
  \override MultiMeasureRest.staff-position = #2
       s1 s s     | %m1thru3
       % add measures 4 thru end of piece  
}

lowerThree = \relative c {  % music for miscellaneous bits
  \global
  \clef bass
  \override MultiMeasureRest.staff-position = #2
       s1 s s      | %m1thru3
      % add measures 4 thru end of piece
}

 \score {  % handbells for treble and bass, making sure cautionary accidentals show after a barline
              \new PianoStaff   <<  \set PianoStaff.connectArpeggios = ##t
                                                \new Staff = "up" \with { \consists "Span_arpeggio_engraver"
                                                                          \override StaffSymbol.staff-space = #1.3 
                                                                          \accidentalStyle modern
                                                                             midiInstrument = "acoustic grand" } 
                                                                        << \upperOne \\ \upperTwo \\ \upperThree >>
                                                \new Staff = "down" \with { \consists "Span_arpeggio_engraver"
                                                                            \override StaffSymbol.staff-space = #1.3 
                                                                                \accidentalStyle modern  
                                                                                  midiInstrument = "acoustic grand" } 
                                                                       { \clef bass << \lowerOne \\ \lowerTwo \\ \lowerThree >> }
                                              >>
              \layout { #(layout-set-staff-size 24)
                            \context { \Staff 
                                             \override VerticalAxisGroup.staff-staff-spacing = #'((basic-distance . 15)
                                                                                                                           (minimum-distance . 10)
                                                                                                                           (padding . 5)
                                                                                                                           (stretchability . 10))
                                            }
                           }
              \midi { }
              }

\markup {     %performance notes text block & spacer blank line below
              \fontsize #-2 \italic \left-column { 
                 "PERFORMANCE NOTES:"
                 "- use this space to put in notes included in original score about performance techniques."
                 "  "
                 "add extra lines if needed to pad above or below"
                 "  "
                 "  "
                 } }

\markup {     %arranger bio text block & spacer blank lines above
               \italic \center-column { " " " " " " " " " " " " " " " " " "
                 "composer's bio (if provided)" } }
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to