Thomas Morley <thomasmorle...@gmail.com> writes: > 2013/6/12 Pothárn Imre <potharn.i...@gmail.com>: >>> I'm not top posting. >> >> % When the incipit has a soprano clef, >> % the staff lines are not aligned >> % irrespective of the clef of main part >> >> >> \version "2.16.2" >> >> incipit = \markup { >> \score { >> { \clef soprano >> s4 \bar "" } >> \layout { } >> } } >> >> main = { g'1} >> >> \new Voice=bug { \set Staff.instrumentName=\incipit >> \main } >> >> >> _______________________________________________ >> bug-lilypond mailing list >> bug-lilypond@gnu.org >> https://lists.gnu.org/mailman/listinfo/bug-lilypond > > As a work-around you could add: > \override Staff.Clef #'Y-extent = #'(0 . 0)
Well, one can write the following in 2.17.14 or later:
\version "2.17.14" #(define-markup-command (smash layout props arg) (markup?) (let ((stencil (interpret-markup layout props arg))) (ly:make-stencil (ly:stencil-expr stencil) (ly:stencil-extent stencil X) '(0 . 0)))) incipit = \markup \smash \score { { \clef soprano s4 \bar "" } \layout { } } main = { g'1} \new Staff \with { instrumentName=\incipit } { \main }
I am actually rather appalled that there seems to be no easier way to keep instrumentName from getting centered with disregard to its baseline. It would seem that this would be a reasonably common use case (not just with a \score markup but also with other potential material). It is also strange that we have a command to override both X and Y extents of a markup completely, but nothing that would override less. -- David Kastrup
_______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org https://lists.gnu.org/mailman/listinfo/bug-lilypond