J'ai eu il y a quelque temps mon Thinkpad x230, comme beaucoup j'en suis rapidement devenu fan.
J'ai remarqué la touche ThinkVantage qui, si elle est pas mal inutile sous windows, elle l'est encore plus sous Linux. J'ai donc pensé qu'elle pourrait être utilisé pour changer le fonctionnement des touches multimédia.
C'est ainsi que je me suis attelé au développement de ThinkMenu. C'est particulièrement efficace sous les environnement en Tiling tel que i3 puisque les touches ne sont par défaut pas fonctionnelles.
On peut ainsi définir plusieurs modes et relier à chaque touches une action (Commande ou simulation d'une autre touche).
Ne voulant pas me limiter aux possesseurs de Thinkpads, le logiciel est totalement personnalisable et marchera donc avec n'importe quel clavier, pour des touches qui ne sont pas forcéments des touches multimédias mais par simplements des touches que vous n'utilisez pas.
Voici une petite vidéo de présentation:
https://www.youtube.com/watch?v=EcDd0xjquIA
Pour ce qui est du téléchargement, les binaires sont disponibles sur mon site
https://oxodao.fr/
Le code source est disponible sous licence GPL 2.0 sur mon github
https://github.com/oxodao/thinkmenu
Pour ce qui est du fichier de configuration, voici un exemple:
Code : Tout sélectionner
{
"ui": "gtk",
"timeout": 2,
"corner": 0,
"positionX": 30,
"positionY": 30,
"modebutton": [
"0xFF41",
"0xFFEB"
],
"mode": [
{
"name": "Volume",
"keys": [
{
"button": "0xFF11",
"action": "cmd",
"params": "pactl -- set-sink-volume 0 -5%",
"_comment": "Can use comment here for example"
},
{
"button": "0xFF13",
"action": "cmd",
"params": "pactl -- set-sink-volume 0 +5%"
}
]
},
{
"name": "Logiciels",
"keys": [
{
"button": "0xFF11",
"action": "cmd",
"params": "firefox"
},
{
"button": "0xFF13",
"action": "cmd",
"params": "thunderbird"
}
]
},
{
"name": "Scroll",
"keys": [
{
"button": "0xFF11",
"action": "key",
"params": "34",
"_comment": "PageUp"
},
{
"button": "0xFF13",
"action": "key",
"params": "33",
"_comment": "PageDown"
}
]
}
]
}
Todo-list:
- Faire un vrai menu navigable
- Rendre fonctionnelle la version JavaFX
- Initialiser correctement GTK (?)
- Notifications centrées sur l'écran (Horizontalement et / ou verticalement)
- Simplification pour trouver le code de chaque touche - En cours
- Simulation de la souris
- Plusieurs commandes sur une touche
- Possibilité de faire des combinaisons de touches
- Affichage graphique d'une valeur (Ex: volume comme volnoti)