Pages : 1
#1 Le 24/12/2005, à 12:57
- yannux
Touches Fn des laptops
Après être passé à kubuntu, les touches de gestion de volume, et lecture de musique ( Fn + F10 par exemple) ne fonctionnaientt pas, alors qu'elles fonctionnaient sous Ubuntu.
Elles ne sont pas détectés quand j'essaye de les mettre en raccourcis clavier.
Après quelques recherches j'ai trouvé de quoi faire un petit script.
Merci a psichron du forum Kubuntu :
http://www.kubuntuforums.net/forums/ind … 34#msg3834
Ce script permet donc de mapper une touche par rapport au keycode des touches multimédia, et là merveilleux, kde comprend la combinaison .
Biensur il faut remplacer les keycode par ceux correspondant à votre clavier Libre à vous également de remplacer F20 par F30 si vous voulez, etc...
Pour que celà soit exécuté à chaque démarage, possibilité de mettre le script dans votre répertoire ~/.kde/Autostart
N'oubliez pas le chmod +x pour le rendre exécutable .
# Script pour mapper les touches Fn de portables
# afin quelles soient détecter par kde et autre.
#
# Pour avoir le bon keycode utilisez xev,
# appuyer sur la combinaison de touche et
# et relever le champ correspondant dans
# la liste qui apparait.
#Touches pour Asus M6BNE
xmodmap -e 'keycode 174=F20' #Volume down
xmodmap -e 'keycode 176=F21' #Volume up
xmodmap -e 'keycode 160=F22' #Volume mute
xmodmap -e 'keycode 153=F23' #Next Track
xmodmap -e 'keycode 162=F24' #Play/Pause Track
xmodmap -e 'keycode 164=F25' #Stop Track
xmodmap -e 'keycode 144=F26' #Previous Track
xmodmap -e 'keycode 152=F27' #Eject Cd
Hors ligne
#2 Le 03/01/2006, à 21:22
- cortex
Re : Touches Fn des laptops
salut!
je suis débutant, donc pardonne mon ignorance stp...
qu'est ce que je dois faire de ton "script" ? le copier dans quel type de document avant de le mettre dans le repertoire dont tu parles (.quoi ? )
de plus, xev donne effectivement le keycode des touches, sauf pour... la touche fn elle meme (je dois faire fn+f2 par exemple pour mettre le son en muet, j'ai le code de f2 (68), que dois je taper exactement? )
merci à toi !
Ma config : Serveur Debian 8 avec Docker // Nas Synology DS215J // 2 Raspberry Pi (Rasplex / Raspbian Pi Hole + Retropie) // 1 iMac 10.12 2,7 GHz Intel Core i5 // Et plein de laptops sous Ubuntu ou Lubuntu
Hors ligne
#3 Le 03/01/2006, à 21:33
- Mathieu147
Re : Touches Fn des laptops
qu'est ce que je dois faire de ton "script" ? le copier dans quel type de document avant de le mettre dans le repertoire dont tu parles (.quoi ? )
Tu le copie/colle dans un fichier texte, que tu enregistres dans /home/ton_nom_d_utilisateur/.kde/Autostart
Ensuite, clic droit dessus, propriétés, permissions, et tu coches "est exécutable".
Attention, les fichiers/dossiers dont le nom commence par un point sont des fichiers/dossiers cachés...
de plus, xev donne effectivement le keycode des touches, sauf pour... la touche fn elle meme (je dois faire fn+f2 par exemple pour mettre le son en muet, j'ai le code de f2 (68), que dois je taper exactement? )
Si tu dois taper fn+F2, xev devrait te donner le keycode correspondant à fn+F2 et c'est ça que tu dois mettre.
Pffff…
Hors ligne
#4 Le 04/01/2006, à 10:34
- cortex
Re : Touches Fn des laptops
merci !
en fait la touche fn est ignorée par xev, elle ne produit aucune réaction. par contre en appuyant sur "touche windows+f2" , j'obtient
KeymapNotify event, serial 31, synthetic NO, window 0x0,
keys: 72 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0LeaveNotify event, serial 31, synthetic NO, window 0x2800001,
root 0x48, subw 0x0, time 529048, (-35,97), root:(644,146),
mode NotifyNormal, detail NotifyNonlinear, same_screen YES,
focus YES, state 0KeyPress event, serial 31, synthetic NO, window 0x2800001,
root 0x48, subw 0x0, time 534381, (-375,436), root:(304,485),
state 0x0, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: FalseKeyPress event, serial 31, synthetic NO, window 0x2800001,
root 0x48, subw 0x0, time 534777, (-375,436), root:(304,485),
state 0x40, keycode 68 (keysym 0xffbf, F2), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: FalseKeyRelease event, serial 31, synthetic NO, window 0x2800001,
root 0x48, subw 0x0, time 534878, (-375,436), root:(304,485),
state 0x40, keycode 68 (keysym 0xffbf, F2), same_screen YES,
XLookupString gives 0 bytes:KeyRelease event, serial 31, synthetic NO, window 0x2800001,
root 0x48, subw 0x0, time 535167, (-375,436), root:(304,485),
state 0x40, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:FocusOut event, serial 31, synthetic NO, window 0x2800001,
mode NotifyNormal, detail NotifyNonlinearPropertyNotify event, serial 31, synthetic NO, window 0x2800001,
atom 0x14c (_NET_WM_ICON_GEOMETRY), time 538833, state PropertyNewValue
j'en conclue que 115 est le code de la touche windows, 68 celui de la touche F2 et ....72 celui de windows+F2 ?
merci !
Ma config : Serveur Debian 8 avec Docker // Nas Synology DS215J // 2 Raspberry Pi (Rasplex / Raspbian Pi Hole + Retropie) // 1 iMac 10.12 2,7 GHz Intel Core i5 // Et plein de laptops sous Ubuntu ou Lubuntu
Hors ligne
#5 Le 02/03/2006, à 10:04
- yannux
Re : Touches Fn des laptops
Vérifié en appuyant sur la touche F2 par exemple tu va avoir un keycode
sui tu appui fn+f12 tu devrais avoir un keycode différent, la touche fn en elle même ne produit pas de keycode.
Hors ligne
#6 Le 08/03/2006, à 19:43
- tenshu
Re : Touches Fn des laptops
sinon pour les iBM il suffit d'installer tpb
Thinkpad rules!
Hors ligne
#7 Le 10/03/2006, à 18:29
- aimak
Hors ligne
#8 Le 11/03/2006, à 03:32
- manu (newbie)
Re : Touches Fn des laptops
Pour XFCE:
il y a une page "clavier multimédia" sur le wiki, c'est assez à jour, puisque je viens de configurer aux petits oignons...que tu sois sous gnome Xfce KDE ou E17, le serveur X est la base pour utiliser un clavier:
*Xev : te donne le keycode sous X: 2 à 3chiffres: 123, 154, 45..............
*si Xev ne te donne rien, alors le serveur X n'a pas attribué de keycode à la touche: regarde les logs kernels:
tail -f /var/log/messages
le log te donnera un scancode ainsi que la marche à suivre pour faire reconnaitre la touche sous X:
Mar 8 15:21:06 localhost kernel: [4297599.876000] atkbd.c: Use 'setkeycodes e00b <keycode>' to make it known
*attribuer un keycode noyau au scancode:
# setkeycodes e064 200 ##en supposant que 200 est un keycode noyau libre
((un petit script pour connaitre les keycodes noyaux libres:
$ sudo su
# IFS=$'\n ' ; for i in $(getkeycodes | grep "[0-9]:" | cut -d ":" -f 2) ; do echo $i ; done | sort | uniq > list.codes
# for ((i=80;i<=255;i++)) ; do if grep -E "^$i\$" list.codes > /dev/null ; then true ; else echo "$i" ; fi ; done > free.codes
))
*voilà, ta touche est reconnue par X, il faut modifier bootmisc.sh (voir le wiki) pour que les modifications soient conservés au redémarrage.
*ensuite, récupère tes keycodeX avec Xev et configure toi des raccourcis claviers au petits oignons avec par exemple: Xbindkeys, ça marchera avec tout ce qui fonctionne sous serveur X, ça permet de lancer des applications avec des commandes SHELL, donc, c'est ultra configurable!!
voir là pour compiler la dernière version:
http://hocwp.free.fr/xbindkeys/xbindkeys.fr.html
bon amusement
Manu
Hors ligne
Pages : 1