I'm engraving a Scriabin piano etude that starts with common time in the
right hand and 12/8 in the left.  My first instinct for how to do this is
to set the \time to 4/4 in both hands, fake the 8/12 time signature, and
use \scaledDurations. First off, is there a better way to do this?

It gets worse.  There is a section where both hands are in common time, but
even though the right hand time signature isn't changing, it needs to be
displayed again.  Again, my tactic would be to fake the time changes.
However, there is a break in the piece that has one time signature before
the break and a different one after.  What I should really do is have a
change time signature after the bar but before the break.  I don't know how
to "fake" that.

In the spirit of a MWE, I've attached a source file I have been using to
experiment with different approaches to solve the problems.  It's not
minimal, but it's a place to start .

If anyone is interested in seeing the entire etude, here is a URL (it's
number 7):

https://vmirror.imslp.org/files/imglnks/usimg/a/a9/IMSLP263772-PMLP07375-Skrjabin_-_Etudes_-12-,_Op.8_-Moscow,_Muzgiz-.pdf

--
Knute Snortum
\version "2.24.2"

\paper {
  ragged-right = ##t
}

moveC = 
  \tweak outside-staff-priority ##f
  \tweak Y-offset 0
  \etc
  
spacerGrace = \grace { s8 s16 }

twelve = \markup { \concat { \musicglyph "one" \musicglyph "two" } }
eight = \markup \musicglyph "eight"
moveTwelve = \tweak extra-offset #'(-3.5 . -2.5) \etc
moveEight = \tweak extra-offset #'(-2.9 . 2.5) \etc

rightHand = \relative {
  \time 4/4
  c'8^"left hand 12/8"
  \repeat unfold 7 { c8 } \break
  \bar "||"
  <>-\moveC ^\markup \musicglyph "timesig.C44"
  \spacerGrace
  c8^"show time sig again" 
  \repeat unfold 7 { c8 } \break
  \bar "||"
  <>-\moveC ^\markup \musicglyph "timesig.C44"
  \spacerGrace
  c8^"back to the first time sigs" 
  \repeat unfold 7 { c8 }
}

leftHand = \relative {
  \clef bass
  \scaleDurations 2/3 { 
    \once \override TextScript.outside-staff-priority = ##f
    c8-\moveTwelve ^\twelve -\moveEight _\eight
    \repeat unfold 11 { c8 } 
  }
  \bar "||"
  <>-\moveC ^\markup \musicglyph "timesig.C44"
  \spacerGrace
  c8
  \repeat unfold 7 { c8 } 
  \spacerGrace
  \scaleDurations 2/3 { 
    \once \override TextScript.outside-staff-priority = ##f
    c8-\moveTwelve ^\twelve -\moveEight _\eight
    \repeat unfold 11 { c8 } 
  }
}

\score {
  \new PianoStaff <<
    \new Staff \rightHand
    \new Staff \with { \remove Time_signature_engraver } \leftHand
  >>
}

Reply via email to