tdussmann / fusuma

Multitouch gestures with libinput dirver on X11, Linux

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fusuma Gem Version Build Status

Fusuma is multitouch gesture recognizer. This gem makes your linux PC able to recognize swipes or pinchs and assign shortcuts to them.

https://gyazo.com/757fef526310b9d68f68e80eb1e4540f

襖(Fusuma) means sliding door used to partition off rooms in a Japanese house.

Installation

IMPORTANT: You must be a member of the input group to have permission to read the touchpad device:

$ sudo gpasswd -a $USER input

You must log out and back in or restart to assign this group.

You need libinput release 1.0 or later. Install libinput-tools:

$ sudo apt-get install libinput-tools

For sending shortcuts:

$ sudo apt-get install xdotool

Install Fusuma:

$ gem install fusuma

Touchpad not working in GNOME

Ensure the touchpad events are being sent to the GNOME desktop by running the following command:

$ gsettings set org.gnome.desktop.peripherals.touchpad send-events enabled

Usage

$ fusuma

Update

$ gem update fusuma

Customize

You can customize the settings for gestures to put and edit ~/.config/fusuma/config.yml.
NOTE: You will need to create the ~/.config/fusuma directory if it doesn't exist yet.

Sample (default keymap for Elementary OS)

swipe:
  3: 
    left: 
      shortcut: 'alt+Left'
    right: 
      shortcut: 'alt+Right'
    up: 
      shortcut: 'ctrl+t'
    down: 
      shortcut: 'ctrl+w'
  4:
    left: 
      shortcut: 'super+Left'
    right: 
      shortcut: 'super+Right'
    up: 
      shortcut: 'super+a'
    down: 
      shortcut: 'super+s'
pinch:
  in:
    shortcut: 'ctrl+plus'
  out:
     shortcut: 'ctrl+minus'

threshold:
  swipe: 1
  pinch: 1

interval:
  swipe: 1
  pinch: 1

if shortcut: is blank, the swipe/pinch doesn't trigger a keyevent.

threshold: is sensitivity to swipe/pinch. Default value is 1. If the swipe's threshold is 0.5, shorten swipe-length by half.

interval: is delay between swipes/pinches. Default value is 1. If the swipe's interval is 0.5, shorten swipe-interval by half to recognize a next swipe.

Options

  • -v, --verbose : Shows details about the results of running fusuma
  • -c, --config=path/to/file : Use an alternative config file

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/iberianpig/fusuma. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.

About

Multitouch gestures with libinput dirver on X11, Linux

License:MIT License


Languages

Language:Ruby 99.4%Language:Shell 0.6%