Alt_Rをmod4として使用した後、コンソールに切り替えることはできません。

Alt_Rをmod4として使用した後、コンソールに切り替えることはできません。

正しいALTキーを「mod4」として使いたいです。特に、「クール」ウィンドウマネージャは、基本的にほとんどのWMコマンドに対してmod4を修飾子として使用し、このアイデアは本当に気に入っています。

しかし、問題があります。一度追加すると、次のようになります。

xmodmap -e 'add mod4 = Alt_R'

これにより、CTRL + ALT + F2を使用してXからテキストコンソールに切り替えることはできません。

(これを行うには、常に右のALTではなく左のALTを使用します。実際には、mod4に右のALTを割り当てる前にそのキーを使用したことはありません。)

たとえば、次のようにXからテキストコンソールに切り替えることができるため、これは実際にショートカット/修飾子の問題です。シフト注文する。たとえば、次は常に機能します。

chvt 1

Mod4をクリアすると次のようになります。

xmodmap -e 'clear mod4'

CTRL+ALT+F2(再びALTの左)を使ってテキストコンソールに切り替えることができます。

しかし、もちろん、私はクールな基本mod4 + ... "クール"ショートカットを取得しません。

デフォルトでは、正しいALTをmod4として使用でき、うまく機能します。またはmod4をクリアし(修飾子に正しいALTを割り当てない)、CTRL + ALT + F2を使用してテキストコンソールに切り替えることができます。

しかし、両方の方法を持つことはできません。

右のALTをmod4に設定すると、CTRL +左のALT + F2がテキストコンソールに切り替えられない理由を知っていますか?

これは完全です。xmodmap(CTRL+左ALT+F2いいえ布材料):

shift   Shift_L (0x32), Shift_R (0x3e)
lock
control Control_L (0x25), Control_L (0x42), Control_R (0x69)
mod1    Alt_L (0x40), Alt_L (0xcc), Metal_L (0xcd)
mod2    Num_Lock (0x4d)
mod3    
mod4    Alt_R (0x6c)
mod5    ISO_Level3_Shift (0x5c), Mode_switch (0xcb)

mod4をもう一度消去すると、テキストコンソールにうまく切り替えることができます。

他の設定を使用したくありません。

  • 右のALTはmod4です。

  • mod4+...素晴らしいショートカット

  • CTRL+ALT+F{1,9} 別の VT に切り替え

もちろん、今では「chvt」を使ってテキストコンソールに切り替えることができますが、Xが止まるとそれほど良くありません。

私はいつもテキストコンソールに切り替えることができ、Xが停止したときにXを終了する機能が好きでした(スラックウェアの初めからこれをやってきました)。

答え1

同様のウィンドウマネージャ(xwem、ratpoison)を初めて使用しようとしたときに、最初はウィンドウマネージャのxmodmap修飾キーを取得することに関連する設定ガイドラインに従おうとしましたが、xmodmap私のシステムで使用している場合は、システム(ALTLinuxディストリビューション)では常にxmodmap

そのため、必要なキーを「Hyper」とマークするXKBオプションを見つけて、xwemまたはratpoison構成で「Hyper」修飾子を使用しました。

私の場合、オプションは次setxkbmapのとおりです。

 -option altwin:hyper_win

設定に追加したときに保存したコメントは次のとおりです。

xemacs-xwemはHyperを使用しているため、WINキーを使用する定義済みのXKBマップ(xkb / symbols / altwin)を見つけました。

後で正しいコントロールをHyperとして使用するなど、別のXKBマップを作成することもできます(これにより、私の手は正しいコントロールを使用します。今は私の手がこれを無視します)。

私はこれがxmodmap(XWEMドキュメントで言及されているように)を通るよりもXKBを通して直接スーパーキーを得るよりきれいな方法だと思います。その理由は次のとおりです。

  1. 修飾キーのxmodmap構成は意図を表現するよう強制するので、あまり良くないようです。任意の番号付き修正ビットについて何かを言う必要がありますが、これらの技術的な問題については考えたくありません。 1つだけが必要です。「追い越し」 内部をあいまいに操作する代わりに修飾子! xmodmapで結果を得るには、2〜3つのあいまいな説明を提供する必要がありますが、論理的には単一の希望と仕事です。 (Control_RがmodNにマップされている場合、1つのxmodmapステートメントだけでは不十分です。XEmacsの警告(FIXME:INSERT!)を参照してください。いくつかの技術的な制限があります。)

  2. 一部の人々はXKBとxmodmapが互いにうまく機能しないと言っているので、それらを混在させると、すべてのXプログラムがうまく機能せず、一貫して動作しません(ここでFIXMEリンクを提供する必要があります)。

/usr/share/X11/xkb/symbols/altwin誰もが興味があれば、関連定義は次のとおりです。

partial modifier_keys 
xkb_symbols "hyper_win" {
    key <LWIN> {    [   Hyper_L         ]   };
    key <RWIN> {    [   Hyper_R         ]   };
    modifier_map Mod4   { Hyper_L, Hyper_R };
};

関連情報