我写了几个剧本的一个窗口最大化到屏幕的一半大小(以使其易于放置窗口并排侧)使用xrandr,grep和wmctrl如下:通过编译代码在Linux操作窗口大小?
#!/bin/bash
w=`xrandr 2> /dev/null | grep '*' | grep -Po '\d+(?=x)'`
h=`xrandr 2> /dev/null | grep '*' | grep -Po '(?<=x)\d+'`
wmctrl -r :ACTIVE: -b remove,maximized_horz,maximized,vert
wmctrl -r :ACTIVE: -e 0,0,0,$((w/2)),$h
有没有办法更原生地做到这一点?该脚本在我的桌面上运行良好,但在我的笔记本电脑上有半秒的延迟,这有点令人讨厌。
你能告诉我们从xrandr的输出吗?应该可以将其重写为w_h = $(xrander ... | nawk'....'),从而减少显着启动的进程数量。但是,我怀疑它会对你的体验产生很大的影响。 1/2秒的延迟听起来像操作系统分页,你可能无法消除。 – shellter 2011-03-24 23:29:05
xrandr输出看起来大致类似于'1280x1024 0.0 *',然后是一些附加行,未加星号。 – jonderry 2011-03-25 00:08:31