Ich habe mit i3 auf meinem Linux-Laptop eingeschaltet. Normalerweise verwende ich nur den internen Monitor (Display eDP1
) des Laptops , aber wenn ich auf der Arbeit bin, schließe ich normalerweise einen sekundären Monitor an den HDMI-Anschluss (Display HDMI2
) meines Computers an . Bisher habe ich die folgenden Befehle zu meiner i3-Konfigurationsdatei hinzugefügt, um das Problem zu beheben:
# use workspaces on different monitors
workspace "1: P1" output eDP1
workspace "2: P2" output eDP1
workspace "3: P3" output eDP1
workspace "4: P4" output eDP1
workspace "5: P5" output eDP1
workspace "6: S1" output HDMI2
workspace "7: S2" output HDMI2
workspace "8: S3" output HDMI2
workspace "9: S4" output HDMI2
workspace "10: S5" output HDMI2
# add HDMI monitor when connected
exec --no-startup-id xrandr --output HDMI2 --right-of eDP1
bindsym $mod+m exec --no-startup-id xrandr --output HDMI2 --auto --right-of eDP1
Mit anderen Worten, wenn ich mein HDMI-Display anschließe, drücke ich einfach Mod+ M, damit i3 es erkennt, platziere es rechts von meinem primären Display und delegiere 5 benannte Arbeitsbereiche (6-10) an dieses.
Hier ist das Problem: Zu Hause habe ich einen anderen Monitor, den ich mit VGA (Display DP2
) verbinden kann. Ich kann den xrandr
obigen Befehl ausführen , um diese Anzeige auch rechts von meiner primären Anzeige zu platzieren, aber ich kann die Arbeitsbereiche nicht standardmäßig dieser Anzeige zuweisen, es sei denn, ich ersetze die Regeln, die ich bereits für meinen HDMI-Monitor habe. Ich möchte, dass beide Arbeitsbereiche gleich funktionieren, egal welchen Monitor ich benutze, daher ist dies keine Option.
TL; DR Gibt es eine Möglichkeit, zwei verschiedenen Bildschirmen Arbeitsbereiche zuzuweisen, je nachdem, welcher Bildschirm angeschlossen ist (vorausgesetzt, sie werden niemals gleichzeitig angeschlossen)?
quelle