Increment/decrement duration shortcuts


I’m enjoying using Dorico as a long time Sibelius user, and I’m generally adapting pretty quickly to the differences.

In terms of inputting notes, I think there are some great advantages to the way that Dorico is designed, particularly the implementation of the rhythmic grid and the ability to shorten or lengthen notes in rhythmic steps post facto.

I don’t love the default keyboard shortcuts for note entry. It’s important to me to be able to do note entry without looking at the keyboard, and I’ve already invested in keyboards with numeric keypads, which are a great tool for the job. Not a problem, because I can remap a few keys on the keypad, re-learn where the rhythmic values are, and I’m getting up to speed pretty well.

I do find myself looking at the midi controller buttons that are built into my midi keyboard and wondering whether I could do away with the computer keyboard altogether. It’s just a simple cross arrangement like a tv remote, with an up, down, left, right, and a button in the middle. It seems to me that with a couple of extra key commands, it could be pretty fast and simple to do all note entry using just those four buttons.

What I’d like is a keyboard shortcut for ‘increment input note duration’ and ‘decrement input note duration’. So basically a way of cycling through the numbers from 1 to 9 if you were pressing them on the keyboard, perhaps wrapping around if you exceed the boundaries. There are already increase/decrease commands to set the grid resolution, but not (as far as I can tell) the duration of the note that you’re about to input.

If I had that, then I could set the left and right buttons to move the caret through the grid, and the up and down buttons to select my rhythmic values. I think it would be pretty instinctive, having entered a minim, to do two down-presses to get to quavers, rather than have to find the right number on the keyboard (which, of course, you could still do if you wanted to).

A lot of keyboards also have rotary encoders built into them, so if you could add the ability to determine from a midi learn which way the encoder was being turned, then that would be another potential way to quickly select note durations and/or step quickly through the rhythmic grid etc.

Dorico can’t do this — which is unsurprising, since your request is actually pretty esoteric. Those of us who dabble in the esoteric might suggest placing something in your MIDI stream before Dorico — Max or Bidule — to perform those mappings.

I’ve just spent all of two minutes plagiarising someone else’s AutoHotKey code to do exactly what TubaGooba wants to do. This code uses the hash key (which of course I can’t now type!) to loop upwards from 1/128 notes to breves (double-whole notes, I think they’re called).

 key++                         ; this will help cycling through the keys depending on its value
 if key = 2
    Send, 2
 else if key = 3
    Send, 3
 else if key = 4
    Send, 4
 else if key = 5
    Send, 5
 else if key = 6
    Send, 6
 else if key = 7
    Send, 7
 else if key = 8
    Send, 8
else if key = 9
    Send, 9
 else if key = 10
    Send, 1
    key = 1                  ; return to the original state... do this on the last hotkey you would like to send

Some brighter spark than I would need to figure out how to map that to a MIDI input or rotary controller, but the point is that outside of Dorico it’s not only possible but simple to achieve.

Nicely done Pianoleo! AHK is really useful.

Tubagooba, are you aware that you can program midishortcuts natively in Dorico? If your main idea is to stay away from the computer keyboard, that might be worth investigating.

LAE, I hate to urinate on your proverbial parade, but it’s worth pointing out that there’s a bug in v2.0 that makes it impossible to map shortcuts to commands that are two or more levels deep in the Keyboard Shortcuts section. This includes note values. The team have stated that this will be fixed shortly.

Yes, it’s possible to use Bome Midi Translator to convert continuous controller messages into keystrokes and pass them on to Dorico.

Yes, I’m aware that Dorico can respond to midi shortcuts. But it’s limited in its implementation.

In terms of how esoteric it is to want more midi control over Dorico, I get that this sort of tinkering is not for everyone, but I’m not talking about any kind of major overhauls of the software. Dorico can already respond quite happily to certain kinds of midi messages, and it can certainly see all the other kinds, too.

Same with the increment/decrement option for rhythmic values. Not everyone will use it, but it’s a simple enough thing which would fit naturally within the existing design and be potentially useful to lots of people.

People are already going out and buying StreamDeck units and whatnot for the purposes of improving their workflow, and they’re running up against these kinds of limitations and having to resort to AutoHotkey etc. The more open the software can be to this kind of customisation, the more attractive it is to power users. I’d be wary of writing these things of as esoteric, especially bearing in mind that many features of Dorico are massively esoteric to big groups of users while being vital to a small group of others.

The development history has consistently been moving in that direction. I believe scripting will be a big help as well, when that is property implemented.