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

[ddr] webwml:/ports/powerpc/keycodes.wml



Bonjour à tous,

Je vous présente ma première version de ce fichier. J'ai peiné dessus. Je suis pas satisfait à 100 % de ma traduction entre keycode et keymap.

Le truc, si je me rapelle du peu que j'ai codé dedans:

Un clavier envoie un keycode qui est grosso modo l'information sur la place de la touche enfoncée. Ce keycode est interprété par le noyau via le keymap qui dit pour chaque touche quelle est sa signification. C'est comme ça que Linux c'est que la touche est un A sur un clavier AZERTY et non un Q d'un QWERTY.

Je peux me tromper mais je crois que cela a un sens.

Donc, keycode : code clavier
keymap : distribution de touches (j'ai hésité avec dispostion)

Merci de vos relectures et de vos propositions, Thomas.
#use wml::debian::template title="PowerPC Keycodes Change" NOHEADER="yes"
#use wml::fmt::verbatim
#include "$(ENGLISHDIR)/ports/powerpc/menu.inc"
#use wml::debian::translation-check translation="1.6" maintainer="Thomas Marteau"


<h2>Alerte concernant les codes clavier de Linux pour PowerPC&nbsp;!</h2>

<p>Si vous utilisez un noyau compilé avant avril 2001 et vous songez à 
faire une mise à jour vers <i>Woody</i>, vers un noyau plus récent ou bien 
un changement dans la distribution des touches de votre clavier, il est 
ESSENTIEL d'être au courant du changement Debian des codes clavier pour 
PowerPC dans <i>Woody</i>.</p>

<p>Voilà ce qui s'est passé&nbsp;: pour inscrire PowerPC dans le source 
original de Linux et éliminer les conflits présents et futurs, le paquet 
<i>console-data</i> de <i>Woody</i> a remplacé les distributions des codes 
clavier ADB (qui étaient la norme pour les noyaux PowerPC) par celles 
fournies par Linux. Les définitions de codes clavier ADB ne sont plus 
officiellement soutenues par Debian.</p>

<p>Le système d'installation de noyau a été modifié en conséquence et ainsi 
les noyaux nouvellement installés utilisent les codes clavier de Linux et non 
ceux de ADB. Ceci est un changement définitif&nbsp;; un noyau compilé sans 
la fontionnalité des codes clavier ADB ne peut pas gérer les distributions ADB.
Les codes clavier sont une caractéristique de la nouvelle couche d'entrée 
qui va devenir à terme le standard pour la gestion de tous les périphériques 
d'entrée pour toutes les architectures pour les versions postérieures au cycle 
des noyaux 2.4.</p>

<p>Si vous préférez conserver la norme ADB pour le moment mais que le noyau 
que vous utilisez a été compilé avec <code>CONFIG_MAC_ADBKEYCODES=n</code>, 
vous pouvez le recompiler avec <code>CONFIG_MAC_ADBKEYCODES=y</code>  
et continuer d'utiliser une distribution ADB.</p>

<p>Les distributions des claviers mac/apple pour les codes claviers ADB 
sont très différentes de celles Linux. C'est pourquoi vous devez être 
prêt. Si vous ne coordonnez pas vos instructions lors du démarrage, votre 
noyau et sa distribution des codes clavier, un jour vous allez taper 
«&nbsp;root&nbsp;» et vous lirez à l'écran «&nbsp;sswj&nbsp;». Une situation 
très déconcertante.</p>


<h2>Planifier à l'avance</h2>

<p>Un cas classique est de mettre à jour depuis <i>Potato</i> vers 
<i>Woody</i>. À ce moment, une boîte de dialogue a été incorporé quand 
<i>console-data</i> est mis à jour. Une vérification est faite pour savoir 
quel noyau vous utilisez lors de cette mise à niveau et si vous utilisez
la fonctionnalité ADB, vous serez averti de la situation et il faudra faire 
un choix.</p>

<p>Maintenant que vous êtes incollable sur le sujet, il vous sera facile de 
faire un choix. Mettez une distribution de touches pour le démarrage et 
puis après la mise à niveau du système fini (MAIS avant de redémarrer), 
modifiez votre configuration de démarrage (<code>quik.conf</code> ou 
<code>yaboot.conf</code>) pour ajouter une ligne comme suit à la section 
<i>kernel image</i> vous utiliser au démarrage&nbsp;:</p>
<pre>
append="keyboard_sends_linux_keycodes=1"
</pre>

<p>Si vous avez déjà une option <code>append=</code>, ajoutez-le au reste 
à l'intérieur des guillemets comme cela</p>
<pre>
append="video=ofonly keyboard_sends_linux_keycodes=1"
</pre>

<p>N'oubliez pas d'exécuter <code>quik</code> ou <code>ybin</code> après 
avoir fini l'édition du fichier de configuration pour modifier les fichiers 
chargés du démarrage en conséquence.</p>

<p>Une autre apparition du problème est  lors de la mise à jour de X depuis 
4.0.x vers 4.1.x avec un noyau avec les codes clavier ADB. Votre 
<i>XF86Config-4</i> a probablement pour le paramètre <i>XkbModel</i> la valeur 
"macintosh" mais sa signification a aussi changé pour celle d'un clavier 
macintosh utilisé avec les codes clavier Linux. Si vous conservez ceux ADB, 
vous devrez mettre la valeur "macintosh_old".</p>

<h2>Les installations de <i>Woody</i></h2>

<p>Pour une installation (et non une mise à jour) de <i>Woody</i>, 
vous aurez une distribution de touches Linux et un noyau avec les codes clavier
Linux. Donc, tout va correspondre et vous aurez aucun souci. Sauf si...</p>

<p>Sauf si vous changez le noyau après l'installation et que vous validez 
la fonction ADB. Alors vous aurez le problème strictement inverse. Ou 
alors...</p>

<p>Ou alors vous changez la distribution de touches manuellement en 
sélectionnant depuis /usr/share/keymaps/mac. Toutes les distributions de
touches sont celles ADB et ne fonctionnent pas avec les codes clavier 
Linux&nbsp;!</p>


<h2>Cela ne m'arrivera pas -- L'expérience montre que SI</h2>

<p>Donc, comment vous sauver lorsqu'en tapant root, vous lisez sswj&nbsp;? 
Ou à l'envers, vous tapez (tab)ssw et lisez root&nbsp;?</p>

<p>Les utilisateurs de Linux déteste éteindre leurs ordinateurs. Et votre 
système de fichiers se corrompt à chaque fois un petit peu plus. Cette 
corruption peut être ou non corrigée. Donc, voilà quelques suggestions 
pour éteindre grâcieusement votre système si cela arrive.</p>

<p>Si vous avez installé <i>ssh</i> sur votre système et vous pouvez vous 
connecter depuis une autre machine, vous pouvez temporairement corriger 
le problème à distance. Logez vous sur le compte <i>root</i> et 
faites ceci&nbsp;:</p>

<verbatim>
cd /proc/sys/dev/mac_hid/
echo 0 > keyboard_lock_keycodes
echo 1 > keyboard_sends_linux_keycodes
</verbatim>

<p>Votre clavier répondra alors normalement jusqu'au prochain redémarrage. 
Servez-vous de cette opportunité pour synchroniser votre distribution de 
touches, votre noyau et votre gestionnaire de démarrage&nbsp;!</p>

<p>Si votre système a une combinaison de touches pour le redémarrer ou 
l'éteindre, vous pouvez utiliser les tables ci-dessous pour trouver ce 
qu'est devenue cette combinaison. Sur PowerPC, un combo de touche classique est
Control-Shift-Delete. Avec une distribution de touches ADB chargée, 
interprétée comme des codes claviers Linux, cela devient Control-F6-F12. 
Dans le cas opposé, à savoir une distribution Linux, interprétée par 
un noyau ADB, il vous faudra appuyer sur Shift-AltGr-Equals. Bonne chance.</p>

<p>Mon clavier n'a pas la touche Delete, donc quand j'ai la distribution 
de touches Linux chargée par un noyau avec ADB, je devine grâce à la table
que pour se loger en tant que <i>root</i>, il faut taper 2==3 validé par F5. 
Pour le mot de passe, j'utilise encore la table. Pour redémarrer, je tape 
21 tab ==3 validé par F5. Vous pouvez aussi utiliser <i>halt</i> p]j3 validé 
par F5.</p>

