Xorg
i3wm:兩台顯示器,每台顯示器一個瀏覽器(雙頭資訊亭)
我的目標是讓 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"'
但是兩個視窗都出現在第一台顯示器上,而第二台顯示器則為空白。
我錯過了什麼 ?
Xorg 配置如下:
Section "Monitor" Identifier "HDMI1" Option "Primary" "true" EndSection Section "Monitor" Identifier "HDMI2" Option "LeftOf" "HDMI1" EndSection
編輯:
我已添加到*~/.i3/config*
workspace 1 output HDMI1 workspace 2 output HDMI2
我試過了
exec --no-startup-id i3-msg 'workspace 1; exec xeyes' exec --no-startup-id i3-msg 'workspace 2; exec xclock'
或者
exec --no-startup-id i3-msg 'workspace 1; exec xeyes; workspace 2; exec xeyes'
結果始終相同,兩個應用程序都在最後選擇的工作區啟動。
您可以為您的 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
您需要啟動 2 個具有特定類值的瀏覽器實例:
$ chromium-browser --class=chromium-no-1 $ chromium-browser --class=chromium-no-2
我在雙顯示器設置上使用 i3wm 和 ArchLinux 非常成功。當我啟動 i3 時,我在每台顯示器上都有一個工作區。要在不同的監視器上移動工作區,我已將以下內容添加到我的
~/.i3/config
:bindsym $mod+Mod1+Up move workspace to output up bindsym $mod+Mod1+Down move workspace to output down bindsym $mod+Mod1+Left move workspace to output left bindsym $mod+Mod1+Right move workspace to output right
這允許我將工作區移動到不同的輸出。但是要在不同的工作區有兩個瀏覽器(除非另外配置一個工作區只包含一個螢幕),您可以將瀏覽器移動到另一個螢幕上的工作區,或者只是在另一個螢幕上使用 default
$mod+Left/Right
。以下是我使用的與定位視窗相關的所有 bindsym:
# move focused window bindsym $mod+Shift+j move left bindsym $mod+Shift+k move down bindsym $mod+Shift+l move up bindsym $mod+Shift+odiaeresis move right # move focused container to workspace bindsym $mod+Shift+1 move container to workspace 1 bindsym $mod+Shift+2 move container to workspace 2 bindsym $mod+Shift+3 move container to workspace 3 bindsym $mod+Shift+4 move container to workspace 4 bindsym $mod+Shift+5 move container to workspace 5 bindsym $mod+Shift+6 move container to workspace 6 bindsym $mod+Shift+7 move container to workspace 7 bindsym $mod+Shift+8 move container to workspace 8 bindsym $mod+Shift+9 move container to workspace 9 bindsym $mod+Shift+0 move container to workspace 10 # move workspace to another output/monitor bindsym $mod+Mod1+Up move workspace to output up bindsym $mod+Mod1+Down move workspace to output down bindsym $mod+Mod1+Left move workspace to output left bindsym $mod+Mod1+Right move workspace to output right