Linux altındaki bir Apple Klavyede, İşlev tuşlarını fn değiştirici tuşu olmadan nasıl çalıştırabilirim?


20

Linux'ta Apple kablolu klavye kullanıyorum. Varsayılan olarak işlev tuşlarının (F1, F2, F3 vb.) fnÇalışması için tuşa basılması gerekir. fnAnahtar olmadan , bu tuşlar Ekran Parlaklığı, Ses Düzeyi ve Müzik Parçası Kontrolü gibi özellikleri kontrol eder.

Bunları değiştirmenin herhangi bir yolu var mı, bu nedenle İşlev tuşları fndeğiştiriciyi gerektirmiyor , ancak diğer işlevler (Parlaklık vb.)

Yanıtlar:


25

Eklemeniz 0veya 2içine eklemeniz gerekir /sys/module/hid_apple/parameters/fnmode.

yani:

echo 2 > /sys/module/hid_apple/parameters/fnmode

İki değer arasındaki farkın ne olabileceği konusunda bir karışıklık var gibi görünüyor. Ubuntu belgelerinden alıntı :

  1. 0 = devre dışı: 'fn' tuşunu devre dışı bırakır. 'Fn' + 'F8' tuşlarına basarsanız yalnızca 'F8' tuşuna basarsınız
  2. 1 = fkeyslast: Son tuş olarak işlev tuşları kullanılır. 'F8' tuşuna basmak özel bir anahtar görevi görecektir. 'Fn' + 'F8' tuşuna basmak F8 gibi davranacaktır.
  3. 2 = fkeysfirst: İlk tuş olarak işlev tuşları kullanılır. 'F8' tuşuna basmak F8 gibi davranacaktır. 'Fn' + 'F8' tuşlarına basıldığında özel tuş (çal / duraklat) görevi görür.

Bunun Fedora'da benim için de işe yaradığını unutmayın.


fnmode = alt çizgi yok
Yauhen Yakimovich

Çok teşekkürler!!!
Shivam

3

Ben kök dosyasında değerini değiştirmek gibi, bu değiştirici davranışını değiştirmek için oldukça basit olduğunu anladım /sys/module/hid_apple/parameters/fnmodegelen 1etmek 0. Örneğin:

# echo 0> / sys / module / hid_apple / parametreler / fnmode

Linux'un bazı eski sürümlerinde bu dosyanın bulunduğunu unutmayın /sys/module/apple/parameters/fnmode. Ayrıca, yeniden başlattığınızda bu değişiklik devam etmeyecektir.


3

Klavye ve dokunmatik yüzeyin çalışmasını sağlamak için applepi sürücüsüne ihtiyaç duyan yeni MacBook Pro'lardan (2016 ve üstü) birini kullanarak bu iş parçacığını tökezleyen herkes için, bunu açıklayan başka bir iş parçacığı bulamadığım için bu işi nasıl yapacağım daha yeni Mac'ler.

Anladığım kadarıyla, sürücü hid_apple modülünün rolünü etkili bir şekilde değiştirdiğinden, düzenlenecek dosyalar biraz farklıdır.

İlk olarak, hid_apple sürücüsünü değil, applepi sürücüsünü kullandığınızı doğrulamak için, bu komutlardan hangisinin (terminali kullanarak) bir şey döndürdüğünü kontrol edin. Hangi sürücüyü kullanırsanız kullanın, şu anda hangi sürücüyü kullandığınızı söyler:

# If this returns "applespi", you are using applespi
ls /sys/module | grep applespi

# If this returns "hid_apple", you are using hid_apple
ls /sys/module | grep hid_apple

Ayarları geçici olarak test etmek için (yeniden başlatmadan sonra ayarlar sıfırlanacaktır):

echo 2 | sudo tee -a /sys/module/applespi/parameters/fnmode

Değişiklikleri kalıcı olarak uygulamak için (yeniden başlatma işlemleriyle devam edin):

# Add the option for the fn key
echo options applespi fnmode=2 | sudo tee -a /etc/modprobe.d/applespi.conf
# Update initramfs bootfile
sudo update-initramfs -u -k all
# Reboot to test (optional)
sudo reboot

Hid_apple modülünü kullanan eski MacBook Profesyonelleri için, komutlarda "applespi" yerine "hid_apple" kullanın.


2

Erişim engellendi ve "sudo" önekini kullanamayanlar için şunu kullanın:

sudo nano /sys/module/hid_apple/parameters/fnmode

Kaydetmek için 2veya daha sonra Ctrl+Xdeğiştirin.


daha iyi bir yol echo 2| sudo tee /sys/module/hid_apple/parameters/fnmode, ama tüm bu çözümler geçici .... Kalıcı yapmanın bir yolu ( systemdörneğin Fedora gibi ortamlarda): echo "w /sys/module/hid_apple/parameters/fnmode - - - - 2" | sudo tee /etc/tmpfiles.d/rev_fn_key.conf
nhed

1

Daha eski bir tartışmada , tercih edilebilecek bir çekirdek önyükleme parametresi ile bir çözüm verilir (sistem genelinde uygulama, sadece bir hattın değiştirilmesi /etc/default/grub, vb.).

Sadece bu çözüme göre, yerine fnmodeayarlanır . Sadece kurdun için ve istenen etkiyi çok vardır. Belki mantık `1 → "gerektiren basitçe erişmek için , , diğer tüm değerler vs ..."?20hid_apple/parameters/fnmode2FnF1F2F3


Merhaba RJVB, unix.SE'ye hoş geldiniz. Biçimlendirmeyi geliştirmek için yanıtınızı düzenledim. Bazı hileleri öğrenmek için kaynağa bir göz atın.
drs
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.