Forum bépo

Forum des utilisateurs du bépo

Vous n'êtes pas identifié(e).

#1 22/3/2019 16:08:42

lordphoenix
Membres
Inscription : 27/8/2014
Messages : 6

configurer des raccourcis clavier sur un pavé numérique externe.

Hello les bépoètes,
Je sais que je suis un peu HS mais comme je sais que j'ai de bonnes chances de trouver ici des adeptes de la bidouille de clavier en tout genre je me tourne vers vous, Si ce poste pose problème dites le je supprimerais.
Voilà mon problème, j'envisage de m'équiper d'un petit clavier externe (genre pad gamer ou pavé numérique externe) pour pouvoir avoir accès directement de la main gauche les raccourcis clavier que j'utilise souvent sous rawtherapee (logiciel de développement de photo). L'idée étant que je n'ai pas à switcher régulièrement entre la souris et le clavier pour en exécuter certains pas forcément très pratique à faire que de la main gauche.
L'idée serait donc de "mapper" les touches de ce deuxième clavier vers des combinaisons de touches spécifiques.
Quelqu'un aurait une idée de la méthode à utiliser pour pouvoir faire ça? Ou au moins une idée de la direction dans laquelle creuser? Idéalement avec un peu de doc ça serait tip top.

Merci d'avance.

Hors ligne

#2 22/3/2019 17:38:03

Flavien21
Admin
Lieu : Versailles
Inscription : 12/7/2015
Messages : 237
Site Web

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Bonjour,

Il te faudrait un pavé de ce style ou ce style.
Après il faut voir comment se programme ces claviers là. Ils sont peut-être différent, soit par logiciel propriétaire, soit reprogrammation hardware.
On pourra t’aider quand tu aura la bête, il y a effectivement pas mal de bidouilleur dans le coin. Peut-être que d’autres te proposeront autre chose.


bépoète depuis mars 2015

Hors ligne

#3 22/3/2019 20:34:37

lordphoenix
Membres
Inscription : 27/8/2014
Messages : 6

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Vu les prix des machins ça me refroidit un peu, honnêtement je préférerais pouvoir faire ça avec un simple pavé numérique externe.
La question est de savoir si il est vraiment nécessaire d'avoir un clavier qui se dit programmable car j'imagine que c'est bien entendu du windows only ces machins.

Hors ligne

#4 23/3/2019 03:32:40

Manolo
Membres
Inscription : 6/8/2017
Messages : 30

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Bonjour,

En fait il y a 2 manières de voir les choses :
1 - Reprogrammer le clavier numérique
2 - Créer ses propres raccourcis claviers de raccourcis clavier big_smile

1 - Reprogrammer le clavier numérique :
  Il y a 2 manières de voir les choses big_smile
  a - Reprogrammer soit même un clavier : Les claviers déjà montés ne sont pas prévus (en général) pour être reprogrammés. Il faut un bon niveau en électronique et informatique... Bref, je pense que c'est pas la solution
  b - Trouver un clavier avec un logiciel de reprogrammation fourni :
     A bas cout, j'ai cherché sur le site chinois AliExpress (à voir pour import, douane....). Attention, je n'ai pas testé les clavier que je propose et je ne garanti pas la qualité du clavier.
     Clavier 1 Clavier 2 (en kit)clavier 3 => Bon après il faut fouiller...


2 - Créer ses propres raccourcis claviers de raccourcis clavier big_smile

