ฉันเปิดใช้งาน i3 บนแล็ปท็อป Linux ของฉัน ฉันมักจะใช้เพียงจอมอนิเตอร์ภายในของแล็ปท็อป (จอแสดงผลeDP1
) แต่เมื่อฉันทำงานฉันมักจะเชื่อมต่อจอภาพที่สองเข้ากับพอร์ต HDMI ของคอมพิวเตอร์ (จอแสดงผลHDMI2
) จนถึงตอนนี้ฉันได้ทำให้มันทำงานได้ดีโดยการเพิ่มคำสั่งเหล่านี้ไปยังไฟล์ config i3 ของฉัน:
# 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
กล่าวอีกนัยหนึ่งเมื่อฉันเชื่อมต่อจอแสดงผล HDMI ของฉันฉันเพียงแค่กดMod+ Mเพื่อให้ i3 ตรวจจับได้ให้วางไว้ด้านขวาของจอแสดงผลหลักของฉันและมอบหมาย 5 พื้นที่ทำงานชื่อ (6-10) ให้กับมัน
นี่คือปัญหา:ที่บ้านฉันมีจอภาพอื่นที่ฉันสามารถเชื่อมต่อกับ VGA (จอแสดงผลDP2
) ฉันสามารถเรียกใช้xrandr
คำสั่งด้านบนเพื่อวางจอแสดงผลนี้ไว้ที่ด้านขวาของจอแสดงผลหลักของฉันได้ แต่ฉันไม่สามารถกำหนดพื้นที่ทำงานให้กับจอแสดงผลนี้เป็นค่าเริ่มต้นได้เว้นแต่ฉันจะแทนที่กฎที่ฉันมีอยู่แล้วสำหรับจอภาพ HDMI ฉันต้องการให้ทั้งสองพื้นที่ทำงานเหมือนกันไม่ว่าฉันจะใช้จอมอนิเตอร์แบบใดดังนั้นจึงไม่ใช่ตัวเลือก
TL; DRมีวิธีกำหนดพื้นที่ทำงานให้กับจอภาพสองจอที่แตกต่างกันหรือไม่ขึ้นอยู่กับว่าจอภาพใดเชื่อมต่ออยู่ (สมมติว่าจะไม่มีการเชื่อมต่อในเวลาเดียวกัน)?