[openbox] indicateur caps et num lock (contourné)

Xorg, Compiz, KDE / Gnome / Xfce / Fluxbox / e17 / fvwm ... GDM/KDM/XDM...
Répondre
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

[openbox] indicateur caps et num lock (contourné)

Message par vintherine »

Les PC sans leds indicateurs d'état de clavier ça devient à la mode :( . Dans les environnements de bureau (kde, gnome...) il y a tout ce qu'il faut comme applet, par exemple ici.

Mais je tourne juste avec openbox, donc ces applets ne fonctionnent pas sur mon PC. Je cherche désespérément une petite application qui tourne dans le systray mais sans succès.

Ce qui serait parfait serait un petit beep au changement d'état. Tout ce j'ai vu pour l'instant c'est un conky en lua. Une autre idée ?

Merci d'avance
Dernière modification par vintherine le jeu. 20 nov. 2014, 11:31, modifié 1 fois.
Envoyé depuis mon saxophone !
Blog - Photos
Tucnacek
Chu Ko Nu
Messages : 332
Inscription : sam. 28 sept. 2013, 22:40

Re: [openbox] indicateur caps et num lock

Message par Tucnacek »

Il y a mate-applet-lockkeys mais c'est du MATE et donc probablement un peu lourd pour ce que cela doit faire. J'imagine qu'il est cependant possible de l'insérer dans un Openbox sans trop de souci.
Sinon, jete peut-être un œil du côté de disk-indicator, dispo' dans AUR.
Je ne sais pas si cela correspond exactement à tes besoins mais c'est peut-être un point de départ.
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock

Message par vintherine »

Merci,

disk-indicator ce n'est pas du tout son registre : il utilise les leds de caps lock et de num lock pour montrer les accès disques. Y y a floyd qui fait la même chose. Tled utilise le même principe avec l'activité réseau.

quand à mate-applet-lockkeys je ne l'ai pas essayé mais à priori c'est une applet qui fonctionne comme extension d'un panel, tout comme gnome-shell-extension-lockkeys, kdeplasma-applets-keyleds, lock-keys-applet (gnome 2), xfce4-kbdleds-plugin....
Envoyé depuis mon saxophone !
Blog - Photos
Tucnacek
Chu Ko Nu
Messages : 332
Inscription : sam. 28 sept. 2013, 22:40

Re: [openbox] indicateur caps et num lock

Message par Tucnacek »

J'ai lu le post un peu vite et ai répondu encore plus vite et donc complètement à côté de la plaque, notamment pour disk-indicator que j'ai lu de travers, mes excuses.
Ne peux-tu pas toutefois piquer une applet seulement au milieu d'un panel, quitte à installer 100MB pour disposer simplement de la fonction requise ?
Bon courage pour tes recherches.
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock

Message par vintherine »

Bon, j'ai fait un infâme bidouillage bash mais qui a le mérite de fonctionner. Il dépend de alltray (pour envoyer dans le systray) et tourne dans xterm.
j'ai fait 4 icônes et j'ai récupéré un son quelconque pour marquer pour les changement d'état. Si ça intéresse quelqu'un qu'il m'envoie un message.

J'ai ajouté ceci dans mon autostart :

Code : Tout sélectionner

alltray -H -- xterm -e /home/vincent/Coding/bin/lockkeys > /dev/nul2>&1 &
voici le script, des fois qu'un vrai programmeur passe par là et veuille me faire un truc plus propre

Code : Tout sélectionner

#!/bin/bash
# dépendances : xorg-xset, xterm, alltray, xseticon (AUR)

#chemin du script
ScriptPath="$(readlink -f ${BASH_SOURCE[0]})"
ScriptDir="$(dirname $ScriptPath)""/"


icone[0]=$ScriptDir"lockeys-0.png"
icone[1]=$ScriptDir"lockeys-1.png"
icone[2]=$ScriptDir"lockeys-2.png"
icone[3]=$ScriptDir"lockeys-3.png"

echo "Ceci est un infâme bricolage en bash pour servir de leds à capslock et numlock"
echo


