Reason Auto Save Workaround/Solved (Mac-only)
Posted: 14 Dec 2018
Hello all, yet another avid reason user here frustrated for the last time... I spent a couple hours on a song I really got into and...boom...reason crashed and lost all progress....SOOOOO i decided to build my own service/app that will press save every 5 min or whatever interval you want and is automated to start whenever reasons is launched. It consist of the service...which is a keystroke command on repeat and delayed 5min...And a workflow app built on automator that opens the app and starts the service, though key commands as well...its been successful up to this point and i want to share with it with the world but this is my first post on here and don't want to get booted for taking initiative and coming up with a solution that imo should have been solved ages ago...sooooo I'll post the code and I guess you guys can go in and make the app/service on your own... It should take less than 5 mins to build and install right but afterwards you shouldn't have to worry about Command +S any more... and Ps it took me about 5 days to look up how all of this works and the results are there..however I don't consider myself a developer so if anyone who is wants to add input please do...would like to see this grow to the fullest potential... somewhere along the lines of Protools and how it handles its backup files...but that in itself is another beast to be slain...another day...
So First off the Loop service...
In Automator create a new service and add a run applescript action.. (search for "Run" in the actions tab)...also make sure "no input" and "any application" are both selected...I tried doing it for just reason but didn't work out as I planned. Once you're done copy and paste the code below where u see (* Your script goes here *). The first tell and the last end tell are the instructions...On run, return input, and end run are already typed in
on run {input, parameters}
tell application "System Events"
repeat
if exists process "Reason" then
tell application "Reason"
activate
end tell
tell application "System Events"
keystroke "s" using {command down}
end tell
delay 300
else
exit repeat
end if
end repeat
end tell
return input
end run
Once that's done name it and save it.
Now go to the services tab (usually in the apps drop down menu)...and go to services preferences. Here if you scroll down to general you should see your service. Click next to it and create a unique shortcut that will not interfere with any other shortcuts in reason...oh and side note shortcuts for services can be a little buggy but I found out for my version of Osx (10.10) Yosemite I have to include "command" within the shortcut or it wont work properly. So in my case I chose "Command+control+shift+s.... Now we have the service that's gonna press command + s for you until you close the program..
Now we need to create an app that will open reason and hit the shortcut to start to the service...
Open automator and create an application click finder (in the actions tab) and add a "launch application" action... then search for run...and add run applescript right after that...I also moved reason out of the folder directly into the applications folder to make things easier... Select Reason for the "launch application" part and then paste this code inside of the "Run applescript" part.
on run {input, parameters}
delay 10
tell application "System Events"
keystroke "s" using {command down, control down, shift down}
end tell
return input
end run
Ps the delay in the service script is set to 300 seconds which equals 5 min...set that to whatever u like in seconds...and the second delay is to give reason time to startup ....That can change depending on how fast or slow your startup is...
So the app that was built last will replace your reason shortcut in the dock...I also copied and pasted the icon in "get info" to make it more legit lol but up to you how far you want to take it...So now when you click the new Reason app (the automator app) it should open up Reason and hit the key command for the auto save service to open ... A save prompt will popup to save it for the first time (if you want... add a delay in the beginning below on run to give yourself time to get rolling but im use Pro tools quite often so it doesn't bother me) ...So the only drawback is you have to save the project right off the bat instead of waiting until you're halfway thru or until it crashes...lol
I hope this reaches as many users as possible and i also hope the reason folks dont come looking for me...lol
and im also taking suggestions for an improvised version... hope this helps
Cheers
ps Im thinking about making a youtube video and posting the files there
So First off the Loop service...
In Automator create a new service and add a run applescript action.. (search for "Run" in the actions tab)...also make sure "no input" and "any application" are both selected...I tried doing it for just reason but didn't work out as I planned. Once you're done copy and paste the code below where u see (* Your script goes here *). The first tell and the last end tell are the instructions...On run, return input, and end run are already typed in
on run {input, parameters}
tell application "System Events"
repeat
if exists process "Reason" then
tell application "Reason"
activate
end tell
tell application "System Events"
keystroke "s" using {command down}
end tell
delay 300
else
exit repeat
end if
end repeat
end tell
return input
end run
Once that's done name it and save it.
Now go to the services tab (usually in the apps drop down menu)...and go to services preferences. Here if you scroll down to general you should see your service. Click next to it and create a unique shortcut that will not interfere with any other shortcuts in reason...oh and side note shortcuts for services can be a little buggy but I found out for my version of Osx (10.10) Yosemite I have to include "command" within the shortcut or it wont work properly. So in my case I chose "Command+control+shift+s.... Now we have the service that's gonna press command + s for you until you close the program..
Now we need to create an app that will open reason and hit the shortcut to start to the service...
Open automator and create an application click finder (in the actions tab) and add a "launch application" action... then search for run...and add run applescript right after that...I also moved reason out of the folder directly into the applications folder to make things easier... Select Reason for the "launch application" part and then paste this code inside of the "Run applescript" part.
on run {input, parameters}
delay 10
tell application "System Events"
keystroke "s" using {command down, control down, shift down}
end tell
return input
end run
Ps the delay in the service script is set to 300 seconds which equals 5 min...set that to whatever u like in seconds...and the second delay is to give reason time to startup ....That can change depending on how fast or slow your startup is...
So the app that was built last will replace your reason shortcut in the dock...I also copied and pasted the icon in "get info" to make it more legit lol but up to you how far you want to take it...So now when you click the new Reason app (the automator app) it should open up Reason and hit the key command for the auto save service to open ... A save prompt will popup to save it for the first time (if you want... add a delay in the beginning below on run to give yourself time to get rolling but im use Pro tools quite often so it doesn't bother me) ...So the only drawback is you have to save the project right off the bat instead of waiting until you're halfway thru or until it crashes...lol
I hope this reaches as many users as possible and i also hope the reason folks dont come looking for me...lol
and im also taking suggestions for an improvised version... hope this helps
Cheers
ps Im thinking about making a youtube video and posting the files there