web-dev-qa-db-ja.com

Linux、Ubuntu&Appleアルミニウムキーボード:チルダで大きく/小さく再マップ

私はAppleアルミニウムキーボードを持っています。の左側に 1 キー私は小さい/大きい(< >)キー、墓/チルダではありません(` ~)。

xmodmapが機能しません:レイアウトの切り替え(setxkbmapで実行)により、xmodmapの変更がリセットされます。 .Xmodmapファイルも役に立ちません。

チルダキーを再マップするにはどうすればよいですか?

6
kolypto

xmodmap Way

まず、 this outを確認します。

これが私のバージョンの_.xsession_です:

_#! /usr/bin/env sh
GTK_IM_MODULE=xim
QT_IM_MODULE=xim
xmodmap ~/.Xmodmap-Apple
_

および対応する_~/.Xmodmap-Apple_(ロシア語版の場合):

_keycode 94 = Grave asciitilde Cyrillic_io Cyrillic_IO
keycode 191 = Print Sys_Req Print Sys_Req Print Sys_Req
keycode 192 = Scroll_Lock NoSymbol Scroll_Lock NoSymbol Scroll_Lock
keycode 193 = Pause Break Pause Break Pause Break
keycode 49 = less greater less greater
keycode 108 = Multi_key Alt_L Multi_key Alt_L
_

setxkbmap方法

Linuxでは、setxkbmapを使用してキーボードレイアウトを切り替えます。残念ながら、setxkbmapxmodmapは連携できません。互いの変更をリセットします:(次のいずれかを選択する必要があります:

  • レイアウトを切り替えないでください
  • レイアウトを切り替えるたびにxmodmapを呼び出します(またはsetxkbmapを置き換えるスクリプトを作成します)
  • キーボードのxkbキーマッピングを変更します。

後者を使用します。まず、使用しているレイアウトを確認します。

_$ setxkbmap -print
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
        xkb_types     { include "complete+caps(internal)"       };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc+us+ru:2+inet(evdev)+altwin(meta_win)+group(alt_shift_toggle)+compose(ralt)+eurosign(e)+terminate(ctrl_alt_bksp)+Macintosh_vndr/Apple(alupckeys)"    };
        xkb_geometry  { include "pc(pc104)"     };
};
_

シンボルマップは次のとおりです:xkb_symbols ... Macintosh_vndr/Apple(alupckeys)

Ubuntuでは、Appleキーボードはここにあります: '/ usr/share/X11/xkb /symbols/Macintosh_vndr/Apple '。まず、このファイルをバックアップします。このファイルにはいくつかのセクションがあり、それぞれが次のように始まります。

_xkb_symbols "extended" {
xkb_symbols "laptop" {
xkb_symbols "laptop_bad_switch" {
xkb_symbols "alukbd" {
xkb_symbols "alupckeys" {
_

後者のマッピングである_"alupckeys"_は、 F13-F15 と PrintScreen、 ScrollLock、 Pause。これらのキーがない場合に使用してください:)

上記のコマンド出力から取得したセクションを選択し、セクションの最後の_}_の前に以下を追加します。

_    key <LSGT> { [ Grave, asciitilde, Grave, asciitilde ] };
};
_

Xを再起動します。Yeehaw、チルダキーを正しい場所に置いてお楽しみください:)

このコマンドも役立ちます:

_$ setxkbmap -option "Apple:alupckeys" -print | xkbcomp - $DISPLAY
_
6
kolypto

Ubuntuの公式ドキュメントには、このトピック専用のページがあります: Apple Keyboard

Ubuntuのバージョンに応じたいくつかの修正を以下に示します。

1
Cavaz