lilypond-user
[Top][All Lists]
Advanced

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

custom dynamics made easy


From: Janek Warchoł
Subject: custom dynamics made easy
Date: Sat, 30 Nov 2013 12:03:12 +0100

Hi,

2011/3/13 Graham Percival wrote:
> I'm always astounded at how much we _could_ be doing
> with "helper" scheme functions [...].
(http://lists.gnu.org/archive/html/lilypond-devel/2011-03/msg00339.html)

Inspired by Graham i've just written another helper scheme function!

We all need to use custom dynamics in our scores from time to time
(like "p espressivo").  Notation Reference 1.3.1 describes how you can
create them, but the process is a bit inconvenient - there's just too
much to write:
{
  c'-#(make-dynamic-script
       (markup #:dynamic "p"
         #:normal-text #:italic "espressivo"))
}

So, i defined a \dynamic function that will do all the magic for you,
so that you can define and use custom dynamics on-the-fly.  With it,
you just write
{
  c'-\dynamic "p espressivo"
}
and that's it.  Nice, isn't it?
You can find the snippet in the attachment, or in the
openlilylib/snippets repository:
https://github.com/openlilylib/snippets/tree/master/input-shorthands/easy-custom-dynamics

The function is dedicated to Marc and Tine Hohl :-)

I'd like to improve it further, in particular add a shorthand syntax
for upright letters (currently the function automatically uses
italics, unless you use \markup but that's a lot of typing), better
support parenthesizing and bracketifying of dynamic letters, and see
how i could use a function that Curt wrote
(https://github.com/tunesmith/TheForgivingSea/blob/master/1M2/lib/special-dynamics.ily)
to improve the alignment.

Would anyone want to sponsor it?  I don't know when i'll have time to
work on this, but sponsoring will make it "sometime before Christmas"
instead of "sometime in 2014" :-)

best,
Janek

Attachment: easy-custom-dynamics.ly
Description: Text Data

Attachment: example.png
Description: PNG image


reply via email to

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