На Клавиатуре Apple в соответствии с Linux, как я заставляю Функциональные клавиши работать без fn модифицирующей клавиши?

Я просто установил Linux на ноутбуке ASUS также, и платой Ethernet является Atheros ethernet+bluetooth комбинация, драйвер которой еще не был интегрирован в ванильном ядре.

Проверьте аппаратный идентификатор своей платы Ethernet (lspci -nn) и посмотрите, относится ли это к Вам.

18
26.03.2014, 01:21
6 ответов

Необходимо добавить 0 или 2 в /sys/module/hid_apple/parameters/fnmode.

т.е.:

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

По-видимому, существует некоторая путаница в отношении того, в чем может заключаться разница между этими двумя значениями. Цитируя документацию Ubuntu:

  1. 0 = disabled : Disable the 'fn' key. Нажатие 'fn'+'F8' приведет к тому, что как вы только нажимаете 'F8'
  2. 1 = fkeyslast : Функциональные клавиши используются как последний ключ. Нажатие клавиши 'F8' будет действовать как специальная клавиша. Нажатие на 'fn'+'F8' будет вести себя как F8.
  3. 2 = fkeysfirst: Функциональные клавиши - это использованный в качестве первого ключа. Нажатие клавиши 'F8' будет вести себя как F8. Нажатие на 'fn'+'F8' будет действовать как специальный ключ (игра/пауза).

Обратите внимание, что это также работает на Федоре.

23
27.01.2020, 19:46
[117271] Я понял, что изменить поведение этого модификатора довольно просто, так как корень меняет значение в файле [117619]/sys/module/hid_apple/parameters/fnmode[117620] с [117621]1[117622] до [117623]0[117624]. Например:

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

Обратите внимание, что в некоторых старых версиях linux этот файл находился в [117625]/sys/module/apple/parameters/fnmode[117626]. Также это изменение не будет сохраняться при перезагрузке[117276].

3
27.01.2020, 19:46

В более раннем обсуждении решение дается с параметром загрузки ядра, который может быть предпочтительным (system- широкое применение, модификация только строки в / etc / default / grub и т.д.).

Только в соответствии с этим решением для fnmode устанавливается значение 2 вместо 0 . Я просто попытался установить hid_apple / parameters / fnmode на 2 , и это тоже дало желаемый эффект. Может быть, логика просто «1 →« требуется Fn для доступа к F1 , F2 , F3 , ... »или все другие значения?

1
27.01.2020, 19:46

Для тех, кто наткнется на эту тему, используя один из новых MacBook Pro (2016 года и более поздние версии ), которым требуется драйвер applespi для работы клавиатуры и сенсорной панели, вот как это сделать., так как я не смог найти другой темы, объясняющей это для более новых компьютеров Mac.

Насколько я понимаю, драйвер эффективно заменяет роль модуля hid _apple, поэтому файлы для редактирования немного отличаются.

Во-первых, чтобы убедиться, что вы используете драйвер applespi, а не драйвер hid _, проверьте, какая из этих команд (с помощью терминала )что-то возвращает. Что бы ни случилось, вы узнаете, какой драйвер вы используете в настоящее время :

.
# 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

Для проверки настроек временно(настройки будут сброшены после перезагрузки):

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

Чтобы применить изменения навсегда(сохранить при перезагрузке):

# 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

Для старых MacBook Pro, использующих модуль hid _apple, используйте в командах «hid _apple», а не «applespi».

7
27.01.2020, 19:46

Для тех, кто получил отказ в доступе и не может просто добавить префикс «sudo», используйте:

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

Измените его на 2или любой другой, а затем Ctrl+Xдля сохранения.

2
27.01.2020, 19:46

В дополнение к ответ @ffledgling:

Я предлагаю следующее, чтобы этот параметр применялся при каждой перезагрузке (отлично работает в Ubuntu 18.04, 20.04 и, я думаю, в других дистрибутивах):

echo "options hid_apple fnmode=2" | sudo tee /etc/modprobe.d/hid_apple.conf
0
28.03.2020, 12:18

Теги

Похожие вопросы