Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

keyklik

Adjustable Linux userland keyboard clicker with automatic and hot keyboard detection. It listens to Linux input events and plays a short click sound for key presses, with separate volume and pitch settings for regular and modifier keys.

Requirements

  • Linux
  • Go 1.26+
  • Access to /dev/input/* keyboard devices, usually via sudo
  • A working desktop audio session

Build

go build

Usage

Start in the background with default settings:

sudo ./keyklik

Stop a background instance:

sudo ./keyklik --stop

Run in the foreground:

sudo ./keyklik --foreground

Set volume and pitch:

sudo ./keyklik --volume 0.20 --pitch 4

Set modifier-key click settings:

sudo ./keyklik --modifier-volume 0.35 --modifier-pitch 2

Use a specific keyboard device:

sudo ./keyklik /dev/input/event3

Options

  • --volume 0.0-1.0: regular key volume, default 0.08
  • --pitch 1-5: regular key pitch, default 1
  • --modifier-volume 0.0-1.0: modifier key volume, default 0.07
  • --modifier-pitch 1-5: modifier key pitch, default 2
  • --foreground: do not detach
  • --pidfile PATH: custom pid file
  • --debug: verbose output
  • --development: append raw key-down scan values to /tmp/keyklik_info
  • --stop: stop a running background instance

Device detection

Without an explicit device path, keyklik scans /dev/input/by-path and listens to entries containing kbd. It rescans while running, so hot-plugged keyboards can be picked up.

Test

go test ./...

About

linux/golang key stroke click effect

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages