lilypond-auto
[Top][All Lists]
Advanced

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

Re: [Lilypond-auto] Issue 3056 in lilypond: Barring example in Notation


From: lilypond
Subject: Re: [Lilypond-auto] Issue 3056 in lilypond: Barring example in Notation Reference
Date: Thu, 27 Dec 2012 05:38:15 +0000


Comment #4 on issue 3056 by address@hidden: Barring example in Notation Reference
http://code.google.com/p/lilypond/issues/detail?id=3056

I think neither the LSR snippet at
http://lsr.dsi.unimi.it/LSR/Snippet?id=857 nor my example at
http://lists.gnu.org/archive/html/lilypond-user/2012-12/msg00824.htmlshould
be referenced in the documentation, as they both have the
shortcoming that as soon as the barre function using {...} intersects with
another element delimited by braces, such as a tuplet or repeat, then you
can't use it because of the ambiguity with the opening and closing braces
(how do you indicate a barre that starts before a repeat section and ends
during the repeat: the closing brace of the barre will be taken as the
closing brace of the repeat). I've been using the code shown at
https://lists.gnu.org/archive/html/lilypond-user/2012-12/msg00824.html,
which uses startTextSpan and stopTextSpan. I guess that could go in the LSR
if converted back to 2.14 syntax. I think this should work with 2.14 - I
don't have it installed to test:

\version "2.14.2"

barre = #(define-music-function (parser location fretnum partial)
  (number? number?)
#{
  \once \override TextSpanner #'bound-details #'left #'text =
    \markup\small\bold\concat { C #(format #f "address@hidden" fretnum)
      \raise #0.8 \sub #(number->string partial) }
  \once \override TextSpanner #'style = #'line
  \once \override TextSpanner.font-shape = #'upright
  \once\override TextSpanner #'bound-details #'right #'text = \markup {
\draw-line #'(0 . -1) }
  \once\override TextSpanner #'bound-details #'left #'stencil-align-dir-y =
#0.35
  \once\override TextSpanner #'bound-details #'left #'padding = #-0.25
  \once\override TextSpanner #'bound-details #'right #'padding = #-1
  \once\override TextSpanner #'bound-details #'right-broken #'padding = #0.5
  \once\override TextSpanner #'bound-details #'left-broken #'padding = #2
  \once\override TextSpanner #'bound-details #'left-broken #'text = ##f
  \once\override TextSpanner #'bound-details #'right-broken #'text = ##f
#})

\relative c {
  \clef "treble_8"
  \barre2 3 c4\startTextSpan c c \times 2/3 { c8 c c\stopTextSpan }
  \barre4 5 c4\startTextSpan c c c\stopTextSpan
}




reply via email to

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