web-dev-qa-db-fra.com

Liens de clavier XF86 dans Openbox

Lubuntu utilise Openbox comme gestionnaire de fenêtres. ~/.config/openbox/lubuntu-rc.xml est un fichier qui spécifie, entre autres, les associations de touches pour diverses commandes.

La plupart des associations dans lubuntu-rc.xml utilisent des touches de modification telles que ControlShiftAlt, et Super.

Par exemple, vous pouvez ouvrir une fenêtre de terminal en appuyant sur Control+Alt+T ensemble:

<!-- Launch a terminal on Ctrl + Alt + T-->
<keybind key="C-A-T">
  <action name="Execute">
    <command>lxsession-default terminal</command>
  </action>
</keybind>

Mais il y a aussi ceci:

<!-- Keybinding for terminal button-->
<keybind key="XF86WWW">
  <action name="Execute">
    <command>lxsession-default terminal</command>
  </action>
</keybind>
<keybind key="XF86Terminal">
  <action name="Execute">
    <command>lxsession-default terminal</command>
  </action>
</keybind>

Que sont keybind key="XF86WWW" et keybind key="XF86Terminal"? Comment localiser ces touches sur le clavier de mon ordinateur portable? Mon ordinateur portable est un Dell Inspiron N 1545 de 2008.

2
user25656

Ces clés sont définies dans /usr/include/X11/XF86keysym.h.

Veuillez noter que les fichiers d'inclusion X11 peuvent ne pas être installés sur votre système si vous n'avez pas installé divers packages de développement ou si vous n'avez pas besoin d'installer des pilotes graphiques propriétaires. Vous pouvez également trouver XF86keysym.h en ligne

D'après ce fichier d'en-tête, il s'agit de XFree86 vendor specific keysyms.

En d'autres termes, ces touches font partie d'un clavier particulier ou ne le sont pas. Si vous ne les voyez pas, votre clavier ne les a pas.

Ces clés sont prédéfinies dans les fichiers de configuration du bureau (vous les voyez dans Unity . Paramètres système >> Clavier >> Raccourcis également, bien que Unity les ait légèrement renommés. ) comme une commodité pour les utilisateurs car sinon, il faut généralement un script pour leur attacher des actions.

Le fichier dit aussi:

X.Org will not be adding to the XF86 set of keysyms, though they have 
been adopted and are considered a "standard" part of X keysym definitions.
XFree86 never properly commented these keysyms, so we have done our
best to explain the semantic meaning of these keys.

Il y a deux choses à noter ici.

  1. Ces clés de frappe étaient une tentative de faire fonctionner XFree86/Xorg avec une large gamme de matériel et certains des keysysms semblent un peu datés. Par exemple, la clé de la calculatrice fait partie d’un groupe intitulé:

    These are sometimes found on PDA's (e.g. Palm, PocketPC or elsewhere)
    
  2. Ces keysyms sont standard. Ils sont compilés dans les différentes bibliothèques associées à xkb- et sont donc automatiquement disponibles, avec ou sans les fichiers include présents sur un système. Mais, bien sûr, vous devez avoir la clé qui émet le code clé correspondant déjà physiquement sur le clavier.

Si vous n’avez pas les clés, vous pouvez bien sûr mapper les actions sur d’autres séquences de touches. Étant donné que les clés de clavier sont intégrées à Xorg et que les actions par défaut sont intégrées à Ubuntu (via lubuntu-rc.xml, update-alternatives et peut-être d’autres façons), cette tâche est très simple.

Ubuntu, par exemple, utilise ces clés pour proposer la clé de calcul à la fois dans Unity et Lubuntu, bien qu’il soit extrêmement improbable qu’un clavier de bureau standard dispose de cette clé.

J'ai aimé l'idée d'un bouton de la calculatrice, auquel je n'avais jamais pensé jusqu'à ce que je voie l'option dans les paramètres système.

Dans Unity, j’ai modifié la touche de raccourci de la calculatrice pour Ctrl+/.

À Lubuntu, que j’utilise aussi, j’ai changé

<keybind key="XF86Calculator">

à

<keybind key="C-slash">

Vous pouvez faire la même chose pour XF86WWW et XF86Terminal, bien que vous ne puissiez pas affecter un seul trait à l'une de ces clés (en réalité, maintenant, juste le concept de clé), sauf si vous ne voulez pas d'utiliser la clé remappée pour son objectif d'origine et vous n'avez probablement pas beaucoup de clés à revendre.

Mais, à titre d'exemple, je n'utilise jamais la touche menu pour un clic droit. Dans Lubuntu, je peux facilement le transformer en lanceur de terminal en remplaçant XF86Terminal par Menu. (Le fichier XML utilise le nom de la clé ou le code clé. Vous pouvez les trouver en utilisant xev dans un terminal, puis en appuyant sur la clé souhaitée.)

Il est intéressant de noter que, dans Lubuntu, l’action par défaut de la clé de navigateur consiste également à lancer le terminal. Pour remapper XF86WWW, vous devez également modifier le nom de la clé et le <command>....

1
chaskes