Hoe de UI-scripting van Apple op Mac te gebruiken

Hoe de UI-scripting van Apple op Mac te gebruiken / Mac

Als je fan bent van het gebruik van Mac OSX Applescript, heb je waarschijnlijk enkele beperkingen opgemerkt. Namelijk, dat niet alle programma's direct kunnen worden gemanipuleerd met Applescript. U kunt echter Applescript's User Interface (UI) -script gebruiken om de gaten op te vullen als u weet hoe.

Het is mogelijk om Applescript te gebruiken om de gebruikersinterface van zowat elk programma op je Mac te besturen. Soms is het een beetje moeilijk, maar het kan inderdaad worden gedaan. Ik zal je de basis laten zien van hoe je dit zelf moet doen en je door een eenvoudig script heen leiden met behulp van deze technieken.

Eerst poetsen op Basic Applescript

Als Applescript nieuw voor u is of er al een tijdje niet naar gekeken heeft, penseel dan Leer hoe u uw Mac automatiseert met AppleScript [Deel 1: Introductie] Leer uw Mac te automatiseren met AppleScript [deel 1: Inleiding] Lees meer over uw Applescript kennis 6 Beginner Resources voor het leren van Mac-programmeren 6 Beginnershulpmiddelen voor leren Mac-programmeren Lees meer voordat u deze handleiding leest.

Ik zal schermafbeeldingen toevoegen die zoveel mogelijk bevatten, maar dit artikel gaat over de fijnere details, niet over elementaire Applescript (die we al behandeld hebben).

Schakel UI-scripting in

Voordat u UI-scripting kunt gebruiken, gaat u naar Systeemvoorkeuren, Universele toegang en vink het vakje aan toegang voor hulpapparaten inschakelen.

Key Strokes gebruiken

De eenvoudigste manier om te communiceren met de gebruikersinterface van een programma met Applescript is het invoeren van toetsaanslagen te simuleren, alsof je Mac-snelkoppelingen en typopdrachten gebruikt.

In TextEdit wilt u bijvoorbeeld een zoek-en-vervang zoekopdracht uitvoeren. U weet waarschijnlijk al dat u CMD-F kunt typen voor Zoeken / Vervangen, typ uw zoekterm in, druk op tabblad om naar het volgende veld te gaan, typ de vervangende term in en druk vervolgens op “Vervang alles” om de tekst te vervangen.

In Applescript kunt u de gebruikersinterface ook vertellen om deze opdrachten te typen. U zou CMD-F via het commando communiceren toetsaanslag “f” gebruik command down met Applescript. Merk ook op, de manier om CMD-SHIFT-S uit te voeren is toetsaanslag “s” gebruik command down, shift down. Je kunt ook typen in de UI met Applescript door te gebruiken toetsaanslag “mytext”, waar uw tekst wordt ingevoerd tussen de omgekeerde komma's. Ten slotte kunt u enkele eenvoudige toetsaanslagen typen, zoals TAB, zoals dit: toetsaanslag tab.

Voordat u de toetsaanslagopdracht gebruikt, moet u ervoor zorgen dat de procesklasse wordt aangeroepen (en vergeet niet om deze tellingscommando's later te beëindigen).

vertel de applicatie “Systeem Gebeurtenissen”
vertel proces “TextEdit”

Zie de screenshot voor de volledige commando's voor deze standaard zoek / vervang actie in volgorde.

Klikken op knoppen

Als uw programma een aantal knoppen heeft om uit te kiezen, kunt u normaal gesproken een eenvoudige applescriptopdracht gebruiken om ze te besturen. In het geval van het vinden / vervangen wilt u misschien klikken “Vervang alles”. Het commando hiervoor is klik op de knop “Vervang alles”.

Meer complexe GUI-manipulatie

Omdat veel Mac-programma's niet ontworpen waren om te worden behandeld door Applescript met UI Scripting, moet je soms jagen om te vinden wat je zoekt. Gebruik hiervoor het gratis programma met de naam UIElementInspector.

Zodra dit is uitgevoerd, kunt u elk gewenst UI-element inspecteren. De UI-elementinspecteur toont u continu de details van elk element waar u overheen zweeft.

Kijk naar dit voorbeeld en je kunt de hiërarchie zien. Het pop-upmenu maakt deel uit van een groep die deel uitmaakt van een andere groep, die deel uitmaakt van een werkblad, dat deel uitmaakt van een venster. Merk op dat het ook wordt beschreven als een pop-upknop in plaats van een menu.

Zie nu hoe dit in het script wordt weergegeven:

vertel groep 1 van groep 1 van blad 1 van venster 1
vertel pop-upknop 1
Klik

Zoals je kunt zien, moet je, om het script aan het werk te krijgen, een beetje gezond verstand en een beetje vallen en opstaan ​​toevoegen.

In dit geval wilde ik het document opslaan als RTF. Ik gebruikte een toetsaanslag commando om de “Opslaan als” venster. Dit zweeft boven het bestand “Voorbeeld” venster, maar de UI elementinspecteur lijkt dit extra venster te negeren. Om het script uit te voeren, moet u echter venster 1 naar actie bellen, niet naar venster “Voorbeeld”.

Je moet ook onthouden om elke kleine klik op te nemen die je normaal zou maken. In dit geval moet u onthouden dat u op het pop-upmenu moet klikken voordat u dat menu kunt gebruiken om een ​​menuoptie te kiezen.

Het kost een beetje moeite om precies vast te stellen wat u moet schrijven in het script voor de gebruikersinterface die u probeert te gebruiken, maar met geduld en een beetje giswerk kunt u dat wel. Ik hoop dat je, door je ogen open te stellen voor deze mogelijkheid, in staat bent om meer handige applescripts te maken voor alleen gebruik of in Automator. Leer Mac Automator gebruiken met 6 handige voorbeeldworkflows Leer hoe je Mac Automator kunt gebruiken met 6 handige voorbeeldworkflows Een beetje geduld en creativiteit is alles wat je nodig hebt om je Mac te kunnen automatiseren - je hoeft geen enkele regel code te kennen. Lees verder .

Wat zijn je favoriete manieren om Applescript te gebruiken? Kun je die scripts beter maken met sommige UI-scripting? Laat het ons weten in de comments!

Ontdek meer over: Applescript, Computer Automation, Programming.