GetLed ()
{
  LedMask=$(xset q | grep "LED mask" | sed -r "s/.*LED mask:\s+[0-9a-fA-F]+([0-9a-fA-F]).*/\1/")
  NewCapsLock=$(( 0x$LedMask & 0x1 ))
  NewNumLock=$(( 0x$LedMask & 0x2 ))
  let mask=$NewCapsLock+$NewNumLock
}

GetLed
CapsLock=$NewCapsLock
NumLock=$NewNumLock

xseticon -id $WINDOWID ${icone[mask]}

while :
do
  GetLed
  if [ $CapsLock != $NewCapsLock  ] || [ $NumLock != $NewNumLock ]; then
    CapsLock=$NewCapsLock
    NumLock=$NewNumLock
    aplay $ScriptDir"pop.wav" >/dev/null 2>&1
    xseticon -id $WINDOWID ${icone[mask]}
  fi
done
Envoyé depuis mon saxophone !
Blog - Photos
OlaffGrossBaff
Hankyu
Messages : 38
Inscription : mer. 05 juin 2013, 08:52

Re: [openbox] indicateur caps et num lock (contourné)

Message par OlaffGrossBaff »

Le panel de lxde en propose un simple et efficace (que j'ai longtemps utilisé). Il doit y avoir moyen de le récupérer sous un openbox pur...
eeepc 1000HE 1.6GHz 2048MB modèle Taiwan
SSD | LVM on LUKS | OpenRC | XFCE | oh_my_zsh | tmux | vim-spf13
IMF : fcitx pour chinois 中文 - uim pour japonais 日本語 et autres scripts
Commence à gérer LaTeX - niveau : "newbie avancé"
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

Code : Tout sélectionner

$ yaourt -Ql lxpanel | grep kbled
lxpanel /usr/lib/lxpanel/plugins/kbled.so
Je ne pense pas pouvoir l’utiliser autrement que dans le panel de lxde :(
Envoyé depuis mon saxophone !
Blog - Photos
OlaffGrossBaff
Hankyu
Messages : 38
Inscription : mer. 05 juin 2013, 08:52

Re: [openbox] indicateur caps et num lock (contourné)

Message par OlaffGrossBaff »

Ou sinon, tu as pensé à Cairo-dock ? - ou autre projet du genre -
Que ce soit sous Openbox, LXDE ou FXCE, à chaque fois je m'en fait une mouture, en découvrant les évolutions après une période de non utilisation.
Là je suis sous fxce. Je trouve que le panel est bien, mais certains applets sont médiocres (batterie et indicateurs LED du clavier, comme pour openbox et lxde). Je trouve le Cairo-dock très bon, et peu gourmant en ressources (pour peu qu'on fait les bons réglages)
eeepc 1000HE 1.6GHz 2048MB modèle Taiwan
SSD | LVM on LUKS | OpenRC | XFCE | oh_my_zsh | tmux | vim-spf13
IMF : fcitx pour chinois 中文 - uim pour japonais 日本語 et autres scripts
Commence à gérer LaTeX - niveau : "newbie avancé"
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

non, j'utilise tint2 que je préfère à toutes les solutions que j'ai essayé. Bah, je suis en train de me faire une version de mon applet en python, que je découvre pour l'occasion. À un petit soucis près elle est déjà pleinement fonctionnelle, j'en parlerai plus tard.
Envoyé depuis mon saxophone !
Blog - Photos
OlaffGrossBaff
Hankyu
Messages : 38
Inscription : mer. 05 juin 2013, 08:52

Re: [openbox] indicateur caps et num lock (contourné)

Message par OlaffGrossBaff »

Va pour une appli perso en python alors. Et je suis curieux de la voir quand tu en parleras plus tard.
eeepc 1000HE 1.6GHz 2048MB modèle Taiwan
SSD | LVM on LUKS | OpenRC | XFCE | oh_my_zsh | tmux | vim-spf13
IMF : fcitx pour chinois 中文 - uim pour japonais 日本語 et autres scripts
Commence à gérer LaTeX - niveau : "newbie avancé"
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

OlaffGrossBaff a écrit :Va pour une appli perso en python alors. Et je suis curieux de la voir quand tu en parleras plus tard.
Ben voilà, le script est sur mon blog : http://blog.vintherine.org/post/2014/12/01/LockKeys-0.2

Chez moi ça fonctionne correctement mais je ne l'ai pas testé ailleurs, donc si ça te tente...
Envoyé depuis mon saxophone !
Blog - Photos
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [openbox] indicateur caps et num lock (contourné)

Message par benjarobin »

L'indentation est toute cassée, peux tu mettre le code ici ou sur pastebin ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [openbox] indicateur caps et num lock (contourné)

Message par benjarobin »

L'indentation est toute cassée, peux tu mettre le code ici ou sur pastebin ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

Arf... j'ai fini tard hier soir, même pas vérifié que le copié collé avait tout cassé. Zarbi !

voilà le pastebin :http://pastebin.com/6nyw6PHy
Envoyé depuis mon saxophone !
Blog - Photos
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [openbox] indicateur caps et num lock (contourné)

Message par benjarobin »

Tu devrait initialiser oldMask dans l'init à -1, puis placer ceci dans le if, au lieu de en dehors du if :

Code : Tout sélectionner

icon_path='/usr/local/share/lockkeys/'+str(Mask)+'.png'
self.tray_object.set_from_file(icon_path)
Tu auras ainsi de meilleur performance
Si tu veux encore améliorer les performances il ne faut pas utiliser grep, ni le module commands, il faut tout traiter en python
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

Merci Benjarobin
benjarobin a écrit :Tu devrait initialiser oldMask dans l'init à -1,
Tu veux dire avant les classes et les fonctions ?
puis placer ceci dans le if, au lieu de en dehors du if :

Code : Tout sélectionner

icon_path='/usr/local/share/lockkeys/'+str(Mask)+'.png'
self.tray_object.set_from_file(icon_path)
Tu auras ainsi de meilleur performance
Ça oui, bonne idée
Si tu veux encore améliorer les performances il ne faut pas utiliser grep, ni le module commands, il faut tout traiter en python
Je vais regarder ça. Mais pour l'heure je ne sais pas comment obtenir le résultat de xset sans passer par le module commands. Cela ne fait qu'une semaine que j'étudie Python, jusqu'à présent je ne faisait que du bash :mrgreen:
Envoyé depuis mon saxophone !
Blog - Photos
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

Bon, finalement je ne peux pas déplacer

Code : Tout sélectionner

icon_path='/usr/local/share/lockkeys/'+str(Mask)+'.png'
self.tray_object.set_from_file(icon_path)
Si je mets ces lignes dans le if l'icône ne s'affiche pas dans le systray, il y a juste un emplacement vide
Envoyé depuis mon saxophone !
Blog - Photos
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [openbox] indicateur caps et num lock (contourné)

Message par benjarobin »

Si je mets ces lignes dans le if l'icône ne s'affiche pas dans le systray, il y a juste un emplacement vide
... Si si cela fonctionne très bien. Tu as du oublié d'initialiser oldMask à -1...
Tu as encore beaucoup à apprendre (surtout pour faire du jolie code) :-)

Bon tu peux faire encore mieux : Utiliser directement les fonctions C de X11. Ton script python modifié vite fait : http://pastebin.com/RKwrtE8Y
Il y a encore "un peu" de travail pour faire du code propre, mais cela donne l'idée.
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
vintherine
yeomen
Messages : 281
Inscription : mer. 04 janv. 2012, 22:14
Localisation : Annecy

Re: [openbox] indicateur caps et num lock (contourné)

Message par vintherine »

benjarobin a écrit :Tu as du oublié d'initialiser oldMask à -1
Effectivement, mais c'est que je n'avais pas compris ce qu'il fallait faire

ceci dit cela provoque un ding incongru au lancement du script, il faut donc que je teste que ce n'est pas le 1er passage avant de jouer le son.
Bon tu peux faire encore mieux : Utiliser directement les fonctions C de X11. Ton script python modifié vite fait : http://pastebin.com/RKwrtE8Y.
Merci, ça fonctionne bien.
Tu as encore beaucoup à apprendre (surtout pour faire du jolie code)
Arf... je ne me fais guère d’illusion, à bientôt 60 ans on apprend beaucoup moins vite qu'à 27
Envoyé depuis mon saxophone !
Blog - Photos
Répondre