Skip to content

g15daemon client used to configure actions for the special keys on Logitech G15/G19/G510(s) keyboards

Notifications You must be signed in to change notification settings

alfredkrohmer/g15keys

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

g15keys

g15keys is a client for g15daemon, aiming to be a g15macro replacement. You may only need to use this tool if you are using a G15/G19/G510(s) keyboard under Linux. It is intended for keyboards with 18 G-keys and 3 M-keys + MR-key, but it should work for keyboards with less or even more special keys.

At the moment, it is configured with a single file $HOME/.g15keys/config like the following:

{
    "M1": {
        "M2": "switch-profile M2",
        "G1": "/usr/bin/xterm",
        "G2": "/usr/bin/xdg-email"
    },
    "M2": {
        "M1": "switch-profile M1",
        "G1": [ "/usr/bin/firefox", "/usr/bin/thunderbird" ],
        "G2": { "pressed": "emit k+133,k+10,k-10,k-133" }
    }
}

For each key, you can specifiy one or more action per key state. Valid states are "pressed" and "released", the latter one is the default.

To start a program or a script, the full path, starting with / needs to be provided.

For emitting fake input: key presses are done with k+<keycode>, key releases with k-<keycode>; mouse buttons can be pressed and released with m+<keycode> / m-<keycode>. The required keycodes can be obtained by running xev. To insert a delay, use s+<time in ms>; this also synchronizes the previous key actions.

For macro recording, assign the action "record" to some key (e.g. MR) and press it. Enter the macro you want to record and press a G-key or M-key to save the macro to this key.

The following is currently implemented:

  • reacting upon key pressed and / or released
  • executing programs or scripts
  • capturing and emitting a series of key presses / releases (macro recording and playback)
  • multiple profiles that can be switched by certain G-keys

Still outstanding:

  • GUI tool for easier configuration
  • automatic profile activation depending on certain conditions
  • key tap repetition

Tested on the following keyboards:

  • G510s
  • test and feedback for other keyboards wanted

Patches and pull requests are welcome.

About

g15daemon client used to configure actions for the special keys on Logitech G15/G19/G510(s) keyboards

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages