Mika Kuuskankare wrote:
On 5.3.2010, at 13:42, Francisco Vila wrote:

2010/3/5 Mika Kuuskankare <mkuus...@siba.fi>:

%%%%%%% SNIPPET STARTS %%%%%
scresc = #(define-music-function (parser location startDyn endDyn) (string? 
string?)
What about

{ c2\fp\<
        \override DynamicText #'extra-spacing-width = #'(-30 . 0)
r\fz
c1 }


--
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

Francisco,

Thanks for your input. I'm in 2.12.3 and in this version I cannot see the hairpin at all 
(it even says "crescendo too small")... furthermore, I really need to insert 
the expression in one single event only...
The following version of Francisco's example will work both in versions 2.12 and 2.13.

{\once \override Hairpin #'minimum-length = #7 c2\fp\< r\fz c1 }



However, for your scheme version, you may want to use a solution like
\afterGrace {c1 \ff \> } {s16 \!\pp }
as a starting point. I made a quick attempt to make a music function solution for it, but didn't get further than the following, which gives syntax errors, probably because of limitations of what can be interpreted within a #{ ... #}. Writing it all in Scheme should work, though.


mycresc = #(define-music-function (parser location startDyn endDyn note) (string? string? ly:music? ) #{ \afterGrace {$note #(ly:export (make-music 'AbsoluteDynamicEvent 'text $startDyn)) }
   { s #(ly:export (make-music 'AbsoluteDynamicEvent 'text $endDyn)) } #})


   /Mats


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

Reply via email to