1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ubuntu24.04でAutoKeyを使い矢印キーを変換+f,g,h,jキーにマッピングする

Posted at

はじめに

こんにちは、もちもちMAXです。
私は普段、AutoHotKeyを使って矢印キーを「変換キー」+「f,g,h,j」で代替できるようにしています。矢印キーを入力する時に、手をホームポジションから動かしたくないんですよね。で、この前Ubuntuを導入する機会がありセットアップをしていたのですが、どうもWindowsのようにAutoHotKeyを入れることができないようで、かなり困りました。
そこで、AutoKeyを使って矢印キーのマッピングを実現したので、本記事に書き残しておきます。

やりたいこと

下記の通り、矢印キーをマッピングする

  • ← = 「変換」+「f」
  • ↑ = 「変換」+「g」
  • ↓ = 「変換」+「h」
  • → = 「変換」+「j」

今回は上記をAutoKeyで実現します。

手順

ざっくりとした手順は下記の通りとなります。

  1. ディスプレイサーバをX.OrgからX11に変更する
  2. キーボードの入力を日本語にする
  3. 「変換」キーを仮想キーの「Hyper」にマッピングする
  4. AutoKeyでマッピングの設定をおこなう

次にそれぞれの手順の詳細を説明します。

ディスプレイサーバをX.OrgからX11に変更する

Ubuntu 22.04からディスプレイサーバがX.Org(X11)からWaylandに変わりました。正直ディスプレイシステムというのが何かはあまり分かってないのですが、AutoKeyはWaylandでは正しく動かないようです。これに気付かなかったために苦しむことになりました。
まずは、下記のコマンドでディスプレイサーバがどうなっているかを確認します。

echo $XDG_SESSION_TYPE

この表示がX11であれば、問題ありませんがWaylandとなっている場合はX11に変えましょう。

ディスプレイサーバをX11に変える場合、ubuntuを再起動してログイン時の画面右下にある歯車アイコンを選択しUbuntu on Xorgを選べばOKです。
image.png

キーボードの入力を日本語にする

ディスプレイサーバを変えた影響なのか、キーボード入力がUSになっていたり色々とおかしくなっていました。もし、特に異常ない場合は本項目はスキップして良いと思います。

私の場合は、設定->キーボード->入力ソースを日本語(Mozc)としたら日本語に戻りました。

Screenshot from 2024-10-31 15-44-04.png

あとは、設定->地域と言語も日本語にしておきます。(一応)

Screenshot from 2024-10-31 15-44-49.png

「変換」キーを仮想キーの「Hyper」にマッピングする

次に、「変換」キーを仮想キーの「Hyper」にマッピングしますが、まず先にこの手順が必要な理由を説明します。一度、AutoKeyの画面を見てみましょう。
Screenshot from 2024-10-31 15-50-34.png
これは、最終目的である「変換」キー+「f,g,h,j」キーを矢印キーにマッピングする際の画面ですが、画面中央に「Control」「Alt」「Shift」「Super」「Hyper」「Meta」キーが並んでおり、その下にはPress to Setボタンで任意のキーが選べるようになっています。AutoKeyでは、任意のキーと上述の6つのキーの組み合わせが選べるようになっています。この6つには「変換」キーは入っていません。そのため、「変換」キーを6つのキーのいずれかにマッピングしておかないと「変換」+「f,g,h,j」という組み合わせが選べないのです。6つのいずれかであればよいので、「変換」キーのマッピングは「Hyper」でなくても「Super」や「Meta」などでも問題ありません。

それでは改めて「変換」キーを「Hyper」キーにマッピングしましょう。
Screenshot from 2024-10-31 15-47-28.png
/usr/share/X11/xkb/symbolsの中のinetpc辺りのファイルにkey <HENK> {[ Henkan ]}という行があるはずなので、その行をkey <HENK> {[ Hyper_L ]}に書き換えましょう。(画像の80行目)
そして次のコマンドを実行しましょう。

sudo setxkbmap -layout jp

以上で、「変換」キー「Hyper」へのマッピングは終了です。

AutoKeyでマッピングの設定をおこなう

とりあえずAutoKeyのインストール

sudo apt install autokey-gtk

AutoKeyを起動したら画面左上の新規ボタンからScriptを選び、任意の名前を入力します。
Screenshot from 2024-10-31 15-50-09.png

次に画面右下にあるSet Hotkeyを選び、HyperとPress to Setで任意のキーを入力します。
Screenshot from 2024-10-31 15-50-34.png

最後に、scriptを記述します。keyboard.send_keys("<right>")
Screenshot from 2024-10-31 15-51-10.png

あとは、矢印キーの数(4つ)だけ同じようにscriptを作成すれば終了です。

さいごに

今回はUbuntu24.04で矢印キーをマッピングする方法について説明しました。普通にAutoHotKeyを使えば良いと思っていたので、なかなか上手くいかず苦労しました。本記事で同じように悩んでいる人の助けになれば幸いです。

ブログ↓
https://mochinochikimchi.com

自作アプリLP↓
https://mochinochikimchi.com/applications/mealmotion/index.html

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?