Q and W keys: Modify Function

• Dec 31, 2013 - 23:05

For a while now I've been struggling with the awkwardness of entering dotted notes in MuseScore, especially in a sequence such as:

F(dotted half), G(quarter), A(dotted half), B(quarter), etc.

A small modification to the function of the Q and W keys would go a long way to making this simpler. At the moment, these keys act multiplicatively, i.e., W doubles the duration of the last note entered, whereas Q halves the duration.

I would like to suggest that these keys should instead act additively, i.e., once a base note value has been selected in the menu bar, a quarter note, say, then with each tap of the W key, the base note value is added to the last note entered. Then the above sequence would only require:

Enter F, tap W, tap W, enter G, enter A, tap W, tap W, enter B, etc.

This assumes that tapping W does not alter the base note length (quarter) which it does now and is actually quite a nuisance.

Q would undo what W does by subtracting the base note length so that one can easily recover from “overshooting” the desired note length.

This raises the question of what to do if Q is tapped immediately after the entry of a note. Subtracting the base note length at this point would yield zero: not useful. At this point, I think Q should revert back to its current function of halving the length of the last entered note which is often useful.

This also leads to an interesting and alternate way of entering the dotted notes in our example sequence, should I decide to work with a base note length of a half (not a quarter as before).

Enter F, tap Q, tap W, enter G, enter A, tap Q, tap W, enter B, etc.

(Enter F = 1/2, tap Q changes it to 1/4, tap W adds 1/2, Result = 3/4 = dotted half)

Since I am an amateur musician and the music is “in my fingertips” and not in my head, I use MIDI exclusively for entering notes. This works wonderfully well, especially for big fat organ chords. But this modification would make doing so even easier.


Comments

Btw, how are you entering the sequence now? i don't find it awkward at all: 6 . F 5 G 6 . A 5 B, etc. As far as I can tell, you modification saves only one keystrokes over the course of four notes. Not that it's a bad idea. I'm just wondering if you are somehow not doing things the most efficient way currently?

BTW, for efficient entry of simple dotted rhythms, nothing I know beats the notation used in ABC. Adapting it to MuseScore, the sequence would go F > G A > B. The ">" command in ABC adds 50% to the value of the previous note and simultaneously subtracts that amount from the next note.

In reply to by Marc Sabatella

First of all, Marc, let me thank you for your prompt and thoughtful response.
Currently I do indeed use: 6 . (enter F) 5 (enter G) 6 . (enter A) 5 (enter B) = 10 key strokes
while I propose: (enter F) W W (enter G) (enter A) W W (enter B) = 8 key strokes
where (enter X) indicates entry via a MIDI keyboard. This is actually a savings of two key strokes but that is not the point; the number of keystrokes is not the only factor affecting efficiency.

Let me describe my setup. My MacBook laptop sits on top of a two keyboard synth stack. I “compose” several bars on the Roland and when I'm happy with the result I enter first the right hand, and then the left, via my Yamaha, into MuseScore. When I'm entering notes using my right hand, my left hand is managing the computer keyboard. The 5 and 6 keys are not so bad but that @#$% period always requires that I look down at the computer keyboard to find it. When entering notes with the left hand, the right hand switches to the computer keyboard and it has to find the 5, 6, and period. It is this continual looking down to find the right computer keys that slows me down.

With what I propose, I would only have to manage the W key and by assigning its function to the space bar, the W function would be equally and easily accessible to both hands. Now, I realize that for a professional musician, who enters a score using the computer keyboard only, the current entry method may be quite satisfactory. But for anyone like myself who uses a MIDI keyboard for note entry, this is a big deal, and I hope that others will support me in making this request.

MIDIites Unite!

In reply to by John Coenraads

Sorry, a couple of further nitpicks:

Your count of keystrokes leaves out the fact that you have to select an initial time value. Well, I guess the default quarter note works for one and only one dotted rhythm, but others will require selecting a duration up front.

Also, if the period is hard to find on your particular keyboard (it isn't on mine), why not simply redefine that shortcut?

Anyhow, my point isn't to belittle your suggestion, just to help make sure you are taking advantage of the facilities MuseScore does offer.

Also, note that MuseScore 2.0 will allow you to select durations via MIDI - no need to use the computer keyboard at all.

In reply to by Marc Sabatella

Thanks for continuing this dialogue, Marc. It forces me to clarify my objective and that is a good thing.
I'm glad to hear that note duration selection will soon be possible using MIDI, but it doesn't change the fundamental paradigm of how note lengths are chosen in MuseScore. Currently, a note length is selected (using the number keys) and then a note is entered. I would like to reverse that so that the note entry algorithm looks more like this:

Select a suitable base note length (using number keys)
Loop
...Enter Note
...If necessary, modify its length using modifier key.
EndLoop

At the moment, the W key comes achingly close to sufficing as a modifier key, but it has two flaws:
1) Although it lets me double or quadruple the length of the last note entered, it skips the all important three factor so useful in creating dotted rhythms.
2. The W key insists on changing the base note length chosen in the menu.

