nburdick / lilykde

Automatically exported from code.google.com/p/lilykde
0 stars 0 forks source link

Copy/paste rhythm where first rhythm is implicit #13

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Copy rhythm of last four notes of "c4 d e8 f g"
2. Paste to last four notes of "a8 g b c d e"
3. Line turns to "a8 g b8 c d e"

I expect "a8 g b4 c8 d e"

Because there is no explicit rhythm for the first pitch (d), it moves the
first explicit rhythm (the 8 that was on e) to the first place.

In my opinion, the behaviour should be to scroll back to the last explicit
rhythm to discover what the duration of the first pitch is (look back to
the c4 to determine that d is a quarter note) and then check that against
the last explicit duration in the pasted example and decide whether a new
explicit duration is needed (see that in the paste target the last duration
is an 8, so add an explicit 4 to the b).

Is this clear?

Also, sorry if it seems that I am nitpicking your app. I am really enjoying
using it very much and want to help improve it as much as possible. Thanks
for all your hard work.

Original issue reported on code.google.com by jonarnoldsemail on 2 Jul 2009 at 2:07

GoogleCodeExporter commented 8 years ago
Yes, very clear. The copy function should look back if the first copied note 
has no
duration. This is possible although a little bit complicated: the last duration 
could
be many many notes earlier. Then on paste, it should also find out the "current"
duration, in the same way. Then it should determine whether or not to print the
duration on paste.

Original comment by wbsoft on 2 Jul 2009 at 10:38

GoogleCodeExporter commented 8 years ago
You could use the same function to make your Make Explicit and Make Implicit 
rhythm
options work when the first note in the selection has an implicit rhythm.

Original comment by jonarnoldsemail on 2 Jul 2009 at 12:22

GoogleCodeExporter commented 8 years ago
Well, actually, any of the rhythm functions require an explicit pitch to start.

Original comment by jonarnoldsemail on 2 Jul 2009 at 12:24

GoogleCodeExporter commented 8 years ago

Original comment by wbsoft on 18 Jul 2009 at 10:53