Je n'imagine pas que cela est intégré au système, mais est-il possible de le faire sans trop de tracas?
Supposons que j'ouvre un programme spécifique avec un raccourci clavier, et lorsque j'appuie à nouveau sur ce raccourci, la fenêtre du programme est mise en avant.
Je veux le faire sur Ubuntu 9.04.
Peut-être avec D-Bus? Des experts?
Mise à jour : voici ce que j'ai fini au cas où cela aiderait quelqu'un:
#!/bin/bash
if [ -f "/tmp/myterm.pid" ]; then
WID=`cat /tmp/myterm.pid`
xdotool windowactivate $WID
if [ "$?" != "0" ]; then
WID=""
fi
else
WID=`xdotool search --title "UNIQUE TITLE" | head -1`
fi
if [ "$WID" == "" ]; then
/usr/bin/gnome-terminal --window-with-profile=MYPROFILE "$@"
WID=`xdotool search --title "UNIQUE TITLE" | head -1`
echo $WID > /tmp/myterm.pid
else
xdotool windowactivate $WID
fi
Certes, cela peut être simplifié, mais je ne suis pas un bash
sorcier. De plus, pour que mon exemple fonctionne, j'ai créé un profil personnalisé dans Terminal qui applique un titre unique à la fenêtre afin qu'il puisse être trouvé plus tard. Les possibilités sont infinies!
Réponses:
Le
wmctrl
programme est exactement ce que vous recherchez (sudo apt-get install wmctrl
). Vous pouvez utiliser lawmctrl -a "AppTitle"
commande pour mettre l'application au premier plan.wmctrl -l
listera toutes les fenêtres disponibles, il devrait donc être facile d'écrire un script shell qui vérifie si votre programme est en cours d'exécution et le lance ou le met en avant. Ensuite, vous pouvez simplement le lier à un raccourci clavier.Enregistrez d'abord le script suivant quelque part, je vais l'utiliser
/home/jtb/code/bringToFront
. Il faut deux arguments, le premier est ce que vous tapez sur le terminal pour lancer le programme, le second est une sous-chaîne du titre de la fenêtre du programme. S'il n'y a pas de chaîne unique constante dans le titre, vous devrez faire un peu plus de travail pour trouver la fenêtre du programme.Avec le script dans votre répertoire actuel, exécutez
chmod +x bringToFront
pour rendre le script exécutable. Assurez-vous ensuite que cela fonctionne; pour lancer / focus firefox, vous pouvez exécuter./bringToFront firefox "Mozilla Firefox"
.Maintenant, nous devons lier une touche de raccourci. Exécutez
gconf-editor
et parcourez la structure de dossiers vers la gauche pour/apps/metacity/keybinding_commands
.Double-cliquez sur le premier
command
avec une valeur vide, probablementcommand_1
. Tapez le chemin complet du script et fournissez les deux paramètres, par exemple/home/jtb/code/bringToFront firefox Firefox
.Dans le panneau de gauche, sélectionnez
global_keybindings
le dossier suivant vers le haut. Recherchezrun
probablement l' entrée correspondant à la commande que vous venez de définirrun_command_1
. Double-cliquez dessus et saisissez le raccourci clavier que vous souhaitez utiliser. Mettez les modificateurs entre parenthèses, par exemple<Ctrl><Alt>F
.Maintenant Control+ Alt+ Famènera votre fenêtre firefox au premier plan, ou la lancera si elle n'est pas déjà en cours d'exécution.
la source
Voici une autre façon de le faire
xdotools
. Le processus de pop-up est reconnu par la ligne de commande émise pour l'exécuter (aucun fichier pid ou titre de fenêtre unique requis).la source
Merci pour ça. J'utilise une version modifiée de celui-ci pour créer un script de raccourci de fenêtre qui prend également en charge le cycle à travers plusieurs instances. Si tu es intéressé:
http://somanov.wordpress.com/2009/12/02/window-shortcuts-for-linux-desktops/
à votre santé :)
la source
La réponse postée par jtb plus tôt est excellente mais parfois vous voudriez faire correspondre les titres exacts (par exemple, vous voulez ouvrir "GitKraken" mais le titre de votre navigateur "GitKraken vs CLI" correspond également à la requête).
Alors maintenant, vous pouvez appeler votre script bringToFront comme suit:
la source
Cette solution n'est pas paramétrée, mais je l'ai utilisée pour mettre au point ou démarrer le calculateur gnome.
L'option -R trouve la fenêtre ou échoue, si elle est trouvée, elle est déplacée vers le bureau actuel, surélevée et mise en évidence. Le gnome-calculator nomme sa fenêtre avec le nom Calculator , il pourrait facilement être paramétré, mais je n'ai jamais trouvé la nécessité de le faire. Je l'ai mappé
Ctrl-Alt-c
.la source