lilypond-user
[Top][All Lists]
Advanced

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

Re: Ambitus not in the beginning


From: Kai Lautenschläger
Subject: Re: Ambitus not in the beginning
Date: Mon, 25 Nov 2013 14:34:30 +0100


Hello again,

I have been fiddling around with the ideas and solutions I got from you and came up with a combination of

1. using a \new Voice with ambitus at a certain point in my score. (Thanx Janek)
2. using the \noAmbitusAtLineEnd definition by David from a post in July.
3. the new \omit function.

The score's first two systems should look like this:

1. System: 2 staves (for tenors + piano without Ambitus) --> "2" in the example below
2. System: 6 staves (sopranos, altos, tenors, basses + piano with an ambitus for each vocal voice) --> "1" in the example below

The linebreak is within a measure, letting the 2. system start with an upbeat.

As you can see in the following not so tiny example inserting the ambitus makes the \RemoveEmptyStaves command ineffective. I suppose that is, because there is a ambitus at the end of the first Staff in the 1. Voice (unvisible due to \noAmbitusAtLineEnd). 

Is there any way to remove the empty first line never the less?

would be thrilled about any hints…

best regards,
Kai


------8<--SNIPP--------------
 \version "2.17.95"

noAmbitusAtLineEnd = {
 \override AmbitusNoteHead #'before-line-breaking =
  #(lambda (grob)
    (if (and (ly:item? grob) (= (ly:item-break-dir grob) -1))
        (ly:grob-suicide! grob)))

 \override AmbitusLine #'before-line-breaking =
  #(lambda (grob)
    (if (and (ly:item? grob) (= (ly:item-break-dir grob) -1))
        (ly:grob-suicide! grob)))

 \override AmbitusAccidental #'before-line-breaking =
  #(lambda (grob)
    (if (and (ly:item? grob) (= (ly:item-break-dir grob) -1))
        (ly:grob-suicide! grob)))
} % end \noAmbitusAtLineEnd

#(set-global-staff-size 14)
\paper { 
  tagline = "" 
  #(set-paper-size "a7") 
} % end \paper

\score { << 
  \new Staff = "StaffOne" {
    \relative { 
      \set Staff.shortInstrumentName = #'"1" 
      R1 \omit r2 \omit r4 
      \bar "||" \break a'4 b c d e 
     } % end \relative
  } % end StaffOne
  \new Staff = "StaffTwo" {
    \relative { 
      \set Staff.instrumentName = #'"2" 
      \set Staff.shortInstrumentName = #'"2" a'1^"W/O ambitus in 1st staff/2nd system" a2. 
      \new Voice \with { \consists "Ambitus_engraver" } { a4 b c d e } 
    } % end \relative
  } >> % end StaffTwo
  \layout {
    \context { 
      \Score \noAmbitusAtLineEnd
    } % end \context Score
    \context { 
      \Staff \RemoveEmptyStaves \override VerticalAxisGroup #'remove-first = ##t 
    } % end \context Staff
  } % end \layout
} % end \score

\score { << 
  \new Staff = "StaffOne" {
    \relative { 
      \set Staff.instrumentName = #'"1" 
      \set Staff.shortInstrumentName = #'"1" 
      R1^"WITH ambitus in 1st staff/2nd system" \omit r2 \omit r4 \bar "||" \break 
      \new Voice \with { \consists "Ambitus_engraver" } { a'4 b c d e } }  %%%  <<==== here is the change
  } % end StaffOne
  \new Staff = "StaffTwo" {
    \relative { 
      \set Staff.instrumentName = #'"2" 
      \set Staff.shortInstrumentName = #'"2" a'1 a2. 
      \new Voice \with { \consists "Ambitus_engraver" } { a4 b c d e } }
  } >> % end StaffTwo
  \layout {
    \context { 
      \Score \noAmbitusAtLineEnd 
    } % end \context Score
    \context { 
      \Staff \RemoveEmptyStaves \override VerticalAxisGroup #'remove-first = ##t 
    } % end \context Staff
  } % end \layout
} % end \score
------8<--SNIPP--------------

Am 24.11.2013 um 13:02 schrieb David Kastrup <address@hidden>:

Kai Lautenschläger <address@hidden> writes:

Hi David,

thanks for your reply.

Am 24.11.2013 um 12:26 schrieb David Kastrup <address@hidden>:

"Dr. med. Kai Lautenschläger" <address@hidden> writes:

Dear list,

sorry to ask again and I hope this time it will not be something
obviously explained in the manual. Is there a way to insert ambitus at
the beginning of a staff, that is not the first staff of the score?

A piece I am doing starts of with solo voice and organ and later the
choir sets in with the solo staff being taken over by the tenors. I
would like to add an ambitus in each choir voice, when it first
appears (the empty lines in the first two systems before are not
shown).

Just use an ambitus engraver in each of the tenor voices (one with an
X-offset)?

I understand, but that not solve my problem. I would like an ambitus
in the n-th system of a score instead of at the beginning. How do I go
about that?

<<
 { \skip 1*n \new Voice = "tenor_I" \with { \consists "Ambitus_engraver" } ...

reply via email to

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