L'idée est d'avoir une souris avec bouton programmable (J'ai une Logitech M500 par exemple). Y affecter une touche jamais utilisée (touche pause par exemple)
Installer le logiciel TouchCursor (gratuit) et dire : Pause + 1 génère Ctrl + S / Pause + 2 génère Alt + F4.
Du coup, en appuyant simultanément sur un bouton de la souris puis sur n'importe quelle touche, il est possible de faire n'importe quel raccourcis. (Si tu as un clavier, pas la peine d'acheter un clavier numérique, tu utilises les touches du clavier situées main gauche)
J'espère avoir été clair big_smile

Hors ligne

#5 24/3/2019 02:00:31

lordphoenix
Membres
Inscription : 27/8/2014
Messages : 6

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Je m'aperçois que j'ai oublié de préciser que j'étais sous Linux…
Ça complique un peu l'option des claviers programmable je pense, par contre ça élargit le champ des bidouilles possibles non? #TrollInside smile

Hors ligne

#6 25/3/2019 08:52:19

Laurent
Membres
Inscription : 9/8/2009
Messages : 710
Site Web

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Bonjour,

lordphoenix a écrit :

Je m'aperçois que j'ai oublié de préciser que j'étais sous Linux…
Ça complique un peu l'option des claviers programmable je pense, par contre ça élargit le champ des bidouilles possibles non? #TrollInside smile

Disons que ça ouvre certaines perspectives. Mais que ce ne sera pas forcément simple.

Il est possible de définir une disposition de clavier personnalisée. Elle peut être complètement différente des dispositions classiques. Il faut la placer dans /usr/share/X11/xkb/symbols/ . J’y reviendrai ; par rapport à ton objectif, ce n’est pas le plus simple.


Il est possible d’affecter une disposition au clavier principal (ou à n’importe quel clavier) et une autre à un clavier spécifique, en tout cas avec X.org (avec Wayland, je ne sais pas si c’est possible et encore moins comment faire, et je j’exclus pas que la dernière version d’Ubuntu soit passée à Wayland par défaut dans sa version principale).
Je t’adapte vite fait mes notes :

Selon les identifiants

Lister les périphériques de X :

xinput list

Repérer sous Virtual core keyboard le clavier ciblé, récupérer son nom pour la directive MatchProduct.

Optionnellement, relever son id, puis (si c’est par exemple 9) :

xinput list-props 9 | grep 'Device Node'

Avec le chemin récupéré (pour l’exemple /dev/input/event0) :

udevadm info --query=property --name=/dev/input/event0

Récupérer le fabricant d’ID_VENDOR pour la directive MatchVendor (note : si le nom du fabricant contient originellement des espaces, ils sont remplacés par des soulignés).


Selon l’ID USB (pour des périphériques USB, surtout dans le cas où ils n’ont pas de nom de produit reconnu)

Lister les périphériques USB :

lsusb

Relever l’ID (deux séquences de quatre chiffres hexadécimaux (les lettres en minuscules), séparés par deux points).


Créer un fichier /etc/X11/xorg.conf.d/90-keyboards_layouts.conf avec un contenu du style :

Section "InputClass"
    Identifier      "Clavier classique"
    MatchIsKeyboard "True"
    Option          "XkbLayout"  "fr,fr"
    Option          "XkbVariant" "bepo,oss"
    Option          "XkbOptions" "grp:sclk_toggle,grp_led:scroll"
EndSection

Section "InputClass"
    Identifier      "Pave magique"
    MatchIsKeyboard "True"
    MatchProduct    "Celui du pavé numérique"
    Option          "XkbLayout"  "le_tien"
EndSection

ou selon l’ID USB :

Section "InputClass"
    Identifier      "Pave magique"
    MatchIsKeyboard "True"
    MatchUSBID      "0123:4567"
    Option          "XkbLayout"  "le_tien"
EndSection

À ce stade, il faut que ton environnement graphique utilise la définition clavier du système (je n’en connais pas qui soient capable de gérer deux dispositions de clavier différentes eux-mêmes), par exemple :
– avec LXDE, c’est simple, c’est ce qu’il fait tout le temps ;
– avec Xfce, dans le menu Paramètres, Clavier, onglet Disposition, il faut cocher « Utiliser les paramètres par défaut ».
– avec Gnome, il faut neutraliser le service de définition du clavier de Gnome (je ne me rappelle plus son nom ; l’idée serait de le renommer avec dpkg-divert et si ça génère des messages d’erreur de le remplacer par un lien vers /bin/true).


Je reviens sur la question de la définition de la disposition.
Le problème est d’envoyer une combinaison de touches pour la frappe d’une seule touche. À la base, la définition d’une disposition a plutôt pour but d’envoyer un caractère pour une combinaison de touches.

Quelques pistes :
– il existe pour certaines actions, notamment multimédia, des codes de touches spécialisés (il me semble qu’il en existe aussi pour copier, coller… mais je crains que tous les logiciels ne les supportent pas) ;
– définir tes touches avec un symbole non utilisé et faire tourner un utilitaire (je pense qu’il en existe, mais je n’ai pas de nom en tête) configuré pour intercepter ces codes et en envoyer d’autres à la place ;
– il y a peut-être une possibilité de faire exactement ce que tu veux avec les overlays, mais je ne maîtrise pas [MàJ : ça ne semble pas possible] ;
– essayer de définir par exemple C comme symbole et Ctrl comme modificateur.

Par exemple, pour la touche 1 du pavé numérique (note : il faut faire le reste d’une déclaration de disposition autour) :

key <KP1> { type = "ONE_LEVEL", [ C ] };
modifier_map Control { <KP1> };

Je n’ai pas essayé, mais je pense que ça fonctionnera avec certains logiciels, bien que normalement, pour un modificateur, il faut le déclarer comme symbole de la touche et déclarer la touche dans les modificateurs. [MàJ : ne fonctionne pas]


Bon… il faut se dire que ça reste plus simple que de fabriquer son propre clavier et d’en créer le firmware…

Dernière modification par Laurent (30/3/2019 01:11:13)

Hors ligne

#7 26/3/2019 19:07:02

4sStylZ
Membres
Inscription : 23/1/2015
Messages : 97

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Avez vous pensés à autokey (linux) ou autohotkey sur Windows ?

En fait je ne vois pas l’interet d’un pavé externe. Il suffit de créer des raccourci / macros sur une touche modificatrice du genre CTRL + les 12 touches de fonctions (ce n’est qu’un exemple).

Hors ligne

#8 28/3/2019 00:20:21

LilianBeug
Membres
Inscription : 24/9/2017
Messages : 52
Site Web

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Salut,


J’ai trouvé ce projet qui poursuit exactement le même but : https://hackaday.io/project/20355-graph … cut-keypad

Il part sur la base d’un Arduino. Pour l’instant il donne pas ses sources. À suivre…

Je suis de mon côté intéressé par ce sujet pour l’intégrer à mon projet ToucheLibre.
J’ai commencé à bidouiller sur un arduino micro qui a la particularité d’être reconnue comme un périphérique par le PC.
Pour l’instant ce que je fais est assez basique. Mais grâce au bibliothèque fournit par Arduino il y a moyen de faire quelques trucs sympas avec un minimum d’effort même si c’est pas aussi user-friendly comme sur le projet plus haut.

J’ai fait des trucs du genre : génération d’une trame de mail ; copier/coller une ligne entière pour la remettre en dessous ; ajouter un  "_" à la fin de la ligne suivi d'un numéro qui s’incrémente à chaque appui sur le bouton.

À noter une difficulté, la bibliothèque "keyboard"  est en qwerty US. J’ai dû ajouter une autre bibliothèque pour l’avoir en azerty. Pour l’avoir en bépo, dvorak, kéa ou autre il faudra modifier le fichier. Voir ici. J’essaierai de le faire à l’occasion.

Dernière modification par LilianBeug (28/3/2019 01:09:03)


Créateur de ToucheLibre

Hors ligne

#9 28/3/2019 02:58:34

lordphoenix
Membres
Inscription : 27/8/2014
Messages : 6

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Super, merci pour ces infos.
On devrait donc pouvoir effectivement arriver à faire quelque chose.
Bon ben y'a plus qu'a aller s'acheter un clavier et se lancer…
Je vous tiendrais au courant des avancements et je publierais tout ça pour ceux que ça intéresse.

Hors ligne

#10 30/3/2019 01:01:00

Laurent
Membres
Inscription : 9/8/2009
Messages : 710
Site Web

Re : configurer des raccourcis clavier sur un pavé numérique externe.

Laurent a écrit :

Quelques pistes :
[…]
– essayer de définir par exemple C comme symbole et Ctrl comme modificateur.

Par exemple, pour la touche 1 du pavé numérique (note : il faut faire le reste d’une déclaration de disposition autour) :

key <KP1> { type = "ONE_LEVEL", [ C ] };
modifier_map Control { <KP1> };

/

Je n’ai pas essayé, mais je pense que ça fonctionnera avec certains logiciels, bien que normalement, pour un modificateur, il faut le déclarer comme symbole de la touche et déclarer la touche dans les modificateurs.

Alors j’ai essayé. Ça ne fonctionne pas.
L’enfoncement de cette touche produit la lettre qu’on met dessus et le modificateur n’est pris en compte pour les touches frappées ensuite (tant qu’on n’a pas relâché celle-ci). Déjà une piste de moins.

Laurent a écrit :

– il y a peut-être une possibilité de faire exactement ce que tu veux avec les overlays, mais je ne maîtrise pas ;

Après avoir cherché un peu, je doute aussi que ça fasse l’affaire. Ça permet, quand l’overlay, est activé de produire le code d’une autre touche (et éventuellement, il faut enfoncer une autre touche pour activer l’overlay…), mais de là à simuler plusieurs touches…

Le mécanisme de XCompose permet de remplacer un ou plusieurs symboles par un ou plusieurs autres symboles, mais pas de simuler un modificateur.

Laurent a écrit :

– définir tes touches avec un symbole non utilisé et faire tourner un utilitaire (je pense qu’il en existe, mais je n’ai pas de nom en tête) configuré pour intercepter ces codes et en envoyer d’autres à la place ;

4sStylZ a écrit :

Avez vous pensés à autokey (linux) ou autohotkey sur Windows ?

C’est ce que je cherchais, il me semblait bien qu’il existait, mais j’avais oublié son nom. D’après la documentation, Autokey permet effectivement de simuler la pression de touches, y compris la touche Ctrl, donc associé à une disposition différenciée pour le pavé numérique avec des symboles inutilisés, ça doit pouvoir faire l’affaire.

Note que si tu pars sur cette solution, tu peux essayer de mettre au point la partie redéfinition d’une touche avec un symbole non utilisé et Autokey avec ton clavier actuel (en essayant une touche qui ne sert pas trop, genre Arrêt défilement, Pause, Impr. écran…). Il sera toujours temps d’acheter un pavé numérique externe quand tu maîtrisera ces aspects.

À noter aussi qu’Autokey ne fonctionnera probablement jamais avec Wayland (le logiciel destiné à remplacer X.org, et qui le fait déjà par défaut sur certaines distributions) : en effet, celui-ci empêche l’interception des touches par des logiciels tiers pour des raisons de sécurité : les keyloggers utilisent aussi cette possibilité.

Donc la solution d’un clavier spécialisé pour produire des macros semble plus pérenne.

4sStylZ a écrit :

En fait je ne vois pas l’interet d’un pavé externe. Il suffit de créer des raccourci / macros sur une touche modificatrice du genre CTRL + les 12 touches de fonctions (ce n’est qu’un exemple).

Ce n’est pas forcément très facile de faire des combinaisons à une main. Après, ça dépend aussi combien on en veut. Le pouce sur Ctrl et les touches F1 à F3 et $ (en Bépo) à 3, voire É et Ê, ça peut être assez utilisable (les combinaisons Ctrl+lettre non accentuée sont pour la plupart déjà utilisées),

Dernière modification par Laurent (30/3/2019 01:05:12)

Hors ligne

Pied de page des forums