i3wm:如何在显示器之间移动工作区?

i3wm:如何在显示器之间移动工作区?

在多显示器设置中,有没有办法将整个工作区(而不是单个应用程序)转移到不同的显示器?

答案1

您可以在 i3 配置中定义绑定。注意:窗口称为“容器”,监视器称为“输出”。相关文档是这里

move workspace to output left|right|down|up|current|primary|nonprimary|next|<output1>

这是我在配置中使用的内容:

# move focused workspace between monitors
bindsym $mod+Ctrl+greater move workspace to output right
bindsym $mod+Ctrl+less move workspace to output left

奇怪的是,我希望$mod+Ctrl+greater要求我同时按下 Ctrl 和 Shift,因为您需要按 Shift 才能键入<>。然而,只按 mod、Ctrl 和,就可以了,这非常好。

请注意,您还可以设置键绑定以按名称将内容发送到特定监视器。

答案2

对于workspace_name 和output_name 的值,可以通过名称显式指定工作区,如下所示:

i3-msg '[workspace="workspace_name"]' move workspace to output output_index

请注意,如果您将工作区命名为1:first,则使用1not first

答案3

要移动到下一个工作区,您可以使用:

bindsym $mod+Ctrl+greater move workspace to output next

文档

这样做的优点是不可知位置工作空间的 - 它只是在它们之间循环,无论它们是向上还是向下还是其他什么。

相关内容