Je bascule constamment entre Sublime Text, Terminal et Chrome. Je voudrais lier un raccourci comme "Alt + 1" pour que mon terminal actuel et Google actuel Chrome s'ouvre.
À l'heure actuelle, chaque fois que je lance Google Chrome ou le terminal, il ouvre une nouvelle fenêtre. Une idée?
Merci !
La méthode dans la réponse de drizzle fonctionnera, mais a quelques inconvénients
L'ordre des éléments dans le lanceur peut changer, selon les applications que vous exécutez. Le nombre de Chrome
pourrait alors être différent.
Vous pourriez faites simplement avec la commande:
wmctrl -a chrome
ce qui soulèvera la première fenêtre trouvée avec "chrome" dans son nom. Cela ouvrirait cependant aussi la fenêtre dans laquelle j'écris maintenant (a firefox
fenêtre, nommée: "Raccourci pour ouvrir Google Chrome actuel ...")
L'utilisation du pid de la fenêtre évitera cela. À mon avis, il est donc plus élégant de mettre la commande:
wmctrl -ia "$(wmctrl -lp | grep "$(pgrep chrome)" | tail -1 | awk '{ print $1 }')"
sous une touche de raccourci (Alt+1 fonctionnera), étant donné que vous auriez besoin d'installer wmctrl
:
Sudo apt-get install wmctrl
Installez wmctrl
Sudo apt-get install wmctrl
créer un petit script (ouvrez un fichier vide, collez-y le script ci-dessous)
#!/bin/bash
wmctrl -ia "$(wmctrl -lp | grep "$(pgrep chrome)" | tail -1 | awk '{ print $1 }')"
Enregistrez-le sous raise_chrome.sh
Ajoutez le script à un raccourci; choisissez: Paramètres système> "Clavier"> "Raccourcis"> "Raccourcis personnalisés". Cliquez sur le "+" et ajoutez la commande:
/bin/bash /path/to/raise_chrome.sh
(par exemple) le raccourci Alt+1.
N.B. Utilisez un chemin absolu, pas par ex. ~
La commande est en fait une "conversion" de celle-ci , et l'explication est similaire:
Dans la section:
"$(wmctrl -lp | grep "$(pgrep chrome)" | tail -1 | awk '{ print $1 }')"
la commande:
wmctrl -lp
liste toutes les fenêtres, y compris leur pid et window-id. Le résultat est canalisé vers
grep "$(pgrep chrome)"
qui filtre (répertorie) toutes les occurrences des fenêtres Chrome
.
Alors,
tail -1
nous donnera le dernier élément de la liste, qui est la dernière fenêtre créée (puisque wmctrl
répertorie les fenêtres par ordre chronologique).
awk '{ print $1 }'
enfin, nous donnera la première chaîne de la ligne (à partir de la sortie de wmctrl
), qui est l'identifiant de la fenêtre.
La commande:
wmctrl -ia <window_id>
Augmentera alors la fenêtre dernière création de Chrome
Inutile de dire que vous pouvez remplacer chrome
dans la commande par une autre application (nom du processus) et les placer sous des combinaisons de touches distinctes.
Puisque vous mentionnez Sublime Text
, Terminal
et Chrome
, vous souhaiterez peut-être utiliser plusieurs raccourcis et exécuter le script avec l'application comme argument.
Utilisez le script avec une légère différence:
#!/bin/bash
app=$1
wmctrl -ia "$(wmctrl -lp | grep "$(pgrep "$app")" | tail -1 | awk '{ print $1 }')"
et l'exécuter ensuite avec les commandes sous les touches de raccourci:
sh /home/jacob/Bureaublad/raise.sh sublime_text
sh /home/jacob/Bureaublad/raise.sh gnome-terminal
et
sh /home/jacob/Bureaublad/raise.sh chrome
Vous pouvez utiliser alt-tab pour basculer rapidement entre les programmes.
Vous pouvez également utiliser le bouton Super (aka bouton Windows) comme ceci: Super + numéro. par exemple. Super + 3 ouvrira la troisième application dans votre lanceur d'applications. Pour identifier rapidement les numéros associés aux applications, appuyez et maintenez le bouton super.