私はKDEで利用可能な「Pack Window」ショートカットがあり、うまく動作することを発見しました:
ウィンドウを画面の隅に直接移動するショートカットを追加したいです。現在のウィンドウを左下に移動するには、Pack Window Left (Ctrl+Num4)
+などの操作を実行する必要があります。Pack Window Down (Ctrl+Num2)
Pack Window Bottom-Left (Ctrl+Num1)
たとえば、ショートカットを使用してウィンドウをこのように移動したいと思います。そして決定的にいいえウィンドウサイズを変更します。
Pack Window Center (Ctrl+Num5)
また、ショートカットを使ってウィンドウを中央に合わせたいです。いいえPack Window Center - Large (Ctrl+Shift+Num5)
ウィンドウサイズの変更 - ウィンドウを中央に配置して事前定義されたサイズに設定する2番目のショートカットも、90%最大化ウィンドウなどの中央揃えウィンドウのようなものを持つことができるという点で本当に良いです。
私のニーズに合ったいくつかのkwinスクリプトを見つけました。ここそしてここしかし、私はプログラミングの初心者であり、これはJavaScriptで書かれているようです。私はカスタムショートカットを生成する簡単なGUI /テンプレートベースの方法があることを望みましたが、カスタムを掘り下げるか、これらのスクリプトを生成する前に見逃しました。
私は現在Manjaro KDEのバージョンを使用しています。
答え1
これはおそらくあなたが言及したKWinスクリプトよりも理解するのは簡単ではありません。しかし、私は数値キーパッドキーをxdotool
マッピングする設定に依存するBashスクリプトを使用しています。xbindkeys
スクリプト:
#!/bin/bash
#
# Move a window to a certain location.
#
# Examples:
# move-window.sh 'search --onlyvisible --name SpeedCrunch' top-right
# move-window.sh getactivewindow bottom-left
set -euo pipefail
what=${1?What window would you like to move?}
where=${2?Where would you like to move your window to?}
# Determine the screen resolution
res=$(cat /sys/class/graphics/fb0/virtual_size)
screen_width=${res%,*}
screen_height=${res#*,}
# Determine the window size
window_id=$(xdotool $what)
eval $(xdotool $what getwindowgeometry --shell)
# Calculate the target location
case "$where" in
top-left) pos="0 0";;
top-right) pos="$(($screen_width-$WIDTH)) 0";;
bottom-left) pos="0 $(($screen_height-$HEIGHT))";;
bottom-right) pos="$(($screen_width-$WIDTH)) $(($screen_height-$HEIGHT))";;
center) pos="$(($screen_width/2-$WIDTH/2)) $(($screen_height/2-$HEIGHT/2))";;
*) pos="$where"
esac
# Move the window
xdotool windowmove $window_id $pos
それでは、~/.xbindkeysrc
以下があります。
# Win+Num7: Move active window to top left
"move-window.sh getactivewindow top-left"
Mod4 + KP_Home
# Win+Num9: Move active window to top right
"move-window.sh getactivewindow top-right"
Mod4 + KP_Prior
# Win+Num1: Move active window to bottom left
"move-window.sh getactivewindow bottom-left"
Mod4 + KP_End
# Win+Num3: Move active window to bottom right
"move-window.sh getactivewindow bottom-right"
Mod4 + KP_Next
# Win+Num5: Move active window to center
"move-window.sh getactivewindow center"
Mod4 + KP_Begin
(xbindkeys
設定ファイルを更新してから(再)起動することを忘れないでください。)
マルチモニター設定でテストする機会がなく、Waylandで動作することを期待していませんでしたが、現在のシングルスクリーンDebian Bullseye + KDE設定では十分に機能しています。
答え2
メモ:
- 私は数字キーパッドがないので、私が使用するショートカットはあなたが使うショートカットとは異なります。
xdotool
リポジトリからインストールする必要があります。キー押下をシミュレートできます。- Waylandセッションでは機能しない可能性があります。
存在するシステム設定>ショートカット>グローバルショートカット> Kwin、
- ++を「Pack Window Down」Superに設定し、CtrlDown
- Super+ Ctrl+ Right「右の包装窓」に移動
観察したように、これらのコマンドは1つに直接結合することはできません。継続的に実行する必要があります。
しかし、回避策があります。を使用してくださいxdotool
。
- 窓を開けてください。コンソール簡単にするには、サイズを変更して右下隅以外の場所に配置します。
開いているコンソールそして、次のコードを貼り付けます。
sleep 10s && xdotool key Super+Ctrl+Down && sleep 0.1 && xdotool key Super+Ctrl+Right
Enter押すコンソール次に、サイズを変更せずに右隅に移動したいウィンドウに切り替えます。
10秒後、フォーカスウィンドウはサイズ変更なしで右隅に移動します。
これがあなたに効果があると仮定すると、
- 開いているシステム設定>ショートカット>カスタムショートカット
- カチッという音編集>新規>グローバルショートカット>コマンド/ URL
- 左パネルで適切な名前を提供します。バッグ右下
- 右側のパネルにコメントを入力してください(オプション)。
- 次にトリガー、クリック入力するCtrlボックスを選択し、++MetaまたはZ便利で利用可能なキーなど、使用するキーボードショートカットに対応するキーを押します。
- 内部に行動タブをクリックしてに貼り付けます
xdotool key Super+Ctrl+Down && sleep 0.1 && xdotool key Super+Ctrl+Right
。 - カチッという音適用する右下にあります。
Ctrl+を押すたびに、フォーカスが合ったMetaウィンドウZがサイズ変更せずに画面の右下に移動されます。
小さなものを持っている眠る時々問題が発生するため、これら2つのコマンドxdotool
間の関係は便利ですxdotool
。
別のエッジウィンドウを囲むには、プロセス全体を繰り返す必要があります。
ウィンドウを画面サイズの90%中央に合わせる他の問題は解決しません。それはもっと難しいからです。
しかし、1つの回避策は、最初にすべてのウィンドウを中央に表示することです。その後、好きな場所に移動できます。これを行うには、次を開きます。システム設定>ウィンドウの管理>ウィンドウの動作>詳細そして選択センター下に場所。
Altもう一つの方法は+を押してF3選択することです。より多くの行動それから特殊ウィンドウ設定または特別なアプリケーション設定次に、必要に応じて必要なものを設定します。サイズと位置ブランド。