lilypond-user
[Top][All Lists]
Advanced

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

Re: lyrics clashing with barlines


From: Mats Bengtsson
Subject: Re: lyrics clashing with barlines
Date: Tue, 12 Dec 2006 09:23:47 +0100
User-agent: Thunderbird 1.5.0.8 (X11/20061105)

When Maurits sent his question, I suddenly realized that it looked familiar, and I found Matevz' old email, which did contain a full example that was easy to play around with. The solution to both of your problems turns out to be very simple, once you realize that the bar lines drawn between staves are actually the so-called SpanBar barlines belonging to the StaffGroup context. If you move the bottom lyrics line outside the StaffGroup context, you get rid of these bar lines. In Matevz'
example, just replace the \score block by
 \score {
 <<
   \context StaffGroup = choirStaff <<
         \context Voice =
       cantusNotes << \global \cantusNotes >>
     \context Lyrics =
       cantusLyrics \lyricsto cantusNotes { \cantusLyrics }
     \context Voice =
       altusNotes << \global \altusNotes >>
     \context Lyrics =
       altusLyrics \lyricsto altusNotes { \altusLyrics }
     \context Voice =
       tenorNotes << \global \tenorNotes >>
     \context Lyrics =
       tenorLyrics \lyricsto tenorNotes { \tenorLyrics }
     \context Voice =
       bassusNotes << \global \bassusNotes >>
   >>
   \context Lyrics =
     bassusLyrics \lyricsto bassusNotes { \bassusLyrics }
 >>
 ...
}


   /Mats

Matevz Jekovec wrote:
Hi.

Thank you both. The hint at the bottom regarding how to avoid barlines
work. However, I think I found a bug in Lily. I attached the png and .ly
file. The problem is that the barline is now drawn *under* the last
staff where it shouldn't be.

Regards.
- Matevž

Mats Bengtsson pravi:
I hope you have seen the hints at the bottom of
http://lilypond.org/doc/v2.9/Documentation/user/lilypond/Vocal-music.html#Vocal-music


  /Mats

Matevz Jekovec wrote:

Usually choir staffgroup has barlines only in staffs, but not connecting
staffs as well. However, in some cases (like renaissance music, where
the barlines are drawn only *between* the staffs and not in them) when
the barlines are drawn, lyrics position for every syllable doesn't take
the barline into account. They collide.

I attached an example of Gallus's Ecce quomodo.

Is there a large CPU overhead to implement this (like you mentioned it
was for avoiding clashing page borders and notes for every text sign).


Regards.
- Matevž


------------------------------------------------------------------------

------------------------------------------------------------------------

_______________________________________________
lilypond-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-devel

------------------------------------------------------------------------

\version "2.7.40"

#(set-global-staff-size 19)

global = {
  \pageBreak
  \set Score.skipBars = ##t

  % incipit
  \override Score.SpacingSpanner #'spacing-increment = #1.0 % tight spacing
  \key f \major
  \time 2/2
  \once \override Staff.TimeSignature #'style = #'neomensural
  \override Voice.NoteHead #'style = #'neomensural
  \override Voice.Rest #'style = #'neomensural
  \override Voice.Accidental  #'style = #'mensural
  \set Staff.printKeyCancellation = ##f
  \override NoteSpacing #'stem-spacing-correction = #0.6
  \cadenzaOn % turn off bar lines
  \skip 1*5
  \once \override Staff.BarLine #'transparent = ##f
  \bar "||"
  \skip 1*1 % need this extra \skip such that clef change comes
            % after bar line
  \bar ""

  % main
  \cadenzaOff % turn bar lines on again
  \once \override Staff.Clef #'full-size-change = ##t
  \set Staff.forceClef = ##t
  \key f \major
  \time 2/2
  \override Voice.NoteHead #'style = #'default
  \override Voice.Rest #'style = #'default
  \override Voice.Accidental  #'style = #'default
\override Score.PaperColumn #'keep-inside-line = ##t
  % FIXME: setting printKeyCancellation back to #t must not
  % occur in the first bar after the incipit.  Dto. for forceClef.
  % Therefore, we need an extra \skip.
  \skip 1*1
  \set Staff.printKeyCancellation = ##t
  \set Staff.forceClef = ##f
  \override Staff.BarLine #'hair-thickness = #0.3
  \skip 1*2 \break % Prima pars
  \skip 1*6 \break
  \skip 1*6 \break
  \skip 1*6 \break
  \skip 1*6 \break
  \skip 1*6
  \once \override Staff.BarLine #'transparent = ##f
  \bar "||" \pageBreak

  \skip 1*8 \break % Secunda pars
  \skip 1*8 \break
  \skip 1*7
  % let finis bar go through all staves
  \override Staff.BarLine #'transparent = ##f

  % finis bar
  \bar "|."
}

