xdotool:调整当前活动 Firefox 窗口大小的命令?

xdotool:调整当前活动 Firefox 窗口大小的命令?

我有多个 Firefox 窗口,我想使用当前窗口管理器的快捷方式将当前活动 Firefox 窗口的大小调整为特定大小和位置。

xdotool命令如何实现这一点?

编辑:例如,我有一个名为的窗口管理器dwm,并且映射了该窗口管理器的一些快捷方式,然后我可以在当前 Firefox 的窗口上按组合键。

仍将焦点放在 Firefox 窗口上。

也许我们可以使用组合键映射来调用 shell 脚本。

答案1

如果要调整具有键盘焦点的 Firefox 窗口的大小:

#! /bin/sh
fw=`xdotool getwindowfocus`
for nw in `xdotool search --classname Navigator`; do
   test "$fw" = "$nw" && xdotool windowsize "$fw" 800 600
done

请注意,如果您在终端中输入脚本,这将不起作用;在这种情况下,终端才是焦点。如果您的窗口管理器支持,您可以使用getactivewindow代替。getwindowfocus_NET_ACTIVE_WINDOW

如果您想调整顶部第一个 Firefox 窗口的大小:

nw=`xdotool search --classname Navigator | tail -1`
test "$nw" && xdotool windowsize "$nw" 800 600

笔记

如果您正在使用dwm,那么请考虑这一点(来自 dwm 的主页):

dwm 是通过编辑其源代码进行定制的,这使得它非常快速和安全 -它不处理任何编译时未知的输入数据,但从根窗口名称读取的窗口标题和状态文本除外。除了 C 之外,你不必学习 Lua/sh/ruby 或一些奇怪的配置文件格式(如 X 资源文件)来根据你的需要定制它:你只需要学习 C(至少为了编辑头文件)文件)。

由于dwm是通过编辑源代码来定制的,因此将其制作成二进制包是没有意义的。这使得其用户群规模较小且精英化。新手不会问愚蠢的问题。

这意味着调用外部脚本根本不起作用。您应该C通过修改 的dwm源代码来调整窗口大小,检查它们的类等。

相关内容