2015-05-30 20:28 GMT+02:00 Peter Crighton <petecrigh...@gmail.com>:
> Hello all,
>
> I have a variable divisiaIII = ^\markup { "div. a 3" } that should by
> default appear above the staff (hence the ^). Now I need it to appear below
> the staff in an instrument part edition, while it should still appear above
> the staff in the full score. Both editions are made from the same input
> files and realised with the edition-engraver.
> Is there a way to change the direction of a markup that is already
> positioned via the use of ^\markup or _\markup, or is there any other
> property I could override to get the same effect? I don’t want to use
> -\markup, as I’d like to be able to call the default direction just with
> \divisiaIII.
>
> --
> Peter Crighton | Musician & Music Engraver based in Mainz, Germany
> http://www.petercrighton.de
>



Two possibilities:

\version "2.18.2"

%% 1
%% tweak has priority
{ a1-\tweak direction #DOWN ^"xy" }

%% 2
%% reset the 'direction-property
force-text-script-down =
#(define-music-function (parser location mus)(ly:music?)
  (music-map
    (lambda (m)
      (if (music-is-of-type? m 'rhythmic-event)
          (let ((arts (ly:music-property m 'articulations)))
            (for-each
              (lambda (e)
                (if (music-is-of-type? e 'text-script-event)
                    (ly:music-set-property! e 'direction DOWN)))
              arts)
            m)
          m))
    mus))

{
  \force-text-script-down
  a1^"xy"
}


HTH,
  Harm

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to