Customize global hotkeys in macOS. Supports usual hotkey and double tap hotkey like Alfred.app.
Also supports sandbox application.
Upgrading from Magnet v2.x to v3.x SeeUpgrading from Magnet v2.x
Add⌘ + Control + B
hotkey.
if let keyCombo= KeyCombo ( key: . b, cocoaModifiers: [ . command, . control] ] ) { let hotKey = HotKey ( identifier: " CommandControlB " , keyCombo: keyCombo, target: self , action: #selector( ) ) hotKey. register ( ) // or HotKeyCenter.shared.register(with: hotKey)} Or you can use closures.
if let keyCombo= KeyCombo ( key: . b, cocoaModifiers: [ . command, . control] ) { let hotKey = HotKey ( identifier: " CommandControlB " , keyCombo: keyCombo) { hotKeyin // Called when ⌘ + Control + B is pressed} hotKey. register ( ) } Register Double tap hotkey Add⌘ double tap
hotkey.
if let keyCombo= KeyCombo ( doubledCocoaModifiers: . command) { let hotKey = HotKey ( identifier: " CommandDoubleTap " , keyCombo: keyCombo, target: self , action: #selector( ) ) hotKey. register ( ) // or HotKeyCenter.shared.register(with: hotKey)} AddControl double tap
hotkey.
if let keyCombo= KeyCombo ( doubledCarbonModifiers: controlKey) { let hotKey = HotKey ( identifier: " ControlDoubleTap " , keyCombo: keyCombo, target: self , action: #selector( ) ) hotKey. register ( ) // or HotKeyCenter.shared.register(with: hotKey)} Double tap hotkey only support following modifiers.
Command KeyNSEventModifierFlags.command
orcmdKey
Shift KeyNSEventModifierFlags.shift
orshiftKey
Option KeyNSEventModifierFlags.option
oroptionKey
Control KeyNSEventModifierFlags.control
orcontrolKey
HotKeyCenter . shared. unregisterAll ( ) or
HotKeyCenter . shared. unregisterHotKey ( with: " identifier " ) or
let hotKey = HotKey ( identifier: " identifier " , keyCombo: KeyCombo, target: self , action: #selector( ) ) hotKey. unregister ( ) // or HotKeyCenter.shared.unregister(with: hotKey)Move to the project root directory Install dependency library withcarthage
orgit submodule
carthage checkout --use-submodules
orgit submodule update --init --recursive
OpenMagnet.xcworkspace
on Xcode. build.