The project is in a healthy, maintained state
fusuma-plugin-thumbsense is Fusuma plugin for thumbsense.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies
 Project Readme

Fusuma::Plugin::Thumbsense Gem Version Build Status

Remapper from key to click only while tapping the touchpad.
Implemented as Fusuma Plugin.

THIS PLUGIN IS EXPERIMENTAL.

What is ThumbSense?

ThumbSense is a tool that lets you control a laptop's touchpad using the keyboard. It assigns certain keyboard keys as mouse buttons and switches between acting as mouse buttons or normal keyboard keys based on whether the user's thumb is touching the touchpad. ThumbSense aims to make it easier to use the touchpad without moving your hand away from the keyboard.

Installation

Requirements

Install and set up fusuma-plugin-thumbsense

Run the following code in your terminal.

Install ruby-dev and build-essential for installing native extension

$ sudo apt install ruby-dev build-essential

Install libevdev-dev for building fusuma-plugin-remap

$ sudo apt install libevdev-dev

set up udev rules for creating a virtual input device (fusuma-plugin-remap)

$ echo 'KERNEL=="uinput", MODE="0660", GROUP="input", OPTIONS+="static_node=uinput"' | sudo tee /etc/udev/rules.d/60-udev-fusuma-remap.rules
$ sudo udevadm control --reload-rules && sudo udevadm trigger

Install fusuma-plugin-thumbsense

$ sudo gem install fusuma-plugin-thumbsense

Properties

Thumbsense context

First, add the thumbsense context to ~/.config/fusuma/config.yml. The context is separated by --- and specified by context: thumbsense. Fusuma will switch to the thumbsense context while tapping the touchpad.

Remap key to mouse button

You can remap keys to mouse buttons while tapping the touchpad. The remap property is specified in the thumbsense context.

Available mouse buttons are:

  • BTN_LEFT
  • BTN_MIDDLE
  • BTN_RIGHT
  • BTN_SIDE
  • BTN_EXTRA
  • BTN_FORWARD
  • BTN_BACK
  • BTN_TASK
  • BTN_0
  • BTN_1
  • ...
  • BTN_9

Example

Set the following code in ~/.config/fusuma/config.yml.

# add thumbsense context

---
context: thumbsense

remap:
  F: BTN_LEFT
  E: BTN_MIDDLE
  D: BTN_RIGHT
  SPACE: BTN_LEFT
  J: BTN_LEFT
  K: BTN_RIGHT

TODO

  • thumbsense

    • change layer of remap while tapping
    • make it possible to execute executor like command: sendkey:
  • remap

    • remap to single key like remap: { J: BTN_LEFT }
    • send BTN_LEFT/BTN_MIDDLE/BTN_RIGHT click remap: { I: BTN_MIDDLE }
    • remap multiple keys like remap: { H: LEFTCTRL+TAB }
    • remap POINTER_MOTION to POINTER_SCROLL_FINGER remap: { S: POINTER_SCROLL_FINGER }

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/iberianpig/fusuma-plugin-thumbsense. 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.

Code of Conduct

Everyone interacting in the Fusuma::Plugin::Thumbsense project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.