gnome 键绑定三分之一 window 大小

gnome key binding one third window size

我想创建键绑定,将当前 window 大小设置为水平屏幕大小的三分之一和垂直最大,并将其定位在屏幕的左侧、中间或右侧的三分之一.我怎样才能做到这一点?

xbindkeys 和 xdotool

借助 xbindkeys,您可以独立于 window 管理器使用 shortctus。 xdotool 允许移动和调整大小 windows.

通过以下方式安装:

sudo apt-get install xbindkeys 
sudo apt-get install xdotool 

默认配置

默认设置显示了快捷方式绑定的外观。创建它并查看文件内容。

xbindkeys --defaults > ~/.xbindkeysrc

使用编辑器编辑~/.xbindkeysrc,输入:

"/bin/bash ~/placewindow.sh left"
    control + l

"/bin/bash ~/placewindow.sh middle"
    control + m

"/bin/bash ~/placewindow.sh right"
    control + r

创建shell脚本

使用文本编辑器创建一个 shell 脚本,对于我们的用例,我将其命名为 ~/placewindow.sh:

#!/bin/bash

width=`xdpyinfo | grep dimensions | sed -r 's/^[^0-9]*(([0-9]+)x([0-9]+)).*$//'`
height=`xdpyinfo | grep dimensions | sed -r 's/^[^0-9]*(([0-9]+)x([0-9]+)).*$//'`

case "" in
    left)       
       xdotool windowsize `xdotool getactivewindow` `expr $width / 3` $height
       xdotool windowmove `xdotool getactivewindow` 0 0
       ;;
    middle)
       xdotool windowsize `xdotool getactivewindow` `expr $width / 3` $height
       xdotool windowmove `xdotool getactivewindow` `expr $width / 3` 0
       ;;
    right)
       xdotool windowsize `xdotool getactivewindow` `expr $width / 3` $height
       xdotool windowmove `xdotool getactivewindow` `expr $width \* 2 / 3` 0
       ;;
esac

使其可执行:

chmod +x placewindow.sh

提示

对 ~/.xbindkeysrc 进行更改后,您需要

killall xbindkeys
xbindkeys 

使更改立即生效。

演示

现在按 CTRL+l、CTRL+m 或 CTRL+r 时,活动 window 会调整大小并定位。它看起来像这样: