Lorsque vous utilisez des espaces sur Mac OS X, la tentative d'ouverture d'une nouvelle instance de terminal entraîne le focus sur l'espace ayant la dernière fenêtre de terminal accessible. Avec le Finder, je peux cliquer sur le bureau puis utiliser ⌘- Npour créer une nouvelle fenêtre du Finder. Ce que je recherche, c'est une méthode pour exécuter la même fonction pour les fenêtres de terminal.
Comment puis-je créer une nouvelle instance de terminal dans l'espace actuel, qu'il y ait ou non une autre instance de terminal dans un ou plusieurs autres espaces.
Merci.
Réponses:
Vous pouvez créer un nouveau service à l'aide d'un automate (à partir du dossier des applications). En haut de la fenêtre de l'automatisme, entrez: Le service ne reçoit «aucune entrée» dans «n'importe quelle application». Ensuite, dans le flux de travail, ajoutez «Exécuter applescript». Faites en sorte que l'applescript contienne les éléments suivants:
(Vous pouvez ajouter n'importe quelle commande que vous aimez dans la ligne de script do entre les "" (par exemple quelque chose d'utile à exécuter lorsque le terminal s'ouvre pour la première fois comme
uptime
si vous le souhaitez, ou tout simplement le laisser vide).Enregistrez le service sous «Open Terminal» ou sous le nom de votre choix. Il devrait maintenant apparaître dans votre menu de services.
Ensuite, si vous souhaitez ajouter un raccourci clavier, il vous suffit d'aller dans les Préférences Système -> Clavier -> onglet Raccourcis clavier, sélectionnez les services dans le menu de gauche et trouvez votre nouveau service (c'est probablement près du bas). Cliquez simplement dans l'espace à droite du nom de votre service, et attribuez-lui le raccourci clavier que vous souhaitez, et hé hop! tout devrait fonctionner
la source
do shell script " "
ligne pour ouvrir une nouvelle fenêtre dans l'espace actuel, mais il n'est pas nécessaire que le script shell soit un espace vide. S'il s'agit d'un espace vide, le terminal exécute l'espace vide en tant que commande, ce qui entraîne des retards d'exécution et une ligne superflue dans la nouvelle fenêtre du terminal. Faites-en simplement une chaîne complètement vide:do shell script ""
puis il ouvre une nouvelle fenêtre Terminal mais n'émet aucune commande.do script ""
, et nondo shell script ""
, comme l'a suggéréDans les affectations d'application dans Préférences Système -> Espaces, définissez Terminal sur "Chaque espace" ou supprimez l'entrée. Ensuite, il ne devrait pas y avoir de problème pour ouvrir une nouvelle fenêtre de terminal où vous le souhaitez, par exemple en cliquant sur le menu contextuel du dock "Nouvelle fenêtre" (fonctionne même si vous avez le "Lorsque vous passez à une application, passez à l'espace avec des fenêtres ouvertes application "activée").
la source
Pour que cela fonctionne sous Lion, saisissez ce qui précède dans une nouvelle fenêtre AppleScript et enregistrez-le. Appelez le script via un lanceur de commandes comme QuickSilver ou affectez-le à un raccourci clavier. Cela devrait fonctionner, même si vous avez défini le paramètre «Lors du passage à une application, basculez vers un espace avec des fenêtres ouvertes pour l'application» activé dans Mission Control. L'astuce consiste à faire la commande activate en dernier lieu plutôt qu'au début.
la source
Si vous utilisez le menu du dock pour ouvrir une nouvelle fenêtre, elle s'ouvre dans l'espace actuel.
la source
Vous pouvez désactiver automatiquement les espaces de commutation OSX lorsque vous changez d'application à l'aide des commandes suivantes:
defaults write com.apple.dock workspaces-auto-swoosh -bool NO
killall Dock
Fonctionne sur 10.6.8
la source