Re: Levelling hairpins

2015-02-14 Thread Noeck
Hi,

there may be some issues I do not have in this simple example. But in principle
extracting dynamics from music into a dynamics context is possible (second staff
below):
- Do not engrave the dynamics with the staff (remove engraver)
- Put the same music in a dynamics context in addition (the notes are not
  printed there anyway.

I did not care about midi here, but that would be possible by removing
performers or doing a separate midi score. Not having separate dynamics has the
advantage, that it is easier for the midi output to interpret it right.

\version 2.18.2

music = \relative c' { a\f b\p\ g f\! a\cresc c a c c\ff }

\markup Normal staff including the dynamics

  \new Staff \music


\markup Separate dynamics context from the same variable

  \new Voice \with { \remove Dynamic_engraver } \music
  \new Dynamics \music


Cheers,
Joram

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Noeck
I have a follow-up question to my own example: It seems like LilyPond does
already keep the level of dynamics in a staff if they are connected via spanners
(\cresc \ff in my example).

Couldn’t that be extended, that there is some invisible connection? Because
sometimes you want a break in the dynamics line (imagine inside a piano staff
with some very low right hand notes and later some very high left hand notes).
That way you could still put the dynamics close to the staff but on the same
level if needed.

The \level command below does it, but it should not do a crescendo, but rather
some invisible spanner and I would like the command \= for it.

What do you think?

On the other hand: Can a dynamics context be broken and shifted vertically 
somehow?

Joram



This example shows it:

\version 2.18.2

% proposed command:
level = \tweak #'stencil #f \

music = \relative c' { a\f b\p\ g d\! d'\cresc c e c f\ff }
level = \relative c' { a\f\level b\p\ g d\! d'\cresc c e c f\ff }
left =  { \clef bass a1 a a'4 }

\markup Normal staff including the dynamics

  \new Staff \music
  \new Staff \left


\markup { Use \typewriter \level for the first \dynamic f (breaks the
dynamics where necessary) }

  \new Staff \level
  \new Staff \left


\markup Separate dynamics context from the same variable (pushes the staffs 
apart)

  \new Voice \with { \remove Dynamic_engraver } \music
  \new Dynamics \music
  \new Staff \left


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Richard Shann
On Sat, 2015-02-14 at 00:44 -0800, Nathan Ho wrote:
 On Fri, Feb 13, 2015 at 12:53 PM, Peter Gentry
 peter.gen...@sunscales.co.uk wrote:
 
  This is very true but the dynamics context is very cumbersome for this
  purpose alone.
 
  Surely there must be a simpler way to align hairpins.
 
 Hmm, how about a Scheme function that extracts all the dynamic events
 and moves them into a Dynamics context? 

I think there may be a simpler way: if you have some music 

MyMusic = 

and then you put it in both the usual context *and* the a Dynamic
Context then you get aligned dynamics in the dynamic context. You only
then have to make all the dynamics not print in the usual context, for
which I'm sure someone here can suggest the incantation.
That is it would look something like this:

 UsualContext { \override dynamics invisible \MyMusic}
   DynamicsContext { \MyMusic }


HTH

Richard



 I doubt I have the skills to
 write that, but it would be very convenient.
 
 Regards,
 Nathan
 
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Noeck
The \= part is possible:
\= = \tweak #'stencil #f \

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Noeck
Hi David,

 It's a shame that Lilypond does not (so far as I know) have any way to
 (a) associate one mark with another for positioning purposes

This association can be done quite easily as you can see in my previous mail.
Have you seen it? However, I already found some drawbacks when used on the same
note as other (de-)crescendi.

Joram

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread David Sumbler
It's probably a language thing...

My use of the word 'shame' did not in any way imply that I think that
anybody should feel shame, inadequacy or guilt for the fact that
Lilypond does not always do what some of us would like.

The English idiom it's a shame means the same as the similar it's a
pity: they have different literal meanings, neither of which
corresponds to the idiomatic meaning.

I might easily say It's a shame that it's cloudy today: I am not
blaming or criticising anyone for the fact that the sun is not shining:
I am merely saying that it would be pleasanter if things were different
from the way they are.

Sorry if I offended anybody by my choice of words.

The link you included is very interesting - although I won't hold my
breath, because I see that the discussion has been going on for 4½ years
so far.

David

On Sat, 2015-02-14 at 15:11 +0100, Werner LEMBERG wrote:
  It's a shame that Lilypond does not (so far as I know) have any way
  to
  (a) associate one mark with another for positioning purposes
  (b) associate dynamics with two staves, and use some sensible
  algorithm for vertically spacing the dynamics between the two
  staves and their contents.
 
 A `shame'?  Definitely not!  It's simply not yet implemented.
 
 Please be careful with your wording.
 
 See https://code.google.com/p/lilypond/issues/detail?id=1127 for first
 ideas.
 
 
 
 Werner



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Werner LEMBERG

 It's probably a language thing...

Indeed.  I should have looked up the phrase before writing.  Sorry.

 The link you included is very interesting - although I won't hold my
 breath, because I see that the discussion has been going on for 4½
 years so far.

The very issue is that we only have tiny number of people who
sufficiently understand the internals of lilypond to tackle problems
of this kind, and all of them are very busy.  Given that not too
tedious work-arounds exist, a fix to this problem is not as urgent as,
say, making lilypond work with guile2.


Werner
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread David Sumbler
On Sat, 2015-02-14 at 15:41 +0100, Werner LEMBERG wrote:
  It's probably a language thing...
 
 Indeed.  I should have looked up the phrase before writing.  Sorry.
 
  The link you included is very interesting - although I won't hold my
  breath, because I see that the discussion has been going on for 4½
  years so far.
 
 The very issue is that we only have tiny number of people who
 sufficiently understand the internals of lilypond to tackle problems
 of this kind, and all of them are very busy.  Given that not too
 tedious work-arounds exist, a fix to this problem is not as urgent as,
 say, making lilypond work with guile2.
 
 
 Werner

Point taken - and we are all very grateful to those who do give up time
(a) to develop Lilypond, and/or (b) to answer queries from those of us
lower down on the learning ladder.

David



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Werner LEMBERG

 It's a shame that Lilypond does not (so far as I know) have any way
 to
 (a) associate one mark with another for positioning purposes
 (b) associate dynamics with two staves, and use some sensible
 algorithm for vertically spacing the dynamics between the two
 staves and their contents.

A `shame'?  Definitely not!  It's simply not yet implemented.

Please be careful with your wording.

See https://code.google.com/p/lilypond/issues/detail?id=1127 for first
ideas.



Werner

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread Nathan Ho
On Fri, Feb 13, 2015 at 12:53 PM, Peter Gentry
peter.gen...@sunscales.co.uk wrote:

 This is very true but the dynamics context is very cumbersome for this
 purpose alone.

 Surely there must be a simpler way to align hairpins.

Hmm, how about a Scheme function that extracts all the dynamic events
and moves them into a Dynamics context? I doubt I have the skills to
write that, but it would be very convenient.

Regards,
Nathan

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-14 Thread H. S. Teoh
On Sat, Feb 14, 2015 at 12:44:44AM -0800, Nathan Ho wrote:
 On Fri, Feb 13, 2015 at 12:53 PM, Peter Gentry
 peter.gen...@sunscales.co.uk wrote:
 
  This is very true but the dynamics context is very cumbersome for
  this purpose alone.
 
  Surely there must be a simpler way to align hairpins.
 
 Hmm, how about a Scheme function that extracts all the dynamic events
 and moves them into a Dynamics context? I doubt I have the skills to
 write that, but it would be very convenient.
[...]

I would love to know how to write something like that too!!

I've been struggling with inconsistently-applied dynamics in midi for my
piano pieces, as well as the annoyance of having to use a separate,
dedicated Dynamics context. It would be *very* nice if there were a
Scheme function that could extract dynamics from, say, the upper staff.

And perhaps with some additional modifications applied as well -- often,
I find that I need to insert interpretive (or manual) dynamics into the
midi score that I wouldn't want in my printed scores, because I want to
leave that part up to the player's discretion, but for midi output I
have to hand-hold it all the way through.


T

-- 
Your inconsistency is the only consistent thing about you! -- KD

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-13 Thread Richard Shann
On Fri, 2015-02-13 at 11:21 -0700, tisimst wrote:
 David,
 
 
 You have several options, but first would you mind providing a tiny
 example that shows these undesired offsets? Thanks

This is too well known to need an example, indeed one is given in the
documentation

http://www.lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-attached-to-notes#dynamics

where the solution is discussed

A Dynamics context is available to engrave dynamics on their own
horizontal line. Use spacer rests to indicate timing. (Notes in a
Dynamics context will also take up musical time, but will not be
engraved.) The Dynamics context can usefully contain some other items
such as text scripts, text spanners, and piano pedal marks. 

Richard

 
 
 - Abraham
 
 On Fri, Feb 13, 2015 at 11:13 AM, David Sumbler [via Lilypond]
 [hidden email] wrote:
 One of my pieces has a lot of crescendo-decrescendo markings,
 using two 
 hairpins (i.e.  and  ). 
 
 Mostly these look fine; but just occasionally, because of the
 contours 
 of the melodic line above the hairpins, the crescendo and
 decrescendo 
 hairpins have different vertical placements and are not
 level. 
 
 What is the simplest way to get them both to appear at the
 level 
 required by the lower one of the two? 
 
 David 
 
 
 ___ 
 lilypond-user mailing list 
 [hidden email] 
 https://lists.gnu.org/mailman/listinfo/lilypond-user
 
 
 
 __
 If you reply to this email, your message will be added to the
 discussion below:
 
 http://lilypond.1069038.n5.nabble.com/Levelling-hairpins-tp171841.html 
 To start a new topic under User, email [hidden email] 
 To unsubscribe from Lilypond, click here.
 NAML 
 
 
 
 
 __
 View this message in context: Re: Levelling hairpins
 Sent from the User mailing list archive at Nabble.com.
 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user



___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-13 Thread tisimst
David,

You have several options, but first would you mind providing a tiny example
that shows these undesired offsets? Thanks

- Abraham

On Fri, Feb 13, 2015 at 11:13 AM, David Sumbler [via Lilypond] 
ml-node+s1069038n171841...@n5.nabble.com wrote:

 One of my pieces has a lot of crescendo-decrescendo markings, using two
 hairpins (i.e.  and  ).

 Mostly these look fine; but just occasionally, because of the contours
 of the melodic line above the hairpins, the crescendo and decrescendo
 hairpins have different vertical placements and are not level.

 What is the simplest way to get them both to appear at the level
 required by the lower one of the two?

 David


 ___
 lilypond-user mailing list
 [hidden email] http:///user/SendEmail.jtp?type=nodenode=171841i=0
 https://lists.gnu.org/mailman/listinfo/lilypond-user


 --
  If you reply to this email, your message will be added to the discussion
 below:
 http://lilypond.1069038.n5.nabble.com/Levelling-hairpins-tp171841.html
  To start a new topic under User, email ml-node+s1069038n...@n5.nabble.com
 To unsubscribe from Lilypond, click here
 http://lilypond.1069038.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_codenode=2code=dGlzaW1zdC5saWx5cG9uZEBnbWFpbC5jb218Mnw4MzU3Njg3MDU=
 .
 NAML
 http://lilypond.1069038.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewerid=instant_html%21nabble%3Aemail.namlbase=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespacebreadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml





--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Levelling-hairpins-tp171841p171842.html
Sent from the User mailing list archive at Nabble.com.___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-13 Thread Peter Gentry
 
This is too well known to need an example, indeed one is given in the 
documentation

 
http://www.lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-attached-to-notes
http://www.lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-attached-to-notes#dynamics

where the solution is discussed

A Dynamics context is available to engrave dynamics on their own horizontal 
line. Use spacer rests to indicate timing. (Notes in a
Dynamics context will also take up musical time, but will not be

engraved.) The Dynamics context can usefully contain some other items such as 
text scripts, text spanners, and piano pedal marks. 

Richard

 

This is very true but the dynamics context is very cumbersome for this purpose 
alone. 

Surely there must be a simpler way to align hairpins.

regards 
Peter Gentry 

 
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: Levelling hairpins

2015-02-13 Thread David Stephen Grant
This is how I deal with it. Not exactly automatic, but works well for me :-)


\version 2.19.15

dynPadYOn =
#(define-music-function (parser location padding)(number?)
   #{
 \override DynamicLineSpanner.staff-padding = $padding
   #})

dynPadYOff =
#(define-music-function (parser location)()
   #{
 \revert DynamicLineSpanner.staff-padding
   #})

testMusic = {
  c'4 g c'\ a'\f | c'4\ g c' a'\p
}

{
  \testMusic | \break
  \dynPadYOn #4
  \testMusic | \break
  \dynPadYOff
  \testMusic
}

On 13 February 2015 at 21:53, Peter Gentry peter.gen...@sunscales.co.uk
wrote:



 This is too well known to need an example, indeed one is given in the
 documentation


 *http://www.lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-attached-to-notes#dynamics*
 http://www.lilypond.org/doc/v2.18/Documentation/notation/expressive-marks-attached-to-notes

 where the solution is discussed

 A Dynamics context is available to engrave dynamics on their own
 horizontal line. Use spacer rests to indicate timing. (Notes in a Dynamics
 context will also take up musical time, but will not be

 engraved.) The Dynamics context can usefully contain some other items such
 as text scripts, text spanners, and piano pedal marks.

 Richard

 

 This is very true but the dynamics context is very cumbersome for this
 purpose alone.

 Surely there must be a simpler way to align hairpins.

 regards
 Peter Gentry


 ___
 lilypond-user mailing list
 lilypond-user@gnu.org
 https://lists.gnu.org/mailman/listinfo/lilypond-user




-- 
David Stephen Grant
da...@davidgrant.no
www.davidgrant.no
Phone: (+47) 918 14 276
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user