\layout {
  \context {
      \Lyrics
      \consists "Bar_engraver"
      \consists "Separating_line_group_engraver"
      \override BarLine #'transparent = ##t
  }
}

isUp = ^\markup \sharp
esUp = ^\markup \flat
nUp = ^\markup \natural

cantusNotes = {
  \transpose c' c'' {
    \set Staff.instrument = "Cantus"
        \set Staff.midiInstrument = "acoustic grand"
        
    % incipit
    \clef "treble"
    a\breve g1 r2 a2. a4 a2  % 4
    \skip 1*1 % extra bar

    % main
    \clef "treble"
    \once \override TextScript #'extra-offset = #'(-8 . 2)
    a1^\markup {\large \bold "Prima pars"} | g2 r4 a4~ |    % 3
    a8 a a4 bes2~ | bes4 a a2 |                             % 5
    g1 | g2 r4 g4 | a2 g4 f~ |                              % 8
    f8 f e4 f2 | e r4 a4 | c'2 c'4 bes~ |                   % 11
    bes8 bes a4 g2 | fis r4 fis4~ | fis g a2 |              % 14
    a4 a bes2 | a r4 c'4~ | c' bes2 a4 |                    % 17
    a a2 a4 | g2 r4 g4 | a4. a8 a4 g |                      % 20
    a a a2 | a r4 a4~ | a c'2 bes4 | a g2 a4 |              % 24
    r4 c'4 f' f' | e' d'2 c'4 | bes bes4. bes8 a4 |         % 27
    g2 a | r4 c'4 f' f' | e' d'2 c'4 |                      % 30
    bes bes4. bes8 a4 | g2 a~ | a1~ | a ||                  % 34
    \once \override TextScript #'extra-offset = #'(-5 . 2)
    c'2^\markup {\large \bold "Secunda pars"} c' |          % 35
    c'4 a2 a4 | a a2 a4 | a2 a |                            % 38
    r4 c'2 c'4 | d'2 c'4 e' | e' e'4. e'8 f'4~\melisma |    % 41
    f' e'8 d' e'4\melismaEnd e' | f'2 r4 c'4~ | c' c' d'2 | % 44
    c'4 e' e' e'~ | e'8 e' f'2\melisma e'8 d' |             % 46
    e'4\melismaEnd e' f'2 | r4 c'4 f' f' | e' d'2 c'4 |     % 49
    bes bes4. bes8 a4 | g2 a | r4 c'4 f' f' |               % 52
    e' d'2 c'4 | bes bes4. bes8 a4 | g2 a~ |                % 55
    a1~ | a1 \bar "|."                                      % 57
  }
}

cantusLyrics = \lyricmode {
  % incipit
  _ _ _ _ _

  % main
  Ec -- ce, quo --                 % 3
  mo -- do mo -- ri -- tur         % 5
  ius -- tus, et ne -- mo per --   % 7
  ci pit cor -- de et              % 10
  ne -- mo per -- ci -- pit cor -- % 12
  de; vi -- ri ius --              % 14
  ti tol -- lun -- tur, et         % 16
  ne -- mo con -- si -- de --      % 18
  rat; a fa -- ci -- e in --       % 20
  i -- qui -- ta -- tis sub --     % 22
  la -- tus est ius -- tus:        % 24
  et e -- rit in pa -- ce          % 26
  me -- mo -- ri -- a e -- ius,    % 28
  et e -- rit in pa -- ce          % 30
  me -- mo -- ri -- a e -- ius.    % 34
  In pa -- ce fac -- tus           % 36
  est lo -- cus e -- ius,          % 38
  et in Si -- on ha -- bi --       % 40
  ta -- ti -- o __ e -- ius,       % 43
  et in Si -- on ha -- bi -- ta -- % 45
  ti -- o __ e -- ius.             % 47
  Et e -- rit in pa -- ce          % 49
  me -- mo -- ri -- a e -- ius,    % 51
  et e -- rit in pa -- ce          % 53
  me -- mo -- ri -- a e -- ius.    % 57
}