<p>Certains caractères ne peuvent être tapés avec la mauvaise distribution 
de touches. Ceci explique les blancs laissés dans les tables.</p>

<h2>Distribution de touches Linux chargée par un noyau configuré pour ADB</h2>

<p>&nbsp;</p>

<pre>
Si vous voulez&nbsp;:  a b   c d e f g h i j      k l m n     o p q r s t u v w
Au lieu, tapez&nbsp;:  ] TAB m u 1 [ i p 5 Return l j ` Space = 9 y 2 o 3 6 . t

               x y z 0 1 2 3 4 5 6 7 8 9 *   /  [ ] ,         = - ` \ ;
               n 4 / b d f h g z x c v   Alt F7 7 - Backspace w q ; , '

              Control Shift     Enter Tab Backspace Fwd-Del Space
              F6      Ctrl or \ F5, 8 r   e         F12     CapsLock

              Home   NumLock   Clear  AltGr =(numkpd) Escape F11 F12
              Clear  +(numkpd) F6-6   Shift Fwd-Del   s      kp-5 kp-6

              F1         F2          F3         F4       F7   F9  
              Left-Arrow Right-Arrow Down-Arrow Up-Arrow kp-. kp-*

              Left-Arrow Right-Arrow Up-Arrow Down-Arrow
              F13                    F11      
</pre>

<h2>Noyau avec les codes claviers Linux mais la distribution ADB</h2>

<pre>
Si vous voulez&nbsp;: a b c d e         f g h i j k l m n o p q r   s   t u v w
Au lieu, tapez&nbsp;: 0 7 1 Backspace 2 4 3 g l ' k c x s h - Tab Esc w d 8 = 

              x y z 0       1 2 3 4 5 6 7 8      9 * /  [ ] , = - ` ; 
              6 q 5 Control e r t y i u [ Return p   z  f a \ o ] m ` 

              Control Shift Return Tab Backspace Fwd-Del   \     Space
              Shift   AltGr j      b   ,         =(numkpd) Shift n

              Clear  AltGr    =(numkpd) CapsLock Escape Alt
              Home   CapsLock Fwd-Del   Space    /       kp-*

              F1 F2 F3 F4 F5    F6   F7 F8 F9 F0 F11 F12
                          Enter Ctrl /               Fwd-Del

              Left-Arrow Right-Arrow Up-Arrow Down-Arrow
              F1         F2          F4       F3
</pre>


<h2>Comment savoir où vous en êtes</h2>

<p>Les distributions de touches n'ont pas de commentaires à l'intérieur. Donc, 
si vous vous demandez quel type de distribution vous utilisez, vous pouvez 
toujours regarder la ligne concernant les codes clavier 1 avec</p>
<pre>
zgrep 'keycode *1 =' /etc/console/boottime.kmap.gz 
</pre>
<p>Si <i>keycode 1 = Escape</i>, c'est la version Linux (celle pour i386) de
la distribution de codes claviers.</p>
<p>Si <i>keycode 1 = s</i>, c'est celle ADB (excepté les dvorak ADB où on 
obtient <i>keycode 1 = o</i>).</p>

