4.4.1 Soprano and cello (LilyPond Learning Manual)

#### 4.4.1 Soprano and cello

Start off with the template that seems closest to what you want to end up with. Let’s say that you want to write something for soprano and cello. In this case, we would start with the ‘Notes and lyrics’ template (for the soprano part).

    \version "2.26.0"

    melody = \relative {
      \clef "treble"
      \key c \major
      \time 4/4
      a4 b c d
    }

    text = \lyricmode {
      Aaa Bee Cee Dee
    }

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

Now we want to add a cello part. Let’s look at the ‘Notes only’ example:

    \version "2.26.0"

    melody = \relative {
      \clef "treble"
      \key c \major
      \time 4/4
      a4 b c d
    }

    \score {
      \new Staff \melody
      \layout { }
      \midi { }
    }

We don’t need two `\version` commands. We’ll need the `melody` section. We don’t want two `\score` sections – if we had two `\score`s, we’d get the two parts separately. We want them together, as a duet. Within the `\score` section, we don’t need two `\layout` or `\midi`.

If we simply cut and paste the `melody` section, we would end up with two `melody` definitions. This would not generate an error, but the second one would be used for both melodies. So let’s rename them to make them distinct. We’ll call the section for the soprano `sopranoMusic` and the section for the cello `celloMusic`. While we’re doing this, let’s rename `text` to be `sopranoLyrics`. Remember to rename both instances of all these names – both the initial definition (the `melody = \relative { … }` part) and the name’s use (in the `\score` section).

While we’re doing this, let’s change the cello part’s staff – celli normally use bass clef. We’ll also give the cello some different notes.

    \version "2.26.0"

    sopranoMusic = \relative {
      \clef "treble"
      \key c \major
      \time 4/4
      a4 b c d
    }

    sopranoLyrics = \lyricmode {
      Aaa Bee Cee Dee
    }

    celloMusic = \relative {
      \clef "bass"
      \key c \major
      \time 4/4
      d4 g fis8 e d4
    }

    \score {
      <<
        \new Voice = "one" {
          \autoBeamOff
          \sopranoMusic
        }
        \new Lyrics \lyricsto "one" \sopranoLyrics
      >>
      \layout { }
      \midi { }
    }

This looks promising, but the cello part won’t appear in the score – we haven’t used it in the `\score` section. If we want the cello part to appear under the soprano part, we need to add

    \new Staff \celloMusic

underneath the soprano stuff. We also need to add `<<` and `>>` around the music – that tells LilyPond that there’s more than one thing (in this case, two `Staves`) happening at once. The `\score` looks like this now:

    \score {
      <<
      <<
        \new Voice = "one" {
          \autoBeamOff
          \sopranoMusic
        }
        \new Lyrics \lyricsto "one" \sopranoLyrics
      >>
      \new Staff \celloMusic
      >>
      \layout { }
      \midi { }
    }

This looks a bit messy; the indentation is messed up now. That is easily fixed. Here’s the complete soprano and cello template.

>     sopranoMusic = \relative {
>       \clef "treble"
>       \key c \major
>       \time 4/4
>       a4 b c d
>     }

>     sopranoLyrics = \lyricmode {
>       Aaa Bee Cee Dee
>     }

>     celloMusic = \relative {
>       \clef "bass"
>       \key c \major
>       \time 4/4
>       d4 g fis8 e d4
>     }

>     \score {
>       <<
>         <<
>           \new Voice = "one" {
>             \autoBeamOff
>             \sopranoMusic
>           }
>           \new Lyrics \lyricsto "one" \sopranoLyrics
>         >>
>         \new Staff \celloMusic
>       >>
>       \layout { }
>       \midi { }
>     }

#### See also

The starting templates can be found in the ‘Templates’ appendix, see Single staff templates.

#### LilyPond Learning Manual v2.26.0 (stable-branch).

- 1 Installing
  - 1.1 Graphical setup
  - 1.2 Command line setup
- 2 Tutorial
  - 2.1 Compiling a file
  - 2.2 How to write input files
    - 2.2.1 Input characters
    - 2.2.2 Simple notation
      - Pitches
      - Durations (rhythms)
      - Rests
      - Time signature
      - Tempo marks
      - Clef
      - All together
    - 2.2.3 Working on input files
  - 2.3 Dealing with errors
  - 2.4 How to read the manuals
    - 2.4.1 Omitted material
    - 2.4.2 Clickable examples
    - 2.4.3 Overview of manuals
