我正在运行 Linux Mint 17 Cinnamon 2.4.8。
我真的很喜欢 xdotool,但它与 Cinnamon 出色的对齐/平铺功能相冲突。
如果我运行以下命令,它会执行不是如果当前窗口被捕捉到角落/侧面/全屏,则有效。
xdotool getactivewindow windowsize 500 1080 windowmove 1420 0
我想保持它对齐,但具有自定义宽度。如果是不是啪地一声,它起作用了。
主要目标:将窗口对齐到右侧,宽度为 500(通过命令)
然而,这对于 xdotool 来说可能是不可能的。
我宁愿不安装任何其他东西,并用 cinnamon 来完成这一切,但如果有人认为我可以用 wmctrl 实现我的目标,那么我会尝试一下。
所需输出与当前输出
http://s115.photobucket.com/user/ericrazy2000/media/snapped.png.html
http://s115.photobucket.com/user/ericrazy2000/media/NOTsnapped.png.html
答案1
您可能需要首先删除一些最大化标志:
wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz;\
xdotool getactivewindow windowsize 500 1080 windowmove 1420 0;\
wmctrl -r :ACTIVE: -b add,maximized_vert
答案2
这个命令对你有用吗(使用wmctrl
):
dist500fromright=$((`xrandr | grep \* | awk '{print $1}' | sed 's/x.*$//'`-500));y=`xrandr | grep \* | awk '{print $1}' | sed 's/^.*x//'`;wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$dist500fromright,0,500,$y
分解
xrandr
输出几何图形列表并*
显示当前模式。例如:
$ xrandr | grep \*
1920x1200 60.0*+
我们用来awk
捕获输出的第一列,并sed
获取由字符分隔的维度x
。
$ xrandr | grep \* | awk '{print $1}'
1920x1200
$ xrandr | grep \* | awk '{print $1}' | sed 's/x.*$//'
1920
Bash 允许我们通过将命令输出包装在以下内容中对命令输出进行数学计算$((...))
:
$ echo 5+2
5+2
$ echo $((5+2))
7
因此,在上面,我们将命令包装起来$((...))
并减去 500,以获得距离屏幕右边缘 500 像素的 x 坐标位置:
$ echo $((`xrandr | grep \* | awk '{print $1}' | sed 's/x.*$//'`-500))
1420
请注意,为了从 1920 中减去 500,我们必须首先将产生 1920 的命令放在反引号中。
我们将上面的输出设置为变量dist500fromright
,并执行类似的操作将屏幕的 y 尺寸存储在y
变量中:
$ dist500fromright=$((`xrandr | grep \* | awk '{print $1}' | sed 's/x.*$//'`-500))
$ y=`xrandr | grep \* | awk '{print $1}' | sed 's/^.*x//'`;
我们现在准备运行 wmctrl 命令
$ wmctrl -r :ACTIVE: -b add,maximized_vert
$ wmctrl -r :ACTIVE: -e 0,$dist500fromright,0,500,$y
其中后一个命令调整大小并移动活动窗口,而前一个命令允许在捕捉的窗口上调整大小/移动。
答案3
您可以使用 wmctrl 来实现此目的,
作为旧 linux mint mate 论坛的示例,我认为您也可以在 cinnamon 中使用它:
wmctrl -r :ACTIVE: -e 0,0,0,width,height
这应该有效。
如果您的屏幕是全屏,您应该使用:
wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized_vert
wmctrl -r :ACTIVE: -e 0,0,0,width,height
来源:
http://forums.linuxmint.com/viewtopic.php?f=90&t=109020
或使用 ctrl + 数字键盘获取所需位置
来源:
http://www.reddit.com/r/linux/comments/tbqky/window_snapping_pseudotiling_wm/