Linux'ta bir Apple Klavyesinde Function tuşlarının “fn” kullanımı nasıl değiştirilir?


43

İnce bir klavyem (USB) var ve İşlev Tuşlarından birini olduğu gibi kullanmak istersem ilk önce "fn" tuşuna basmam gerekiyor. Aksi takdirde, ekran yoğunluğunu artırmak veya azaltmak, ses seviyesini / sesini değiştirmek, vb. Gibi tuşun diğer işlevlerini yerine getirmeye çalışır.

Ayrıca, fn tuşu aslında normal klavyeler için "insert" tuşunun konumunda. Tüm bunları nasıl düzeltebilirim?

Bu klavyeyi gerçekten çok seviyorum, çünkü yazı yazmam çok daha kolay ve çok daha sessiz. Ancak bazen farklı olan bu eşlemeler beni rahatsız ediyor.

Teşekkürler :-)

Yanıtlar:


58
echo 0 > /sys/module/hid_apple/parameters/fnmode

Veya izin verilmesi durumunda:

echo 0 | sudo tee /sys/module/hid_apple/parameters/fnmode

Bu, yeniden başlatmanız gerekmesini önleyecektir. Bu seçeneğin eklenmesi iyi bir fikirdir, bu nedenle değişiklik yeniden başlatmalardan devam eder.

  • 0 = Fn tuşu devre dışı
  • 1 = Varsayılan olarak Fn tuşuna basıldı
  • 2 = Fn tuşu varsayılan olarak serbest bırakıldı

Gönderen /drivers/hid/hid-apple.c hattı 42 :

Apple klavyelerinde fn tuşunun modu (0 = devre dışı, [1] = fkeyslast, 2 = fkeysfirst)


1
Görünüşe göre bir elma şoförü kullanmıyorum, bu yüzden bu benim için çalışmıyor. Marka dışı bir elma klavyem var (Razor Black Widow).
Kieveli

1
@Kieveli insanlar apple klavyesini söylediklerinde, genel anlamıyla kastetmiyorlar, apple donanımında kastettiler. donanım elma değilse, o zaman elma sürücüsünü kullanmayacaksınız. hangi sürücünün ilk olduğunu
öğrenmelisin

4
Ubuntu 14.04.3 için, @cynyr tarafından verilen yanıt işe yaramadı. "İzin reddedildi" alıyorsunuz. Çalışmak burada: echo 2 | sudo tee / sys / module / hid_apple / parameters / fnmode
akikara 20:15 'de

İzin verilen sorunlar için bkz. [ askubuntu.com/questions/103643/…
Diogo

35

Hangi seçeneğin ayarlanacağı ile ilgili yukarıdaki cevap /etc/modprobe.dbiraz eski. Neyse ki Apple Klavye desteğiyle ilgili ayrıntılı belgeler var :

  1. /Etc/modprobe.d/hid_apple.conf dosyasını düzenleyin veya oluşturun, örneğin:

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

  2. Bu satırı önceden açılmış dosyaya ekleyin.

    options hid_apple fnmode=2

  3. Dosyayı kaydedin ve hid_apple modülünü yapılandırmasını yeniden yüklemesine bildirmek için aşağıdaki komutu uygulayın.

    sudo update-initramfs -u

  4. Yeniden Başlatma

Kişisel sudo update-initramfs -u -k allolarak tüm çekirdeğiniz için güncellemenizi tavsiye ederim (ayarın beklendiği gibi çalıştığından emin olduktan sonra).

Fnmode'un /syshala altında ayarlanması aynı şekilde çalışır:

sudo -s 'echo 2 > /sys/module/hid_apple/parameters/fnmode'

Her iki yöntemde de değerler şöyledir:

  • 0 = devre dışı: 'fn' tuşunu devre dışı bırak. 'Fn' + 'F8' tuşlarına basmak, sadece 'F8' tuşlarına basmak gibi davranır.
  • 1 = fkeyslast: İşlev tuşları son tuş olarak kullanılır. 'F8' tuşuna basmak özel bir tuş işlevi görür. 'Fn' + 'F8' tuşlarına basıldığında F8 gibi davranılır.
  • 2 = fkeysfirst: İşlev tuşları ilk anahtar olarak kullanılır. 'F8' tuşuna basılması F8 gibi davranacaktır. 'Fn' + 'F8' tuşlarına basmak özel tuş olarak işlev görür (oynat / duraklat)

Teşekkürler - Bu yöntemi github.com/duncan-bayne/mint-setup
Duncan Bayne

İhtiyacınız olan tek şey FN'yi echo 2 > /sys/module/hid_apple/parameters/fnmodebirincil ve Mac kontrollerini ikincil yapmak için kök olarak çalıştırmak (en azından Fedora dağıtımında) . Ah evet!! Teşekkürler wuputah !!
Ilia Rostovtsev

Bonus: Eğer ~ anahtar çalışmanızı yapmak istiyorsanız, iso_layout = 0 olarak da ayarlamalısınız. Benim hid_apple.conf şöyle görünür: options hid_apple fnmode = 2 iso_layout = 0
Thales Ceolin

5

Gönderen Burada

Fn tuşunun işlevini nasıl değiştiririz?

İlk önce /etc/modprobe.d/options dosyasını düzenleyin.

sudo nano /etc/modprobe.d/options

ve çizgisinin olduğundan emin olun

seçenekler hid pb_fnmode = 2

Sonra kaydedin ve çıkın. Son olarak, ramfs'i güncellememiz gerekir:

sudo güncelleme-initramfs -u -v -k uname -r

O zaman sadece yeniden başlat!


1

Bu benim için Fedora 24'te çalıştı.

  1. SystemD'nin başlaması için yeni bir dosya oluşturun.

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

    Dosyanın şunları içerdiğinden emin olun

    [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. Yeni dosyanızı okumak için SystemD'yi yeniden yükleyin

    systemctl --system daemon-reload

  3. SystemD servisini başlatın.

    systemctl start mac-keyboard.service

  4. Önyüklemeye başlamak için servisi etkinleştirin.

    systemctl enable mac-keyboard.service

Referans: https://www.dalemacartney.com/2013/06/14/changing-the-default-function-key-behaviour-in-fedora/


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

Bir mac klavye ile olacak bir radyo düğmesi toggle fn

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

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.