現在Antergos Linuxを実行しています。私が望む設定は以下の通りです。
CAPSを押して放すと、ESCが送信されます。
CAPSの組み合わせとCAPS + h、CAPS + j、CAPS + k、およびCAPS + lの組み合わせは、それぞれ左、下、上、右に転送されます。 CAPSが解放された後、ESCは送信されません。
もちろん、ここでの目標は、VIMスタイルのないプログラムからいくつかのVIMスタイルバインディングを取得することです。
ここではxcapeが役に立つようです。
https://github.com/alols/xcape
しかし、これらの例は私が望む方向に進んでいませんでした。
助けてくれてありがとう。
編集:ここで非常に便利な答えを見つけました。
https://unix.stackexchange.com/a/163675/267068
必要に応じてCAPS + hjklを取得できるようにプログラムを変更する方法を見つけるのに役立つ人はいますか?その答えのように、Super_Lの代わりにHyper_Lを使用し、Hyper_L + hjklを左、下、上、右にマッピングできますか?
答え1
私も同じことをしたかったし、数回検索して実験した最後についに成功しました。
ソリューション1
以下の解決策2を参照してください。より良いかもしれません。
マッピングCaps_lock+ hjkl:
フォローするこの回答そして設定を追加してください。アメリカのキーボードレイアウトを使用している場合は、この
us
ファイルに追加し、興味のない他のキーバインディングをスキップする必要があります。それからsetxkbmap -layout us
。Caps_lockのようにEsc:
ランニング
xcape -e 'ISO_Level3_Shift=Escape'
。この行をシステムに追加すると、/etc/profile
再起動後に手動で実行する必要はありません。
解決策2(おそらくより良い)
IntelliJでキーバインディングが利用できないことに気づくまで、ソリューション1に満足していました。これは大きな数値でした。結局、私はまだIntelliJで利用可能であり、xmodmap
justを使って作業を実行できることに気づきました!xcape
マッピングCaps_lock+ hjkl:
~/.xmodmap
たとえば、次の内容でファイルを作成します。keycode 66 = Mode_switch keysym h = h H Left keysym l = l L Right keysym k = k K Up keysym j = j J Down keysym u = u U Prior keysym i = i I Home keysym o = o O End keysym p = p P Next
最後の4行はスキップできます。あなたにも役に立つと思い、貼り付けました。実際、私は本当に得たいです。Caps Lockの強化Linuxで作業してください。
それから
xmodmap ~/.xmodmap
。Caps_lockのようにEsc:
ランニング
xcape -e 'Mode_switch=Escape'
。任意に選択できる:
キーバインディングを手動で適用したくない場合は、上記の2つのコマンドを
/etc/profile
.
答え2
ステップ3記号を使用して、文字に矢印を割り当てます。hjkl
インストールgnome-tweaks
ツール
gnome-tweaks内の「追加レイアウトオプション」に進み、「Caps Look」をキーで3番目のレベルを選択します。
次に端末を開き、/usr/share/X11/xkb/symbols/
コンピュータに保存されているすべてのキーボードレイアウトに移動します。
レイアウトのバックアップ
cp us us_old
ファイルをルートに変更
sudo nano us
配列の3番目の値がキーです。
key <AC01> {[a,A,Home]};
key <AC02> {[s,S,BackSpace]};
key <AC03> {[d,D,Delete]};
key <AC04> {[f,F,End]};
key <AC05> {[g,G]};
key <AC06> {[h,H,Left]};
key <AC07> {[j,J,Down]};
key <AC08> {[k,K,Up]};
key <AC09> {[l,L,Right]};
答え3
/etc/profileでうまく機能しなかったので、@matrinicaの答えを拡張して、次のように(ubuntu / gnomeで)成功することができました。
ステップ0:xclipとxcapeのインストール
sudo apt install xclip
sudo apt install xcape
ステップ1:〜/ .xmodmapを作成する
次のテキストをコピーします。
keycode 66 = Mode_switch
keysym h = h H Left
keysym l = l L Right
keysym k = k K Up
keysym j = j J Down
コンテンツを含むファイルを作成します。
touch ~/.xmodmap
xclip -o > ~/.xmodmap
ステップ2:スクリプトを作成する
次のテキストをコピーします。
xmodmap ~/.xmodmap
xcape -e 'Mode_switch=Escape'
コンテンツを含むファイルを作成します。
touch ~/xmodmap.sh
xclip -o > ~/xmodmap.sh
ファイルを実行可能にします。
chmod +x ~/xmodmap.sh
ステップ3:自動開始項目を作成する
次のテキストをコピーします。
[Desktop Entry]
Type=Application
Exec=sh -c "$HOME/xmodmap.sh"
Hidden=false
X-GNOME-Autostart-enabled=true
Name=xmodmap
Comment=xmodmap script
コンテンツを含むファイルを作成します。
touch ~/.config/autostart/xmodmap.deskop
xclip -o > ~/.config/autostart/xmodmap.deskop
メモ:
この方法はウェイランドでは機能しないため、将来的には適していません。同様の結果を得るWayland互換の方法については、以下を参照してください。
https://askubuntu.com/a/898462
https://wiki.archlinux.org/index.php/Keyboard_input
https://realh.co.uk/wp/linux-keymap-hacking/
Waylandと互換性のあるきちんとした方法がある場合は、ここに投稿してください。