So I've decided to simplify my request by deciding to leave the Q and W key functions alone and to request a new key function; let's assign it to the Z key.

Pressing the Z key 1, 2 or 3 times would increase the length of the last note entered by a factor of 2, 3, or 4 respectively without altering the base note length chosen.

In practice then, say one selects a base note length of an eight. Enter a note. If an eighth is not the desired length, press the Z key to change this to a quarter, a dotted quarter, or a half note. For the kind of (organ) music I compose, this takes care of about 90% of the notes I enter; the rest can be dealt with using the current method. Implementing this should require at most a few dozen lines of code, so how about it developers?

So what makes me so confident that such a key would prove truly useful? Almost 40 years ago I used this paradigm of altering the note length after entering the note in a program I wrote to enter music for my pipe organ. (See Feature Request: Easier Note Entry, Nov. 25, 2013) I miss it.

In reply to by John Coenraads

I like the idea of a new command better than changing existing behavior. Not that I use Q or W much, but your new proposal sounds cleaner anyhow. You might wish to try implementing this type of command yourself (MuseScore is, after all, open source) to see what would actually be involved. I suspect it would be more than a dozen lines, but it's probably not *all* that difficult. The implementation of Q and W would serve as a good guide. 2.0 is kind of frozen feature wise at this point, but perhaps it would be something that could be added for a later release.

I still question whether it would truly be more efficient - when I count keystrokes required, it still comes out roughly equal in every comparison I think of. Sometimes slightly better, other times slightly worse. But about the same on average.

Now, I do understand your point having to hunt around when moving between MIDI and computer keyboard, and that limiting the number of keys you have to hunt to find is a win even if it ends up taking the same number of keystrokes overall. And using MIDI to enter durations doesn't really solve the problem - there is still context switching involved, and quite a number of keys taken up for the different durarions. So the idea of an "increase duration" and "decrease duration" and command makes sense to me.

But I don't see why it should have to act on the *preceding* note. Seems the much more straightforward implementation would simply change the selected duration. Now *that* might be doable in a dozen lines of code. And it's also likely to be more efficient in real world usage. After all, you seldom enter just one sixteenth note, except in the special case of dotted eighth / sixteenth. It could be worth actually counting how many keystrokes would be required in different situations to see whether an "increase duration" and "decrease duration" work on the selected duration on or the most recently added note would be preferable overall. I suspect you are assuming the latter simply because it's what you are used to.

Granted, this solve the problem of dotted rhythms, but a command like ABC's ">" that in one stroke would convert two eighths into dotted eighth / sixteenth seems like an even better solution to that.

BTW, I thought at first you were going to propose a whole new mode of entry where you first select pitch then duration. Finale implements such a mode. I find it slower than the duration-first method for most music, with one glaring exception: drum music. For drums, it is quite common to enter a whole series of notes on the same "pitch", and being able to preselect the pitch then just tap number keys to enter the rhythm is probably about as efficient as it can get.

Anyhow, I do think it interesting and useful to think through and discuss these sort of issues.

In reply to by Marc Sabatella

Thanks again for taking the time to comment on my ideas. As you suggested, I decided to run a test by entering the first line of the Dutch national anthem. There are no dotted notes and any advantage my Increase-duration-key method may have had when it comes to keystrokes, evaporated.

Here are the results: Using number keys: 8 computer key strokes, Using Q and W-keys: 8 strokes, Using a simulated Increase-duration-key: 11 strokes, but mainly due to the 3 strokes needed for the long, last note.

But when it comes to which was faster and which felt more natural, the Increase-duration-key method won out. Here's why. With the other methods, every time I needed to change the note duration I found myself having to stop and think, “What change is needed here?” and “Which computer key do I need to use?”
With the Increase-duration-key method, my right hand was on the MIDI keyboard while a left finger hovered over the Increase-duration-key. I found myself adopting a natural 1,2,3,4 counting rhythm and with each count I either entered a note or extended its duration by tapping the Increase-duration-key. Never having to look at the computer keyboard and stop to think felt like a real advantage. I feel beginning users would be likely to adopt this method because there is no learning curve involved. Anyway, that's my last pitch for this idea.

As far as implementation goes, I realize the the development team has better things to do. I looked at some plugins and I feel that writing a plugin would still be within my outdated programming skills. But it seems to me that the Increase-duration-key idea cannot be implemented by a plugin. But learning the intricacies of C++ and the source code for MuseScore sounds scary. I may take a peek but I feel that I will be overwhelmed. So unless other users feel the need for this function, it will probably go no farther. But thanks for listening Marc. It's been an interesting conversation.

Do you still have an unanswered question? Please log in first to post your question.