[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: clavier azerty SUN type 6, touche AltGr et Xfree 4.3



On Wed, Apr 14, 2004 at 10:44:47AM +0200, Patrice KARATCHENTZEFF wrote:
> Denis Barbier a écrit :
> 
> [...]
> 
> >Hmmm, je ne comprends pas pourquoi ton fichier rules pointe sur xfree86
> >et pas sun. Tu n'as pas bidouillé ces fichiers pour que ça marche ?
> 
> Non. Ce n'est pas logique, je suis d'accord mais c'est la seule 
> combinaison qui permet de déclarer le type6_euro. Cela sent assez le 
> bogue d'ailleurs.
> 
> >Est-ce que
> >
> >        Option          "XkbRules"      "sun"
> >        Option          "XkbModel"      "type6_euro"
> >        Option          "XkbLayout"     "fr"
> >
> >donne de meilleurs résultats ? Mais avec type6_euro, Alt_Gr ne renvoie
> 
> A priori, non : j'ai déjà tester et le clavier est alors délirant.

Voici ce que tu peux faire pour essayer de comprendre ce qui se passe :
tu récupères les sources de setxkbmap (c'est très petit, environ 30 ko),
par exemple
  $ cvs -d anoncvs@anoncvs.xfree86.org:/cvs co -d setxkbmap xc/programs/setxkbmap
  $ cd setxkbmap
  $ xmkmf
  $ make setxkbmap
Si les bibliothèques de dev pour X sont installées, tout devrait
marcher. Tu peux alors appliquer le patch joint et recompiler :
  $ patch -p0 < setxkbmap.patch
  $ make setxkbmap

Si je lis bien les sources, cette version modifiée de setxkbmap va
afficher les valeurs de XKB sans tenir compte de la configuration
actuelle du serveur X, ce qui permet de simuler très exactement le
lancement du serveur X.
Ton fichier de configuration correspond à
  $ ./setxkbmap -rules xfree86 -layout fr -model 'sun(type6_euro)' -print
  xkb_keymap {
        xkb_keycodes  { include "xfree86+aliases(azerty)"       };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc/pc(pc105)+pc/fr" };
        xkb_geometry  { include "pc(pc104)"     };
  };

Il ne s'agit pas d'un clavier de type sun, mais bien d'un simple azerty.
Si ton clavier marche comme tu le souhaites, c'est que d'autres
applis modifient la configuration du clavier lors du lancement de la
session. Tant que tu ne les as pas désactivées, ça ne sert à rien
d'essayer de modifier cette configuration.

Avec l'option -print, la configuration du clavier n'est pas modifiée.
Tu peux donc lancer la même commande sans l'option -print pour te
convaincre que ce n'est pas ce que tu veux. Essaie ensuite avec
  $ ./setxkbmap -rules sun -layout fr -model type6_euro
pour comparer.

Denis
Index: setxkbmap.c
===================================================================
RCS file: /cvs/xc/programs/setxkbmap/setxkbmap.c,v
retrieving revision 3.8
diff -u -r3.8 setxkbmap.c
--- setxkbmap.c	17 Nov 2003 22:20:50 -0000	3.8
+++ setxkbmap.c	14 Apr 2004 20:13:22 -0000
@@ -835,12 +835,12 @@
     if ((!parseArgs(argc,argv))||(!getDisplay(argc,argv)))
 	exit(-1);
     svValue[LOCALE_NDX]= setlocale(LC_ALL,svValue[LOCALE_NDX]);
-    svSrc[LOCALE_NDX]= FROM_SERVER;
+    svSrc[LOCALE_NDX]= FROM_CMD_LINE;
     VMSG1(7,"locale is %s\n",svValue[LOCALE_NDX]);
-    if (dpy)
+    /*if (dpy)
         getServerValues();
     if (svValue[CONFIG_NDX] && (!applyConfig(svValue[CONFIG_NDX])))
-	exit(-3);
+	exit(-3);*/
     if (!applyRules())
 	exit(-4);
     if (!applyComponentNames())

Reply to: