Global Next Track / Prev Track commands

I’m almost certain this is doable via Lua scripting, but I haven’t gotten into that yet. (a little scared of how much music that rabbit hole will prevent me from making).

And they seem like such obviously useful commands… We already have Global Next/Prev Pattern, Instrument, Sample, View, etc.

Like say you’re in the Track DSP pane, Automation pane, Instrument Editor, etc., and you want to select another track with the keyboard. AFAIK, you have to focus the Pattern Editor, Pattern Matrix, or Mixer, navigate to the track you want, then go back to where you were before. When you could easily cycle through the tracks from right where you are if there were global commands.

Again, I’m almost positive this is scriptable, but it seems factory-default-worthy to me.

Thanks!

Edit: Then again, when there’s a glaring omission like this, there’s usually a good reason why it’s not there. If so, I’d love to hear it.

I went ahead and learned the basics of Tool making.

Here’s the crux of the solution to my request:

renoise.tool():add_keybinding {
 name = "Global:Transport:Select Previous Track",
 invoke = function() renoise.song():select_previous_track() end
}

renoise.tool():add_keybinding {
 name = "Global:Transport:Select Next Track",
 invoke = function() renoise.song():select_next_track() end
}

Easy peasy. Consider this topic closed, heh.

Edit: Then again, when there’s a glaring omission like this, there’s usually a good reason why it’s not there. If so, I’d love to hear it.

Nope, these shortcuts do exist. They’re called “Jump to Next/Previous Track” (unassigned by default)

But congratulations on making a tool, regardless :wink:

Ah, but AFAIK, the “Jump to Next/Prev Track” commands are local to the Pattern Editor.

They couldn’t be called from like the Track DSP pane, or the Sample Editor pane, or something.

I wanted global, so I could change the track from anywhere. (Like you can with the pattern, instrument, sample, view, etc… The missing global track navigation commands seem odd to me.)

This is useful for:

  • Auditioning instruments through different tracks, right from the Instrument Editor (or anywhere)
  • Directly jumping between Track DSP panes.
  • Directly jumping between Track Automation panes.
  • Other Stuff

Ah, yes, I can see them being useful as a global shortcuts.

But, I wonder where to put them ? Of course, they could continue being unassigned by default - problem cancelled :slight_smile:

Personally, I have assigned the jump shortcuts to alt + period/comma - nice, since they are relatively easy to access and not assigned by any other global shortcut.

Yeah, it’s not obvious where to put them.

I put them in “Global:Transport” cuz that’s where “Go to Next/Prev Pattern in Sequence” live, and I thought of the two sets as sort of horizontal and vertical counterparts, respectively.

Thin reasoning, but had to put them somewhere.

Maybe gather up all Global navigation commands and put them in a new “Global:Navigation” category.

If could include “Next / Previous”:

  • Pattern
  • Track
  • Instrument
  • Sample
  • LoopBlock
  • View
  • Window

These are all currently Global navigation commands scattered about different Global submenus.

Oh, you mean “what default key bindings”.

No idea. I’ve rebound everything. (As in: Every. Single. Shortcut. Heh.)

Slightly OT, but Renoise could benefit from something like Emacs’ “prefix keys”.

Prefix keys are essentially special keys that activate nested keymaps.

For example, if Control + Z was a Prefix Key:

  • “Control + Z” then “Left”: “Previous Track”
  • “Control + Z” then “Right”: “Next Track”
  • “Control + Z” then “Up”: “Previous Pattern”
  • “Control + Z” then “Down”: “Next Pattern”

It enables infinite shortcuts (“Key sequences”), through nested keymaps.

Slated for inclusion in Renoise v6.0, ha