i3wm:两台显示器,每台显示器一个浏览器(双头信息亭)

Nel*_*aar 7 window-manager xorg multi-monitor kiosk i3

我的目标是让 i3 在双显示器设置中为每个显示器启动一个浏览器。

我找不到如何启动浏览器并将其移动到目标监视器。

我已经仔细阅读了文档并在 ~/.i3/config 中尝试过

exec --no-startup-id i3-msg 'workspace 1 ; move workspace to output HDMI1 ; exec chromium --new-window "http://url/1" ; workspace 2 ; move workspace to output HDMI2 ; exec chromium --new-window "http://url/2"'
Run Code Online (Sandbox Code Playgroud)

但是两个窗口都出现在第一个监视器上,第二个窗口空白。

我错过了什么 ?

Xorg 配置如下:

Section "Monitor"
  Identifier "HDMI1"
  Option     "Primary" "true"
EndSection

Section "Monitor"
  Identifier "HDMI2"
  Option     "LeftOf" "HDMI1"
EndSection
Run Code Online (Sandbox Code Playgroud)

编辑:

我已经添加到~/.i3/config

workspace 1 output HDMI1
workspace 2 output HDMI2
Run Code Online (Sandbox Code Playgroud)

我试过了

exec --no-startup-id i3-msg 'workspace 1; exec xeyes'
exec --no-startup-id i3-msg 'workspace 2; exec xclock'
Run Code Online (Sandbox Code Playgroud)

或者

exec --no-startup-id i3-msg 'workspace 1; exec xeyes; workspace 2; exec xeyes'
Run Code Online (Sandbox Code Playgroud)

始终相同的结果,两个应用程序都从最后选择的工作区开始。

anl*_*lar 5

您可以为 Chromium 实例分配特定的类名并将它们绑定到工作区。因此,使用 2 个显示器配置:

workspace 1 output HDMI1
workspace 2 output HDMI2

for_window [class="^chromium-no-1$"] move workspace number 1
for_window [class="^chromium-no-2$"] move workspace number 2
Run Code Online (Sandbox Code Playgroud)

您需要使用特定的类值启动 2 个浏览器实例:

$ chromium-browser --class=chromium-no-1
$ chromium-browser --class=chromium-no-2
Run Code Online (Sandbox Code Playgroud)