Linux でウインドウの中央にマウスカーソルを移動させる

前提

  • Linux 環境は以下です

             /////////////                heyyou@thinkpad-popos 
         /////////////////////            --------------------- 
      ///////*767////////////////         OS: Pop!_OS 21.10 x86_64 
    //////7676767676*//////////////       Host: 20XKCTO1WW ThinkPad T14 Gen 2a 
   /////76767//7676767//////////////      Kernel: 5.15.15-76051515-generic 
  /////767676///*76767///////////////     Uptime: 12 hours, 42 mins 
 ///////767676///76767.///7676*///////    Packages: 69989 (apt), 377 (nix-user), 17 (flatpak), 7 (snap) 
/////////767676//76767///767676////////   Shell: zsh 5.8 
//////////76767676767////76767/////////   DE: GNOME 40.5 
///////////76767676//////7676//////////   WM: Mutter 
////////////,7676,///////767///////////   WM Theme: Pop 
/////////////*7676///////76////////////   Theme: Sweet-Dark-v40 [GTK2/3] 
///////////////7676////////////////////   Icons: Sweet-cursors [GTK2/3] 
 ///////////////7676///767////////////    Terminal: kitty 
  //////////////////////'////////////     Terminal Font: HackGenNerdConsole 16.0 
   //////.7676767676767676767,//////
    /////767676767676767676767/////                               
      ///////////////////////////                                 
         /////////////////////
             /////////////
  • 以下のツールをインストール済みであること

    • xdotool

手順

1. xdotool mousemove コマンドを実行する

xdotool mousemove --window $(xdotool getwindowfocus) --polar 0 0

解説

$(xdotool getwindowfocus) でアクティブウインドウの WindowID を取得しています。


# 実行例
$ xdotool getwindowfocus                                          
8388623

--polar 0 0 で window の中央を指定しています。
オプション指定をせずに 0 0 を指定すると window 左上を起点するため、マウスカーソルを左上に移動させることができます。

おまけ

AutoKey と組み合わせてマウスカーソルをウインドウ中央に移動させるショートカットを作成する

手順

AutoKey にて以下のスクリプトを作成し、ショートカットを割り当てます。

from subprocess import PIPE, run
get_window_cmd = ['xdotool''getwindowfocus']
window_num = run(get_window_cmd, stdout=PIPE, stderr=PIPE, universal_newlines=True)
move_window_cmd = ['xdotool''mousemove''--window', window_num.stdout, '--polar''0''0']
run(move_window_cmd)

AutoKey の設定方法については以下の記事がとても丁寧で参考になるかと思います。

Linuxで特定のフレーズを自動置換したりショートカットにスクリプト実行を割り当て可能なAutoKeyの使い方

この記事が気に入ったらサポートをしてみませんか?