Key Binding Question

Ideally I want to setup note editing so that when I type ‘1’ or ‘2’ it will set the octave to that value. There are already established key bindings that I can use, but it just won’t let me use the key I want. I would prefer not to use the number pad ‘1’ but the regular ‘1’ above the qwerty keys. When I try to use the regular ‘1’ it says that it conflicts with the ‘Pattern Input’ which is fine, however, there seems to be no way of altering the Pattern Input key bindings. Realistically I only need to bind one octave’s worth of keys (z,x,c,v,b,n,m,s,d,g,h,i). I don’t need the 2nd set that is one octave above the base octave, and would prefer to use those keys for octave switching and other common tasks.

I am also getting into the scripting API, so perhaps there is a way to get around this by building a tool to manipulate the Pattern Input device and its key bindings directly. If so, I will cross post in the scripting forums to get more detailed help. I am posting here first to see if there is a quick fix that won’t require scripting at the moment.

The number-row on top of the keyboard is generally reserved for the virtual keyboard routine as there are note-values attached to 2, 3, 5, 6,7.
However you should be able to assign octave changes to it, combined with a modifier key (shift, alt, command/control or a combination of those). It does mean you have to drop existing assignments (there are a few modifier-number combinations already existing)
If you really want a plain functional link with only the number-keys, you need to set up a script with a dialog and catch the keys in there and inside the script you can choose which keycombinations to send forward to Renoise control and which to treat yourself (and/or send further to Renoise control).

Yes I am aware I can assign shift operators to assign octave changes to the number keys. My problem is I find the assignment of the two octaves of notes on the keyboard to be redundant, and by assigning octave changes to the number keys, and perhaps some other common actions to the qwerty letters would greatly improve my workflow. I will confess that I am also trying to mimic a bit of Buzz with regard to note entry, and this would greatly improve my productivity with Renoise.

About your solution, it sounds a bit like a hack. Are you suggesting creating a sort of “invisible” dialog object with which to capture the key press events before they reach the main application and then rerouting them to the appropriate function or modifying the key combination then sent to Renoise?

Would this work if I was actively manipulating the pattern editor? Would I need to put the dialog in “focus”? Given your suggested workaround, it appears there is no easy way to customize the keys used for note entry in Renoise.

Thanks for your initial reply.

After trying some things out, it appears the dialogs won’t take in key press events when the dialog is not focused. The intent is to be able to move around in the pattern editor and type notes and at the same time use the number keys as shortcuts in the fewest possible keystrokes.

I will use the number row with a modifier for now until i can think of something else or Renoise allows the note keys to be assignable.

This is a missing feature.

Hopefully this will be changed in the future.
I don’t need all those virtual keyboard keys as well. I really need some of those keys doing other stuff so I can stop doing slow and painful finger gymnastics with the modifier keys…

That is indeed a problem currently.
As pysj also marked down. If there would be a CEO event that keyboard events could be trapped to by simply setting it (just a simple observer function would do), we wouldn’t need the GUI dialogs anylonger.

@vV, @Pysj, is there a way I can officially submit this as a feature request and track it? I don’t want this to get lost in the noise. Should I cross post this to the feature request forum? This enhancement would seriously take me one major step closer to tracker nirvana, whether it’s added to the scripting API or to the available key bindings in the main app.

You can suggest it in the API wishlist here:

Tracking is pretty much not possible. We don’t have bug tracking or feature tracking facility like bugzilla or RedMine where people can follow the status of their desires.
When it gets implemented it gets implemented and also we sometimes hear it at the last moment.

Super necro bump of the dead thread. This seems to be a good time to start thinking about getting this implemented. Either as a toggle command (keyboard note mode/hotkey mode) or just be able to reconfigure the keyboard note hotkeys to whatever you want. This would make my workflow so much nicer I start to salivate just thinking about it. I can’t be the only one, right? :ph34r:

1 Like