7 votes

Comment déplacer une fenêtre vers un espace cible avec Applescript dans OS X 10.8 ?

En fin de compte, j'essaie d'assigner des touches de raccourci (via Alfred ou Keymando) qui peuvent déplacer l'application la plus en avant vers n'importe lequel de mes espaces. Le déclenchement d'un applescript semble être la voie la plus probable vers le succès. J'ai beaucoup cherché et il semble qu'il y ait eu un moyen de le faire via les "préférences d'espaces" dans applescript, mais cela a disparu dans OS X Lion.

6voto

robjwells Points 357

Si vous recherchez une solution purement AppleScript, vous n'avez pas de chance.

Comme vous l'avez mentionné, le panneau de préférences Espaces a disparu. De plus, Mission Control.app n'a pas de dictionnaire à ouvrir, et l'extraction des propriétés d'une fenêtre ( tell application Finder to set x to the front finder window's properties ) ne montre rien qui soit en rapport avec les espaces.

Le dictionnaire de System Events dispose d'un current desktop que je n'arrive pas à démêler et qui, de toute façon, est en lecture seule.

Cependant, chaque espace après le premier et le tableau de bord a une valeur de UUID contenu dans un fichier .plist (com.apple.spaces) que vous trouverez dans ~/Bibliothèque/Préférences. Dans cette .plist, il y a également une section "app-bindings", ce qui suggère que le comportement auquel vous pouviez accéder via le panneau de préférences Exposé/Spaces n'a pas totalement disparu.

Malheureusement, lors de mes tests, où j'ai ajouté une paire dict & string à "app-bindings", je n'ai pas pu forcer une application à utiliser un espace particulier, même après un redémarrage.

Il semble que lorsqu'Apple a abandonné la grille Spaces pour la rangée Mission Control de Mountain Lion, elle a abandonné le contrôle de l'utilisateur sur ce qui devait apparaître dans chaque espace, et vu la façon dont l'interaction a changé (bureaux supplémentaires ad-hoc par rapport à une grille définie par l'utilisateur), je ne serais pas surpris que les choses aient également changé sous le manteau.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X