आज मुझे इस सवाल का सामना करना पड़ा, इसलिए मैं अपना समाधान पोस्ट कर रहा हूं मैं एक साल से अधिक समय का उपयोग कर रहा हूं और मैं काफी खुश हूं।
चरण 1: बैश स्क्रिप्ट बनाएं (जैसे इसे लिखें ~/swap.sh
और इसे निष्पादन योग्य बनाएं) अन्य विंडो के फोकस को सेट करने के लिए जो अन्य डिस्प्ले के बीच में है:
#!/bin/bash
getwindowat() {
# move mouse to coordinates provided, get window id beneath it, move mouse back
eval `xdotool mousemove $1 $2 getmouselocation --shell mousemove restore`
echo $WINDOW
}
# get active app
active=`xdotool getactivewindow`
# get coordinates of an active app
eval `xdotool getwindowgeometry --shell $active`
# if left border of an app is less than display width
# (e.g. one display is 1920px wide, app has x = 200 - means it's 200px to the right from the left border of left monitor
# if it has x = 1920 or more, it's on the right window), it's on screen 0, and we need to focus to screen 1, otherwise to screen 0
(( $X >= $WIDTH )) && focustoscreen=0 || focustoscreen=1;
# get coordinates of the middle of the screen we want to switch
searchx=$[ ($WIDTH / 2) + $focustoscreen * $WIDTH ]
searchy=$[ $HEIGHT / 2 ]
# get window in that position
window=`getwindowat $searchx $searchy`
# activate it
xdotool windowactivate $window
चरण 2: इस स्क्रिप्ट को कॉल करने के लिए एक कीबोर्ड शॉर्टकट जोड़ें, मैं इसे डाल देता हूं Super-Tab
चरण 3: डिस्प्ले को बॉस की तरह स्विच करने के लिए शॉर्टकट का उपयोग करें