Как использовать привязку окон для Ubuntu? [дубликат]

Возможный дубликат:
Как подражать быстрым клавишам развертывания Windows 7 с помощью winkey + arrow?

Я пробую Ubuntu и хочу, чтобы мои окна были привязаны влево и вправо, как в Windows 7, когда я использую горячие клавиши Window Key + Arrow. Как я могу это сделать?

14
задан 13 April 2017 в 15:23

3 ответа

Это легко включить в диспетчере настроек CompizConfig. (Установите его, если вы еще этого не сделали).

Затем в разделе «Управление окнами» включите Grid. Я сохранил привязки по умолчанию CTRL + ALT + NumPad, но вы можете легко изменить его Super + Arrow, как вам удобнее.

0
ответ дан 13 April 2017 в 15:23

Одно из различий между большинством оконных менеджеров Unix и Windows заключается в том, что большинство оконных менеджеров Unix обеспечивают сопротивление движению окон по краям экрана. Поэтому вам не нужны никакие специальные команды для перемещения окон на левый или правый край экрана; просто перетащите один к краю, и он остановится, когда попадет туда. Я не знаю ни одного Gnome (стандартного оконного менеджера Ubuntu на данный момент), сочетания клавиш для перемещения окон.

0
ответ дан 13 April 2017 в 15:23

Пойдите сюда для полных инструкций в человекочитаемой форме из Ubuntu Mike's, (спасибо Mike), и вот исходное сообщение форума Ubuntu (благодарит gotsanity). Я проверил это в своей системе, таким образом, она должна работать на Вас. Я также добавил и отредактировал немного, чтобы попытаться сделать немного легче понять.

Единственные изменения, которые я внес бы в его направления, - то, что Вы сначала проверяете, чтобы видеть, есть ли у Вас установленный compiz (самый легкий путь состоит в том, чтобы использовать менеджера по программному обеспечению и помещать "compiz" в окно поиска.

Если Вы действительно затем вводите следующее в терминале:-

sudo apt-get install compizconfig-settings-manager wmctrl

Иначе compiz менеджер по настройкам не будет присутствовать в Вашей системе.

Откройте терминал и тип:

xinput list

Это отобразит список. Найдите свой идентификационный номер для Вашей мыши. Вам будет нужно это число на следующих шагах. Мой был 10. Ваш будет очень вероятно отличаться.
Эти следующие команды создают новую скрытую папку в Вашей домашней папке для содержания необходимых сценариев, и перемещает Вас в него.

mkdir .scripts

cd .scripts

Затем введите

gedit compizsnap-left.sh    

Текстовый редактор откроется. Вставьте это в и затем измените Ваш идентификатор мыши от 11 до числа от вывода "xinput список" команда. При выполнении этого сохраните файл.

#!/bin/sh
#
# CompizSnap is a collaborative project from ubuntuforums.org and is free software.
# This script adds window snapping functionality to compiz using the commands plugin.
#
# Directions: run "xinput list" to find your mouse's ID# and then edit the MOUSE variable below:
#

MOUSE="11"

# ----- Don't edit below this line unless you know what you are doing.
WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x'` && HALF=$(($WIDTH/2-10))

echo $WIDTH
TEMPWIDTH=$(($WIDTH-10))
echo $TEMPWIDTH
if /usr/bin/X11/xinput --query-state $MOUSE | grep down
then
    while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
    do
        echo 'button pressed'
    done

    if [ "$(/usr/bin/X11/xinput --query-state $MOUSE | grep "valuator\[0\]=." | sed s/"valuator\[0\]="//)" -le 10 ]
    then

        wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,0,0,$HALF,-10

    else
        echo "exiting without matching"
        exit 1
    fi
else
        echo "exiting because button isnt "
        exit 1
fi    

Затем сделайте то же для других двух сценариев. (Не упущение изменить идентификатор мыши)

compizsnap-right.sh

Код:

#!/bin/sh
#
# CompizSnap is a collaborative project from ubuntuforums.org and is free software.
# This script adds window snapping functionality to compiz using the commands plugin.
#
# Directions: run "xinput list" to find your mouse's ID# and then edit the MOUSE variable below:
#

MOUSE="11"

# ----- Don't edit below this line unless you know what you are doing.
WIDTH=`xdpyinfo | grep 'dimensions:' | cut -f 2 -d ':' | cut -f 1 -d 'x'` && HALF=$(($WIDTH/2))

echo $WIDTH
TEMPWIDTH=$(($WIDTH-10))
echo $TEMPWIDTH
if /usr/bin/X11/xinput --query-state $MOUSE | grep down
then
    while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
    do
        echo 'button pressed'
    done

    if [ "$(/usr/bin/X11/xinput --query-state $MOUSE | grep "valuator\[0\]=." | sed s/"valuator\[0\]="//)" -ge $TEMPWIDTH ]
    then

        wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -b add,maximized_vert && wmctrl -r :ACTIVE: -e 0,$HALF,0,$HALF,-1

    else
        echo "exiting without matching"
        exit 1
    fi
else
        echo "exiting because button isnt "
        exit 1
fi    

И

compizsnap-max.sh

Код:

#!/bin/sh
#
# CompizSnap is a collaborative project from ubuntuforums.org and is free software.
# This script adds window snapping functionality to compiz using the commands plugin.
#
# Directions: run "xinput list" to find your mouse's ID# and then edit the MOUSE variable below:
#

MOUSE="11"

# ----- Don't edit below this line unless you know what you are doing.
if /usr/bin/X11/xinput --query-state $MOUSE | grep down
then
    while (/usr/bin/X11/xinput --query-state $MOUSE | grep down)
    do
        echo 'button pressed'
    done
    if [ "$(/usr/bin/X11/xinput --query-state $MOUSE | grep "valuator\[1\]=." | sed s/"valuator\[1\]="//)" -le 10 ]
    then

        wmctrl -r :ACTIVE: -b add,maximized_vert,maximized_horz

    else
        echo "exiting without matching"
        exit 1
    fi
else
        echo "exiting because button isnt "
        exit 1
fi    

(Вы не забывали изменять идентификатор мыши),

Теперь мы должны сказать compiz, как вести себя, когда мышь перемещается направо, вершина и оставленный экрана.

Выполненная Система> Предпочтения> менеджер по Настройкам CompizConfig. Перейдите к разделу команды. Установите следующее:
В поле Команды 0:

sh ~/.scripts/compizsnap-left.sh

В поле Команды 1:

sh ~/.scripts/compizsnap-right.sh

В поле Команды 2:

sh ~/.scripts/compizsnap-max.sh

Наконец, пойдите граничная вкладка привязки и установите команду 0 на левый, команду 1 набора, чтобы исправить, и установить команду 2 на вершину.

N.B. Compiz может жаловаться, что уже существует набор функций к граничной привязке, которую Вы хотите использовать - заменяют их Вашим.

4
ответ дан 13 April 2017 в 15:23

Другие вопросы по тегам:

Похожие вопросы: