Eu tenho dois monitores; eDP1: primário (tela do laptop) e HDMI2, o monitor externo. O que eu quero fazer é usar o i3wm de tal forma que quando eu executo um script (abaixo), ele coloca alguns espaços de trabalho em eDP1 e alguns em HDMI2. Usando o xrandr, meu HDMI2 está no lado direito do eDP1:
xrandr --output HDMI2 --auto --right-of eDP1
Aqui está o meu script para conseguir isso:
#!/bin/sh
Out=HDMI2
i3-msg "$workspace1"
i3-msg "move $workspace1 to output eDP1"
i3-msg "move $workspace2 to output eDP1"
i3-msg "move $workspace3 to output eDP1"
i3-msg "move $workspace4 to output eDP1"
i3-msg "move $workspace5 to output eDP1"
i3-msg "move $workspace6 to output eDP1"
i3-msg "move $workspace7 to output eDP1"
i3-msg "move $workspace8 to output eDP1"
i3-msg "move $workspace9 to output eDP1"
i3-msg "move $workspace10 to output $Out"
i3-msg "$workspace1"
# come back to workspace 1
Mas isso não funciona como esperado. Enquanto pretendo um comportamento fixo, ele coloca a tela aleatoriamente diferente em cada execução. No momento, esses dois comandos funcionam muito bem no meu arquivo de configuração e eu movo facilmente as janelas entre monitores:
bindsym $mod+Ctrl+greater move workspace to output right
bindsym $mod+Ctrl+less move workspace to output left
p.s. Estou no Archlinux e o i3 é 4.16.1