Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Adapted by phoi from a script by mpl "Show all active track envelopes, hide unactive"
- -- NAME
- local scriptName = ({reaper. get_action_context()})[2]:match("([^/\\]+)%.lua$") -- generate default scriptName from file
- --FUNCTIONS FOR DEBUG
- function msg(msg)
- reaper.ShowConsoleMsg(tostring(msg) .. "\n")
- end
- function main()
- reaper.Undo_BeginBlock()
- for tr = 1, reaper.CountTracks(0) do
- local track = reaper.GetTrack(0,tr-1)
- if track then
- for i = 1, reaper.CountTrackEnvelopes( track ) do
- local hide = false
- local env = reaper.GetTrackEnvelope( track, i-1 )
- local br_env = reaper.BR_EnvAlloc( env, false )
- local active, visible, armed, inLane, laneHeight, defaultShape, _, _, _, _, faderScaling = reaper.BR_EnvGetProperties( br_env )
- if not active then
- hide = true
- elseif reaper.CountEnvelopePoints(env) < 2 and reaper.CountAutomationItems(env) == 0 then
- hide = true
- end
- if hide then visible = false end
- reaper.BR_EnvSetProperties( br_env, active, visible, armed, inLane, laneHeight, defaultShape, faderScaling )
- reaper.BR_EnvFree( br_env, true )
- end
- end
- end
- reaper.Undo_EndBlock(scriptName, -1)
- end
- reaper.PreventUIRefresh(1)
- main()
- reaper.PreventUIRefresh(-1)
- reaper.UpdateArrange()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement