lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: bracket articulation


From: Thomas Morley
Subject: Re: bracket articulation
Date: Fri, 2 Feb 2018 23:32:27 +0100

2018-02-02 6:38 GMT+01:00 Craig Dabelstein <address@hidden>:
> Hi Lilyponders,
>
> Is there a way to put an articulation (a staccatissimo symbol) in square
> brackets above a note, such as [ ! ], where ! = a staccatissimo
> articulation? I've tried several different permutations with no success.
>
> Thanks in advance,
>
> Craig


How about below.
Basically it sets new ParenthesesItem.stencils like
http://lsr.di.unimi.it/LSR/Item?id=564
Overridable in various ways, though.

\version "2.18.2"

#(define parentheses-item::bracket-stencils
  (lambda (grob)
    (let* ((details (ly:grob-property grob 'details))
           (protrusion (assoc-get 'protrusion details 0.2))
           (thick (ly:grob-property grob 'thickness 0.1))
           (shorten-pair (ly:grob-property grob 'shorten-pair '(0 . 0)))
           (half-y (magstep (ly:grob-property grob 'font-size)))
           (bracket-y-ext
             (cons
               (- (- half-y (car shorten-pair)))
               (- half-y (cdr shorten-pair)))))
      (list
        (ly:bracket Y bracket-y-ext thick protrusion)
        (ly:bracket Y bracket-y-ext thick (- protrusion))))))

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% EXAMPLES
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\markup "default, sometimes need to tweak ParenthesesItem"
{
  c'2-\parenthesize-!
  c'2-\parenthesize-.
  c'2-\parenthesize-"otto"
  c'2-\parenthesize-"-"
}

\markup "bracket-stencils, sometimes need to tweak ParenthesesItem as well"
{
  \override ParenthesesItem.stencils = #parentheses-item::bracket-stencils

  c'2-\parenthesize-!
  c'2-\parenthesize-.
  c'2-\parenthesize-"otto"
  c'2-\parenthesize-"-"
}

\markup "bracket-stencils, adjusted"
{
  \override ParenthesesItem.stencils = #parentheses-item::bracket-stencils

  \once \override ParenthesesItem.font-size = -4
  c'2-\parenthesize-!

  \once \override ParenthesesItem.font-size = -8
  c'2-\parenthesize-\tweak padding #0.3 -.

  \textLengthOn
  \once \override ParenthesesItem.font-size = 0
  c'2-\parenthesize-"FOO"
  %\override ParenthesesItem.shorten-pair = #'(0.6 . 0.6)
  \once \override ParenthesesItem.font-size = -12
  c'2-\parenthesize-"-"
}

\markup "bracket-stencils, other examples/tweaks"
{
  \override ParenthesesItem.stencils = #parentheses-item::bracket-stencils

  \override ParenthesesItem.padding = 0.5
  <c' \parenthesize e' g'>
  \override ParenthesesItem.padding = 2
  \override ParenthesesItem.details.protrusion = 0.5
  \override ParenthesesItem.thickness = 0.3
  \override ParenthesesItem.shorten-pair = #'(0.3 . -1)
  c'2-\parenthesize-"-"
}

Cheers,
  Harm



reply via email to

[Prev in Thread] Current Thread [Next in Thread]