Comment utiliser la capture de fenêtre pour Ubuntu? [dupliquer]

14

Duplicata possible:
Comment émuler winkey + arrow Agrandir les touches de raccourci de Windows 7?

J'essaie Ubuntu et je veux que mes fenêtres s'alignent à gauche et à droite comme Windows 7 lorsque j'utilise les touches de raccourci clavier + flèche. Comment puis-je faire ceci?

Doug
la source
Ubuntu utilise Compiz pour fournir des effets de fenêtre. J'ai regardé mais je ne vois aucun plugin officiel pour Compiz qui vous donnera cet effet Win 7, ce qui est dommage car c'est une belle fonctionnalité de fenêtre. Je continuerai à chercher et à poster comme réponse si je trouve quelque chose.

Réponses:

18

Ceci est facile à activer à partir du gestionnaire de paramètres CompizConfig. (Installez-le, si vous ne l'avez pas déjà fait).

Ensuite, sous Gestion des fenêtres, activez la grille. J'ai conservé les liaisons par défaut de CTRL + ALT + NumPad mais vous pouvez facilement le changer Super + Arrow comme vous préférez.

bitslave
la source
La seule chose qui me manque, c'est la combinaison d'actions. C'est-à-dire que le déplacement de la fenêtre vers la droite et vers le bas entraîne une fenêtre dans le quart inférieur droit de l'écran (similaire au comportement des fenêtres).
kleinfreund
@kleinfreund si vous cliquez sur le Gridbouton à côté de la case à cocher, vous pouvez modifier de nombreux paramètres; l' Corners / Edgesonglet vous permet de configurer l'ancrage dans les coins.
swref
Cela ne fonctionne pas sur Pop OS 18.10, les raccourcis clavier, ils ne font rien
Zach Bloomquist
4

Allez ici pour des instructions complètes sous une forme lisible par l'homme de Ubuntu de Mike, (merci Mike) et voici le message original du forum Ubuntu (merci gotsanity). J'ai vérifié cela sur mon système, cela devrait donc fonctionner pour vous. J'ai également ajouté et édité un peu pour essayer de le rendre un peu plus facile à comprendre.

Les seules modifications que j'apporterais à ses instructions sont que vous vérifiez d'abord si vous avez installé compiz (la manière la plus simple est d'utiliser le gestionnaire de logiciels et de mettre "compiz" dans la fenêtre de recherche.

Si vous le faites, saisissez ce qui suit dans un terminal: -

sudo apt-get install compizconfig-settings-manager wmctrl

Sinon, le gestionnaire de paramètres compiz ne sera pas présent sur votre système.

Ouvrez un terminal et saisissez:

xinput list

Il affichera une liste. Trouvez votre numéro d'identification pour votre souris. Vous aurez besoin de ce numéro dans les prochaines étapes. Le mien avait 10 ans. Le vôtre sera très probablement différent.
Ces commandes suivantes créent un nouveau dossier caché dans votre dossier de départ pour contenir les scripts nécessaires et vous y amènent.

mkdir .scripts

cd .scripts

Tapez ensuite

gedit compizsnap-left.sh    

Un éditeur de texte apparaîtra. Collez-le dans, puis modifiez votre ID de souris de 11 au nombre de la sortie de la commande «xinput list». Une fois cette opération effectuée, enregistrez le fichier.

#!/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    

Ensuite, faites de même pour les deux autres scripts. (Sans oublier de changer l'ID de la souris)

compizsnap-right.sh

Code:

#!/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    

Et

compizsnap-max.sh

Code:

#!/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    

(Avez-vous pensé à changer l'ID de la souris)

Maintenant, nous devons dire à compiz comment se comporter lorsque la souris se déplace vers la droite, le haut et la gauche de l'écran.

Exécutez Système> Préférences> Gestionnaire de paramètres CompizConfig. Accédez à la section des commandes. Définissez les éléments suivants:
Dans le champ Commande 0:

sh ~/.scripts/compizsnap-left.sh

Dans le champ Command 1:

sh ~/.scripts/compizsnap-right.sh

Dans le champ Command 2:

sh ~/.scripts/compizsnap-max.sh

Enfin, accédez à l'onglet des liaisons de bord et définissez la commande 0 à gauche, définissez la commande 1 à droite et définissez la commande 2 en haut.

NB Compiz peut se plaindre qu'il existe déjà des fonctions définies sur les liaisons de bord que vous souhaitez utiliser - remplacez-les par les vôtres.

Tog
la source
cela fonctionne très bien, des conseils sur la façon de le faire fonctionner avec deux moniteurs en configuration TwinView?
Nathan Schwermann
2

L'une des différences entre la plupart des gestionnaires de fenêtres Unix et Windows est que la plupart des gestionnaires de fenêtres Unix offrent une résistance au mouvement des fenêtres sur les bords de l'écran. Par conséquent, vous n'avez pas besoin de commandes spéciales pour déplacer les fenêtres vers le bord gauche ou droit de l'écran; faites-en simplement glisser un vers un bord et il s'arrêtera quand il y arrivera. Je ne connais aucun raccourci clavier Gnome (le gestionnaire de fenêtres Ubuntu standard pour l'instant) qui déplace les fenêtres.

garyjohn
la source