Waylandの特殊文字(ウムラウト)キーの再マッピング

Waylandの特殊文字(ウムラウト)キーの再マッピング

Xorgで右クリックして、、(および大文字)をそれぞれ使用してドイツ語のウムラウト(例:äüö)を入力~/.Xmodmapできるようにしたいと思いました。CtrlauoShift

remove Control = Control_R
keycode 105 = Mode_switch
keysym e = e E EuroSign
keysym c = c C cent
keysym a = a A adiaeresis Adiaeresis
keysym o = o O odiaeresis Odiaeresis
keysym u = u U udiaeresis Udiaeresis
keysym s = s S ssharp

Waylandはこれを行う方法を見つけることができませんでしたxkb。これまではキーボードバリアントのみを設定してaltgr-intlから、右Alt+を使用してqäを取得できます。

Swayも使用しているため、++を大文字バージョンAltとして使用することはできません。 Swayでは、++がウィンドウを閉じるショートカットで、再マップしたくないからです。Shiftq

それでは、以前にXorgで行ったように、コレクションを右にCtrl+ a、、、、uそれぞれどのように配置しますか?o

答え1

このソリューションはGitHubユーザーRedSoxFanによって提供されました。発音区別記号を使用Alt Grおよび/またはCaps lock作成し、Wayland/Swayで作業します。大文字の分音符が表示されますShift。解決策は、カスタムキーボードレイアウトを使用することです。

以下を保存してください。$HOME/.config/xkb/symbols/us-german-umlaut

default partial alphanumeric_keys
xkb_symbols "basic" {
    include "us(altgr-intl)"
    include "level3(caps_switch)"
    name[Group1] = "English (US, international with German umlaut)";
    key <AD03> { [ e, E, EuroSign, cent ] };
    key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
    key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
    key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
    key <AC02> { [ s, S, ssharp ] };
};

次に、揺れる構成で次のように使用します。input type:keyboard xkb_layout us-german-umlaut

答え2

私はあなたの目標を達成する方法を知りません。精密要求しますが、ComposeキーをR-Ctrlに割り当てると、同様の結果が得られます。

Gnomeでは、gnome-tweaksツールを使用してこれを行うことができます。シナモンは覚えていないが、私も書いたことがあるので方法があると確信する。 (他のDEについてはよくわかりません。そしてあなたのように私はWaylandについてよく知りません。)

R-Ctrl " Aその後、äなどを取得するために入力できます。これはコードではなくシーケンスであることに注意してくださいR-Ctrlそれから "それから A

以前のソリューションほど便利で高速ではありませんが、より柔軟でøæ⋄→€°・… ´≠のような他の多くの素晴らしい文字にアクセスできます。

答え3

これは実際にはすべての「一般的な」Linuxバージョンで非常に簡単です。

現在キーボードが使用している「シンボル」ファイルを探します。

最近Dell Insipiron 3780を購入し、アメリカの国際キーボードと一緒に注文しました。キーボードには5にユーロ記号があります。また、ワイヤレスロジクールワイヤレスKB /マウスコンボモデルY-R0042を使用しています。 5番(5番右下に位置)にはヨーロッパ式のキーがありますが、それ以外は通常のアメリカ式キーボードのように見えます。

私が選んだ」英語(アメリカ、EUR 5)キーボードレイアウト。

このレイアウトはデフォルトでファイルで定義されています。/usr/share/X11/xkb/symbols/us

ファイルの構文は、定義されたキーボードを継承する機能(より良い単語がない)に依存することがわかります。したがって、この例では、「English(US、Euro 5)」が「English(US)」から継承されます。すぐ上に定義されています。

この定義では、すべての「一般」文字がキーボード上の位置に応じて定義(またはより良い単語として認識)されることがわかります。

私がしたことは、実際に重要な4行を編集し、そのキーにä、ü、ö、ẞを追加しただけです。私の考えでは、このキーは既存のキーであるa、u、o、sでした。

その後、「right-alt」(または「Alt Gr」)キーを押しながら対応する英語文字を入力してアクセスできます。

したがって、次は4行の編集結果です(最後の2つの要素(udiaeresis、Udiaeresisなど)を各行が空になる前に追加しました)。

key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S, U00DF, NoSymbol ] };

「sudo」(root)で編集する必要があります。保存したら、キーボードを再ロードする必要があります。サインアウトしてから再びShazamにログインします。

これは私が見た中で最も簡単な解決策です。まず、元のファイルをバックアップしておくことをお勧めします。

関連情報