altusNotes = {
  \transpose c' c'' {
    \set Staff.instrument = "Altus"
        \set Staff.midiInstrument = "acoustic grand"
        
    % incipit
    \clef "neomensural-c2"
    f\breve e1 r2 f2. f4 f2  % 5
    \skip 1*1 % extra bar

    % main
    \clef "treble"
    f1 | e2 r4 f~ | f8 f f4 f2~ |                     % 4
    f4 f f f~\melisma | f e d2\melismaEnd | e r4 e |  % 7
    f2 e4 d~ | d8 d cis4 d2 | cis2 r4 e4 |            % 10
    a2 a4 f~ | f8 f f4 d2 | d r4 d4~ | d d f2 |       % 14
    f4 f f2 | f r4 a4~ | a g2 e4 | f f2 f4 |          % 18
    e2 r4 g4 | f4. f8 f4 d | f f e2 |                 % 21
    fis2 r4 fis4~ | fis g2 f?4 |                      % 23
    f d2 f4 | r4 a c' c' | c' bes2 a4 |               % 26
    g4 g4. g8 f4~ | f e f2 |                          % 28
    r4 a4 c' c' | c' bes2 a4 |                        % 30
    g g4. g8 f4~ | f e f2~ | f1~ | f ||               % 34
    r4 a4 g2 | a4 f2 f4 | f d2 e4 | f2 e |            % 38
    r4 a2 g4 | bes2 a4 c'4 | c' c'4. c'8 bes4 |       % 41
    c'1 | c'2 r4 a4~ | a4 g bes2 | a4 c' c' c'~ |     % 45
    c'8 c' bes4 c'2~ | c' c' |                        % 47
    r4 a4 c' c' | c' bes2 a4 | g g4. g8 f4~ |         % 50
    f4 e f2 | r4 a4 c' c' | c' bes2 a4 |              % 53
    g g4. g8 f4~ | f e f2~ | f1~ | f1 \bar "|."       % 57
  }
}

altusLyrics = \lyricmode {
  % incipit
  _ _ _ _ _

  % main
  Ec -- ce, quo --                 % 3
  mo -- do mo -- ri -- tur         % 5
  ius -- tus, et ne -- mo per --   % 7
  ci pit cor -- de et              % 10
  ne -- mo per -- ci -- pit cor -- % 12
  de; vi -- ri ius --              % 14
  ti tol -- lun -- tur, et         % 16
  ne -- mo con -- si -- de --      % 18
  rat; a fa -- ci -- e in --       % 20
  i -- qui -- ta -- tis sub --     % 22
  la -- tus est ius -- tus:        % 24
  et e -- rit in pa -- ce          % 26
  me -- mo -- ri -- a e -- ius,    % 28
  et e -- rit in pa -- ce          % 30
  me -- mo -- ri -- a e -- ius.    % 34
  In pa -- ce fac -- tus           % 36
  est lo -- cus e -- ius,          % 38
  et in Si -- on ha -- bi --       % 40
  ta -- ti -- o e -- ius,          % 43
  et in Si -- on ha -- bi -- ta -- % 45
  ti -- o e -- ius.                % 47
  Et e -- rit in pa -- ce          % 49
  me -- mo -- ri -- a e -- ius,    % 51
  et e -- rit in pa -- ce          % 53
  me -- mo -- ri -- a e -- ius.    % 57
}

tenorNotes = {
  \transpose c' c'' {
    \set Staff.instrument = "Tenor"
        \set Staff.midiInstrument = "acoustic grand"

    % incipit
    \clef "neomensural-c3"
    c\breve c1 r2 c2. c4 c2 % 5
    \skip 1*1 % extra bar

    % main
    \clef "treble_8"
    c1 | c2 r4 c4~ | c8 c c4 d2~ |            % 4
    d4 c c d~\melisma |                       % 5
    d8 c c4. b,8 b,4\melismaEnd | c2 r4 c |   % 7
    c2 c4 a,~ | a,8 a, a,4 a,2 | a, r4 c4 |   % 10
    f2 e4 d~ | d8 d c4 bes,2 | a, r4 a,4~ |   % 13
    a, b, c2 | c4 c d2 | c r4 f4~ |           % 16
    f d2 cis4 | d c2 c4 | c2 r4 c4 |          % 19
    c4. c8 c4 b, | c d2 cis4 | d2 r4 d4~ |    % 22
    d es2 d4 | c b,2 c4 | r4 f a a |          % 25
    a f2 f4 | d es4. es8 c4 | c2 c |          % 28
    r4 f4 a a | a f2 f4 | d es4. es8 c4 |     % 31
    c2 c~ | c1~ | c1 ||                       % 34
    r4 f2 e4 | f c2 c4 | d f2 e4 |            % 37
    d2 cis2 | r4 e2 e4 | f2 f4 g |            % 40
    g g4. g8 f4 | g1 | a2 r4 e4~ |            % 43
    e e f2 | f4 g g g~ |                      % 45
    g8 g f4 g2~ | g a |                       % 47
    r4 f4 a a | a f2 f4 |                     % 49
    d es4. es8 c4 | c2 c |                    % 51
    r4 f4 a a | a f2 f4 |                     % 53
    d es4. es8 c4 | c2 c2~ | c1~ |            % 56
    c1 \bar "|."                              % 57
  }
}

tenorLyrics = \lyricmode {
  % incipit
  _ _ _ _ _

  % main
  Ec -- ce, quo --                 % 3
  mo -- do mo -- ri -- tur         % 5
  ius -- tus, et ne -- mo per --   % 7
  ci pit cor -- de et              % 10
  ne -- mo per -- ci -- pit cor -- % 12
  de; vi -- ri ius --              % 14
  ti tol -- lun -- tur, et         % 16
  ne -- mo con -- si -- de --      % 18
  rat; a fa -- ci -- e in --       % 20
  i -- qui -- ta -- tis sub --     % 22
  la -- tus est ius -- tus:        % 24
  et e -- rit in pa -- ce          % 26
  me -- mo -- ri -- a e -- ius,    % 28
  et e -- rit in pa -- ce          % 30
  me -- mo -- ri -- a e -- ius.    % 34
  In pa -- ce fac -- tus           % 36
  est lo -- cus e -- ius,          % 38
  et in Si -- on ha -- bi --       % 40
  ta -- ti -- o e -- ius,          % 43
  et in Si -- on ha -- bi -- ta -- % 45
  ti -- o e -- ius.                % 47
  Et e -- rit in pa -- ce          % 49
  me -- mo -- ri -- a e -- ius,    % 51
  et e -- rit in pa -- ce          % 53
  me -- mo -- ri -- a e -- ius.    % 57
}

bassusNotes = {
  \transpose c' c' {
    \set Staff.instrument = "Bassus"
        \set Staff.midiInstrument = "acoustic grand"

    % incipit
    \clef "varbaritone"
    f\breve c1 r2 f2. f4 f2 % 5
    \skip 1*1 % extra bar

    % main
    \clef "bass"
    f1 | c2 r4 f4~ | f8 f f4 bes2~ |    % 4
    bes4 f f2 | g1 | c2 r4 c4 |         % 7
    f2 c4 d~ | d8 d a,4 d2 | a, r4 a4 | % 10
    f2 a4 bes~ | bes8 bes f4 g2 |       % 12
    d2 r4 d4~ | d g f2 | f4 f bes,2 |   % 15
    f2 r4 f4~ | f g2 a4 | d f2 f4 |     % 18
    c2 r4 c4 | f4. f8 f4 g | f d a2 |   % 21
    d r4 d4~ | d c2 d4 | f g2 f4 |      % 24
    r4 f4 f f | a bes2 f4 |             % 26
    g es4. es8 f4 | c2 f | r4 f4 f f |  % 29
    a bes2 f4 | g es4. es8 f4 |         % 31
    c2 f~ | f1~ | f1 ||                 % 34
    r4 f4 c2 | f4 f2 f4 |               % 36
    d4 d2 cis4 | d2 a, | r4 a2 c'4 |    % 39
    bes2 f4 c' | c' c'4. c'8 d'4 |      % 41
    c'1 | f2 r4 a4~ | a4 c' bes2 |      % 44
    f4 c' c' c'~ | c'8 c' d'4 c'2~ |    % 46
    c' f | r4 f4 f f | a bes2 f4 |      % 49
    g es4. es8 f4 | c2 f | r4 f4 f f |  % 52
    a bes2 f4 | g es4. es8 f4 | c2 f~ | % 55
    f1~ | f1 \bar "|."                  % 57
  }
}

bassusLyrics = \lyricmode {
  % incipit
  _ _ _ _ _

  % main
  Ec -- ce, quo --                 % 3
  mo -- do mo -- ri -- tur         % 5
  ius -- tus, et ne -- mo per --   % 7
  ci pit cor -- de et              % 10
  ne -- mo per -- ci -- pit cor -- % 12
  de; vi -- ri ius --              % 14
  ti tol -- lun -- tur, et         % 16
  ne -- mo con -- si -- de --      % 18
  rat; a fa -- ci -- e in --       % 20
  i -- qui -- ta -- tis sub --     % 22
  la -- tus est ius -- tus:        % 24
  et e -- rit in pa -- ce          % 26
  me -- mo -- ri -- a e -- ius,    % 28
  et e -- rit in pa -- ce          % 30
  me -- mo -- ri -- a e -- ius.    % 34
  In pa -- ce fac -- tus           % 36
  est lo -- cus e -- ius,          % 38
  et in Si -- on ha -- bi --       % 40
  ta -- ti -- o e -- ius,          % 43
  et in Si -- on ha -- bi -- ta -- % 45
  ti -- o e -- ius.                % 47
  Et e -- rit in pa -- ce          % 49
  me -- mo -- ri -- a e -- ius,    % 51
  et e -- rit in pa -- ce          % 53
  me -- mo -- ri -- a e -- ius.    % 57
}

