Vendredi 23 novembre 2018

Alltray-Xterm 2016-12-31T21.48.20

Clavier

capslock et numlock

Afficher dans le “systray” (barre des tâches) l’état des touches clavier Numlock et Capslock sous forme d’icône

dépendances

  • xterm pour exécuter le script dans une fenêtre facile à gérer
  • alltray pour envoyer la fenêtre dans le systray
  • xorg-xset pour connaître l’état du clavier (capslock et numlock)
  • xseticon (AUR) pour changer son icône à chaque changement d’état.
  • aplay, installé par alsa donc en principe présent

principe

Le script est lancé dans xterm via alltray pour ce loger dans le systray. Il boucle pour vérifier l’état du clavier avec xset. En cas de changement il joue un son avec aplay puis modifie sa propre icône avec xseticon.
Le lancement : idéalement dans un autostart, mais en fait n’importe où.
Voici ma formule

alltray -H -- xterm -fa "BitStream Vera Sans Mono" -fs 10 -cr "rgb:ff/ff/fe" -geometry 80x12-10+40 -hold -e lockkeys > /dev/null 2>&1 &
  • l’option -H de alltray permet à xterm de se minimiser immédiatement dans le systray
  • le séparateur est important pour indiquer à alltray que les options suivantes correspondent au programme à lancer (voir man alltray).
  • les options -fa “BitStream Vera Sans Mono” -fs 10 établissent la police et sa taille
  • l’option -fs 10 -cr “rgb:ff/ff/fe” rend le curseur invisible
  • l’option -geometry 80x12-10+40 demande à xterm de s’ouvrir dans une fenêtre de 80 caractères x 12 lignes à 40 pixels du haut et à 10 pixels de le droite de l’écran.
  • l’option -hold demande à xterm de ne pas fermer sa fenêtre sitôt la fin du script. Utile en cas de plantage et / ou de déboggage.
  • -e lockkeys c’est le script lui-même qui doit être dans votre PATH (/usr/local/bin me paraît bien).
  • > /dev/null 2>&1 & permet de ne pas polluer un terminal avec des messages. À supprimer en cas de débogage