Publié le 16 décembre 2016 - par

Clavier virtuel MatchBox en AZERTY sur le Raspberry Pi

Pour de nombreuses applications utilisant uniquement un écran tactile, il faut prévoir l’utilisation d’un clavier virtuel.
C’est un clavier comme celui qui apparait sur votre smartphone. Pas de vraies touches mais une zone sur l’écran qui joue ce rôle. Jean-Jacques a été confronté à ce problème et a découvert Matchbox, souvent utilisé comme clavier virtuel dans le monde Linux.

Cliquez pour obtenir la définition des niveaux

MatchBox, clavier virtuel QWERTY pour Raspbian

Une mise à jour de Raspbian, pour commencer

Tout commence par une mise à jour de votre système. Si vous avez l’habitude de lire ce blog, vous devez désormais le savoir 😉

sudo apt-get update
sudo apt-get upgrade

Si vous jetez un coup d’œil dans le menu de Raspbian, rubrique Accessoires, vous ne verrez pas le clavier apparaître.

Installation de MarchBox

On va maintenant passer à l’installation de MatchBox . Ouvrez un terminal et saisissez :

sudo apt-get install matchbox

pi@raspberrypi:~ $ sudo apt-get install matchbox
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les paquets supplémentaires suivants seront installés :
libfakekey0 libmatchbox1 libxsettings-client0 matchbox-common
matchbox-desktop matchbox-keyboard matchbox-keyboard-im matchbox-panel
matchbox-panel-manager matchbox-window-manager
Paquets suggérés :
ttf-dejavu
Les NOUVEAUX paquets suivants seront installés :
libfakekey0 libmatchbox1 libxsettings-client0 matchbox matchbox-common
matchbox-desktop matchbox-keyboard matchbox-keyboard-im matchbox-panel
matchbox-panel-manager matchbox-window-manager
0 mis à jour, 11 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 346 ko dans les archives.
Après cette opération, 985 ko d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n]

Répondez Voui, et l’installation continue. c’est plutôt rapide…

Le clavier virtuel

Allez, retournez ouvrir le menu principal de Raspbian et allez dans Accessoires :

Cette fois le clavier est bien présent. Puisqu’on en est là, cliquez sur l’icône du clavier. celui-ci s’ouvre.

Cliquez pour agrandir

Gasp ! Mais… il est en QWERTY ce clavier. Oui… et c’est pas tout :
Essayez d’ouvrir le Gestionnaire de Fichiers ..

J’attends…
Vous êtes certain d’avoir bien cliqué dessus ?

Recommencez voir…

Euh… Mais que se passe-t-il ? Essayez voir d’ouvrir un terminal…

Ah tiens, il s’ouvre

Avant d’aller plus loin, essayez de trouver ce qui se passe. La réponse est sous vos yeux, sur l’écran. De mon côté je continue… je vous donne la solution plus loin. Bin oui quoi cherchez un peu quand même 😉

 [stextbox id= »warning » caption= »On remet en état ! »]Vous ne trouvez pas ? Si vous voulez que votre Raspberry Pi redevienne « normal » (c’est quoi normal?) faites un Reboot en passant par le Menu.[/stextbox]

Franciser le clavier

Quand on a l’habitude d’utiliser un clavier QWERTY, on n’y fait même plus attention, à part pour quelques caractères spéciaux qu’il faut chercher un peu.

L’idée c’est de franciser le clavier et de le transformer en AZERTY. La description du clavier est contenue dans un fichier xml. Jean-Jacques a modifié ce fichier pour qu’il corresponde à nos habitudes. Certaine touches, ont du rester à la même place que sur la config de départ comme « Alt Gr » , en bas à gauche du clavier, juste à coté de la touche « Ctrl« , et la touche « * » également, elle est située à coté de la touche « $« .
Ce clavier affiche soit les caractères minuscules (mode normal), soit les caractères majuscules (appui sur la touche « Shift » pour un seul caractère ou sur « Caps Lock » pour rester en majuscules jusqu’à nouvel appui) soit les caractères spéciaux (appuis sur la touche « AltGr« ). Ces touches se déverrouillent par un nouvel appui.

Le clavier modifié est disponible en cliquant sur ce lien. Le fichier est au format .zip il faudra le dézipper pour l’utiliser.

Avant de faire quelque modification que ce soit, faites une sauvegarde du fichier keyboard.xml d’origine. En cas de problème, ce fichier vous permettra de revenir à la situation de départ. C’est d’ailleurs une bonne habitude à prendre 😉

Dans mon cas le fichier keyboard.xml a été téléchargé puis dézippé sur le Bureau de Raspbian. Vous adapterez les commandes à votre propre cas. Ce fichier est à insérer dans le répertoire /usr/share/matchbox-keyboard.

Dans cet exemple, j’ai renommé le fichier d’origine en keyboard.xml.org, puis j’ai copié le fichier keyboard.xml depuis le bureau vers le dossier /usr/share/matchbox-keyboard. La dernière ligne matchbox-keyboard lance le clavier virtuel depuis le terminal.

pi@raspberrypi:~ $ cd Desktop
pi@raspberrypi:~/Desktop $ ls
keyboard.xml
pi@raspberrypi:~/Desktop $ sudo mv /usr/share/matchbox-keyboard/keyboard.xml /usr/share/matchbox-keyboard/keyboard.xml.old
pi@raspberrypi:~/Desktop $ sudo cp keyboard.xml /usr/share/matchbox-keyboard/keyboard.xml
pi@raspberrypi:~/Desktop $ matchbox-keyboard

