在Ubuntu 14.04中记住窗口位置(最好还有大小)


13

我刚刚在Windows上安装了Ubuntu 14.04,发现一件很烦人的事情。也就是说,当我打开任何应用程序时,它将在屏幕的左上方打开。

对于打开的每个应用程序,我要做的第一件事是将其移动到屏幕的中心(或我想要的位置)。然后,我将关闭该应用程序。但是下次,它又回到了屏幕的左上方!

我已经在AskUbuntu和网络上阅读了相关问题。但是我想知道,由于这些问题是关于Ubuntu 12 .04的,是否为14.04用户提供了更好的解决方案?这样的东西不应该在“设置”中吗?我的意思是,这只是常识。是不是 我真的不知道了


3
您可以使用CCSM(Compiz Config设置管理器)来控制窗口设置。sudo apt-get compizconfig-settings-manager(如果尚未安装)
没时间

Answers:


5

我的另一个答案描述了为什么在一般情况下无法恢复窗口位置。)

对于可以保存和恢复窗口位置的特殊情况,对于不能由窗口管理器配置处理的情况,可以使用外壳脚本来保存和恢复位置或几何形状(几何形状是位置加大小)(请参见下文)。

有多种命令行工具可以读取和设置Windows的属性,例如wmifacewmctrl
一个最小的例子:

获取X几何格式(通常为WxH + X + Y)的窗口的几何(请注意y坐标-我正在使用16个compiz虚拟桌面/视口):

$ wmiface windowGeometry 46137711
1256x814+1186+5005

将窗口移到其他位置(注意几何图形的不同格式):

wmctrl -i  -r 46137711 -e "0,1186,4005,1256,814"


另一种方法是为某些窗口定义固定位置,而不是恢复其位置。通常可以在窗口处理配置的详细信息中进行配置,例如ccsm


在上面的答案中wmiface,这是过时的,并且没有为ubuntu打包,可以用xdotool getwindowgeometry或替换wmctrl -lGi | grep(需要十六进制转换)。对我来说,他们两个都忽略了屏幕底部的面板,但是考虑到wmctrl -lGi返回的尺寸也可以,因此可以在一段时间后备份和还原窗口的位置/大小。无论用例是什么。
Ufos

通常,我决定坚持wmctrl -lGi按照答案中所述的相同方式进行备份和还原。
Ufos

3

安装ccsm(CompizConfigSettingsManager)。

启动ccsm(从Unity搜索按钮启动)后,请执行以下操作:

(单击)Windows管理器
(单击)放置Windows

使用以下设置:

解决方法 Unticked
多输出模式Place across all outputs

放置模式Smart是记住您想要的位置的关键。

请记住,某些应用程序已编程为覆盖系统的优选设置。


2

窗口的位置并非如“常识”所暗示的那样容易处理。
位置相对于某些参考(例如“屏幕”)而言是相对的。但是“屏幕”在这里可能意味着很多变体(见下文),以致无法以一般方式保存职位。

当然,可以采用多种方法来适应特定的环境-但是如果要“只保存位置,以后再恢复”,则不可能,因为尚不清楚恢复位置的坐标系。

那么,在屏幕上某个位置显示窗口有什么困难呢?

在Ubuntu下-与在任何现代的基于X11的系统上一样-在运行时,“屏幕”可以以多种方式更改,因此需要保存位置来处理。

例如,形状可能会改变;从一个矩形到两个并排的矩形,再到三个矩形,它们之间没有间距。“虚拟桌面”可以更改。视口可以更改。每个都会影响将要恢复的坐标。

一个特殊的问题是要确保没有任何东西移出“屏幕”的当前可访问部分。


在左上方打开窗口的侧面问题:您可以选择多种算法之一,以决定将新窗口放置在窗口处理设置中的位置(例如中的ccsm)。例如,您可以在当前鼠标指针所在的位置打开它们。


1

以防万一有人落在这里,并真的希望Windows成为您放置它们的地方-安装Enlightenment桌面。您可以右键单击任何页面左上角的图标,选择窗口,记住并选择大小和位置。我喜欢这种选择,这也是我选择e17的原因之一。


资格就像在类固醇上“记住窗口位置”。
WinEunuuchs2Unix
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.