Monday, December 14, 2009

Ableton live/Cubase hotkey scripts

Well I've settled On Ableton Live for my main DAW . The work flow is very intuitive. The Browser alone is such a treat to locate clips. The workspace isn't cluttered with a ton of windows like cubase. Live also runs a bit more stable than Cubase, crashes just kill any sort of creative mojo. Cubase has superb midi features and transparent audio warping quality. In the end things are much more productive on Live.

One feature Live didn't have was the custom shortcuts, but that has solved by using AHK, autohotkey. Workflow should definitely increase. Found this from the Ableton forums.

Cubase didn't allow custom keys on certain keys eg ` and tab caps lock etc.
Scripted it to allow the tilde key to toggle between two wrokpaces

The Definitive Live Autohotkeys script!
autohotkey.com

Using the script above as a template,i modified my hotkeys. Here's the current script used for Live 8
GroupAdd, Live, ahk_class Afx:00400000:0:00000000:01900015:00000000
GroupAdd, Live, ahk_class Afx:00400000:0:00000000:01900015:02BB05FD
GroupAdd, Live, ahk_class Afx:00400000:0:00000000:01900015:02FF0351
GroupAdd, Cubase, ahk_class SteinbergWindowClass
GroupAdd, Cubase, ahk_class CubaseFrameWindowClass
curMode := 1
return

#IfWinActive, ahk_group Live
{
F::Send ^b
CapsLock::^!b ; Tab = Open/Close browser
LShift & CapsLock::Send ^!l
Space::+Space
F1::Send ^f
F2::+Space
F3::Space
F4::Space
F5::F9
F6::Á
F7::É
F8::Í
F9::Ó
F10::Ú
F11::á
F12::é

;F1::á
;F2::é
;F3::¬
;F4::ó
;F5::ú
;F6::Á
;F7::É
;F8::Í
;F9::Ó
;F10::Ú

!1::
{
MouseGetPos, xpos, ypos ; get mouse position
MouseClick, left, 21, 118, , 0 ; Live devices browser
MouseMove, 66, 117, 0 ; move to first item in browser
Sleep 200
MouseClick, left, 65, 136, 1 , 0 ; select first item in browser
MouseMove, xpos, ypos, 0 ; return mouse to where it was
Return
}

!2::
{
MouseGetPos, xpos, ypos ; get mouse position
MouseClick, left, 21, 142, , 0 ; plugins browser
MouseMove, 66, 117, 0 ; move to first item in browser
Sleep 200
MouseClick, left, 65, 136, 1 , 0 ; select first item in browser
MouseMove, xpos, ypos, 0 ; return mouse to where it was
Return
}

!3:: ;
{
MouseGetPos, xpos, ypos ; get mouse position
MouseClick, left, 21, 165, , 0 ; browser #1
MouseMove, 66, 117, 0 ; move to first item in browser
Sleep 200
MouseClick, left, 65, 154, 1 , 0 ; select first item in browser
MouseMove, xpos, ypos, 0 ; return mouse to where it was
Return
}

!4::
{
MouseGetPos, xpos, ypos ; get mouse position
MouseClick, left, 21, 189, , 0 ; browser #2
MouseMove, 66, 117, 0 ; move to first item in browser
Sleep 200
MouseClick, left, 65, 154, 1 , 0 ; select first item in browser
MouseMove, xpos, ypos, 0 ; return mouse to where it was
Return
}

!5::
{
MouseGetPos, xpos, ypos ; get mouse position
MouseClick, left, 21, 213 ; browser #3
MouseMove, 66, 117, 0 ; move to first item in browser
Sleep 200
MouseClick, left, 65, 154, 1 , 0 ; select first item in browser
MouseMove, xpos, ypos, 0 ; return mouse to where it was
Return
}

`:: ;METRONOME
{
MouseGetPos, xpos, ypos ; get mouse position
MouseClick, left, 180, 58, , 0 ; browser #2
MouseMove, xpos, ypos, 0 ; return mouse to where it was
Return
}

}


#IfWinActive, ahk_group Cubase
{

myVar = 0

`::
{
myVar +=1
ifequal, myVar, 1
{
send !{numpad1}
}

ifequal, myVar, 2
{
send !{numpad2}
myVar = 0
}
return
}

}




No comments:

Post a Comment