Matchbox : le clavier AZERTY

Cliquez pour agrandir

Voilà, vous disposez maintenant d’un clavier virtuel, bien pratique pour certaine applications utilisant un écran tactile, mais ne comportant ni clavier ni souris.

Pendant que la souris est encore connectée, faites un clic droit sur la barre en haut du clavier et configurez le pour qu’il reste au premier plan. C’est plus pratique 🙂

Lancement de Matchbox depuis le bureau

Vous pouvez mettre un lanceur sur le bureau, avec un écran tactile il suffira de taper sur l’icône pour démarrer le clavier virtuel. Cet article de ModMyPi explique la marche à suivre.

Oui, mais…

Tout ça c’est bien beau mais… il y a un mais

Regardez du côté de la charge CPU (si vous ne l’aviez pas vu plus haut, c’est là que ça se passe… Si vous l’aviez vu bravo ! vous êtes sur la bonne voie, vous avez gagné votre premier pingouin)

Eh oui dès qu’on démarre le clavier MatchBox, la charge CPU monte à 25%. Ça veut dire que le cœur du CPU qui gère pacmanfm et le clavier est à 100% de sa charge (bin oui, il y a 4 cœurs et un seul est utilisé).

Et lorsqu’on arrête le clavier en fermant sa fenêtre, la charge reste au maxi. Il y a donc une incompatibilité entre le gestionnaire de fenêtre pacmanfm et MatchBox 🙁

top permet de vérifier que pacmanfm occupe le CPU à 100%, regardez la vidéo ci-dessous…

 

Conclusion

J’ai pas mal hésité avant de publier cet article. D’un côté Jean-Jacques a fait un boulot intéressant et utile en azertifiant (ça existe ?) le clavier virtuel MatchBox, de l’autre ça m’embêtait de vous faire installer un logiciel qui pose problème avec le bureau de Raspbian…

Et puis je me suis dit que ça pouvait être un bon exemple pour montrer que parfois ce qu’on pense être une solution à un problème va en entraîner un autre, un peu plus loin.

Ici le Raspberry Pi n’est pas en cause. C’est bien une incompatibilité entre deux programmes qui provoque ce mauvais fonctionnement. Le bug est signalé depuis pas mal de temps (voir les sources ci-dessous)  mais toujours pas corrigé.

La modification apportée au fichier keyboard.xml pourra vous inspirer pour d’autres modifications. Merci Jean-Jacques pour cette intéressante proposition d’adaptation de MatchBox.

Sources

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

15 réflexions au sujet de « Clavier virtuel MatchBox en AZERTY sur le Raspberry Pi »

    1. arnal

      Bonsoir, J’ai suivi le tuto sur un raspberry PI2 sous Raspian Stretch et je n’ai pas rencontré le problème de charge CPU annoncé…..

      Répondre
  1. Bernard

    Bonjour Francois.
    Comme pour bien des cas , mais le plus souvent en informatique, il est plus intéressant d’avoir des problèmes à résoudre que d’installer en cliquant sur quelques liens et en constatant que ça marche.

    La framboise est tout a fait adaptée à cette fonction et permet de manger de la cuisine « maison » plutôt qu’un plat cuisiné à réchauffer au micro ondes. 😉

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Bernard
      merci…
      tout le monde ne le comprend pas… je viens d’effacer (à sa demande) le commentaire d’un lecteur qui s’est senti « humilié » parce qu’il m’avait écrit en me disant : j’ai suivi le tuto et à la fin ça ne fonctionne pas… merci de m’aider 🙂
      Je lui ai dit que j’avais trop peu d’infos pour l’aider et je l’ai envoyé lire l’article https://www.framboise314.fr/depanner-un-raspberry-pi-ce-nest-pas-de-la-voyance/ ..
      Il conclut par : « …je vais me débarrasser de mon Raspberry Pi car le fait d’être débutant et de conserver sa dignité ne semblent guère compatibles. »
      En fait oui, s’il n’a pas envie de chercher, de comprendre, vaut mieux qu’il achète un PC sous Windows, non ?
      allez ! bonne journée 😉
      cordialement
      François

      Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Andol
      bon, là c’est pas gentil ! j’ai un article sur florence qui est en route…
      nan je rigole merci pour l’info j’ai contacté l’auteur de florence pour avoir quelques infos et l’article sortira incessamment sous peu 😉
      cordialement
      François

      Répondre
  2. Florian

    Bonjour à tous,

    J’ai installé ce clavier sur mon écran 7 pouces avec Volumio, ce qui me permet de faire des recherches.

    Je voudrais néanmoins supprimer les boutons Home, end, pgdn, pgup, pour agrandir les touches claviers (lettres et chiffres).
    J’ai réussi via le fichier XML à supprimer les boutons non utiles, parcontre impossible de trouver comment agrandir les touches claviers.
    Avez-vous des pistes ?
    Par avance merci à tous.

    Répondre
  3. Florian

    Bonjour,

    Est-il possible d’agrandir les touches clavier, moyennant la suppression des touches Home, end, pgup ?
    j’ai réussi à supprimer les touches via le fichier XML mais je ne vois pas comment faire pour agrandir les touches claviers.

    Par avance merci de votre aide

    Répondre
  4. Frédéric

    Bonjour, apparemment, a ce jour, le bug cpu est resolu, tout du moins avant « azertysation ».
    Merci pour cet article, ça m a bien dépanné.

    Répondre
  5. Ping : RasPad3 une tablette basée sur un Raspberry Pi 4 - Framboise 314, le Raspberry Pi à la sauce française....

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.