F1 キーを使用するコンソール アプリケーションを作成しています (ヘルプ用)。残念ながら、(KDE の) Konsole はこのキーを使用しませんが、Gnome ターミナルは使用するため、アプリケーションから F1 キーにアクセスできなくなります。F1 キーが既に GUI 側 (Gnome ターミナル) にマッピングされているかどうかを検出する方法はないと思いますが、もしあれば、その答えはこの質問を未然に防ぎます。:)
したがって、私の次の最善の策は、Gnome ターミナル内で実行しているかどうかを検出することです。それを行う方法はありますか?私は主に Ruby 内からこれを収集することに関心がありますが、シェルまたは環境変数、または仮想ファイルシステム (/proc、/dev など) を介して実行できる場合は、それで十分です。
私はこれを行うための信頼できる方法を望んでいますが、Gnome ターミナルがラッピング ターミナルであると合理的に推測できる手がかりを得るために環境変数を grep するなどの「最良の推測」アプローチに落ち着くことができます。
追加情報: 他のキーも Gnome ターミナルによって「盗まれます」。Gnome ユーザー向けに、代替キーに関する何らかの情報メッセージを表示するつもりです。