---
name: "lisgd"
section: "1"
platform: "linux"
package: "lisgd"
version: "0.3.7-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/lisgd"
---

# lisgd(1)

libinput synthetic gesture daemon

## NAME

lisgd - libinput synthetic gesture daemon

## SYNOPSIS

**lisgd** \[**-d** *devicepath*\] \[**-g** *gesturespec*\]... \[**-t** *threshold*\] \[**-m** *timeoutms*\] \[**-o** *orientation*\] \[**-w** *width*\] \[**-h** *height*\] \[**-r** *degreesofleniency*\] \[**-v\]**

## DESCRIPTION

**lisgd** **(or libinput synthetic gesture daemon) lets you bind gestures based on** **libinput touch events to run specific commands to execute. For example,** **dragging left to right with one finger could execute a particular command** **like launching a terminal. Directional L-R, R-L, U-D, and D-U gestures and** **diagnol LD-RU, RD-LU, UR-DL, UL-DR gestures are supported with 1 through** **n fingers and can be bound to the screen's edges and/or made sensitive to** **the distance of the gesture.**

**Unlike other libinput gesture daemons, lisgd uses touch events to** **recognize synthetic swipe gestures rather than using the libinput's** **gesture events. The advantage of this is that the synthetic gestures** **you define via lisgd can be used on touchscreens, which normal libinput** **gestures don't support.**

**This program was built for use on the Pinephone however it could be used in** **general for any device that supports touch events, like laptop touchscreens** **or similar. You may want to adjust the threshold depending on the device** **you're using.**

## OPTIONS

- **-d**, **-d devicepath**

  **Path of the dev filesystem device to monitor (like /dev/input/event1).**

- **-g**, **-g nfingers,gesture,edge,distance,actmode,command**

  **Allows you to bind a gesture wherein nfingers is an integer, gesture is** **one of {LR,RL,DU,UD,DLUR,DRUL,URDL,ULDR}, edge is one of \* (any), N (none), L** **(left), R (right), T (top), B (bottom), TL (top left), TR (top right), BL** **(bottom left), BR (bottom right) and distance is one of \* (any), S (short), M** **(medium), L (large), actmode is R (release) for normal mode and P (pressed) for** **pressed mode (but this field may be omitted entirely for backward** **compatibility), command is the shell command to be executed.**

  **The -g option can be used multiple times to bind multiple gestures.**

- **-m**, **-m timeoutms**

  **Number of milliseconds gestures must be performed within to be registered. After** **the timeoutms value; the gesture won't be registered.**

- **-o**, **-o orientation**

  **Number of 90-degree rotations to translate gestures by. Can be set to 0-3. For** **example using 1; a L-R gesture would become a U-D gesture. Meant to be used** **for screen-rotation.**

- **-r**, **-r degreesofleniency**

  **Number of degrees offset each 45-degree interval may still be recognized within.** **Maximum value is 45. Default value is 15. E.g. U-D is a 180 degree gesture** **but with 15 degrees of leniency will be recognized between 165-195 degrees.**

- **-t**, **-t distancethreshold**

  **Threshold in libinput units (pixels) after which a gesture registers. Defaults** **to 125.**

- **-T**, **-T distancethreshold\_pressed**

  **Threshold in libinput units (pixels) after which a gesture registers when fingers** **are not lifted. Defaults to 60.**

- **-w**, **-w screnwidth**

  **Allows you to specify the width of the screen area to be used for** **edge-based gestures. Should be used in conjunction with -h. If unset,** **and either the DISPLAY or WAYLAND\_DISPLAY env var is set, X/Wayland** **dynamic screen geometry detection will be used instead.**

- **-h**, **-h screenheight**

  **Allows you to specify the height of the screen area to be used for** **edge-based gestures. Should be used in conjunction with -w. If unset,** **and either the DISPLAY or WAYLAND\_DISPLAY env var is set, X/Wayland** **dynamic screen geometry detection will be used instead.**

- **-v**

  **Enables verbose mode which prints debugging messages.**

## SEE ALSO

**lisgd was built as part of Sxmo; an project to create a Pinephone UI out of** **simple and suckless programs. See: http://sr.ht/mil/Sxmo**

## AUTHOR

**lisgd** **is written by Miles Alan \<m@milesalan.com\>**

## CONTRIBUTING

**Bugs and feature dicussions can be sent to ~mil/sxmo-devel@lists.sr.ht**
