我已经在 Mate 桌面上使用 Linux Mint 17.3 相当一段时间了。我非常喜欢的一件事是它可以记住多显示器配置的窗口布局。例如,在我的正常桌面设置中,我将笔记本电脑放在扩展坞上,并连接了 3 个显示器 - 并且我的应用程序窗口分布在这三个显示器上。当我断开笔记本电脑的连接时,所有窗口都会移动到笔记本电脑显示屏上。当我将笔记本电脑连接回坞站时,所有窗口都将恢复到三台显示器上之前的位置。
有一天,根据同事的建议,我尝试切换到 Cinnamon 桌面 - 它确实看起来更好并且工作更流畅,但它不记得多个显示器上的窗口位置。在上面的场景中,当我将笔记本电脑插回坞站时,所有窗口都保留在主显示屏上。
对我来说,仅此功能(或者更确切地说缺乏此功能)就足以放弃 Cinnamon 并返回 Mate,因为我在任何给定时间都打开了很多应用程序窗口(15-20 是常态)并且我停靠/取消停靠在我的正常工作过程中,每天都会使用几次笔记本电脑。我无法在每次连接笔记本电脑时都花时间重新排列窗口。
所以,问题是,如何让 Cinnamon 记住多个显示器上的窗口位置,然后在我再次连接笔记本电脑时恢复它?
答案1
我没有自动执行此操作,但wmctrl
让您记录窗口位置并设置它们。xdotool
也可能有效。以下是恢复和放置窗口的命令:
记录:wmctrl -lG > ${rcfile}
地方:
while read row; do
IFS=" " read id g x y w h _ <<< ${row}
wmctrl -ir ${id} -e 0,${x},${y},${w},${h}
done < ${rcfile}