Date: Sun, 29 Apr 2012 18:07:33 -0500
From: David Nalesnik <
address@hidden>
To: Thomas Morley <
address@hidden>
Cc: lilypond-user <
address@hidden>
Subject: Re: BarNumber-value?
Message-ID:
<CANn-nXk-uNvVRm+Brc7y-Yze7mXSMUOm-R1AvOXe=
address@hidden>
Content-Type: text/plain; charset="iso-8859-1"
Hi Harm,
On Sun, Apr 29, 2012 at 5:55 PM, Thomas Morley <
address@hidden> wrote:
> Hi,
>
> in 2.14.2 I used a function to manipulate the BarNumber-stencil. It
> calls the value of the BarNumber as a string, via (ly:grob-property
> grob 'text).
>
> This doesn't work no longer with the
latest devel-versions. (Due to
> the changes in Issue 2059 ?)
>
> (ly:grob-property grob 'text) now returns, e.g. (#<procedure
> line-markup (layout props args)> ("2"))
>
> How to do with 2.15.36?
>
> Below a simplified example.
>
> \version "2.14.2"
>
> \relative c'' {
>
> \override Score.BarNumber #'break-visibility = #'#(#f #t #t)
> \override Score.BarNumber #'stencil =
> #(lambda (grob)
> (let* ((stil (ly:text-interface::print grob))
> (text (ly:grob-property grob 'text))
>
(nmbr (string->number text)))
> (if (= (remainder nmbr 5) 0)
> (ly:grob-set-property! grob 'color red)
> (ly:grob-set-property! grob 'color black))
> stil))
>
> \repeat unfold 41 { c1 }
> }
>
Lucky guess, but replacing text in your definition of nmbr with the
following gets me a red number every five bars with 2.15.37:
(markup->string text)-David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <
http://lists.gnu.org/archive/html/lilypond-user/attachments/20120429/866be2bf/attachment.html>
------------------------------
Date: Mon, 30 Apr 2012 01:41:36 +0200
From: Thomas Morley <
address@hidden>
To: David Nalesnik <
address@hidden>
Cc: lilypond-user <
address@hidden>
Subject: Re: BarNumber-value?
Message-ID:
<
address@hidden>
Content-Type: text/plain; charset=ISO-8859-1
Hi David,
2012/4/30 David Nalesnik <
address@hidden>:
> Hi Harm,
>
> On Sun, Apr 29, 2012 at 5:55 PM, Thomas Morley
> <
address@hidden> wrote:
>>
>> Hi,
>>
>> in 2.14.2 I used a function to manipulate the BarNumber-stencil. It
>> calls the value of the BarNumber as a string, via (ly:grob-property
>> grob 'text).
>>
>> This doesn't work no longer with the latest devel-versions. (Due to
>> the changes in Issue 2059
?)
>>
>> (ly:grob-property grob 'text) now returns, e.g. (#<procedure
>> line-markup (layout props args)> ("2"))
>>
>> How to do with 2.15.36?
>>
>> Below a simplified example.
>>
>> \version "2.14.2"
>>
>> \relative c'' {
>>
>> ? ? ? ?\override Score.BarNumber #'break-visibility = #'#(#f #t #t)
>> ? ? ? ?\override Score.BarNumber #'stencil =
>> ? ? ? ? ? ? ? ? ?#(lambda (grob)
>> ? ? ? ? ? ? ? ? ? ?(let* ((stil (ly:text-interface::print grob))
>> ? ? ? ? ? ? ? ? ? ? ? ? ? (text (ly:grob-property grob 'text))
>> ? ? ? ? ? ? ? ? ? ? ? ? ? (nmbr (string->number text)))
>> ? ? ? ? ? ? ? ? ? ?(if (= (remainder nmbr 5) 0)
>> ? ? ? ? ? ? ? ? ? ? ? (ly:grob-set-property! grob 'color red)
>> ? ? ? ? ? ? ? ? ? ? ? (ly:grob-set-property! grob 'color black))
>>
? ? ? ? ? ? ? ? ? ?stil))
>>
>> ? ? ? ?\repeat unfold 41 { c1 }
>> }
>
>
> Lucky guess, but replacing text in your definition of nmbr with the
> following gets me a red number every five bars with 2.15.37:
>
> (markup->string text)
>
> -David
>
that's it.
Thanks again,
Harm
------------------------------
_______________________________________________
lilypond-user mailing list
address@hiddenhttps://lists.gnu.org/mailman/listinfo/lilypond-userEnd of lilypond-user Digest, Vol 113, Issue 99
**********************************************