[Clavier] ThinkMenu (Gestion des touches multimédia, i3)

Autres projets et contributions
Oxodao
newbie
Messages : 2
Inscription : lun. 04 sept. 2017, 15:48

[Clavier] ThinkMenu (Gestion des touches multimédia, i3)

Message par Oxodao »

Salut,

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"
      	      }
    	]
    }
  ]
}
Je ferai un package sur l'AUR quand je considèrerais le logiciel plainement fonctionnel car pour l'instant il se rapproche plus d'un proof of concept.

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
Done-list (depuis la création du post):
  • Plusieurs commandes sur une touche
  • Possibilité de faire des combinaisons de touches
  • Affichage graphique d'une valeur (Ex: volume comme volnoti)
N'hésitez pas à reporter les bugs ici ou sur le Github et faire vos suggestions.
Répondre