Linux MintでMozcのF7キーが効かない問題を解決する方法|fnmode設定の裏側

この記事でわかること

  • Linux MintでF7カタカナ変換が効かない原因
  • fnmodeとは何か、なぜ問題が起きるのか
  • 一時的な解決方法と恒久的な設定方法
  • 再起動後も設定を維持する方法

結論から言うと、原因はファンクションキーがメディアキーとして動作してしまっていることだ。

/sys/module/hid_apple/parameters/fnmode の値を 2 に変更することで解決できる。


なぜF7が効かないのか

Linux MintでMozcを使っていると、ひらがなを入力してF7を押してもカタカナに変換されないことがある。

僕も同じ問題にハマった。F7を押すたびに音量がミュートされる。カタカナ変換どころではない。

原因を調べると、キーボードドライバの設定でファンクションキーの動作が逆転していることがわかった。

具体的には /sys/module/hid_apple/parameters/fnmode という設定値が 3 になっており、F1〜F12キーがメディアキー(音量調節・輝度調節など)として優先的に動作してしまっている状態だった。

fnmodeの値の意味

動作
1Fnキーなしでメディアキー動作
2Fnキーなしでf1〜F12として動作(今回の目標)
32と同じ設定のはずだが環境によって挙動が異なる

解決方法

ステップ1:現在の設定を確認する

まずターミナルを開いて以下を実行する。

cat /sys/module/hid_apple/parameters/fnmode

31 が返ってきた場合、ファンクションキーが正しく動作していない可能性が高い。

ステップ2:fnmodeを2に変更する

以下のコマンドを実行する。

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

パスワードを求められるので入力する。

これでF7キーがF7として認識されるようになり、Mozcでカタカナ変換ができるようになる。

ステップ3:動作確認

テキストエディタなどでひらがなを入力し、F7を押してカタカナに変換できるか確認する。


注意点:再起動すると設定がリセットされる

上記の方法は一時的な設定変更だ。再起動すると元に戻ってしまう。

恒久的に設定を維持するには、以下のファイルを作成する。

sudo nano /etc/modprobe.d/hid_apple.conf

ファイルに以下の1行を追記する。

options hid_apple fnmode=2

保存して閉じたあと、以下を実行して設定を反映させる。

sudo update-initramfs -u

次回起動時から自動的に fnmode=2 で起動するようになる。


よくある失敗と対処法

fnmodeを変更したら日本語入力ができなくなった

僕が実際にハマったケースだ。fnmode を変更した直後、IBusのデーモンが正常に動作しなくなり日本語入力ができなくなった。

対処法はパソコンを再起動すること。再起動後に改めて fnmode=2 を設定すると正常に動作した。

# 再起動後に再度実行
echo 2 | sudo tee /sys/module/hid_apple/parameters/fnmode

コマンドを実行してもF7が効かない

xev コマンドでキーコードを確認してみよう。

xev | grep keycode

小さいウィンドウが開くので、そこにマウスを乗せた状態でF7を押す。F7 と表示されれば正しく認識されている。別のキーコードが返ってくる場合は、キーボードの設定をさらに確認する必要がある。


まとめ

Linux MintでMozcのF7カタカナ変換が効かない原因は、ほぼ間違いなくfnmodeの設定だ。

  1. cat /sys/module/hid_apple/parameters/fnmode で現在値を確認
  2. echo 2 | sudo tee /sys/module/hid_apple/parameters/fnmode で変更
  3. 恒久設定は /etc/modprobe.d/hid_apple.conf に記述

正直に言うと、Windowsなら何も考えなくてもF7は動く。LinuxはこういうところでWindowsやMacに負けていると思う。ただ、原因さえわかってしまえば解決は難しくない。同じ問題で詰まっている人の参考になれば幸いだ。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です