http://druith.free.fr est mort, vive http://druith-microcosme.net, mon nouveau blog. Je laisse cette ancienne version en ligne quelque temps, afin de permettre un transfert en douceur, mais ne poste plus aucun nouvel article (...)
Lineak, la solution sous linux pour les claviers multimédia
publié le 3 mars 2007
Cet article s’adresse avant tout aux utilisateurs de debian etch avec un ordinateur portable de type Hewlett Packard Pavilion zv6000. Mais les autres y trouveront peut-être quelque chose d’intéressant quand même.
Il nous faut une pincée de patience, et une console histoire de ne pas perdre les bonnes habitudes, ainsi que les paquets suivants :
$ su
$ (votre mot de passe root)
# aptitude install lineakd lineadk-xosdplugin klineakconfig lineak-kdeplugins
Le paquet lineak-kdeplugins et klineakconfig ne s’adressent qu’aux utilisateurs kde (c’est mon cas). lineak-kdeplugins permet l’association les touches à certains actions de KDE, et klineakconfig propose une interface graphique pour utiliser lineak.
LINEAK signifie Linux support for Easy Access and Internet Keyboards et permet de d’attribuer une action (lancement d’un programme par exemple) à une touche du clavier multimédia.
Normalement, il suffit de taper dans sa console (sous le compte utilisateur et non root).
$ lineak -l
(apparaît alors une liste de claviers)
$lineak -c nom_du_clavier_choisi
Puis de configurer le clavier...
Sauf que le seul clavier proposé qui se rapproche du nôtre est le clavier zv5000... Et il ne nous convient pas vraiment. Nous allons donc créer notre propre modèle.
Si vous avez installé le paquet klineakconfig, vous pouvez créer votre modèle simplement avec ce programme.
Faites [alt]+[f2] et tapez "klineakconfig" à l’invite de commande. capture115.png
Vous verrez apparaître dans le systray (aussi appelé boîte à miniature) de votre kde un Tux pixelisé tenant un clavier : c’est notre programme. capture116.png
Cliquez dessus. Apparaît alors une fenêtre, cliquez sur Create Custom Keyboard, et entrez les infos que vous souhaitez pour votre nouveau modèle de clavier.
Keyboard Brand : MarqueDuClavier
Keyboard Model : ModèleDuClavier
Ensuite, choisissez un nom pour chaque touche (Key Name), et tapez sur la touche. Ça ne marche pas à tous les coups : certaines touches ne sont pas reconnues (chez moi les deux boutons pour monter et baisser le volume ne marchent pas... ça arrive). capture117.png
Cliquez sur Apply, et vous aurez votre modèle de clavier. Vous pourrez le modifier à votre guise.
Modèle personnel :
Cherchez un dossier /home/utilisateur/.lineak (attention, il s’agit d’un dossier caché donc allez dans Konqueror > Affichage > Afficher les fichiers cachés).
Si le dossier n’existe pas, ouvrez une console :
$ lineakd -c HPzv5000
Ou choisissez un modèle avec klineakconfig de façon graphique. L’intérêt est que lineak crée son dossier et un fichier de configuration, peu importe si c’est le bon clavier : on va le modifier.
Allez dans ce dossier et insérez ce fichier : lineakkb.def
Le modèle :
[USRdHPz]
brandname = Hewlett-Packard
modelname = Pavilion zv6000
[KEYS]
fn_echap=159
fn_help=245
# fn_print=37 (même keycode que ctrl droite donc pblème)
# fn_screen= (aucun keycode associé)
fn_veille=223
fn_quick_lock=146
fn_music_avance=153
fn_music_retour=144
fn_play=162
fn_stop=164
lecteur_dvd=237
lecteur_music=118
www=178
win=115
son_muet=160
[END KEYS]
[END USRdHPz]
Les numéros sont les keycodes : des codes associés aux touches de votre clavier. Pour connaître le keycode utilisons xev
Dans une console, et tapez sur la touche dont vous voulez savoir le keycode. Exemple avec [a] :
$ xev
KeyPress event, serial 28, synthetic NO, window 0x3800001,
root 0x3d, subw 0x0, time 408593642, (-344,323), root:(347,372),
state 0x0, keycode 24 (keysym 0x61, a), same_screen YES,
XLookupString gives 1 bytes: (61) "a"
XmbLookupString gives 1 bytes: (61) "a"
XFilterEvent returns: False
KeyRelease event, serial 31, synthetic NO, window 0x3800001,
root 0x3d, subw 0x0, time 408593696, (-344,323), root:(347,372),
state 0x0, keycode 24 (keysym 0x61, a), same_screen YES,
XLookupString gives 1 bytes: (61) "a"
FocusOut event, serial 31, synthetic NO, window 0x3800001,
mode NotifyNormal, detail NotifyNonlinea
... On peut voir que le keycode pour "a" est 24.
Pour sortir de xev faites [ctrl]+|c].
Avec klineakconfig, il suffit de double-cliquer sur le nom de la touche, et de choisir l’action à y associer... Simple à prendre en main, même s’il n’est pas toujours évident de savoir à quelle action le nom des macros renvoie. capture118.png
Il est aussi possible de le faire de façon plus classique, avec un éditeur de texte. Pour cela, il faut éditer le fichier /home/utilisateur/.lineak/lineakd.conf.
Voilà la copie du fichier que j’utilise pour mon laptop :
userdeffile = /home/druith/.lineak/lineakkb.def
fn_echap = konsole
fn_help = kdesu konqueror
fn_music_avance = AMAROK_FORWARD
fn_music_retour = AMAROK_BACK
fn_play = AMAROK_PLAYPAUSE
fn_quick_lock = KDE_LOCK_DESKTOP
fn_stop = AMAROK_STOP
fn_veille = KDE_LOGOUT
lecteur_dvd = wxvlc --open http://mafreebox.freebox.fr/freeboxtv/playlist.m3u
lecteur_music = amarok %U
son_muet = KMIX_MUTE
win = KMENU
www = opera
J’ai associé à mon bouton lecteur_dvd la télévision en multiposte proposée par free. Rien n’empêchait d’y associer xine ou kaffeine bien sûr...
(pour kde) :
cd ~/.kde/Autostart
ln -s /usr/bin/lineakd
Les liens qui m’ont inspirés sont les suivants :
Clavier internet avec Linux - roozeec.over-blog.com
bidon.ca : Debian GNU Linux sur un ordinateur portable Toshiba
ebdomino.free.fr : Configuration d’un clavier multimédia avec lineak
lineakkb.def | (Zip - 720 octets) | Modèle pour clavier zv6000 | |
lineakd.conf | (Zip - 869 octets) | Exemple de fichier de configuration pour clavier HPzv6000 |