1 votes

Ouvrez le même terminal sans changer d'espaces.

Je recherche un script AppleScript (ou n'importe quoi d'autre) qui fera ce qui suit :

  • Si une fenêtre Terminal est ouverte dans l'espace actuel, l'amener au premier plan.
  • Sinon, en ouvrir une nouvelle dans l'espace actuel.

Je ne veux pas qu'il bascule vers un autre espace si une fenêtre Terminal est ouverte là-bas.

Utiliser iTerm2 à la place de Terminal est bien, si cela rend les choses plus faciles :).

J'ai cherché des scripts qui font cela, mais le plus proche que j'ai pu trouver en ouvre un nouveau Terminal à chaque fois. Je ne veux pas ça, car j'ai probablement une session à laquelle je veux retourner.

0voto

JMY1000 Points 4874

J'ai travaillé là-dessus pendant un certain temps, et contrôler les espaces - avec ou sans script GUI, que je n'utilise pas car c'est peu élégant et ça casse - est vraiment difficile. AppleScript manque des fonctions nécessaires pour contrôler correctement les espaces. Ce qui peut être bidouillé à travers des scripts shell et l'écriture de/fichiers ne peut même pas faire ce qui est nécessaire.

Voici ce que j'ai pu gérer:

tell application "Terminal"
    if not application "Terminal" is running then
        activate
    else
        if (exists window 1) then
            activate
        else
            do script ""
            activate
        end if
    end if
end tell

Ce script fait:

  • Si une fenêtre Terminal est ouverte, l'amener au premier plan.
  • Si ce n'est pas le cas, en ouvrir une nouvelle dans l'espace actuel.

Il ne fait pas:

  • Vérifier seulement dans l'espace actuel lors de la recherche d'une fenêtre ouverte.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X