Skip to content

OmarMcAdam/hotkeymama

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hotkey Mama

Personal macOS key/mouse remapper + simple macro runner.

Highlights:

  • Menu bar utility with rules window
  • Trigger recording for keys, mouse clicks, and Fn
  • Rule naming and instant list updates
  • Remap action picker with searchable key list (including F13-F19)
  • Macro step editor with key press, click, delay, and delay-with-jitter steps
  • Optional load-at-login toggle

This repo includes a native Xcode project (HotkeyMama.xcodeproj).

Build / Run

  1. Install Xcode from the App Store.
  2. Open HotkeyMama.xcodeproj in Xcode.
  3. Build and Run.

Debug builds are output to a stable path: .build/Products/Debug/HotkeyMama.app.

Note: keep the app unsandboxed (remove the "App Sandbox" capability) or the event tap will fail.

When it launches, it runs as a menu bar app (no Dock icon). Use the menu bar icon -> "Open Rules".

Maintainer note

If you change project structure and want to regenerate project settings from spec, project.yml is still available:

xcodegen generate

Permissions

Hotkey Mama uses a global event tap to intercept and re-post input.

  • System Settings -> Privacy & Security -> Accessibility -> enable HotkeyMama

If a rule doesn't seem to work, permissions are almost always the reason.

Accessibility says enabled, but the app still shows "Needs Accessibility"

macOS ties Accessibility permission to the app's code signature + path.

Fix:

  • Grant Accessibility to the stable debug app path: .build/Products/Debug/HotkeyMama.app.
  • If needed, reset and re-grant:
    • tccutil reset Accessibility com.hotkeymama.HotkeyMama

Input Monitoring may or may not show this app depending on macOS behavior; for this CGEventTap implementation, Accessibility is the required permission.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages