[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: review of a Mutopia file (why TabStaff gives error here?)
From: |
Thomas Morley |
Subject: |
Re: review of a Mutopia file (why TabStaff gives error here?) |
Date: |
Fri, 7 Dec 2012 02:20:57 +0100 |
2012/11/26 Nick Payne <address@hidden>:
> On 24/11/12 13:34, Keith OHara wrote:
>>
>> barre = #(define-music-function (parser location
>> strg music) (number? ly:music?)
>> #{
>> \set TabStaff.minimumFret = $strg
>> \set TabStaff.restrainOpenStrings = ##t
>> \once\override TextSpanner #'(bound-details left text)
>> = #(format #f "B address@hidden" strg)
>> %{ ... Nick's other style settings ...%}
>> <>\startTextSpan
>> $music
>> <>\stopTextSpan
>> \unset TabStaff.minimumFret
>> \unset TabStaff.restrainOpenStrings
>> #})
>
>
> I was testing this barre function without the tabstaff stuff for use with
> scores in standard notation, and added a few extra TextSpanner settings to
> get the output that I want. One problem that I can't fathom is that if I add
> \override TextSpanner.bound-details.right-broken.text = ##f, so that the
> small vertical line at the RH end of the spanner is not drawn at the end of
> a staff when the barre wraps to the following staff, then the line also
> doesn't get drawn if the barre ends at the right hand end of a staff,
> without being broken. Why is lilypond thinking that the TextSpanner is
> breaking across staves when it isn't? In the example below, the end of the
> second TextSpanner is missing the vertical line unless the override of
> TextSpanner.bound-details.right-broken.text = ##f is commented out.
>
> \version "2.17.6"
>
> % Function contributed by Thomas Morley:
> % http://lsr.dsi.unimi.it/LSR/Item?id=857
>
> barre =
> #(define-music-function (parser location strg music)(number? ly:music?)
> #{
> % \set TabStaff.minimumFret = $strg
> % \set TabStaff.restrainOpenStrings = ##t
> \once\override TextSpanner.bound-details.left.text = #(format #f
> "address@hidden"
> strg)
> \once\override TextSpanner.font-shape = #'upright
> \once\override TextSpanner.bound-details.left.stencil-align-dir-y =
> #CENTER
> \once\override TextSpanner.style = #'line
> \once\override TextSpanner.bound-details.right.text = \markup \draw-line
> #'(0 . -1)
> \once\override TextSpanner.to-barline = ##t
> \once\override TextSpanner.bound-details.right.padding = #1.5
> \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
> <>\startTextSpan
> $music
> <>\stopTextSpan
> % \unset TabStaff.minimumFret
> % \unset TabStaff.restrainOpenStrings
> #})
>
> \relative c'' {
> \key c \major
> \barre3 { \repeat unfold 48 { d4 } }
> \barre3 { \repeat unfold 20 { d4 } }
> \break
> \repeat unfold 20 { d4 }
>
> }
Hi Nick,
after some private discussion with Federico it turns out, that
\articulate can't deal with <>
Wrong false barchecks are returned.
I'd recommend to use s*0 instead.
I raised a bug-report about it.
Best,
Harm
- Re: review of a Mutopia file (why TabStaff gives error here?),
Thomas Morley <=