J'ai 2 écrans sur mon PC - un IDE est ouvert en plein écran sur un écran et Firefox est ouvert en plein écran sur un autre écran.
Comme j'utilise principalement le clavier, il est agaçant d'avoir à saisir la souris pour passer au centre de l'attention, puis revenir à la IDE à tout moment.
Existe-t-il un raccourci que je pourrais utiliser pour basculer le focus sur "Fenêtre la plus grande" sur l'écran 2 si le focus est quelque part sur l'écran 1 et vice versa?
Aujourd'hui, j'ai un vote positif pour cette question. Je publie donc la solution que j'utilise depuis plus d'un an et dont je suis assez satisfait.
Étape 1: créez le script bash (par exemple, écrivez-le dans ~/swap.sh
et rendez-le exécutable) pour définir le focus sur une fenêtre située au milieu de l'autre écran:
#!/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
Étape 2: ajoutez un raccourci clavier pour appeler ce script, je mets le mien à Super-Tab
Étape 3: utilisez un raccourci pour changer d'affichage comme un patron
ce référentiel peut vous aider
https://github.com/Eitol/screen_focus_changer
Vous placez le script gauche focus_changer.py à un endroit fixe (/ opt par exemple), puis ajoutez le raccourci clavier/raccourci/raccourci clavier dans vos paramètres.
python3 /opt/focus_changer.py left # Se concentrer sur la gauche
python3 /opt/focus_changer.py right # Se concentrer sur la droite
Vous pouvez utiliser AltTab pour basculer entre les fenêtres.
AltTab rappelle également les deux fenêtres dans lesquelles vous avez basculé pour la dernière fois. Si vous passez à une fenêtre (naviguez avec les touches fléchées), puis revenez en arrière en appuyant simplement sur AltTab vous permettra de sauter entre eux, sans autre navigation.