\version "2.16.2"

\include "markup-rest.ly"

fakeMMRGlyph = {

   \override MultiMeasureRest #'after-line-breaking =
     #(lambda (grob)
       (let* ((measure-count (ly:grob-property grob 'measure-count)))
       (if (> measure-count 1)
           (ly:grob-set-property! grob 'transparent #t))))

   \override MultiMeasureRestNumber #'Y-offset = #2.5

   \override MultiMeasureRestNumber #'before-line-breaking =
     #(lambda (grob)
       (let* ((txt (ly:grob-property grob 'text))
              (txt-mrkp (markup #:number txt))
              (mmr
                 (markup
                    ;#:override '(word-space . 0.6)
                    #:override '(multi-measure-rest-number . #f)
                    #:override '(multi-measure-rest . #t)
                    #:rest txt))
              (new-txt
                (markup
                   #:override '(baseline-skip . 2.5)
                   #:center-column
                   (txt-mrkp mmr))))
       (ly:grob-set-property! grob 'text new-txt)))
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%               EXAMPLE
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\paper { 
        line-width = 90
}

\layout {
        \context {
                \Score
                \override InstrumentName #'font-size = #-2
                \override InstrumentName #'self-alignment-X = #-1
        }
}

staffNameI = 
\markup 
  \italic
  \override #'(line-width . 25)
  \override  #'(baseline-skip . 2)
  \fill-line {
     \center-column {
             "LilyPond's default is"
             "correct, according to"
             "Elaine Gould \"Behind Bars\""
     }
  }
  
staffNameII = 
   \markup 
     \italic
     \override  #'(baseline-skip . 2)
     \override #'(line-width . 25)
     \fill-line {
        \center-column {
                "Always print the same"
                "MultiMeasureRests"
                "disregarding \\time"
        }
     }
  
m = {
  \time 7/4
  \compressFullBarRests
  %\fakeMMRGlyph
  %\override MultiMeasureRest #'usable-duration-logs = #'(0)
  
  R1*7/4
  R1*7/4*2
  
  \break
  
  \time 9/4
  R1*9/4
  R1*9/4*2  
  \break
  
  \time 18/4
  R1*18/4
  R1*18/4*2
}

<<
  \new Staff \with { instrumentName = \staffNameI } 
    \m
    
  \new Staff \with { instrumentName = \staffNameII }
    \new Voice 
      \with { 
              \fakeMMRGlyph
              \override MultiMeasureRest #'usable-duration-logs = #'(0)
      }
    \m
>>

