/linearmouse

LinearMouse is a free and open-source utility for macOS which aims to improve the experience and functionality of third-party mice.

Primary LanguageSwiftMIT LicenseMIT

GitHub release (latest SemVer) Downloads MIT License Crowdin

LinearMouse is a free and open-source utility for macOS which aims to improve the experience and functionality of third-party mice.

Screenshots

General General Cursor Cursor Modifier keys Modifier keys

Getting started

Installation

Homebrew

$ brew install --cask linearmouse --no-quarantine

Manually

  1. Download LinearMouse.
  2. Open LinearMouse.dmg, drag & drop LinearMouse to Applications.
  3. Open Applications. Right click LinearMouse and choose Open (to make Gatekeeper happy).

Accessibility permission

LinearMouse requires accessibility features to work properly. You will see an alert when LinearMouse first launches.

  1. Click "Open System Preferences".
  2. Click the lock to make changes.
  3. Find LinearMouse in the list and toggle it on.

Accessibility permission Accessibility permission

Features

  • Reverse scrolling: LinearMouse will reverse the scrolling direction for mice but keep the direction for trackpads. This is useful if you use both mice and trackpads.

  • Linear scrolling: LinearMouse will disable the scrolling acceleration and provide a linear and discrete scrolling experience, just like in Windows. If your mouse doesn't have a smooth wheel, you'll like this feature.

  • Universal back & forward: Side buttons on mice do not always work well in macOS, for example, in Safari and Xcode. LinearMouse translates side button clicks to swipe gestures so that most apps can recognize back & forward actions correctly.

  • Cursor acceleration & sensitivity: macOS only provides the ability to configure cursor acceleration which is called tracking speed in System Preferences. Regardless of how you adjust the tracking speed, the speed curve of cursor movement may still appear strange. LinearMouse allows you to customize both cursor acceleration and sensitivity, or even completely disable cursor acceleration and sensitivity.

  • Modifier keys functionality: You may empower your modifier keys with additional functionality, such as modifying the scrolling speed or altering the scrolling oriention.

Build

See BUILD.md.

Contributing

Please read the contribution guide before making a pull request.

Thank you to all the people who already contributed to LinearMouse!

Credits

Buy me a coffee