lilypond-user
[Top][All Lists]
Advanced

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

Re: Lyrics, barlines and whiteout


From: James E. Bailey
Subject: Re: Lyrics, barlines and whiteout
Date: Thu, 8 May 2008 09:42:37 +0200

I was going to say that I didn't see a problem with doing the file without the bar lines in the text and removing the bar engraver, and then I realised that you're using 2.10.33. While I can't speak for that version, in 2.11, it works fine without the workaround. I would highly recommend 2.11. Especially if you're just starting. It makes lilypond a lot more usable.

Am 08.05.2008 um 08:36 schrieb Kim Bastin:

I'm a pretty new Lilypond user, about a week old in fact, so please be gentle.

As a learning exercise I have been entering a keyboard arrangement of one of Reger's Geistliche Gesänge, including the lyrics, which I had previously done in Sibelius (opening bars appended as Morgengesang.ly).

I have persuaded the lyrics to mask the barlines where they overlap by embedding the affected syllables in the construct

\markup { \whiteout \pad-markup #0.5 höch }

-- which works but makes ugly and confusing code. I tried writing a function:

mask = #(define-music-function (parser location syllable) (string?)
 #{
   \markup { \whiteout \pad-markup #0.5 $syllable }
 #})

but the result is a log full of errors and no compile. I'm probably attempting something I'm not ready for. (Anyone care to correct it?)

However, rather than hunt for overlapping syllables, it would be more efficient if some equivalent of \whiteout and \pad-markup #0.5 could be applied to the lyrics globally. I've looked unsuccessfully for a way of doing this. Is there one? I suppose it would involve overriding properties, but I can't identify the relevant ones.

Thanks


%charset=utf-8
\version "2.10.33"
\include "english.ly"

\paper {
        paper-width = 215\mm
        paper-height = 310\mm
}

#(set-global-staff-size 17)

\header {
 tagline = ##f
 composer = "Max Reger"
 title = "Morgengesang"
}


upper = {
 \clef treble
 \key ef \major
 \time 4/4 \partial 4
        << \relative ef' \new Voice = "1" {
                        \voiceOne <ef c'>4 |
                        \oneVoice <f af f'>4 <f bf f'> <ef g bf>2 |
                        \voiceOne <ef g ef'>2 df'8 c \oneVoice <ef, bf' df>4 |
%b3
                        <ef af c>2 r4 <af ef'> |
                        <gf bf gf'>2. <f af f'>4 |
                        \voiceOne ef' <bf df> c8 df \oneVoice <gf, bf>4 |
%b6
                        <f a>2 r4 <d! f> |
                        <d f g>4 <c ef a> \voiceOne <d b'> \oneVoice <ef c'> |
                        <f af! d>4 \voiceOne <ef c'> \oneVoice <f bf> <ef c'>8 <f 
d'> |
%b9
                        <g bf ef>4 <a f'> <g b g'> \voiceOne c |
                        <f, d'>4 <ef ef'> \oneVoice <f af f'> \voiceOne c' |
                        <ef, ef'> <ef af> g f |
%b12
                        \oneVoice <bf, ef>2. r4 |
                        <c ef>2 <ef g>4 \voiceOne g8 af |
\oneVoice <df, f bf>4 \voiceOne <df bf'> \oneVoice <ef gf c> <c f c'> |
%b15
<d! f bf>4\fermata \voiceOne c'8 d \oneVoice <ef, g ef'>4 \voiceOne <ef ef'> |
                        \oneVoice <a d>4 \voiceOne <g bf> c8 bf af4 |
                        \oneVoice <e g>2 <f a>4 <f b> |
%b18
                        \voiceOne <ef c'>4 \oneVoice <f af! d> \voiceOne ef' <bf 
g'> |
                        \oneVoice <af c f>4 \voiceOne ef' \oneVoice <d, fs a 
d>2 |
                        \voiceOne g4 a \oneVoice <bf g d bf> \voiceOne <bf g> |
%b21
                        \oneVoice <a f! c>4 <b g f d> <c g ef> \voiceOne <c af> 
|
                        \oneVoice <b g d>2 r4 \voiceOne <d bf> |
                        \oneVoice <ef bf g ef>4 \voiceOne <f bf,> <g bf,> <c, 
af> |
%b24
\oneVoice <d! bf f>4 \voiceOne ef \oneVoice <d a d,>\fermata <g, d b> |
                        <a g c,>4 <b f d> <c af ef> <d af> |
                        \voiceOne <d bf!>4 <e c> \oneVoice <f f,> \voiceOne bf, 
|
%b27
                        <c g c,>4 \oneVoice <d af> <ef! bf g> \voiceOne <e c> |
                        \oneVoice <f c af f>4 \voiceOne <bf, bf,> <c af> d8 ef |
                        <bf g!>4 \oneVoice <c g c,> \voiceOne <df af> <d d,> |
%b30
                        <ef ef,>4 bf <af f>8[ <g ef!~>] f8.[ ef16] |
                        \oneVoice <ef bf>2.\fermata \bar "|."
                }

                \relative ef' \new Voice {
                        \voiceTwo af8 g |
                        s1 |
                        c4. bf8 <f af>4 s4 |
%b3
                        s1 |
                        s1 |
                        <<        { gf4. f8 af4 s }
                                        \new Voice {
                                                \voiceThree
                                                \shiftOff
                                                \once \override Beam 
#'positions = #'(1 . 1.2) {gf8 af} s4 s2
                                                \shiftOn
                                        }
                        >> |
%b6
                        s1 |
                        s2 g8 f s4 |
                        s4 af8 g s2 |
%b9
                        s2 s4 af8 g |
                        bf!2 s4 g8 f |
                        af8 bf af f \tieUp ef ~ <c! ef>4 \tieDown <bf d>8 |
%b12
                        s1 |
                        s2 s4 <c ef> |
s4 \once \override Beam #'positions = #'(-3.3 . -3.5) { bf'8 af } s2 |
%b15
                        s4 <f af> s4 c'8 bf |
                        << { s4 g8 f! ef4. d8 }
                                \new Voice { \voiceFour s2 g4 s4 }
                        >> |
                        s1 |
%b18
\once \override Beam #'positions = #'(-3.0 . -3.2) { c8 bf! } s4 g2 |
                        s4 <af c>8 <g bf> s2 |
                        << { g4. fs8 s4 ef8 d | }
\new Voice { \voiceFour \once \override NoteColumn #'force- hshift = #-0.65 d2 }
                        >>
%b21
                        s2 s4 f8 ef8 |
                        s2 s4 <d f>8 <f af> |
                        s4 f8 af g4. f8 |
%b24
                        s4 <af c>8 bf s2 |
                        s1 |
                        g8 f e g s4  g8 <af f d> |
%b27
                        c8 bf s4 s4 <af e>8 g |
                        s4 <g ef!>8 <f d> <ef c> <d bf> <c' gf>4 |
                        d,8 df s4 f8 <ef! c'> <g bf> <f af> |
%30
g8 af <f d> <df g> << { c4 } { s8 \once \override Stem #'transparent = ##t ef~ } >> ef16 c d8 |
                        s2.
                }
        >>
}

lower = {
 \clef bass
 \key ef \major
 \time 4/4 \partial 4
 <<
        \relative ef \new Voice {
                \oneVoice <af c>4 |
                        <df, af' ef'> <bf bf' df> <ef bf'>2 |
                        \voiceOne c'4 g \oneVoice <f af> <g bf> |
%b3
                        <af c>2 r4 <af c> |
                        <gf df'>2. \voiceOne df'8 c |
                        bf4 bf ef4. df8 |
%b6
                        \oneVoice <f, c'>2 r4 <bf, bf'> |
                        \voiceOne bf'4 ef,8 c' b g \oneVoice <af! c>[ <g bf>] |
                        <f af>8 <g bf> <af c>4 <bf d> \voiceOne ef8 d |
%b9
                        <bf ef~>4 <c ef>8 d \oneVoice <ef, g ef'>4 <af c ef> |
                        <af bf>4 <g bf c> <f b d> \voiceOne <g c> |
                        \oneVoice <c, af' c>4 \voiceOne ef8 f g af f16 g af8 |
%b12
                        \oneVoice <ef g>2. r4 |
                        \oneVoice <af, ef' af>2 <ef' bf'>4 <c ef> |
                        <bf bf'>4 \voiceOne bf' \oneVoice <ef, bf'> <f a> |
%b15
                        <bf, f' bf>4\fermata <f' af! c> <c c'> \voiceOne <c'> |
                        \oneVoice <fs, a d> <g d'> \voiceOne c4. b8 |
                        \oneVoice <c, g' c>2 \voiceOne <f c'>4 f8 g |
%b18
                        <af c>4 \oneVoice <f af b> <c' ef> <bf d> |
                        \voiceOne c8 bf c ef \oneVoice <d, a'>2 |
                        <bf g'>4 <a d> <g g'> <ef' g> |
%b21
                        f8 ef <d f>4 <c c'> <f c'> |
                        g2 r4 <bf bf,> |
                        <bf c,>4 <bf d,> <df bf e,> \voiceOne <c af>8 <f c> |
%b24
                        \oneVoice bf,4 \voiceOne ef \oneVoice <a, fs>\fermata <g 
f> |
                        <g ef>4 <g d> <c af!>8 <bf! g> \voiceOne <af f'>[ ef'] |
                        \oneVoice <d bf g>4 <c bf c,> <af df,> <bf d,> |
%b27
\voiceOne \once \override Beam #'positions = #'(5.2 . 5.7) ef,8 g f af ef' <f df> c4 |
                        c8 d! s4 s2 |
                        g,4. bf8 \oneVoice <af! f>4 <bf, bf'>8 b |
%b30
\voiceOne g'8 c \oneVoice <bf! d,>[ <g e>] <af f>4 \voiceOne f16 g <af f>8 |
                        \oneVoice <g ef>2.\fermata
                }

                \relative ef \new Voice {
                        \voiceTwo s4 |
                        s1 |
                        c2 s2 |
                        s1 |
                        s2. df4 |
                        ef8 f gf4 <af c> <ef bf'> |
                        s1 |
                        ef8 d c4 g' s4 |
                        s2 s4 <af bf> |
                        g4 f s2 |
                        s2 s4 ef8 d |
                        s4 <cf af'> <bf bf'> <bf bf'> |
                        s1 |
                        
                        s1 |
                        s4 gf'8 f s2 |
                        s2 s4 af8 g |
                        s2 af4 f |
                        s2 f8 ef <d d'>4 |
                        af'8 g s4 s2 |
                        <af f'>4 <c, c'> s2 |
                        s1 |
                        s1 |
                        s1 |
                        s2 s4 f |
                        s4 af8 g s2 |
                        s2 s4 f |
                        s1 |
                        <ef c'>4 <f f'> g c,8 bf |
                        af4 g af <a a'> |
                        bf4 e s2 |
                        c4 s s <bf bf'> |
                        s2.
                }
        >>
}

% There has to be a less cumbersome way of blanking out barlines!!!
text = \lyricmode {
Du4 \markup { \whiteout \pad-markup #0.5 höch } -- stes Licht,2 e -- wi4 -- ger \markup { \whiteout \pad-markup #0.5 Schein, }2. Du4 Gott2. und4 \markup { \whiteout \pad-markup #0.5 treu } -- er Her -- re mein,2. von4 dir der Gna -- den \markup { \whiteout \pad-markup #0.5 Glanz } aus -- gaht und \markup { \whiteout \pad-markup #0.5 leuch }2. -- tet4 \markup { \whiteout \pad-markup #0.5 schön, }2 leuch4 -- tet schön gleich früh und \markup { \whiteout \pad- markup #0.5 spat. }1 \markup { \whiteout \pad-markup #0.5 Das }2 ist4 der Her -- re Je -- sus \markup { \whiteout \pad-markup #0.5 Christ, }
        der ja die gött -- lich Wahr -- heit ist,2
der4 mit sein’r Lehr hell2 __ \markup { \whiteout \pad-markup #0.5 scheint }4 und leucht,2
        bis __ er4 die Her -- zen zu ihm zeucht.2.
Er4 ist der gan -- zen \markup { \whiteout \pad-markup #0.5 Wel } -- te Licht, da -- bei ein je -- der \markup { \whiteout \pad-markup #0.5 klar } -- lich sicht, den hel -- len schö -- nen \markup { \whiteout \pad-markup #0.5 lich } -- ten Tag, an __ \markup { \whiteout \pad-markup #0.5 dem } er se -- lig, se -- lig wer -- den \markup { \whiteout \pad-markup #0.5 mag. }2.
}

\score {
 \new GrandStaff <<
                \new Staff { \upper }
%               \new Lyrics \lyricsto "1" \text
%               \new Lyrics \text
                \new Lyrics { \set associatedVoice = #"1" \text }
                \new Staff { \lower }

 \layout {
   \context { \GrandStaff \accepts "Lyrics" }
   \context {
        \Lyrics
                \consists "Bar_engraver"
%               \consists "Separating_line_group_engraver"
%               \override BarLine #'transparent = ##t
                }
 }
}
_______________________________________________
lilypond-user mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-user





reply via email to

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