Vaya aquí para obtener instrucciones completas en forma legible por humanos de Ubuntu de Mike, (gracias Mike) y aquí está la publicación original del foro de Ubuntu (gracias gotsanity). He comprobado esto en mi sistema, por lo que debería funcionar para usted. También he agregado y editado un poco para intentar que sea un poco más fácil de entender.
Los únicos cambios que haría en sus instrucciones es que primero verifique si tiene compiz instalado (la forma más fácil es usar el administrador de software y poner "compiz" en la ventana de búsqueda.
Si lo hace, escriba lo siguiente en una terminal: -
sudo apt-get install compizconfig-settings-manager wmctrl
De lo contrario, el administrador de configuración de compiz no estará presente en su sistema.
Abra una terminal y escriba:
xinput list
Mostrará una lista. Encuentra tu número de identificación para tu mouse. Necesitará este número en los próximos pasos. El mío era 10. El tuyo probablemente será diferente.
Estos siguientes comandos crean una nueva carpeta oculta en su carpeta de inicio para contener los scripts necesarios y lo lleva a ella.
mkdir .scripts
cd .scripts
Luego escribe
gedit compizsnap-left.sh
Aparecerá un editor de texto. Pegue esto y luego cambie la identificación de su mouse de 11 al número de la salida del comando "xinput list". Cuando haya hecho esto, guarde el archivo.
#!/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
Luego, haga lo mismo para los otros dos guiones. (Sin olvidar cambiar la identificación del mouse)
compizsnap-right.sh
Código:
#!/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
Y
compizsnap-max.sh
Código:
#!/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
(¿Se acordó de cambiar la identificación del mouse)
Ahora tenemos que decirle a Compiz cómo comportarse cuando el mouse se mueve a la derecha, arriba y a la izquierda de la pantalla.
Ejecute Sistema> Preferencias> Administrador de configuración de CompizConfig. Ve a la sección de comandos. Establezca lo siguiente:
En el campo Comando 0:
sh ~/.scripts/compizsnap-left.sh
En el campo Comando 1:
sh ~/.scripts/compizsnap-right.sh
En el campo Comando 2:
sh ~/.scripts/compizsnap-max.sh
Finalmente, vaya a la pestaña de enlaces de borde y establezca el comando 0 a la izquierda, establezca el comando 1 a la derecha y establezca el comando 2 en la parte superior.
NB Compiz puede quejarse de que ya hay funciones configuradas para los enlaces de borde que desea usar; reemplácelos con los suyos.