J'aimerais verrouiller l'écran lorsque je déplace la souris dans le coin inférieur droit.
Existe-t-il une configuration compiz pour cette tâche?
Je n'ai rien trouvé dans les paramètres système et compizconfig-settings-manager.
Les outils simples pour obtenir la position de la souris est xdotool
il suffit d’installer d’abord et ensuite de suivre les étapes suivantes:
Sudo apt-get install xdotool
alors nous utilisons xdotool getmouselocation --Shell
pour voir la position actuelle de la souris: le résultat ressemblera à ceci:
X=845
Y=447
SCREEN=0
ou en exécutant eval $(xdotool getmouselocation --Shell)
placera la position dans les variables shell X
, Y
et SCREEN
. Après cela, nous pouvons accéder à ces variables avec ceci:
echo $X $Y $SCREEN
Nous avons maintenant besoin d’une boucle while pour vérifier la position de la souris à chaque fois:
while true
do
[get mouse position]
[if position =bottom-right corner then lock screen]
done
ok donc nos scripts seraient comme ça:
#! /bin/sh
while true
do
eval $(xdotool getmouselocation --Shell)
if [ $X -ge 1919 -a $Y -ge 1079 ]; then
gnome-screensaver-command -l
fi
done
sauvegardez le script nommé "lock.sh" dans votre répertoire personnel et exécutez-le avec sh lock.sh
puis déplacez la souris vers le coin inférieur droit pour afficher le résultat. cool!
explique:
Nous combinons les conditions en utilisant certains opérateurs. Pour la syntaxe à crochet unique que nous avons utilisée jusqu’à présent, "-a" est utilisé pour et. et "-o" pour ou. Exemple:
if [ $foo -ge 3 -a $bar -ge 10 ]; then
La condition ci-dessus retournera la valeur vraie si $foo
contient un entier g supérieur à ou ou e qual to 3 (-ge 3) et aussi $bar
contient un entier g supérieur à ou e qualifiez-vous pour 10. puis exécutez la ligne de commande de l'écran de verrouillage gnome-screensaver-command -l
Je ne pouvais trouver aucun paramètre dans Compiz Manager, ni dans les paramètres de Unity Tweak (qui utilise la même chose), mais si vous ajoutez le script ci-dessous à vos applications de démarrage, il vérifiera la résolution de votre écran et la position de votre souris. Si la souris est à une marge du coin (définie dans l'en-tête du script), l'écran sera verrouillé.
Comment utiliser
Installez xdotool:
Sudo apt-get install xdotool
Collez le script ci-dessous dans un fichier vide, définissez la marge (en pixels) dans laquelle vous souhaitez que le hotcorner agisse, enregistrez-le sous le nom screenlock.py, rendez-le exécutable pour des raisons de commodité et ajoutez-le à vos applications de démarrage (Dash> Applications de démarrage > Ajouter). Ajouter ajouter la commande:
/path/to/screenlock.py
Le scénario:
#!/usr/bin/env python3
import time
import subprocess
marge = 3 # (pixels) increase to increase sensitivity
output = subprocess.check_output(["xrandr"]).decode('utf-8').strip().split()
idf = output.index("current")
res = (int(output[idf+1]), int(output[idf+3].replace(",", "")))
command = "gnome-screensaver-command -l"
while True:
get_pos = subprocess.check_output(["xdotool", "getmouselocation", "--Shell"]).decode('utf-8').strip().split("\n")
pos = (int(get_pos[0][2:]), int(get_pos[1][2:]))
if res[0] - pos[0] < marge and res[1] - pos[1] < marge:
subprocess.Popen(["/bin/bash", "-c", command])
time.sleep(1)