web-dev-qa-db-fra.com

Comment échanger l'utilisation "fn" des touches de fonction sur un clavier Apple sous Linux

J'ai un clavier Apple Slim (USB) et si je veux utiliser une des touches de fonction telle quelle, je dois aussi appuyer sur la touche "fn" en premier. Sinon, il essaiera d’exécuter l’autre fonction de la touche, telle que l’augmentation ou la diminution de l’intensité de l’affichage, la modification du volume/muet, etc.

De plus, la touche fn est en fait dans la position de la touche "insérer" pour les claviers standard. Comment puis-je régler tout ça?

J'aime beaucoup ce clavier, car il me permet de taper beaucoup plus facilement et beaucoup plus silencieusement. Mais certains de ces mappages qui sont différents me dérangent parfois.

Merci :-)

43
jfmessier
echo 0 > /sys/module/hid_Apple/parameters/fnmode

Ou, en cas de problème d'autorisation:

echo 0 | Sudo tee /sys/module/hid_Apple/parameters/fnmode

Cela vous évitera de devoir redémarrer. L'ajout de l'option est une bonne idée, de sorte que le changement persiste lors des redémarrages.

  • 0 = clé Fn désactivée
  • 1 = touche Fn enfoncée par défaut
  • 2 = touche Fn libérée par défaut

De /drivers/hid/hid-Apple.cligne 42 :

Mode de la touche fn sur les claviers Apple (0 = désactivé, [1] = fkeyslast, 2 = fkeysfirst)

58
Cynyr

La réponse ci-dessus à propos de l'option à définir dans /etc/modprobe.d est un peu obsolète. Heureusement, il existe une documentation détaillée sur le support Apple Keyboard :

  1. Editez ou créez le fichier /etc/modprobe.d/hid_Apple.conf, par exemple:

    gksudo gedit /etc/modprobe.d/hid_Apple.conf

  2. Ajoutez cette ligne au fichier précédemment ouvert.

    options hid_Apple fnmode=2

  3. Enregistrez le fichier et exécutez la commande suivante pour informer le module hid_Apple de recharger sa configuration.

    Sudo update-initramfs -u

  4. Redémarrage

Personnellement, je recommanderais Sudo update-initramfs -u -k all de le mettre à jour pour tous vos noyaux (une fois que vous êtes sûr que le paramètre fonctionne comme prévu).

Définir le mode fn sous /sys fonctionne toujours de la même manière:

Sudo -s 'echo 2 > /sys/module/hid_Apple/parameters/fnmode'

Les valeurs dans les deux méthodes sont les suivantes:

  • 0 = désactivé: désactive la touche 'fn'. Appuyez sur 'fn' + 'F8' pour vous comporter comme si vous n'aviez appuyé que sur 'F8'
  • 1 = fkeyslast: les touches de fonction sont utilisées en dernier lieu. En appuyant sur la touche 'F8' agira comme une touche spéciale. Appuyer sur 'fn' + 'F8' se comportera comme un F8.
  • 2 = fkeysfirst: les touches de fonction sont utilisées en tant que première touche. Appuyer sur la touche 'F8' se comportera comme un F8. Appuyer sur 'fn' + 'F8' agira comme touche spéciale (lecture/pause)
34
wuputah

De ici

comment échange-t-on la fonction de la touche Fn?

Commencez par éditer /etc/modprobe.d/options

Sudo nano /etc/modprobe.d/options

et assurez-vous qu'il a la ligne

options masquées pb_fnmode = 2

Puis enregistrez et quittez. Enfin, nous devons mettre à jour ramfs:

Sudo update-initramfs -u -v -k uname -r

Ensuite, redémarrez!

5
joe

Cela a fonctionné pour moi sur Fedora 24

  1. Créez un nouveau fichier pour que SystemD puisse démarrer.

    gedit /usr/lib/systemd/system/mac-keyboard.service

    Assurez-vous que le fichier contient les éléments suivants

    [Unit]
     Description=mac-keyboard
    [Service]
     Type=oneshot
     ExecStart=/bin/sh -c "echo 2 > /sys/module/hid_Apple/parameters/fnmode"
     ExecStop=/bin/sh -c "echo 1 > /sys/module/hid_Apple/parameters/fnmode"
     RemainAfterExit=yes
    [Install]
     WantedBy=multi-user.target
    
  2. Rechargez SystemD pour lire votre nouveau fichier

    systemctl --system daemon-reload

  3. Démarrez le service SystemD.

    systemctl start mac-keyboard.service

  4. Activer le service pour démarrer au démarrage.

    systemctl enable mac-keyboard.service

Référence: https://www.dalemacartney.com/2013/06/14/changing-the-default-function-key-behaviour-in-Fedora/

0
FDisk
Sudo add-apt-repository ppa:daniel.pavel/solaar
Sudo apt-get update
Sudo apt-get install solaar
solaar

avec un clavier mac vous aurez un bouton radio pour toggle fn

http://i.stack.imgur.com/9omc6.png

0
user2167582