Создать пользовательскую привязку клавиш к окну оснастки
Существует ярлык для привязки окна к любой половине экрана:Ctrl + Super + Left или Ctrl + Super + Right. Мой первый вопрос, как этот ярлык определяется в системе? Все ярлыки по умолчанию определены в gsettings но это не там.
Теперь перейдем к основному вопросу. Выше ярлык привязывается к половине экрана. Я хочу, чтобы ярлык привязал его к 75%. Как я могу это сделать? И если я хочу определить новый ярлык для привязки к 75%, то какой будет путь?
1 ответ
Я смог заставить его работать, используя wmctrl а также xdotool, Оба являются инструментом для работы с окнами.
#!/bin/bash
WIN=$(xdotool getactivewindow)
eval $(xdotool getwindowgeometry --shell $WIN)
WIDTH=$(calc "int($WIDTH*0.75)")
wmctrl -r :ACTIVE: -b remove,maximized_horz,sticky
wmctrl -r :ACTIVE: -e "0,0,24,$WIDTH,-1"
Над сценарием привязать окно до 75 % к его размеру слева. Сохраните приведенный выше скрипт в файл и назначьте ярлык для файла.
Точно так же следующий скрипт привязывает окно к 25% ширине справа.
#!/bin/bash
WIN=$(xdotool getactivewindow)
eval $(xdotool getwindowgeometry --shell $WIN)
X=$(calc "int($WIDTH-$WIDTH*0.25)")
WIDTH=$(calc "int($WIDTH*0.25)")
wmctrl -i -r $WINDOW -b remove,maximized_horz
wmctrl -i -r $WINDOW -e "0,$X,-1,$WIDTH,-1"
Проверьте wmctrl а также xdotool Руководства и учебники, чтобы узнать, как они работают. Установите зависимости, используя
sudo apt-get install apcalc wmctrl xdotool
Примечание. Изменение размера выполняется относительно текущей позиции и размера окна. Чтобы сделать его по отношению к размеру экрана, разверните окно, а затем выполните сценарий.