我有多个firefox窗口,我想使用当前窗口管理器的快捷方式将当前活动firefox的窗口调整到特定的大小和位置。
如何使用xdotool命令来实现这一点?
编辑:例如,我有一个名为dwm的窗口管理器,我映射了这个窗口管理器的一些快捷键,然后我可以在当前火狐的窗口上按一个组合键。
仍然关注火狐的窗口。
也许我们可以映射到用组合键调用shell脚本。
发布于 2018-09-26 12:33:31
如果要调整具有键盘焦点的firefox窗口的大小:
#! /bin/sh
fw=`xdotool getwindowfocus`
for nw in `xdotool search --classname Navigator`; do
test "$fw" = "$nw" && xdotool windowsize "$fw" 800 600
done注意,如果在终端中键入脚本,这将无法工作;在这种情况下,具有焦点的是终端。如果窗口管理器支持getactivewindow,则可以使用_NET_ACTIVE_WINDOW而不是getwindowfocus。
如果您想要调整顶部第一firefox窗口的大小:
nw=`xdotool search --classname Navigator | tail -1`
test "$nw" && xdotool windowsize "$nw" 800 600注
如果您使用的是dwm,那么请考虑这一点(来自dwm的主页):
<#>it是通过编辑其源代码来定制的,这使得它非常快速和安全--除了窗口标题和从根窗口名称读取的状态文本之外,不处理编译时不知道的任何输入数据。除了C之外,您不必学习Lua/sh/ruby或一些奇怪的配置文件格式(比如X资源文件)来定制它以满足您的需要:您只需要学习C(至少为了编辑头文件)。因为dwm是通过编辑其源代码来定制的,因此对其进行二进制包是毫无意义的。这使得它的用户基数很小,而且是精英。没有新手会问愚蠢的问题。
这意味着调用外部脚本根本无法工作。您应该通过修改C的dwm's源代码来调整窗口的大小,检查它们的类等。
https://unix.stackexchange.com/questions/471546
复制相似问题