\book {
  \header {
    title = "XIII. Ecce quomodo moritur iustus"
    composer = \markup \center-align {"" \large "Iacobus Gallus (Jakob Petelin)" \small 
"(1550-1591)"}
        
        mutopiatitle = "XIII. Ecce quomodo moritur iustus"
        mutopiacomposer = "I. Gallus (1550-1591)"
        mutopiainstrument = "Voice, (SATB)"
        source = "Emil Bazecný, Josef Mantuani - DTÖ, 1899-1919"
        style = "Renaissance"
        copyright = "Public Domain"
        maintainer = "Matevž Jekovec"
        maintainerEmail = "address@hidden"
        lastupdated = "2005/Oct/25"
  }

  \markup \column \large \translate #(cons 20 0) {
                            \italic {
                            "  Ecce quomodo moritur iustus, et nemo percipit 
corde;"
                            "viri iusti tolluntur, et nemo considerat;"
                            "a facie iniquitatis sublatus est iustus:"
                            "et erit in pace memoria eius."
                            "  In pace factus est locus eius, et in Sion habitatio 
eius."
                            "Et erit in pace memoria eius."
                            }
                            " " " " " "
                            "  Glejte, kako umira pravični, pa nihče v srcu ne 
čuti."
                            "Žrtev sveti možje so, pa mar ni nobenemu."
                            "Iz kroga je ljudi hudobnih odstranjen pravični."
                            "In večno bo živel v preslavnem spominu."
                            "  Počitka našel je mesto mirno, na Sionu prebivališče 
svoje."
                            "In večno bo živel v preslavnem spominu." " "
                            "    (Janez Podboj, v: J. Aljaž, Slovenska pesmarica II, 
Celovec 1900)"
                            " " " " " "
                            "  Behold, the Righteous dies, but no one feels in his 
heart;"
                            "victims are the righteous ones, but no one 
notices;"
                            "the Righteous faces iniquity and is being removed:"
                            "And he will live in glorious peace."
                            "  He found his place in peace, his realm in Zion."
                            "And he will live in glorious peace." " "
                            "    (Matevž Jekovec, \"De profundis\" chamber choir, 
Slovenia)"
                            " " " " " " " " " " " "
  }

  \markup \column {
                                                        \italic {
                                                                "Typeset from Jacob 
Handl (Gallus): Opus Musicum, vol. 2, DTÖ 1905,"
                                                                "with minor 
maintainer's tweaks and fixes."
                                                                " " " "
                                                        }
  }

  \score {
    \context StaffGroup = choirStaff <<
          \context Voice =
        cantusNotes << \global \cantusNotes >>
      \context Lyrics =
        cantusLyrics \lyricsto cantusNotes { \cantusLyrics }
      \context Voice =
        altusNotes << \global \altusNotes >>
      \context Lyrics =
        altusLyrics \lyricsto altusNotes { \altusLyrics }
      \context Voice =
        tenorNotes << \global \tenorNotes >>
      \context Lyrics =
        tenorLyrics \lyricsto tenorNotes { \tenorLyrics }
      \context Voice =
        bassusNotes << \global \bassusNotes >>
      \context Lyrics =
        bassusLyrics \lyricsto bassusNotes { \bassusLyrics }
    >>
    \layout {
      indent = 4.0 \cm
      \context {
        \Score
        \override BarLine #'transparent = ##t
      }
      \context {
        \Voice
        \override Slur #'transparent = ##t
      }
    }

    \midi { \tempo 2 = 48 }
  }
}

------------------------------------------------------------------------

------------------------------------------------------------------------

_______________________________________________
lilypond-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-devel

--
=============================================
        Mats Bengtsson
        Signal Processing
        Signals, Sensors and Systems
        Royal Institute of Technology
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463                         
       Fax:   (+46) 8 790 7260
        Email: address@hidden
        WWW: http://www.s3.kth.se/~mabe
=============================================





reply via email to

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