キーボードの左Ctrlと左Altを入れ替えるにはどうすればよいですか?


回答:


47

これを手動で行うには、ホームディレクトリに.Xmodmapというファイルを作成します。ターミナルからコマンドを使用してこれを行うことができます

~$ gedit ~/.Xmodmap

ファイルが作成され、geditで開かれます。ファイルに次の行を追加します。

clear control
clear mod1
keycode 37 = Alt_L Meta_L
keycode 64 = Control_L
add control = Control_L Control_R
add mod1 = Alt_L Meta_L

ファイルを保存して、geditを終了します。次回ログインすると、新しいキーマッピングがアクティブになります。設定をすぐに有効にするには、次のコマンドを実行します。

~$ xmodmap ~/.Xmodmap

上記のキーコードがコンピューターによって異なる可能性があります。上記が機能しない場合は、コマンドラインからxevプログラムを実行してみてください。Xevは、画面の隅に新しい小さなウィンドウを生成します。キーボードのキーを押し始めると、そのキーを押したときのすべてのキーマッピング情報が取得されます。

~$ xev

たとえば、xevの実行中に「q」を押すと、次の出力が表示されます。

KeyRelease event, serial 33, synthetic NO, window 0x4c00001,
root 0xb6, subw 0x0, time 9127480, (21,-17), root:(22,36),
state 0x0, keycode 24 (keysym 0x71, q), same_screen YES,
XLookupString gives 1 bytes: (71) "q"
XFilterEvent returns: False

キーコード24は、私たちが求めている情報です。xevの実行中に左のCtrlキーと左のAltボタンを押して、それぞれのキーコードを取得し、上記で使用したものと同じであることを確認します。

お役に立てば幸いです。


Ubuntu 16.04にはファイルが存在しません。
MERose

1
これは16.04で動作していましたが、17.10では動作しませんでした。
ニクラス

2
xmodmap ~/.Xmodmap再起動するたびに再実行する必要があります。どうすれば自動化できますか?
ムウィラブアティム

askubuntu.com/a/749662/894748 @MwirabuaTimはこれを確認します
VnC

16

の苦痛になりたくない場合はxmodmap、gnomeの設定を使用して行うこともできます。

sudo apt-get install gnome-tweak-tool、開き、入力に移動し、Ctrlキーの位置オプションを左AltとCtrlの入れ替えに変更します。

ここに画像の説明を入力してください

おそらくを介してこのようなことを行うこともできますがgsettings、正確な構成エントリ名はわかりません。


私はubuntu gnome 15.10で微調整ツールを使用しようとしていますが、「左コントロールで左勝ちキーを交換」を無視します。何か案は?L-SUPERを交換しようとしていますが、それらは同じキーであると想定しています。
ドリ

ストローを握りしめますが、再起動するか、ログアウトしてウィンドウマネージャに再度ログインする必要があるかもしれません
hwjp

これを試してみましたが、違いはありませんでした。–
Dori

4
Ubuntu 17.10では「入力」が削除されたようです。現在は「キーボードとマウス」->「追加のレイアウトオプション」
-Wurstsalat

今では、「追加のレイアウトオプション」の下だ
ZiglioUK

10

単純なテキストエディタを使用して〜/ .Xmodmapを作成し、Xserverを再起動するだけです。


!
! based on: http://www.emacswiki.org/emacs/SwapControlAltAndCapsLock#toc8
!

!----------------------------------------------------------
! Swap Control and Alt keys, both sides
!----------------------------------------------------------

! First clear all modifiers & control
clear control
clear mod1
clear mod4

! Swap Control_L and Alt_L
keycode  64 = Control_L
keycode  37 = Alt_L Meta_L

! Menu becomes Alt_R Meta_R (AltGr)
keycode 135 = Alt_R Meta_R

! Define Control_R and Alt_R similar to Control_L and Alt_L
keycode 108 = Control_L
keycode 105 = Alt_L Meta_L

! We need to set keycodes first, as some programs (emacs!) read
! the key names and seem to ignore what's below.
add mod1    = Alt_L Alt_R Meta_L Meta_R
add mod4    = Super_L Super_R
add control = Control_L Control_R


!------------------------------------------
! Caps_Lock becomes an additional BackSpace
!------------------------------------------
remove lock = Caps_Lock
keysym Caps_Lock = BackSpace

これは、ChromebookのCrouton Ubuntu Unityのチャンピオンのように機能しました。xmodmap ~/.Xmodmapロードするために実行する必要がありました。再起動するたびに実行する必要があるかどうかはわかりません。
swt83

@ swt83:これに興味があるかもしれません:github.com/frgomes/carpalxは、必要に応じてキーボード全体を再定義する方法を示しています。
リチャードゴメス

0

ターミナルアプリケーションとGUIアプリを使用しているときにCtrlキーを通常の位置に保ちたい場合は、Kintoを見ることができます。

https://github.com/rbreaves/kinto

基本的に何をしているのか、要点は比較的単純ですが、systemdを使用し、アクティブなアプリ名をリッスンするxpropでサービス/スクリプトを作成するx11ベースのシステムで動作するインストーラーKintoを作成しました。

https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb

単一のソリューションでWaylandとx11をサポートしたいのですが、xpropはその世界向けではありませんでした。

KDE Plasma 5 Waylandの概念実証は次のとおりです。 https://github.com/rbreaves/applet-window-title/commit/ff17e694579a52a9848d6bea87b2d11f22033718

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.