Keyboard-friendly method of loading samples into an instrument?

Is there a more keyboard friendly way of putting a drum kit (or non-drum set of samples) together into an instrument?

When I want to load a few samples into an instrument using a keyboard workflow, it seems like I have to multiselect all the samples at once and load them. The multiselect method doesn’t work well for because my drum samples aren’t adjacent in the file directory which means I have to multiselect with the mouse. Even worse, drum samples are often split into several directory (kicks, snares, hihats, etc), in which case it seems like the only way to load samples into an instrument one by one is to drag and drop with the mouse into sample keyzones.

What I’d like to do is be able to load a sample into the current instrument without overwriting the current sample, then use the keyboard shortcut for drum kit map (or have it automatically do a drum kit map as I’m loading the samples). Am I missing something here? Is there a way to do this?

The only way I know, faster than that, is to make some shortcuts on your desktop, and drag n drop into Renoise…

I’m interested in hearing, “better answers.”

Cheers

I assume you know Shift+Enter to load sample with options. So that you can either load multiple samples each as a separate instrument or as a multi-sampled instrument. (You can also set which type of loading is the default, so you can use Enter on its own once the option is set.)

But this only gets so far. You then need to change the sample slot within the instrument to not load new samples over the old ones. And it does not create a blank slot at the end of the list and as far as I know there is no keyboard shortcut for this which can be used from the Disk Op either. You either have to use the mouse or set shortcuts for Set Focus to Instrument Settings and Disk Op (or create enough empty slots to start with.)

Then there is the issue you mention with not being able to make broken selections, like you can with the mouse.

A tool could quite easily be scripted though. How about:- On sample load; check for (and make if needed) blank slot at end of sample list. Select empty slot ready to load next sample.

Even if Renoise always gave you an empty slot at the end, like it does with the Instrument List, then you could use the Global shortcut for Select Next Sample In Instrument (Shift + Numpad+).

my tool AutoAddInstrument does exactly this (with instruments, and samples) (you have to set the shortcut to the tool though! look for ‘select next’)

That’s where you’re wrong, see, Renoise does not have OnSampleLoad notifier.

So you’ve made a tool yet it isn’t possible???

Making tools altogether is impossible… but I am a magician. :rolleyes:
(aka: trying to annoy people pretending to not understand is SO 2001, get lost :P)

And you can do.

Observable on Instrument changing. If Focus is in Disk-Op then check if last slot has sample loaded. If it does create new slot.

Or in fact, what would this be then??

renoise.song().selected_instrument.samples_observable

EDIT: Actually I think renoise.song().selected_instrument.sample_mappings_observable might be better, I have a feeing the above might be triggered on edits to the sample itself.

Exactly what you’d want, no??

Ah you mean once you select the last slot it will create a blank one at the end, as long as you use your Tool’s shortcut and not the default navigation ones? Sorry, my misunderstanding.

No. You’d have to catch it before the sample is actually loaded, overwriting the original. The samples_observable would be rubbish for this particular purpose unless of course you would like to make a tool that holds ‘undo’/‘backup’ data of every sample when you select it (at least).

Very good. This is why I try to make my posts clearer by splitting peoples quotes up in pieces. Like this:

Have any ideas as to how to check for that if? ;D

I’m thinking there could be a cool tool for this though, with a combo of

  
renoise.app():prompt_for_multiple_filenames_to_read({file_extensions}, dialog_title)  
  

and

  
renoise.song().instruments[].samples[].sample_buffer:load_from(filename)  
  

Is the regular file open prompt window ‘keyboard friendly’ on all platforms?
So far I’ve discovered that on Linux it does not allow keyboard “broken” selection (normally with Ctrl-Space)
Too bad. But the best possible way to update this is to really have better keyboard shortcuts built-in in Disk Browser: e.g. Tab to switch from folders to files pane, Modifier+Up/Down to switch filetype, Modifier+1…4 for bookmarks, / for search (possible in both panes!), Ctrl+Space to select, Enter to load, NumPadEnter to prehear?

Why? I’m only talking about ensuring there is a free slot at the end of the sample list, you might still want to replace samples! As long as there is a free slot generated on load you never have to change focus or reach for the mouse as there is an existing shortcut for Global change of sample slot. But even if you really did want to you could do with sample copy function…

Yep, your post should have been perfectly clear. My skim-reading at work was retarded. Apologies again.

Not 100% accurately but I believe you can check for Focus in Upper Pane and there is not much likelihood your focus will be in the upper pane while your sample mapping list changes if it’s not through loading sample, so I would consider this good enough. I’m pretty sure Esaruoho has written tools using this method…

EDIT: Actually can’t see Focus location in the API but you can check that Disk Op is in selected in upper pane(renoise.app().window.active_upper_frame = 1) and check that it is in More mode/expanded (renoise.app().window.disk_browser_is_expanded=true) along with checking it’s actually visible as you can hide it and still get positive results otherwise (renoise.app().window.upper_frame_is_visible=true) and then ONLY have it add the extra sample slot if Disk Op is expanded, . I feel this would suffice…

Although this I obviously couldn’t agree with more! Especially Ctrl+Up/Down/Space for broken selections is something I’ve wanted since forever (with PreHear on navigation still working.)

I’ll give that script a try in a bit…

Broken selections would be nice, but it still doesn’t solve the problem if samples in multiple directories. Another route I can imagine that should be feasible is to load samples as one normally would into different instruments (using option up/down to switch instruments within the disk browser focus). After loading the samples, select all the instruments and have a script that does collapse-samples-across-instruments-into-a-single-instrument.

I’ve tested it to be sure, it’s actually exactly as you would do with instruments normally. The script I linked has 4 new shortcuts which are pretty good plain replacements of the normal Instrument up/down and Sample up/down select shortcuts. They can all 4 be found by typing ‘select or’ in the search box, and although the naming still is not ideal (if anybody got ideas holler), after you’ve checked them out for a bit you won’t want the original shortcuts back :D. Please let me know if you got any questions.
Oh and you won’t need to load it into different instruments first!
edit: I’ve updated the tool so that it won’t delete the last instrument when selecting prev instrument if you only have 10 or less instruments loaded… link!

Yes, I just wanted a dedicated key for it too, like an option, doing up-down quick seems so stupid :P
And maybe a shortcut like modifier+Enter to ‘layer’ by default, or an option to always layer and use modifier+Enter to replace… you know, like Winamp had this AWESOME option to ‘enqueue’ by default so nobody at your party is ruining your playlist that you spent months on composing by just browsing and pressing enter like a silly!! priceless.

Thanks. Just installed it and changed the default keys for global sample select to your tool and it works beautifully! Exactly what I wanted a few days ago and know will again soon! Didn’t feel the need to change the Instrument one, as Renoise always creates an empty instrument at the end once you load on in the final slot anyway but for samples I am going to find it very useful, especially for when making drum kits.