<p>Les fichiers de configuration <i>config-XXXXX</i> de /boot vous informent 
sur le type de noyau que vous utilisez et si la fonctionnalité des 
distributions de touches ADB est active. Pour le découvrir, faites</p>
<pre>
grep MAC_ADB /boot/*
</pre>
<p>Vous devriez avoir en réponse une liste de fichiers de configuration 
pour les noyaux utilisables. S'il existe une entrée comme</p>
<pre>
/boot/config-2.4.12-powerpc:CONFIG_MAC_ADBKEYCODES=y
</pre>
<p>alors votre noyau est compilé avec les distributions ADB. Si la 
dernière lettre est <i>n</i>, c'est un noyau avec les codes clavier Linux.</p>

<h2>Comment régler le problème</h2>

<p>Une fois que le système fautif est éteint, vous aurez toujours 
à régler le problème. Comment savoir ce qu'il faut faire&nbsp;? 
Il vous faudra surement utiliser votre disquette de dépannage ou bien 
démarrer sur une autre partition pour corriger tout ça.</p>

<p>Si votre problème est un noyau avec le support ADB tentant d'utiliser une 
distribution de touches Linux, ajoutez simplement</p>
<pre>
keyboard_sends_linux_keycodes=1
</pre>
<p>lors de l'affichage du prompt de démarrage après avoir tapé le nom de 
l'image du noyau. Mais c'est une solution qui ne marche qu'un temps. 
Il va donc faire que ce changement soit permanent en modifiant votre 
fichier de configuration du démarrage et de le valider auprès de votre
gestionnaire de démarrage.</p>

<p>Si votre problème est le cas contraire (à savoir un noyau avec les codes 
clavier Linux mais une distribution ADB), vous devez abandonner la 
distribution ADB. Vous pouvez copier n'importe quelle distribution du 
répertoire /usr/share/keymaps/i386. Il a du choix. Par exemple</p>
<pre>
cd /usr/share/keymaps/i386/qwerty/
cp mac-usb-us.kmap.gz /etc/console/boottime.kmap.gz
</pre>

Reply to: