カーソルの下のウィンドウをスナップ/最小化/最大化するにはどうすればいいですか?

カーソルの下のウィンドウをスナップ/最小化/最大化するにはどうすればいいですか?

Ubuntuのデフォルトのキーボードショートカットは、ウィンドウを最大化(Super+ Up)またはサイドにスナップ(Super+ Left/Right)するものであり、現在アクティブなウィンドウ

その間マウスジェスチャの設定使用してlogiops、これは奇妙な動作だと分かりました。むしろ最大化/最小化/スナップ効果が欲しいですマウスポインタの下のウィンドウスクロールホイールと同じように。

これを行う方法、例えばxdotool?

答え1

xdotool現在のマウス位置 ( ) にあるウィンドウを取得するには、または+getmouselocationコマンドを使用できます。windowminimizewindowactivatekey


私は小さなスクリプトを作成しました~/bin/xdowindow(そして を使用して実行可能にしましたchmod +x):

#!/bin/sh

[ "$1" = "Maximize" ] && set -- Up

eval $(xdotool getmouselocation --shell)

case $1 in
    Minimize)
        xdotool windowminimize "$WINDOW"
        ;;
    Left|Right|Up)
        xdotool windowactivate "$WINDOW" key --clearmodifiers super+$1
        ;;
    *)
        exit 1
        ;;
esac

カスタムキーボードショートカットを設定します。

カスタムショートカット

そして、logiopsセットアップでそれらを使用します:

          {
            direction: "Right";
            mode: "OnRelease";
            action = {
              type: "Keypress";
              keys: [ "KEY_LEFTALT", "KEY_M" ]; // snap window to right
            }
          },

注記:

xdotool 一緒には機能しませんwayland、おそらくydotool使えるでしょう。wayland自分で使ってみてテストするか、他の誰かが参加してツールを翻訳するかもしれません。

関連情報