Some extra keybinding options

First, I wanna say, I love Renoise, I’m obsessed.

I have a few complaints, though. Here they are!

It’s not possible to remap the note keys. I’ve seen elsewhere on the forum users talking about wanting a more chromatic layout like some other tracker, I don’t remember which one. I had an idea of mapping q to v as a single octave so I could keep my left hand more stationary while I was using the arrow keys. I know I always like to really tweak programs I work with till I’m satisfied, so I’d like to be able to remap these keys.

I read on another thread some people wanted keybindings more like Vim, so you’d be toggling the keyboard notes to navigate with hjkl. I know that in Ableton you can turn off the computer keyboard and set keys as macros (so you can test out how a bit of a tune sounds with this or that effect on or off.) I think that would be a good option, too.

Next gripe: there’s 2nd options for certain keybindings (for example, there’s alt keys for octave up and down), but not for all. Right now, I want alts for up, down, left and right. I had an idea to set space to right, return to down, caps to left and I wasn’t sure about up. All in my quest to keep my hands on the home position. But I can’t, there’s no alts for up, down, etc.

I was was going to ask if anyone knew if you could add alts in the config files, but after a big of digging, I’m pretty sure you just can’t.

So, that’s my suggestion: let us change the way the notes on the keyboard are laid out and / or add some more alt keybindings. All I care about right now is I find a way to move my hand to the arrow keys less, but I bet other people will have other good uses to put more flexibility to.

keybinds are actually quite easy to create in lua, it’s the one thing i have managed to script myself :wink:

this is a simplified version of a script i wrote to attach a keybind to the instrument volume

function instr_volume_down()
renoise.song().instruments[renoise.song().selected_instrument_index].volume = renoise.song().instruments[renoise.song().selected_instrument_index].volume - 0.03
end

renoise.tool():add_keybinding {name = "Global:Jaketti:Inst Volume Up", invoke = function() instr_volume_up() end}

you could create aternative bindings in the same way, you just need to find the objects for your chosen renoise features in the documentation - https://github.com/renoise/xrnx/commit/9d5e366f4244c1cfb200bdfd63e65052d96f539f

then script a function for that object and add the keybinding code.

this doesn’t help with the hardcoded musical keyboard, but it opens up a lot of possibilities!