- 3 Common notation
  - 3.1 Single-staff notation
    - 3.1.1 Bar lines and bar checks
      - Bar lines
      - Bar checks
    - 3.1.2 Pitches and key signatures
      - Pitch alterations
      - Key signatures
      - Warning: key signatures and pitches
    - 3.1.3 Ties and slurs
      - Ties
      - Slurs
      - Phrasing slurs
      - Warnings: slurs vs. ties
    - 3.1.4 Articulations and dynamics
      - Articulations
      - Fingerings
      - Dynamics
    - 3.1.5 Adding text
    - 3.1.6 Automatic and manual beams
    - 3.1.7 Advanced rhythmic commands
      - Partial measure
      - Tuplets
      - Grace notes
  - 3.2 Multiple notes at once
    - 3.2.1 Music expressions explained
      - Analogy: mathematical expressions
      - Simultaneous music expressions: multiple staves
      - Simultaneous music expressions: single-staff
    - 3.2.2 Multiple staves
    - 3.2.3 Staff groups
    - 3.2.4 Combining notes into chords
    - 3.2.5 Single-staff polyphony
  - 3.3 Songs
    - 3.3.1 Setting simple songs
    - 3.3.2 Aligning lyrics to a melody
    - 3.3.3 Lyrics to multiple staves
  - 3.4 Final touches
    - 3.4.1 Organizing pieces with variables
    - 3.4.2 Adding titles
    - 3.4.3 Absolute note names
    - 3.4.4 After the tutorial
- 4 Fundamental concepts
  - 4.1 How LilyPond input files work
    - 4.1.1 Introduction to the LilyPond file structure
    - 4.1.2 A score is a (single) compound musical expression
    - 4.1.3 Nesting music expressions
    - 4.1.4 Structure of a note entry
    - 4.1.5 On the un-nestedness of brackets and ties
  - 4.2 Voices contain music
    - 4.2.1 I’m hearing voices
    - 4.2.2 Explicitly instantiating voices
    - 4.2.3 Voices and vocals
  - 4.3 Contexts and engravers
    - 4.3.1 Contexts explained
    - 4.3.2 Creating contexts
    - 4.3.3 Engravers explained
    - 4.3.4 Modifying context properties
    - 4.3.5 Adding and removing engravers
  - 4.4 Extending the templates
    - 4.4.1 Soprano and cello
    - 4.4.2 Four-part SATB vocal score
    - 4.4.3 Building a score from scratch
    - 4.4.4 Saving typing with variables and functions
    - 4.4.5 Scores and parts
- 5 Tweaking output
  - 5.1 Tweaking basics
    - 5.1.1 Objects and interfaces
    - 5.1.2 Naming conventions of objects and properties
    - 5.1.3 Tweaking methods
      - The `\override` command
      - The `\revert` command
      - The `\once` prefix
      - The `\tweak` and `\offset` commands
      - The `\single` prefix
  - 5.2 The Internals Reference manual
    - 5.2.1 Properties of layout objects
    - 5.2.2 Properties found in interfaces
    - 5.2.3 Types of properties
  - 5.3 Appearance of objects
    - 5.3.1 Visibility and color of objects
      - The `stencil` property
      - The `break-visibility` property
      - The `transparent` property
      - The `color` property
    - 5.3.2 Size of objects
    - 5.3.3 Length and thickness of objects
  - 5.4 Offsets and alignments
  - 5.5 Placement of objects
    - 5.5.1 Automatic behavior
    - 5.5.2 Within-staff objects
      - The `direction` property
      - Fingering
    - 5.5.3 Outside-staff objects
      - The `outside-staff-priority` property
      - The `\textLengthOn` command
      - Dynamics placement
      - Grob sizing
  - 5.6 Vertical spacing
  - 5.7 Collisions of objects
    - 5.7.1 Moving objects
    - 5.7.2 Fixing overlapping notation
      - The `padding` property
      - The `right-padding` property
      - The `staff-padding` property
      - The `self-alignment-X` property
      - The `staff-position` property
      - The `extra-offset` property
      - The `positions` property
      - The `force-hshift` property
    - 5.7.3 Real music example
  - 5.8 Further tweaking
    - 5.8.1 Other uses for tweaks
      - Tying notes across voices
      - Simulating a fermata in MIDI
    - 5.8.2 Using variables for layout adjustments
    - 5.8.3 Style sheets
    - 5.8.4 Other sources of information
    - 5.8.5 Advanced tweaks with Scheme
- Appendix A Templates
  - A.1 Built-in templates
    - A.1.1 SATB template
    - A.1.2 SSAATTBB template
  - A.2 Single staff templates
    - A.2.1 Notes only
    - A.2.2 Notes and lyrics
    - A.2.3 Notes and chords
    - A.2.4 Notes, lyrics, and chords
  - A.3 Piano templates
    - A.3.1 Solo piano
    - A.3.2 Piano and melody with lyrics
    - A.3.3 Piano-centered lyrics
  - A.4 String quartet templates
    - A.4.1 String quartet
    - A.4.2 String quartet parts
  - A.5 Vocal ensembles templates
    - A.5.1 SATB vocal score
    - A.5.2 SATB vocal score and automatic piano reduction
    - A.5.3 SATB with aligned contexts
    - A.5.4 SATB on four staves
    - A.5.5 Solo verse and two-part refrain
    - A.5.6 Hymn tunes
    - A.5.7 Psalms
  - A.6 Orchestral templates
    - A.6.1 Orchestra, choir and piano
  - A.7 Ancient notation templates
    - A.7.1 Transcription of mensural music
    - A.7.2 Gregorian transcription template
  - A.8 Other templates
    - A.8.1 Jazz combo
- Appendix B GNU Free Documentation License
- Appendix C Index