AppleScript imprime les touches, ne les exécute pas

0

Je m'attends à ce que ce script permute les applications (onglet Commande):

$ cat hello.applescript
tell application "System Events"
 key code 48 using command down
end tell

Mais cela ne fait qu'imprimer un onglet:

$ osascript hello.applescript
   

Je suis sous OS X 10.9.4

sam boosalis
la source

Réponses:

1

Je ne l'ai pas utilisé à l'intérieur d'un shellscript, mais uniquement dans Applescript «pur», mais pourquoi pas

tell application "myApp" to activate

..il empêcherait le hasard de quelle application particulière était ensuite en ligne.

Tetsujin
la source
1

Selon cela, vous devez également dire Finder:

tell application "System Events"
  tell process "finder"
    activate
    keystroke tab using {command down}
  end tell
end tell

Mais j'aime aussi la suggestion de spécifier l'application par son nom ...

Beroe
la source
mhm - Je suis à peu près sûr que l'ordre de lancement des applications ce jour-là va sauter et mordre quelqu'un dans les parties molles à un moment donné, si l'application requise n'est pas spécifiée.
Tetsujin
@Tetsujin - Je suis d'accord et préfère votre solution à long terme. J'étais curieux de savoir pourquoi la commande ne fonctionnerait pas comme indiqué, et cela semble être la raison.
beroe
Merci. Pour être clair, j'aimerais simuler exactement les pressions de touche. Vous voyez le même problème lorsque vous remplacez tab par "T". Mon objectif n’était pas d’écrire telle ou telle commande, mais bien d’écrire des frappes au clavier.
sam boosalis
Si vous pouvez expliquer la différence entre votre question et l'application pour laquelle vous souhaitez les simuler, nous pourrons peut-être donner une réponse plus précise.
beroe