All Projects → MacGesture → Macgesture

MacGesture / Macgesture

Licence: gpl-3.0
Global mouse gestures for macOS

Projects that are alternatives of or similar to Macgesture

Any Touch
👋 手势库, 按需2kb~5kb, 兼容PC / 移动端
Stars: ✭ 567 (-9.42%)
Mutual labels:  mouse, gesture
gesto
You can set up drag, pinch events in any browser.
Stars: ✭ 47 (-92.49%)
Mutual labels:  mouse, gesture
creviceapp
Multi purpose utility which supports gestures with mouse and keyboard.
Stars: ✭ 22 (-96.49%)
Mutual labels:  mouse, gesture
Patternlocker
Android 图形解锁/手势解锁 / 手势密码 / 图案密码 / 九宫格密码
Stars: ✭ 409 (-34.66%)
Mutual labels:  gesture
React Native Gesture Handler
Declarative API exposing platform native touch and gesture system to React Native.
Stars: ✭ 4,487 (+616.77%)
Mutual labels:  gesture
React Native Reanimated
React Native's Animated library reimplemented
Stars: ✭ 5,501 (+778.75%)
Mutual labels:  gesture
Navigation Toolbar
Navigation toolbar is a slide-modeled UI navigation controller made by @Ramotion
Stars: ✭ 587 (-6.23%)
Mutual labels:  gesture
Quickviewer
A image/comic viewer application for Windows, Mac and Linux, it can show images very fast
Stars: ✭ 394 (-37.06%)
Mutual labels:  mac-app
Sensitive
Special way to work with gestures in iOS
Stars: ✭ 547 (-12.62%)
Mutual labels:  gesture
Comfortable Swipe
Comfortable 3-finger and 4-finger swipe gesture using Xdotool in native C++
Stars: ✭ 483 (-22.84%)
Mutual labels:  gesture
React Native Swipe Gestures
4-directional swipe gestures for react-native
Stars: ✭ 471 (-24.76%)
Mutual labels:  gesture
Better Gesture
A gesture library use for pc, mobile, vue, and mini programs
Stars: ✭ 419 (-33.07%)
Mutual labels:  gesture
Python Shortcuts
Create Siri Shortcuts with Python
Stars: ✭ 525 (-16.13%)
Mutual labels:  shortcuts
Creepyface
A JavaScript library that makes your face follow the pointer. 🤪🖱️👆
Stars: ✭ 412 (-34.19%)
Mutual labels:  mouse
Fabgl
Display Controller (VGA, SSD1306, ST7789, ILI9341), PS/2 Mouse and Keyboard Controller, Graphics Library, Sound Engine, Game Engine and ANSI/VT Terminal for the ESP32
Stars: ✭ 534 (-14.7%)
Mutual labels:  mouse
Keyboardvisualizer
Audio visualizer and effects engine for RGB keyboards, mice, and accessories using the OpenRGB SDK. Supports Windows, Linux, and MacOS. Issue tracker on GitLab (https://gitlab.com/CalcProgrammer1/KeyboardVisualizer)
Stars: ✭ 458 (-26.84%)
Mutual labels:  mouse
Ucr
Universal Control Remapper [Alpha]
Stars: ✭ 399 (-36.26%)
Mutual labels:  mouse
Imagealpha
Mac GUI for pngquant, pngnq and posterizer
Stars: ✭ 452 (-27.8%)
Mutual labels:  mac-app
Nanogallery2
a modern photo / video gallery and lightbox [JS library]
Stars: ✭ 488 (-22.04%)
Mutual labels:  gesture
Beekeeper Studio
Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.
Stars: ✭ 8,053 (+1186.42%)
Mutual labels:  mac-app

MacGesture

logo

Configurable global mouse gestures for macOS.

You can read this README file in About section in App Preferences.

Installation

Automatic Update

MacGesture will regularly check for updates and prompt you when new version is available. 👍

Manually

Download the latese release bundle from GitHub releases page.

Homebrew

Simply use brew install --cask macgesture. 🙌

Features

  • Global mouse gestures recognition
  • Configurable shortcut invocation by gesture
  • App filtering based on bundle identifiers

Gestures Format

Gesture Acronym
Move Left L
Move Up U
Move Right R
Move Down D
Left Button Z
Wheel Up u
Wheel Dp d

Gestures can contain wildcard matching (? and *).

The first rule matching will take effect.

Z is the acronym of pinyin of which means “left” in English. So to distinguish clicking the left mouse button from dragging your mouse to the left, we chose letter Z.

Wheel directions may vary according to system configuration (Natural scroll direction setting) or some system tweaks (Karabiner's Reverse Vertical Scrolling, for example).

Known Issues

Right click does not work in some Java applications

An imperfect fix: Take WebStorm for example, open Preferences, then KeyMap, set the shortcut of “Show Context Menu” to Button3 Click.

Cannot assign some system-wide shortcuts to rules

Reason: macOS respond to system-wide shortcuts before MacGesture.

Fix: Disable the shortcut first (for example in System Preferences → Keyboard → Shortcuts), then assign the shortcut in MacGesture, and re-enable the shortcut.

Caveats: Some shortcuts still don't work with the fix above. When you are encountering this, here are two possible solutions:

  • Change them to others (e.g. ⌃0, ⌃9).
  • Tick “Invert Fn When Control Is Pressed” option.

Tips

Mouse scroll gesture example

The following table covers probably the most basic scenario of usage:

Gesture Filter Action Note Trigger on every match
D `*safari *chrome` ⌘T New Tab
DR `*safari *chrome` ⌘W Close

By setting these rules, you can empower mouse gestures to open new and close currently focused tabs in Sarari and Chrome Browsers. Simply:

  • press the right button, drag mouse down, and release
    • opens a new tab in the current browser window
  • press the right button, drag mouse down, then to the right, and release
    • this will result in closing the currently focused tab in the active browser window

How neat! 🙌

Now, to quickly cycle between the selected tabs even without releasing the right mouse button, you can set the gesture to be triggered on every match using the checkbox at the end of the Rule line.

So by defining the following rules:

Gesture Filter Action Note Trigger on every match
U*u `*safari *chrome` ⇧⌘[ Prev Tab
U*d `*safari *chrome` ⇧⌘] Next Tab

you can simply:

  • right click, drag mouse upwards, and every u (mouse wheel scroll up) triggers a Prev Tab action
  • right click, drag mouse upwards, and every d (mouse wheel scroll down) triggers a Next Tab action.

Exporting and importing MacGesture preferences

Recommended way

Use “Import” and “Export” buttons in the General Panel.

Geek-ish way

Open the Terminal app, Do this in your old computer:

defaults read com.codefalling.MacGesture backup.plist

And then copy that file to your new computer, then:

defaults import com.codefalling.MacGesture backup.plist

All settings should be successfully brought over. If that's not the case please file an issue.

Excluding an app in a certain rule

You can prepend !, then the app you want to exclude (still wildcard).

For example, the original one:

Gesture Filter Action Note Trigger on every match
U*d * ⇧⌘] Next Tab Checked

Then, in order to exclude Safari, change this to:

Gesture Filter Action Note Trigger on every match
U*d `* !*safari` ⇧⌘] Next Tab

Then you will experience the expected behaviour.

Found a Bug?

Feel free to open an issue on GitHub! 👍

Contributors

License

This project is made under GNU General Public License.

App icon & other icons designed by username0x0a.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].