Re: staccato dots and slurs in second voice
Hi Werner, On Mon, Jan 26, 2015 at 12:24 AM, Werner LEMBERG w...@gnu.org wrote: That's effectively what I'm doing. I'm changing the X-offset callback because it's only there that the property toward-stem-shift is read (see scm/output-lib.scm). The trick is allowing two different concurrent values for toward-stem-shift: 1.0 for when the staccato is alone, 0.0 when other articulations are present (like a portato) In my experiment, I simply did what the engraver does regarding toward-stem-shift. Thanks for working on this! My pleasure! I have something which is almost ready to be reviewed, but I need to get several patches pushed and into current master first. Will this also influence the positioning of the end (or start) of a slur? Since I guess that the answer is no, Unfortunately, that's a different problem. Of course, since the patch puts the staccato dots at stem end, you'll notice a (slight) improvement. (See attached.) I wonder how this could be improved, namely to set maximum and minimum horizontal coordinates for slurs that must not be exceeded. Not sure--I'd need to investigate. Something ought to be done about the vertical position, too, of course. That might be harder. (I'm just guessing.) [...] what about changing toward-stem-shift to a number-pair instead of a number? Sounds sensible. I'm liking this approach--will be part of upcoming patch for review. Best, David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
On Mon, Jan 26, 2015 at 9:33 AM, David Nalesnik david.nales...@gmail.com wrote: I have something which is almost ready to be reviewed, but I need to get several patches pushed and into current master first. A patch is up for review: see https://code.google.com/p/lilypond/issues/detail?id=2535 --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
staccato dots and slurs in second voice
Have a look at these two snippets. % slur.ly \relative c' { c'8( b) } \\ { e,4 } % slur-beam.ly \relative c' { c'8[( b]) } \\ { e,4 } % staccato-slur.ly \relative c' { c'8( b-.) } \\ { e,4 } % staccato-slur-beam.ly \relative c' { c'8[( b-.]) } \\ { e,4 } Regarding the default slur positions without a beam as produced with lilypond 2.19.15-1-171-ge86b2ea, I can only say: ouch :-) However, I wonder whether there is a bug: Shouldn't the slur horizontally stop exactly over the staccato point, regardless of the vertical position? Maybe the slur's end point can even have a smaller x value, but definitely not a larger one... Werner ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
Hi, On Sun, Jan 25, 2015 at 8:39 AM, Kieren MacMillan kieren_macmil...@sympatico.ca wrote: Hi Werner, This lovely collection of snippets reveals oh so many problems… :) 1. The staccato dot should be directly at the end of the stem (see Gould, etc.), unless it’s part of a compound/multiple articulation. This situation with staccato dots is more complex, however. Gould says: Staccato dots and wedges by themselves look best centred on a stem ... although many editions do centre them on the notehead (118). https://lists.gnu.org/mailman/listinfo/lilypond-user --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
That's effectively what I'm doing. I'm changing the X-offset callback because it's only there that the property toward-stem-shift is read (see scm/output-lib.scm). The trick is allowing two different concurrent values for toward-stem-shift: 1.0 for when the staccato is alone, 0.0 when other articulations are present (like a portato) In my experiment, I simply did what the engraver does regarding toward-stem-shift. Thanks for working on this! Will this also influence the positioning of the end (or start) of a slur? Since I guess that the answer is no, I wonder how this could be improved, namely to set maximum and minimum horizontal coordinates for slurs that must not be exceeded. [...] what about changing toward-stem-shift to a number-pair instead of a number? Sounds sensible. Werner ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
Hi Werner, This lovely collection of snippets reveals oh so many problems… :) 1. The staccato dot should be directly at the end of the stem (see Gould, etc.), unless it’s part of a compound/multiple articulation. 2. Yes, the slur should behave as if there’s a beam present. 3. Yes, the slur should end at the dot. 4. No, the slur X-position shouldn’t increase. 5. If possible, the slur end-points should have similar padding (i.e., between slur and stem tip on one side, and slur and dot on the other). Fun! Kieren. ___ Kieren MacMillan, composer www: http://www.kierenmacmillan.info email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
On Sun, Jan 25, 2015 at 2:15 PM, David Nalesnik david.nales...@gmail.com wrote: Hi Kieren, On Sun, Jan 25, 2015 at 1:54 PM, Kieren MacMillan kieren_macmil...@sympatico.ca wrote: Hi David, This situation with staccato dots is more complex, however. Gould says: Staccato dots and wedges by themselves look best centred on a stem ... although many editions do centre them on the notehead (118). Good point. Perhaps it could/should be a parameter? Certainly. I've been thinking about this situation. The difficulty is that the X-offset of the staccato dot (Script) is set independently of the ScriptColumn, of which it has no knowledge (i.e., a pointer). This makes position yourself this way unless there are simultaneous articulations impossible at the moment. Looks like it's not a problem giving a Script a pointer to a ScriptColumn grob. Will investigate if I can modify the X-offset callback for Script to deal with the staccato situation. --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
Hi, On Sun, Jan 25, 2015 at 5:50 PM, David Nalesnik david.nales...@gmail.com wrote: On Sun, Jan 25, 2015 at 2:15 PM, David Nalesnik david.nales...@gmail.com wrote: Hi Kieren, On Sun, Jan 25, 2015 at 1:54 PM, Kieren MacMillan kieren_macmil...@sympatico.ca wrote: Hi David, This situation with staccato dots is more complex, however. Gould says: Staccato dots and wedges by themselves look best centred on a stem ... although many editions do centre them on the notehead (118). Good point. Perhaps it could/should be a parameter? Certainly. I've been thinking about this situation. The difficulty is that the X-offset of the staccato dot (Script) is set independently of the ScriptColumn, of which it has no knowledge (i.e., a pointer). This makes position yourself this way unless there are simultaneous articulations impossible at the moment. Looks like it's not a problem giving a Script a pointer to a ScriptColumn grob. Will investigate if I can modify the X-offset callback for Script to deal with the staccato situation. It's definitely possible! Using a pointer to a ScriptColumn, the X-offset callback for Script can be modified to (1) center staccatos over the stem if no other articulations are present; (2) center them over the note head if multiple articulations are present. I'll go over this some more, and if all goes well I should have a patch up for discussion. Best, David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
On Sun, Jan 25, 2015 at 5:14 PM, David Nalesnik david.nales...@gmail.com wrote: It's definitely possible! Using a pointer to a ScriptColumn, the X-offset callback for Script can be modified to (1) center staccatos over the stem if no other articulations are present; (2) center them over the note head if multiple articulations are present. I'll go over this some more, and if all goes well I should have a patch up for discussion. From another recent message: http://lists.gnu.org/archive/html/lilypond-user/2015-01/msg00509.html. Is toward-stem-shift not the right thing to change instead of X-offset? Making something like this the default behavior would be great (the above I think is a modified version of something you, David, created in the past). The current lilypond default of 0.5 for toward-stem-shif for staccato doesn't make much sense to me. A fix for this should also take into account other articulations that behave like staccato (staccatissimo, stopped (I've seen this one both ways), etc.) -Jay ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
Hi David, This situation with staccato dots is more complex, however. Gould says: Staccato dots and wedges by themselves look best centred on a stem ... although many editions do centre them on the notehead (118). Good point. Perhaps it could/should be a parameter? Thanks, Kieren. ___ Kieren MacMillan, composer www: http://www.kierenmacmillan.info email: i...@kierenmacmillan.info ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
Hi Kieren, On Sun, Jan 25, 2015 at 1:54 PM, Kieren MacMillan kieren_macmil...@sympatico.ca wrote: Hi David, This situation with staccato dots is more complex, however. Gould says: Staccato dots and wedges by themselves look best centred on a stem ... although many editions do centre them on the notehead (118). Good point. Perhaps it could/should be a parameter? Certainly. I've been thinking about this situation. The difficulty is that the X-offset of the staccato dot (Script) is set independently of the ScriptColumn, of which it has no knowledge (i.e., a pointer). This makes position yourself this way unless there are simultaneous articulations impossible at the moment. I'd like to find another solution besides the workaround engraver found here: http://lists.gnu.org/archive/html/bug-lilypond/2012-05/msg00098.html. --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
Hi Jay, On Sun, Jan 25, 2015 at 7:03 PM, Jay Anderson horndud...@gmail.com wrote: On Sun, Jan 25, 2015 at 5:14 PM, David Nalesnik david.nales...@gmail.com wrote: It's definitely possible! Using a pointer to a ScriptColumn, the X-offset callback for Script can be modified to (1) center staccatos over the stem if no other articulations are present; (2) center them over the note head if multiple articulations are present. I'll go over this some more, and if all goes well I should have a patch up for discussion. From another recent message: http://lists.gnu.org/archive/html/lilypond-user/2015-01/msg00509.html. Is toward-stem-shift not the right thing to change instead of X-offset? That's effectively what I'm doing. I'm changing the X-offset callback because it's only there that the property toward-stem-shift is read (see scm/output-lib.scm). The trick is allowing two different concurrent values for toward-stem-shift: 1.0 for when the staccato is alone, 0.0 when other articulations are present (like a portato) In my experiment, I simply did what the engraver does regarding toward-stem-shift. Maybe there ought to be another property, held by staccato and staccatissimo--something that locks staccatos in tandem with any other articulations present. By default, the staccato and anything else would be linked. Who knows, someone might want to fool with toward-stem-shift of the staccato in a column, and I'm not wild about the sleight-of-hand I described above. Making something like this the default behavior would be great (the above I think is a modified version of something you, David, created in the past). The current lilypond default of 0.5 for toward-stem-shif for staccato doesn't make much sense to me. So you would propose 1.0 as the default, and the user could override to 0.5 if they wanted the current default behavior? A fix for this should also take into account other articulations that behave like staccato (staccatissimo, stopped (I've seen this one both ways), etc.) That would be no problem. --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: staccato dots and slurs in second voice
On Sun, Jan 25, 2015 at 8:24 PM, David Nalesnik david.nales...@gmail.com wrote: Hi Jay, On Sun, Jan 25, 2015 at 7:03 PM, Jay Anderson horndud...@gmail.com wrote: On Sun, Jan 25, 2015 at 5:14 PM, David Nalesnik david.nales...@gmail.com wrote: It's definitely possible! Using a pointer to a ScriptColumn, the X-offset callback for Script can be modified to (1) center staccatos over the stem if no other articulations are present; (2) center them over the note head if multiple articulations are present. I'll go over this some more, and if all goes well I should have a patch up for discussion. From another recent message: http://lists.gnu.org/archive/html/lilypond-user/2015-01/msg00509.html. Is toward-stem-shift not the right thing to change instead of X-offset? That's effectively what I'm doing. I'm changing the X-offset callback because it's only there that the property toward-stem-shift is read (see scm/output-lib.scm). The trick is allowing two different concurrent values for toward-stem-shift: 1.0 for when the staccato is alone, 0.0 when other articulations are present (like a portato) In my experiment, I simply did what the engraver does regarding toward-stem-shift. Maybe there ought to be another property, held by staccato and staccatissimo--something that locks staccatos in tandem with any other articulations present. By default, the staccato and anything else would be linked. Who knows, someone might want to fool with toward-stem-shift of the staccato in a column, and I'm not wild about the sleight-of-hand I described above. Hmmm...what about changing toward-stem-shift to a number-pair instead of a number? Then we would have ( [shift-when-alone] . [shift-when-in-a-group] ). The default for staccato and staccatissimo and stopped and whatever would be '(1.0 . 0.0). This would avoid adding yet another property, and would make shifting articulations around in relation to each other transparent. --David ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user