XF86キーを処理するプロセスは何ですか?

XF86キーを処理するプロセスは何ですか?

キーボードにマルチメディアボタンがあり、私が本当に興味を持っているキーは明るさキー(XF86MonBrightness {UP | DOWN})です。bspwm何も設定せずにウィンドウマネージャを使用していますが、sxhkdrc明るさが自動的に処理され、キーのデフォルト動作を無効にして自分で設定したいと思います。

tty明るさキーは、デスクトップ環境やウィンドウマネージャなしで動作します(コンソールで動作することを意味します)。

また、私のキーがXF86KbdBrightness {Up | Down}の代わりにXF86MonBrightness {Up | Down}を生成するのはなぜですか?

答え1

コメントで、あなたの/sys/class/backlight/ディレクトリにacpi_video0とが含まれていると述べたintel_backlight

これは、バックライトの明るさを調整するための2つのネストメカニズムがある可能性があることを意味し、これはカーネルの中断の原因である可能性が高いです。

カーネル起動オプションを使用してバックライト制御機能を変更できますacpi_backlight=videovendorおよびの4つの可能な値を使用できますnativenone

カーネルソースコードでは、ファイルにdrivers/acpi/video_detect.cカーネル開発者がこれらのモデルを特定の方法で設定する必要があると聞いたので、このオプションが自動的に特定の値に設定される長いシステムモデルのリストを見つけることができます。

たとえば、特定のモデルの項目が.callback = video_detect_force_vendor特に明示的に指定しない限り、起動オプションが自動的に適用されることを示す場合です。acpi_backlight=vendorシステムモデルを明らかにしていないので、このリストに移動して手がかりが得られるかどうかを確認できます。たとえば、システムがすでにリストされているモデルシリーズと同じモデルシリーズに属している場合は、同じモデルを試してみることができます。オプションはリストされたモデルに自動的に適用されます。

このリストには、ラップトップに似たバックライトコントロールを誤って報告することが知られている一部のデスクトップも含まれています。

あるいは、acpi_backlight=各起動オプションの値を順番に試して、その値が適切であることを確認することもできます。カーネル停止の問題を取り除く値を見つけたら、dmidecodeシステム出力とともにLinux ACPIサブシステムメンテナンス担当者に電子メールを送信し、有効なオプションを決定できます。

あるいは、基本的なCプログラミング技術があり、カスタムカーネルを構築したい場合は、パッチを直接作成してテストすることもできます。適切なリストにシステム情報を追加するだけで、必要なオプションが自動的に適用されます。 Linux ACPI サブシステム管理者は、このようなパッチを高く評価します。 (これは理想的な「初心者の最初のカーネルパッチ」になります!)

関連情報