如何在不切换工作区的情况下将窗口移动到另一个工作区?

如何在不切换工作区的情况下将窗口移动到另一个工作区?

XFCE 支持使用热键将窗口移动到另一个工作区。

事实上这做了两件事:

  • 它将窗口移动到新的工作区。

  • 切换到该工作区。

我正在尝试禁用此行为,并使热键仅移动窗口而不切换工作区。这是否可行,也许可以使用隐藏选项?

答案1

wmctrl让您可以操作窗口。您可以将键盘快捷键绑定到以下命令:

wmctrl -r :ACTIVE: -t 0  // Move active window to workspace 1
wmctrl -r :ACTIVE: -t 1  // Move active window to workspace 2
wmctrl -r :ACTIVE: -t 2  // Etc...

答案2

这里还值得一提的是,可以使用 来执行此操作xdotool,可以使用

sudo apt-get install xdotool

您可以将下面的命令绑定到鼠标侧面的某个空闲按钮,然后可以单击该按钮将活动窗口移至另一个工作区。工作区的编号在命令的末尾指定。

xdotool getactivewindow set_desktop_for_window 1

这会将当前活动窗口(具有焦点的窗口)移动到所需的工作区,同时让您停留在发出命令的工作区,这正是您特别需要的。(要真正自己移动到其他工作区,您可以使用xdotool set_desktop 1。)

您还可以选择移动特定的窗口,而不仅仅是活动窗口,但移动活动窗口(无论它是什么)可能最有用,以绑定到某个键。

笔记:如果您使用的窗口管理器与 Xfce 上的默认窗口管理器不同,或者您使用 compiz,则可能需要查看手册页viewport中的选项xdotool或尝试wmctrl其他选项。

有关xdotool用于操作窗口和工作区的更多详细信息,请参阅我在此处对相关但不同的问题的回答:

你可以做很多事情xdotool;请参阅Ubuntu 手册页或男人xdotool

相关内容