我现在使用 .xsession 在 xmonad 启动时运行我的终端/浏览器。我想要做的是在 xmonad 中的不同虚拟桌面上启动不同的程序(例如桌面 1 上的浏览器,nautilus 桌面 2 上的浏览器)。我怎样才能在 xmonad 中做到这一点?
答案1
解决您问题的工具
Devil's Pie 可以做到这一点,并且它不是特定于 xmonad,应该适用于所有窗口管理器。
从http://burtonini.com/blog/computers/devilspie/:
Devil's Pie 可以配置为在创建窗口时检测窗口,并将窗口与一组规则进行匹配。如果窗口符合规则,则可以对该窗口执行一系列操作。例如,我可以使 X-Chat 创建的所有窗口都出现在所有工作区上,而 Gkrellm1 主窗口不会出现在寻呼机或任务列表中。
您可以将其设置为将浏览器重定向到桌面 1,将 nautilus 重定向到桌面 2,等等。
如何使用它
您可以编辑文本文件,阅读例如http://www.foosel.org/linux/devilspie,或使用图形工具http://code.google.com/p/gdevilspie/。
附加信息
如果您只想在会话开始时而不是稍后将窗口移动到桌面,您可以让.xsession
脚本启动 Devil's Pie,然后启动应用程序,然后杀死 Devil's Pie,然后瞧。