desktop-windows/macos.ahk

86 lines
2.1 KiB
AutoHotkey

;;;
;;; macos.ahk
;;;
#InstallKeybdHook
#SingleInstance force
;; Win is Ctrl (assuming mac alu keyboard)
LWin:: Ctrl
; CapsLock is Delete
CapsLock:: Send {Delete}
; DoubleShift is CapsLock
RShift & LShift:: SetCapsLockState, % (State:=!State) ? "On" : "Off" ;
LShift & RShift:: SetCapsLockState, % (State:=!State) ? "On" : "Off" ;
; disable menu focus
; ~LAlt Up:: return
; ~+LAlt Up:: return
; ~^LAlt Up:: return
; ~^+LAlt Up:: return
; Context Switching
; <#Tab:: AltTab ; Sys.AppSwitcher
; <!Tab:: return
; #Tab:: Send ^{Tab} ; Tabs.Next
; #+Tab:: Send ^+{Tab} ; Tabs.Prev
!`:: ; App.NextWindow
WinGetClass, ActiveClass, A
WinSet, Bottom,, A
WinActivate, ahk_class %ActiveClass%
return
+!`:: ; App.PrevWindow
WinGetClass, ActiveClass, A
WinActivateBottom, ahk_class %ActiveClass%
return
; Text Navigation
!Up:: Send {PgUp} ; Keys.PgUp
!Down:: Send {PgDn} ; Keys.PgDown
!Left:: Send ^{Left} ; JumpTo.PrevWord
!Right:: Send ^{Right} ; JumpTo.NextWord
#Up:: Send ^{Home} ; JumpTo.TextStart
#Down:: Send ^{End} ; JumpTo.TextEnd
#Left:: Send {Home} ; JumpTo.LineStart
#Right:: Send {End} ; JumpTo.LineEnd
; Text Editing
!Backspace:: Send ^{Backspace} ; Text.DeletePrevWord
!Delete:: Send ^{Delete} ; Text.DeleteNextWord
!+E:: SendInput {U+20AC} ; Symbols.Euro
!+T:: SendInput {U+2122} ; Symbols.TM
!+R:: SendInput {U+24C7} ; Symbols.RegMark
!=:: SendInput {U+00B1} ; Symbols.PlusMinus
!-:: SendInput {U+2013} ; Symbols.EnDash
!+-:: SendInput {U+2014} ; Symbols.EmDash
; !`:: SendInput {U+0300} ; Symbols.GraveAccent.Combining
; !+`:: SendInput {U+0301} ; Symbols.AcuteAccent.Combining
!\:: Send {/} ; Alt+{the key between Enter and Backspace}
; ![:: Send {} ;
; !]:: Send {} ;
; !+[:: Send {} ;
; !+]:: Send {} ;
; Apps
; ^Q:: Send !{F4} ; App.Close
^H:: WinMinimize, A ; App.Hide
!H:: WinMinimize, A ; App.Hide
!F7:: Send {Media_Next} ; Payback.Next
!F8:: Send {Media_Play_Pause} ; Payback.Play
!F9:: Send {Media_Prev} ; Payback.Prev
!F10:: Send {Volume_Mute} ; Volume.Mute
!F11:: Send {Volume_Down} ; Volume.Down
!F12:: Send {Volume_Up} ; Volume.Up
; File -> Save As
#IfWinActive ahk_class #32770
^S:: Send !{S} ; Cmd+S
^D:: Send !{N} ; Cmd+D
#IfWinActive