excellent. then you will of course be doing something similar to this:
[details=“Click to view contents”] ```
–Wipe all slices
function wipeslices()
local currInst=renoise.song().selected_instrument_index
local currSamp=renoise.song().selected_sample_index
local number=(table.count(renoise.song().instruments[currInst].samples[currSamp].slice_markers))
for i=1,number do renoise.song().instruments[currInst].samples[currSamp]:delete_slice_marker((renoise.song().instruments[currInst].samples[currSamp].slice_markers[1]))
end
end
function slicerough(changer)
local currInst=renoise.song().selected_instrument_index
local currSamp=renoise.song().selected_sample_index
local number=(table.count(renoise.song().instruments[currInst].samples[currSamp].slice_markers))
renoise.song().instruments[currInst].samples[currSamp].loop_mode=2
renoise.song().instruments[currInst].samples[currSamp].new_note_action=1
for i=1,number do
renoise.song().instruments[currInst].samples[currSamp]:delete_slice_marker((renoise.song().instruments[currInst].samples[currSamp].slice_markers[1]))
end
local tw=renoise.song().selected_sample.sample_buffer.number_of_frames/changer
renoise.song().instruments[currInst].samples[currSamp]:insert_slice_marker(1)
for i=1,changer do
renoise.song().instruments[currInst].samples[currSamp]:insert_slice_marker(tw*i)
end
renoise.song().selected_sample.beat_sync_enabled=true
end
renoise.tool():add_midi_mapping{name=“Global:Paketti:Wipe&Create Slices (16) x[Toggle]”, invoke = function() slicerough(16) end}
renoise.tool():add_keybinding {name=“Global:Paketti:Wipe&Create Slices (4)”, invoke = function() slicerough(4) end}
renoise.tool():add_keybinding {name=“Global:Paketti:Wipe&Create Slices (8)”, invoke = function() slicerough(8) end}
renoise.tool():add_keybinding {name=“Global:Paketti:Wipe&Create Slices (16)”, invoke = function() slicerough(16) end}
renoise.tool():add_keybinding {name=“Global:Paketti:Wipe&Create Slices (32)”, invoke = function() slicerough(32) end}
renoise.tool():add_keybinding {name=“Global:Paketti:Wipe&Create Slices (64)”, invoke = function() slicerough(64) end}
renoise.tool():add_menu_entry {name=“Sample Editor:Paketti:Wipe&Create Slices (4)”, invoke = function() slicerough(4) end}
renoise.tool():add_menu_entry {name=“Sample Editor:Paketti:Wipe&Create Slices (8)”, invoke = function() slicerough(8) end}
renoise.tool():add_menu_entry {name=“Sample Editor:Paketti:Wipe&Create Slices (16)”, invoke = function() slicerough(16) end}
renoise.tool():add_menu_entry {name=“Sample Editor:Paketti:Wipe&Create Slices (32)”, invoke = function() slicerough(32) end}
renoise.tool():add_menu_entry {name=“Sample Editor:Paketti:Wipe&Create Slices (64)”, invoke = function() slicerough(64) end}
renoise.tool():add_menu_entry {name=“Sample Editor:Paketti:Wipe Slices”, invoke = function() wipeslices() end}
It's really simple, just slices your stuff to 4, 8, 16, 32 or 64 slices. i was surprised at how well these wipeslices worked with your looper script ![:)](https://files.renoise.com/forum/emoticons/default/smile.gif) (and yes, i know you'll code it way better. just thought to paste anyway since it's already "ready" (for at least my uses) ) ![:)](https://files.renoise.com/forum/emoticons/default/smile.gif)
-- in response to the rest of your replies: the 10 pattern thing was just to state that maybe one would like to be able to create multiple copies of one pattern which has been edited with the script, and then just duplicate that pattern, make the new pattern unique, and then be able to bring the GUI back up again for the next pattern or whichever pattern one has selected..
about Zyklus MPS being feasible with LUA, well, maybe! but it would require so much groundwork (how to record pattern notes and be able to output them back again via nondestructive transposition (i suppose this could be gimmicked out of having a hidden pattern (99, for instance) which records the keys you wish to use, one track would be one "midi clip", so to speak, and then one could somehow transpose the midi clip content nondestructively, but how would the script tell the api to start playing these transposed results realtime? ![:)](https://files.renoise.com/forum/emoticons/default/smile.gif)
render modified pattern, mute and insert new track + note to toggle the newly rendered instrument would probably be quite interesting! ![:)](https://files.renoise.com/forum/emoticons/default/smile.gif)
btw, i was running into those notifier issues without changing track and without changing pattern. i'll try and hack at this further.
[quote="mxb, post:36, topic:34313"]
The operations are non commutative, i.e. the order of operations affects the result. Retrigger duplicates the previous cell, including it's modifiers.
[/quote]
yes.. so if you have a regular cell 1, and the second cell has "mute, trigger", the mute takes precedence. i suppose it would be good for someone who firts reverses + retriggers bits of the loop, and while the jamming continues, he decides to start dropping mutes on top of sounds he doesn't want to hear later on. i guess if one were to click on Trigger twice on the same cell (which has a mute), the recognition of "wait, there's already a trigger there, i'll kick that mute off", would be weird or not something you'd like to think about right now? ![:)](https://files.renoise.com/forum/emoticons/default/smile.gif)