On Wed, Sep 27, 2023 at 12:59 PM Knute Snortum <ksnor...@gmail.com> wrote:

> On Tue, Sep 26, 2023 at 11:25 PM Michael Werner <reznae...@gmail.com>
> wrote:
>
>> Hi Knute,
>>
>> On Tue, Sep 26, 2023 at 3:27 PM Knute Snortum <ksnor...@gmail.com> wrote:
>>
>>> TL;DR
>>> How do I engrave an alternating time signature and an initial cue clef?
>>>
>>> [snip]
>
>>
>> What about using a CueVoice, resetting sizes back to default? It seems to
>> work both visually and listening to the midi produced. I've attached some
>> code that engraves the first 7 measures of the Scriabin piece. Within the
>> CueVoice I did have to explicitly set the slur, stem and articulation
>> directions - apparently CueVoice either overrides or ignores voiceOne and
>> voiceTwo settings in those regards. Quite likely there are better ways to
>> go about this, but maybe this can at least get something going.
>> --
>> Michael
>>
>>
> Thanks Michael for your work on my problem.  I'm impressed that you
> figured out the prelude I was working on and wrote out two staves worth of
> music!
>

You're quite welcome. It was a welcome change from the old time folk /
Appalachian and Irish traditional I've been working with recently.


> I think I did myself a disservice by calling what I want a "cue clef".
>

Yeah, that kinda threw me. I have a bad tendency to get too focused on an
idea instead of stepping back to look at the wider view. Been trying to
break myself of that. Still needs work. Ah well.


>   I believe what I want is a "change clef" -- it's bigger than a cue clef
> but smaller than a regular clef.  It's what you get when you engrave this
> snippet:
>
>     { c'4 4 4 4 | \clef bass 4 4 4 4 }
>
> ...or in markup:
>
>     \markup \musicglyph "clefs.F_change"
>

Anyway, the good news here is I think I might have cracked it, with a bit
of help from the LSR. But a different entry than you found - the one that
seems to have gotten me there is https://lsr.di.unimi.it/LSR/Item?id=956
I've attached an updated version - the F clef at the beginning of the first
measure is noticeably bigger than the original I posted yesterday.
Yesterday's is on the left, the updated version on the right.
[image: image.png]

Short version - the magic ingredient seems to be a hidden grace note right
at the beginning.
-- 
Michael
\version "2.24.2"
\language "english"

%%% Alternating time 
#(define ((time-alternate-time upa downa upb downb) grob)
   (grob-interpret-markup grob
                          (markup #:override '(baseline-skip . 0) #:number
                                  (#:line (
                                            (#:center-column (upa downa))
                                            (#:center-column (upb downb)))))))

\header {
  title = "Twenty-Four Préludes"
  composer = "Alexander Scriabin"
}

upperUpper = \relative {
  \key bf \minor
  \clef treble
  \partial 8
  %% This technique courtesy of https://lsr.di.unimi.it/LSR/Item?id=956
  %%  Use a hidden grace note:
  \once\hideNotes\grace c64
  %%  Adjust the clef spacing:
  %\once\override Staff.Clef.X-extent = #'(1 . 2)
  %%  Put in the clef:
  \clef F
  r8^\markup { \italic \small "sotto voce" } | bf'4.-- bf8.-- bf16-- | bf4.-- r8 | df4. df8. df16 | df4. r8 |
  f4.( f8) r8 | e4.( e8)
  \clef treble
  r8 | f4. r4
}

upperLower = \relative {
  \key bf \minor
  \clef treble
  \partial 8
  %%  Use a hidden grace note:
  \once\hideNotes\grace c64
  %%  Adjust the clef spacing:
  %\once\override Staff.Clef.X-extent = #'(1 . 2)
  %%  Put in the clef:
  \clef F
  \tuplet 3/2 { bf16( c16 ef16 } | bf'8[ af ef gf df] | f[ c df]) \tuplet 3/2 {bf16( df16  gf16 } |
  df'8[ c gf bf f] | gf[ ef df]) \tuplet 3/2 { df16( gf16 bf16 } |
  f'8[ ef bf df]) \tuplet 3/2 { c,16( gf'16 bf16 } | e8[ df bf c])
  \clef treble
  \tuplet 3/2 { f,16( a16 df16 } | f8[ ef c df bf])
}

lowerUpper = \relative {
  \key bf \minor
  \clef F
  \voiceOne
  \partial 8
  \once\hideNotes\grace c64
  r8
  bf4.-- bf8.-- bf16-- | bf4.-- r8 | df4. df8. df16 | df4. r8 |
  f4.( f8) r8 | e4.( e8) r8 | f4. r4
}

lowerLower = \relative {
  \key bf \minor
  \clef F
  \voiceTwo
  \partial 8
  \once\hideNotes\grace c64
  \tuplet 3/2 { bf,16(_\markup { \small "una corda" } c16 ef16 } | bf'8[ af ef gf df] | f[ c df)] \tuplet 3/2 { bf16( df16 gf16 } |
  df'8[ c gf bf f] | gf[ ef df]) \tuplet 3/2 { df16( gf16 bf16 } | f'8[ ef bf df)] \tuplet 3/2 { c,16( gf'16 bf16 } |
  ef8[ df bf c]) \tuplet 3/2 { f,16( a16 df16 } | f8[ ef c df bf])
}

timeSignatures = {
  \override Score.TimeSignature.stencil = #(time-alternate-time "5" "8" "4" "8")
  \time 5/8
  \partial 8 \once\hideNotes\grace s64
  s8
  \override Score.TimeSignature.stencil = ##f
  \time 5/8 s4. s4 | \time 4/8 s2 | \time 5/8 s4. s4 | \time 4/8 s2 | \time 5/8 s4. s4 | \time 5/8 s4. s4 |
  \time 5/8 s4. s4
}

dynamicMarks = {
  \override DynamicTextSpanner.style = #'none
  \partial 8 \once\hideNotes\grace c64 s8\p s4. s4 s2  s4. s4 s2 s8-\cresc s2 s4. s4 s8-\dim s2\!
}

\score {
  \new PianoStaff <<
    \new Staff
    <<
      \tempo  \markup { Misterioso \rhythm { { 8 } }  = 160-168 }
      %\clef treble
      \mergeDifferentlyHeadedOn
      \mergeDifferentlyDottedOn
      \override CueClef.full-size-change = ##f
      \new Voice = "upperUpper" {
        \relative {
          \voiceOne
          \upperUpper
        }
      }
      \new Voice = "upperLower" {
        \relative {
          \voiceTwo
          \upperLower
        }
      }
    >>
    \new Dynamics {
      \dynamicMarks
    }
    \new Staff
    <<
      \mergeDifferentlyHeadedOn
      \mergeDifferentlyDottedOn
      \clef bass
      \new Voice {
        \lowerUpper
      }
      \new Voice {
        \lowerLower
      }
    >>
    \new Devnull \timeSignatures
  >>
  \layout {
  }
  \midi {
  }
}

Reply via email to