Slik bruker du Applescript's UI Scripting på Mac

Slik bruker du Applescript's UI Scripting på Mac / Mac

Hvis du er fan av å bruke Mac OSX Applescript, har du sikkert lagt merke til noen begrensninger. Nemlig, at ikke alle programmer kan manipuleres direkte med Applescript. Du kan imidlertid bruke Applescripts brukergrensesnitt (UI) scripting til å fylle hullene hvis du vet hvordan.

Det er mulig å bruke Applescript til å kontrollere brukergrensesnittet på omtrent hvilket som helst program på din Mac. Noen ganger er det litt vanskelig, men det kan faktisk gjøres. Jeg vil vise deg grunnleggende om hvordan du gjør dette selv og tar deg gjennom et enkelt skript ved hjelp av disse teknikkene.

Børst opp på grunnleggende applescript først

Hvis du er ny på Applescript, eller har ikke sett på det på en stund, bør du børste Lær å automatisere Mac med AppleScript [Del 1: Introduksjon] Lær å automatisere Mac med AppleScript [Del 1: Introduksjon] Les mer på din Applescript kunnskap 6 Nybegynnerressurser for å lære Mac-programmering 6 Nybegynnerressurser for å lære Mac-programmering Les mer før du leser denne veiledningen.

Jeg legger til skjermbilder som dekker så mye som mulig, men denne artikkelen handler om de finere detaljene, ikke om grunnleggende Applescript (som vi allerede har dekket).

Aktiver UI Scripting

Før du kan bruke UI scripting, gå til Systemvalg, universell tilgang og merk av i boksen til aktiver tilgang for hjelpemidler.

Bruke tastetrykk

Den enkleste måten å samhandle med brukergrensesnittet til et program med Applescript, er å simulere innføringen av tastetrykk, som om du bruker Mac-snarveier og skrive kommandoer.

For eksempel, i TextEdit vil du kanskje gjerne søke og erstatte søk. Du vet sikkert sikkert at du kan skrive CMD-F for Finn / Erstatt, skriv inn søkeordet ditt, trykk på kategorien for å flytte til neste felt, skriv inn erstatningsterminalen og trykk deretter på “Erstatt alle” å erstatte teksten.

I Applescript kan du også fortelle brukergrensesnittet for å skrive inn disse kommandoene. Du vil kommunisere CMD-F med kommandoen tastetrykk “f” bruker command down med applescript. Merk også, måten å utføre CMD-SHIFT-S er tastetrykk “s” bruke kommando ned, skift ned. Du kan også skrive inn brukergrensesnittet med Applescript ved å bruke tastetrykk “mytext”, hvor teksten din er skrevet mellom de omvendte kommaene. Til slutt kan du skrive noen enkle tastetrykk som TAB slik: tastetrykkfane.

Før du bruker tastetrykk-kommandoen, må du forsikre deg om at prosessen klassen blir påkalt (og ikke glem å avslutte de fortell kommandoene senere).

fortell søknad “System hendelser”
fortell prosessen “TextEdit”

Se skjermbildet for de fulle kommandoene for denne grunnleggende finne / erstatt handlingen i rekkefølge.

Klikk på knapper

Når programmet har flere knapper å velge mellom, kan du vanligvis bruke en enkel Applescript-kommando for å kontrollere dem. I tilfelle av søk / erstatning vil du kanskje klikke “Erstatt alle”. Kommandoen for dette er klikk-knappen “Erstatt alle”.

Mer kompleks GUI manipulering

Da mange Mac-programmer ikke var designet for å håndteres av Applescript med UI Scripting, må du noen ganger jakte på for å finne det du leter etter. For å gjøre dette, bruk det gratis programmet kalt UIElementInspector.

Når dette kjører, kan du inspisere ethvert UI-element du ønsker. UI-elementinspektøren vil kontinuerlig vise deg detaljene til ethvert element du svinger over.

Se på dette eksemplet, og du kan se hierarkiet. Pop-up-menyen er en del av en gruppe, som er en del av en annen gruppe, som er en del av et ark, som er en del av et vindu. Merk det er også beskrevet som en pop-up-knapp, i stedet for en meny.

Se nå hvordan dette er representert i skriptet:

fortell gruppe 1 i gruppe 1 av ark 1 i vindu 1
Fortell popup-knappen 1
klikk

Som du kan se, for å få skriptet til å fungere, må du legge til litt sunn fornuft og en liten bit av prøving og feiling.

I dette tilfellet ville jeg lagre dokumentet som RTF. Jeg brukte en tastetrykkskommando for å åpne “Lagre som” vindu. Dette faller over filens “Eksempel” vindu, men UI-elementinspektøren ser ut til å ignorere dette ekstra vinduet. Likevel, for å kunne utføre skriptet, må du ringe vindu 1 til handling, ikke vindu “Eksempel”.

Du må også huske å inkludere hvert eneste klikk du vanligvis vil gjøre. I dette tilfellet må du huske å klikke på popup-menyen før du kan instruere den menyen for å velge et menyelement.

Det tar litt arbeid å finne ut nøyaktig hva du trenger å skrive inn i skriptet for brukergrensesnittet du prøver å bruke, men med tålmodighet og et lite gjetning kan du klare å gjøre det. Jeg håper at ved å åpne øynene for denne muligheten, kan du skape mer nyttige Applescripts for bruk alene eller i Automator Lær å bruke Mac Automator med 6 praktiske eksempel arbeidsflyter Lær å bruke Mac Automator med 6 praktiske eksempel arbeidsflyter Litt tålmodighet og kreativitet er alt du trenger for å begynne å automatisere din Mac - du trenger ikke å kjenne en enkelt linje med kode. Les mer .

Hva er dine favoritt måter å bruke Applescript på? Kan du gjøre disse skriptene bedre med noen UI-skripting? Gi oss beskjed i kommentarene!

Utforsk mer om: Applescript, Computer Automation, Programmering.