April 7, 2019

Switching between Mac and Windows PC made easier with Auto Hotkey

Switching between Mac and PC is such a pain. The hotkeys are so different that you mess up quit a bit. This will in turn reduce your productivity a lot. I have struggled quite a bit to switch between Mac and PC. After a lot of searching, I came across Auto Hotkey which is available for windows. Now I use Mac’s hotkeys in windows. This improved my productivity by a lot. If you often switch between Mac and PC, I hope this will be helpful. The following is the auto hotkey script for Mac like hotkeys in Windows. I have also added Mac like hotkeys for sublime text as well. Here is my script:


![::Send !{Left}
!]::Send !{Right}
!1::Send ^1
!2::Send ^2
!3::Send ^3
!4::Send ^4
!5::Send ^5
!6::Send ^6
!7::Send ^7
!8::Send ^8
!9::Send ^9
!0::Send ^0
!a::Send ^a
!b::Send ^b
!c::Send ^c
!d::Send ^d
!e::Send ^e
!f::Send ^f
!g::Send ^g
!h::Send ^h
!i::Send ^i
!j::Send ^j
!k::Send ^k
!l::Send ^l
!m::Send ^m
!n::Send ^n
!o::Send ^o
!p::Send ^p
!q::Send ^q
!r::Send ^r
!s::Send ^s
!t::Send ^t
!u::Send ^u
!v::Send ^v
!w::Send ^w
!x::Send ^x
!y::Send ^y
!z::Send ^z
!BS::Send ^{BS}
!LButton::Send ^{LButton}
!/::Send ^/

!Space::Send #q

!#Down::Send {F12}

*!f::
Send {Shift Down}{Ctrl Down}f{Shift Up}{Ctrl Up}
return

*!x::
Send {Shift Down}{Ctrl Down}x{Shift Up}{Ctrl Up}
return

*!b::
Send {Shift Down}{Ctrl Down}b{Shift Up}{Ctrl Up}
return

*!c::
Send {Shift Down}{Ctrl Down}c{Shift Up}{Ctrl Up}
return

*!v::
Send {Shift Down}{Ctrl Down}v{Shift Up}{Ctrl Up}
return

*!z::
Send {Shift Down}{Ctrl Down}z{Shift Up}{Ctrl Up}
return

*!y::
Send {Shift Down}{Ctrl Down}y{Shift Up}{Ctrl Up}
return

*!r::
Send {Shift Down}{Ctrl Down}r{Shift Up}{Ctrl Up}
return

*!t::
Send {Shift Down}{Ctrl Down}t{Shift Up}{Ctrl Up}
return

*!d::
Send {Shift Down}{Ctrl Down}d{Shift Up}{Ctrl Up}
return

*!e::
Send {Shift Down}{Ctrl Down}e{Shift Up}{Ctrl Up}
return

*!w::
Send {Shift Down}{Ctrl Down}w{Shift Up}{Ctrl Up}
return

*!p::
Send {Shift Down}{Ctrl Down}p{Shift Up}{Ctrl Up}
return

#!f::
Send ^h
return

!Right::
Send {End}
return

*!Right:: ; This handles Shift-Right
Send {Blind}{LAlt Up}{End}
return

!Left::
Send {Home}
return

*!Left:: ; This handles Shift-Left
Send {Blind}{Alt Up}{Home}
return


!Up::
Send {Ctrl Down}{Home}{Ctrl Up}
return

*!Up::
Send {Ctrl Down}{Shift Down}{Home}{Shift Up}{Ctrl Up}
return

!Down::
Send {Ctrl Down}{End}{Ctrl Up}
return

*!Down::
Send {Ctrl Down}{Shift Down}{End}{Shift Up}{Ctrl Up}
return