Shembuj të Applescript. MAC OS X Hyrje në AppleScript

Kjo është një gjuhë programimi, një teknologji që i përket kompanisë, përdoret më shpesh për të automatizuar proceset e punës dhe bën të mundur komunikimin e programeve me njëri-tjetrin. Uau :)

Nuk do të hap një seri artikujsh me temën: “Applescript për dummies. Hap pas hapi" për një arsye të thjeshtë - ka shumë materiale për këtë temë në internet. Dhe në mënyrë që të mos e rishkruaj abetaren në mënyrën time dhe të mos rishpik rrotën, unë do të tregoj vetëm disa burime që më dukeshin më të përshtatshmet. Unë vetë do të ndriçohem prej saj.

Pothuajse çdo autor shkruan se gjuha e skriptimit është aq e thjeshtë sa çdo përdorues me të paktën pak njohuri të anglishtes tradicionale mund të shkruajë në të. Dhe nuk keni nevojë të zotëroni çdo aspekt të programimit të orientuar drejt objektit. Ka një pjesë të së vërtetës në këtë, sepse në skenar

tregoni aplikacionit "Finder"

shfaq dialogun "Përshëndetje përgjumësit!"

Është e vështirë të mos kuptohet se çfarë kërkohet nga cili program. Por unë nuk jam plotësisht dakord për OOP. Nëse shkruani gjëra të tilla të kota si bip ose thoni "Kush është burri? ", atëherë po, ju mund të mos e dini se çfarë është një cikël dhe një klasë, dhe OOP është ende shumë larg nga kjo. Por nëse doni të mësoni se si të shkruani programe ose skripta për t'i bërë detyrat e përditshme më të lehta për veten tuaj ose ndonjë bazë të dhënash , atëherë është më mirë që ju të dini se janë “Trashëgimia” dhe “Enkapsulimi”.

Ku të fillojë?

Gjithçka është e thjeshtë dhe në majë të gishtave tuaj. Hapni Redaktorin e Skripteve dhe fillimisht shkoni te ndihma. Nëse përdorni versionin rus, nuk duhet të ketë fare vështirësi.

Kush dëshiron një libër?

Nëse manuali standard nuk është i mjaftueshëm, ose është shkruar në atë mënyrë që gjithçka të mos jetë menjëherë e qartë për ju, mund t'i drejtoheni edhe librave (elektronikë ose të shtypur - varet nga ju). Libri "AppleScript Language Guide" shpesh përmendet. Rezulton se ka një lidhje me të në ndihmën e Redaktuesit të Skripteve.

Është e pamundur të mos merren parasysh burimet e tjera që na ofron vetë kompania e zhvillimit. Ekziston një libër për fillestarët "AppleScript 1-2-3" ose mund ta blini me të njëjtin emër.

Më e madhe është më mirë

Pse të mos merrni parasysh burimet në internet? Në fund të fundit, këtu mund të gjeni më të fundit, dhe ata u përgjigjen rishikimeve të lexuesve më shpesh dhe më shpejt. Le të kërkojmë letërsi në një gjuhë të arritshme.

Përveç artikujve të ndryshëm të rishikimit, mund të gjeni "" në internet. Unë do të thoja që këto janë posaçërisht për ata që janë të interesuar në applescript. Libri është për fillestarët, është shkruar thjesht, ka pak faqe, por ka plot shembuj. Pikërisht ajo që nevojitet. Aty mund të shkarkoni gjithashtu një libër të quajtur "".

Manualet ruse janë të mira, por pa njohuri baze Anglishtja do të jetë, për ta thënë butë, e vështirë për t'u mësuar si gjuhë shkrimi.

Nga artikujt, unë do t'i kushtoja vëmendje këtij. Më pëlqeu për paraqitjen e detajuar të disa prej parimeve bazë të vetë gjuhës së shkrimit, "të shkurtër dhe të qartë".

Mos harroni gjithashtu për forume të ndryshme ku përdoruesit shkëmbejnë mendime, përvoja dhe skripta të gatshme. Personalisht, unë e kam këtë në faqeshënuesit e mi.

Para se të filloni të kërkoni dhe shkarkoni materiale, ju rekomandoj të vendosni për qëllimin tuaj. Për zhvillim të përgjithshëm, mund të njiheni me disa burime. Për të shkruar skripta vërtet të dobishme do t'ju duhet të kaloni disa ditë/javë/muaj (në varësi të aftësive tuaja dhe kohës së lirë). Është shumë interesante dhe problematike.

Aktualisht nuk mund të vlerësoj shanset e një personi për të gjetur një punë si programues ose testues i Applescript. Me shumë mundësi jo shumë i madh. Por nëse ndihesh sikur është e jotja, vazhdo. Nëse e shihni qëllimin dhe nuk i shihni pengesat, nuk ka rëndësi se kujt i nevojitet (të paktën ju). Talenti i vërtetë gjithmonë do të vlerësohet. Dhe ju keni një shans për të bërë punën që ju pëlqen.

AppleScript është një gjuhë e fuqishme programimi që daton që nga Mac OS 7. Megjithatë, pavarësisht pjekurisë së saj, programuesit me përvojë Mac shpesh e kritikojnë AppleScript për të qenë shumë i thjeshtë, shumë i lehtë për t'u mësuar dhe shumë i ngjashëm me anglishten e zakonshme.

Natyrisht, ju do të dëshironit që një gjuhë kompjuteri të kishte pikërisht këto cilësi - nëse, sigurisht, dëshironi një gjuhë kompjuteri fare. AppleScript është gjuha me e thjeshte programim me të cilin mund të automatizoni Mac-in tuaj, edhe nëse jeni një përdorues i thjeshtë dhe jo një shkencëtar i certifikuar kompjuterash.

Programet AppleScript (të quajtura skripta ose skripta) mund të konsiderohen robotë softuerësh. Një AppleScript i thjeshtë mund të bëjë disa detyra të përditshme si krijimi kopje rezervë Dosjet e dokumenteve. Një skrip më kompleks mund të përfshijë disa faqe. Në shtëpitë botuese profesionale, ku AppleScript është më i popullarizuari, skripti mund të lidhet nëpërmjet internetit hard drive fotograf, merrni një foto nga një dosje e specifikuar, kryeni korrigjimin e ngjyrave në Photoshop, ngjitni rezultatin në një dokument të specifikuar të paraqitjes, printoni një plan urbanistik të përafërt, dërgoni një njoftim me email te redaktori - dhe e gjithë kjo bëhet automatikisht.

Pa e ditur as këtë, përdoruesi po përdor vazhdimisht teknologjinë themelore AppleScript. Komponentë të shumtë Mac komunikojnë prapa skenave duke përdorur Apple Events, të cilat janë mesazhe që kalojnë udhëzime ose të dhëna nga programi në program. Nëse përdorni komandën Show Original në një pseudonim ose komandën Get Info në një skedar ose dosje, Apple Event do t'i tregojë Finder-it se si të përgjigjet.

AppleScript është superior ndaj Automator në një sërë mënyrash, jo më pak e rëndësishme është fuqia e tij. Dhe një gjë tjetër: AppleScript është një temë aq e thellë sa duhet t'i kushtohet një libri të veçantë. Ky kapitull është thjesht një meze e shijshme: një libër si AppleScript: The Essential Guide do të ishte një vakt me shtatë pjata.

Këshilla Ju mund të shkarkoni një kapitull të tërë mbi AppleScript-i cili u shfaq në një botim të mëparshëm të këtij libri-nga faqja e CD-së që mungon në www.missingmanuals.com.

Nuk keni nevojë të krijoni AppleScript për të shijuar përfitimet e kësaj teknologjie. Mac OS X vjen me dhjetëra skripta të gatshëm që janë vërtet të dobishëm dhe për të ekzekutuar cilindo prej tyre, thjesht zgjidhni emrin e tij në meny. Ky "riprodhim" i një AppleScript kërkon po aq aftësi teknike sa shtypja e një butoni në një ashensor.

Ju mund të provoni disa nga këta skenarë fillestarë të lezetshëm duke shtuar një meny skenari në shiritin e menusë (Figura 7.16, djathtas).

Menuja e skenarit ka 16 kategori të gatshme, duke kombinuar rreth 100 skenarë; për të ekzekutuar një skript, thjesht zgjidhni emrin e tij. Këtu është një listë e skenarëve më të dobishëm dhe më interesantë.

Këshilla Nëse shtypni tastin Shift ndërsa zgjidhni një emër skripti nga menyja, Mac OS X do t'ju çojë drejtpërdrejt në vendin ku ndodhet ai skript në Finder (për shembull, dosja Home>Library>Scripts). Për më tepër, nëse shtypni tastin Option ndërsa zgjidhni një emër, skripti do të hapet në Redaktuesin e Skriptit, ku mund ta ekzaminoni ose modifikoni.

Kjo nënmenu përmban vetëm skriptin Import Addresses, i krijuar për të kopjuar emra dhe adresa nga Entourage në programin e Librit të Adresave, Outlook Express, Palm Desktop, Eudora, Claris Emailer ose Netscape. Nëse keni shumë miq, përdorni këtë skript që të mos keni nevojë të rifusni të gjithë emrat, numrat e telefonit dhe adresat e tyre postare. (Nëndosje shoqëruese Address Importers ofron skriptet për import nga tre programe specifike.)

Nënmenyja Baza përmban tre skripta të vegjël të dobishëm në lidhje me AppleScript: AppleScript Help (hap shikuesin e ndihmës dhe kërkon fjalën AppleScript); Faqja e internetit e AppleScript (hap faqen e internetit AppleScript në shfletuesin tuaj të internetit); Open Script Editor (hap programin Script Editor, i krijuar për të lexuar dhe redaktuar skriptet AppleScript).

Kjo dosje përmban një grup skriptesh pikash ColorSync (që funksionojnë kur tërhiqni diçka në ikonën e saj) që janë me interes për artistët, projektuesit e faqeve të internetit, botuesit dhe të ngjashme.

Në disa raste, kur zgjidhni një skript nga kjo meny, do të shihni një të shkurtër Njoftim dhe pastaj kutinë e dialogut Open për të zgjedhur skedar grafik të përpunohen.

Të tjerët veprojnë menjëherë; për shembull, skripti i monitorit të PC Mimik rregullon ngjyrat e ekranit që të përputhen ngushtë me nuancat paksa të ndryshme në një monitor kompjuteri Windows. Kjo është shumë e përshtatshme nëse jeni duke punuar

KURS ME PËRDORUES ME PËRVOJË
Sekretet e menusë së skenarit
Menuja e skriptit shfaq përmbajtjen e dy dosje të ndryshme Skriptet: Njëra është Home>Library>Scripts dhe tjetra është në dosjen kryesore të Bibliotekës. Ato skripte që janë marrë nga dosja juaj personale ndahen me një vijë me pika në menynë e skriptit.

Këto skripta jo vetëm që mund të ekzekutohen. Ato janë gjithashtu ideale për t'i hapur ato në Redaktuesin e Skripteve (thjesht klikoni dy herë) dhe për të analizuar rresht pas rreshti se si funksionojnë. Pasi të kuptoni sintaksën, mund të kopjoni fragmente kodi dhe, pasi t'i ndryshoni ato, t'i përdorni në skriptet tuaja. (Redaktori i Skripteve është një program që gjendet në dosjen Applications > AppleScript që mund ta përdorni për të krijuar skriptet tuaja.)

Një fotografi ose një faqe interneti dhe dua të di se si do t'u duket masave të pandriçuara. (Për të rivendosur ngjyrat origjinale, shkoni te skeda Ngjyra e telekomandës së Ekranit në dritaren Preferencat e Sistemit.)

Të gjithë këta skenarë kanë të bëjnë me punën në Finder - le të themi, manipulimin e skedarëve dhe dritareve. Këtu janë më të dobishmet prej tyre:

Shto te emrat e skedarëve, shto te emrat e dosjeve. Këta skripta i bashkojnë një parashtesë ose prapashtesë emrit të çdo skedari ose dosjeje në dritaren e përparme (aktive) të Finder (ose, nëse nuk ka dritare të hapura, në desktop). Duke përdorur këto skripta, mund të shtoni fjalën "draft" ose "përfundimtar" ose "i vjetër" në emrat e të gjithë skedarëve në një dosje.

Replace Text in Item Names ju lejon të kryeni një kërkim zëvendësues në emrat e skedarëve, dosjeve ose të dyjave. Nëse një botues refuzon propozimin tuaj për librin me 45 kapituj, mund ta përdorni këtë skenar për të riemërtuar të gjithë 45 kapitujt: le të themi se çfarë ishte "Një histori e tastierëve të miut - Propozimi për Random House, Kapitulli 1" bëhet "Një histori e tastierëve të miut - Propozim për Simon". "& Schuster, kapitulli 1."

Prerja e emrave të skedarëve, shkurtimi i emrave të dosjeve. Nëse keni bërë një gabim kur keni ekzekutuar skriptin "Shto te emrat e skedarëve", gjithmonë mund ta rregulloni atë duke përdorur "Trim File Names". Ky skript heq shtesat e skedarëve, prapashtesat ose parashtesat sipas zgjedhjes së përdoruesit.

Le të themi se sapo keni krijuar disa dosje të reja menjëherë. Mac OS X i emërton këto dosje "dosje pa titull", "dosje pa titull 2", etj. Por, çka nëse jeni më të kënaqur me emrat "dosja 1", "dosja 2", etj.? Ekzekutoni skriptin Trim Folder Names; Në kutinë e dialogut, shkruani pa titull dhe klikoni OK.

Nuk ka gjasa që të përdorni në mënyrë aktive skriptet e Veprimeve të Dosjeve, pasi e njëjta qasje në operacionet në dosje sigurohet duke klikuar me Control në një dosje (ose brenda dritares së saj)

Këto skripta tregojnë se si mund të automatizoni disa detyra të lidhura me fontin.

FontSync është përpjekja fisnike e Apple për të zgjidhur një problem të vjetër publikimi në desktop. Ju keni mbaruar krijimin e një buletini të bukur dhe po e çoni në dyqanin tuaj të shtypit lokal për ta printuar në pajisje me cilësi të lartë, vetëm për të parë se duhet t'i hidhni printimet dhe të filloni nga e para - vetëm për të kuptuar se fontet nuk janë mos dukej ashtu siç doje.. Shtypshkronja nuk kishte saktësisht të njëjtat shkronja që keni përdorur për përgatitjen e dokumentit. Ose, edhe më keq, fontet kishin saktësisht të njëjtët emra, por u krijuan nga një kompani tjetër, dhe për këtë arsye ndryshonin pak nga e juaja në parametra të caktuar.

Ideja prapa FontSync është të njoftojë përdoruesin paraprakisht për mospërputhjet e mundshme. Skripti Create FontSync Profile krijon një skedar profili FontSync në pak minuta. Ky dokument përmban një sasi marramendëse informacioni rreth dizajnit, rrjedhës dhe lulëzimit të të gjitha shkronjave të instaluara në sistem. Në një shtypshkronjë, një dokument i tillë mund të përpunohet duke përdorur skriptin shtesë Match FontSync Profile. Ai do të identifikojë me përpikëri ndryshimet midis shkronjave në Mac të përdoruesit dhe makinave të printimit.

Natyrisht, kjo teknologji supozon në mënyrë implicite shumë: që shtypshkronja ka kompjuterë Macintosh të instaluar, se ata mund të trajtojnë FontSync dhe gjithashtu që përdoruesi nuk do të harrojë fillimisht të krijojë dhe të transferojë një profil FontSync në shtypshkronjë.

IChat ka pësuar një rregullim të rëndësishëm në 10.5 - Apple ka shtuar shumë veçori interesante (megjithëse ndonjëherë të padobishme). Është bërë gjithashtu e mundur të ekzekutoni AppleScripts si sinjale kur ndodh një ngjarje që lidhet me kontaktet tuaja. Për shembull, ju mund të pranoni automatikisht ftesat e bisedës nga kontakte individuale apo edhe përgjigjuni atyre me një përshëndetje të përgatitur. Madje mund të kontrolloni riprodhimin e muzikës në një Mac duke shtypur komanda në dritaren e iChat të një Mac-i tjetër në shtëpinë tuaj. Detajet në kapitullin 21.

Përfitimi i këtyre dy skenarëve është i vogël. Data dhe ora aktuale shfaq datën dhe orën aktuale në një kuti dialogu të pajisur me një buton Clipboard për kopjimin e informacionit, gati për ngjitje. Font Sampler shfaq një faqe që liston fontet (emrat e të cilëve janë shkruar në skript) që janë instaluar me Mac OS X. (Skripti është bërë më pak i dobishëm që kur Font Book shtoi komanda të ngjashme printimi të integruara.)

Dy skenarë në këtë menu meritojnë përmendje të veçantë. Temperatura aktuale sipas kodit postar tregon se cila është temperatura jashtë dritares në Fahrenheit dhe Celsius. Kjo është një arsye tjetër për të mos dalë nga shtëpia gjatë gjithë ditës.

Kuotimi i aksioneve merr kuota të aksioneve për kompaninë e zgjedhur me 20 minuta vonesë. Jo aq e mrekullueshme sa marrja e kuotave në kohë reale, por është falas.

Shumica e skripteve në këtë nënmenu zgjidhin disa probleme specifike, si p.sh. numërimi i shkronjave në emailet tuaja. kuti postare ose vendosja e një të reje llogari. Më qesharaku nga të gjithë, sigurisht, është skenari i tekstit të mesazhit të çmendur (Fig. 7.17).

Skriptet në këtë dosje ju lejojnë të hidheni në dosje të veçanta Finder - direkt nga menyja, nga çdo program. Nëse dosja që dëshironi të hapni nuk ka skriptin e vet të caktuar, zgjidhni atë nga lista në skriptin Open Special Folder.

Këshilla Për ata që nuk e kanë problem që ta modifikojnë këtë skript duke përdorur Redaktuesin e Skripteve, mund ta modifikoni atë për t'ju lejuar të zgjidhni dhe hapni më shumë se një dosje në të njëjtën kohë (për shembull, -klikoni). Ju vetëm duhet të shkruani tekstin zgjedhje të shumta të lejuara të vërteta menjëherë pas fjalëve Zgjidhni dosje për të hapur: (në fund të rreshtit, që ndodhet afërsisht në fillim të tretës së dytë të skenarit). Mos harroni të ruani ndryshimet tuaja.

Këto skripta janë krijuar për të demonstruar fuqinë e AppleScript për printimin dhe krijimin e dokumenteve PostScript dhe PDF.

Një prej tyre, Print Window, mbyll një boshllëk të gjatë në Mac OS X. Duhet të printohet lista e teksteve përmbajtjen e çdo dosjeje të zgjedhur. (Megjithatë, është pak e trazuar.)

Sipas ekipit Rreth këtyre skripteve, këto 48 skripte të ndërtuara paraprakisht ju ndihmojnë të shkruani skripte më të shpejta dhe më të sakta sepse copat e kodit janë pa gabime shtypi dhe gabime sintaksore. Ndërsa përmirësoheni, mund të shtoni skriptet tuaja këtu, me copa kodi të përshtatura për skriptet që shkruani zakonisht për ta bërë punën tuaj edhe më efikase. (Kur krijoni një skript në Redaktuesin e Skripteve, i futni këto copa kodi në tekst duke përdorur një klikim të kontrollit dhe përzgjedhjen e menysë akses i shpejtë.)

Në pjesën më të madhe, skenarët e bëjnë punën e tyre në heshtje dhe pa u vënë re. Por nëse doni të automatizoni një program që nuk i kupton komandat normale të AppleScript, skriptet mund ta "kontrollojnë" atë manualisht duke simuluar zgjedhjet e menysë, shtypjen e butonave etj.

shënim Ky funksion, i quajtur skriptimi i ndërfaqes së përdoruesit (UI), do të hyjë në fuqi vetëm pasi të hapni tastierën e aksesit universal në Preferencat e sistemit dhe të zgjidhni kutinë e kontrollit Aktivizo aksesin për pajisjet ndihmëse. pajisjet ndihmëse).

Nuk ka asnjë pikë në ekzekutimin e skripteve nga nënmenyja e UI Element Scripts siç është: ato janë thjesht mostra për të demonstruar sintaksën e saktë.

Ky grup i fundit skriptesh ofron qasje të shpejtë në disa faqe interneti të njohura. Një përjashtim është skripti Download Weather Map, i cili shkarkon hartën aktuale të motit të Shteteve të Bashkuara kontinentale, e ruan atë në desktop si weathermap.jpg dhe më pas e hap atë në Parapamje.

Këshilla Mund të shtoni skriptet, skedarët dhe madje edhe adresat e internetit në meny dhe më pas t'i hapni lehtësisht të gjitha nga shiriti i menysë. Çdo gjë që tërhiqni në dosjen Library>Scripts do të shfaqet automatikisht në menynë e skripteve.

Nga ana tjetër, nëse filloni të shtoni shumë nga artikujt tuaj në menunë Script, do të jetë më e përshtatshme të hiqni mostrat e Apple prej saj. Nuk ka problem. Hapni AppleScript Utility dhe zgjidhni Shfaq skriptet e kompjuterit.

Puna me skriptet e gatshme të AppleScript

Ndërsa punoni përmes menysë së skripteve, së shpejti do të kuptoni se keni dhjetëra skripte të integruara falas në Mac-in tuaj. Gjëja më e mirë është se ju mund të kuptoni se si funksionojnë dhe madje t'i ndryshoni ato ndërsa mësoni gradualisht të shkruani AppleScripts tuaj. Ju madje mund të kopjoni dhe përdorni seksione të tëra të skripteve të Apple në skriptet tuaja.

Së pari, natyrisht, ju duhet të hapni skenarin. Mënyra më e lehtë për ta bërë këtë është të hapni menynë e skripteve, zgjidhni kategorinë e dëshiruar dhe Option-klikoni mbi emrin e skriptit të dëshiruar.

Mund të filloni të mësoni AppleScript duke parë një skenar të thjeshtë. Për shembull, hapni skriptin e dritares së aplikacionit të ri (Në kategorinë Skriptet e navigimit) duke klikuar me opsionin mbi emrin e tij. Si rezultat, Script Editor do ta hapë skedarin në një dritare të re (Fig. 7.18).

Ja se si funksionon ky skenar:

Tregoji aplikacionit "Finder" i tregon Mac OS X se cili program duhet të ekzekutojë komandat e mëposhtme.

Aktivizimi e sjell Finder-in në plan të parë - njësoj sikur të kishit klikuar ikonën e tij në Dock.

Hapja e dosjes "Aplikacione" të diskut të nisjes i thotë Finder-it të hapë një dritare të re që shfaq dosjen "Aplikacione" të hard drive-it kryesor.

End i thotë Finder-it të vazhdojë punën e tij dhe të injorojë çdo komandë të mëtejshme nga skripti juaj.

Për të testuar skriptin, klikoni butonin Run ose shtypni -R.

Këshilla Ju mund ta modifikoni këtë skript për t'iu përshtatur më mirë nevojave tuaja. Provoni, për shembull, të zëvendësoni "Aplikacionet" me "Përdoruesit" në mënyrë që skripti të hapë dosjen "Përdoruesit".

Krijimi i AppleScripts Tuaj

Mac OS X vjen me dhjetëra programe - kaq shumë prej tyre! Mirë, diçka mungon - një metronom, për shembull. Si do të luani piano në një ritëm të qëndrueshëm pa dëgjuar klikimet ritmike që bën Mac-i juaj? Sigurisht, në një majë, një metronom GarageBand do të ndihmojë, por kjo është gjuajtja e harabela nga një top.

Në vend të kësaj, mund të përdorni AppleScript. Hapur dokument i ri në Redaktuesin e Skripteve (File>New, ose -N) dhe shkruani sa vijon:

shfaq dialogun "Mirë se erdhët në metronomin e AppleScript"

caktoni bpm në tekstin e kthyer të (shfaq dialogun ¬

"Sa rrahje në minutë?" Përgjigja e paracaktuar 60)

cakto pauzën në mes të sinjaleve në (60/bpm)

vonesa e pauzës Midis Bipseve

shënim Nuk ka nevojë të printoni simbolin ¬. Kështu që programuesit thonë: "Kjo duhet të jetë në një rresht, por nuk ka gjerësi të mjaftueshme të faqes."

Kur ekzekutoni këtë skript, shfaqet një kuti dialogu që ju pyet se sa rrahje në minutë dëshironi të numërojë metronomi. Numri që futni (për shembull, 120) ruhet në një variabël ruajtjeje të përkohshme brenda skriptit të quajtur bpm.

Më pas skripti llogarit sasinë e pauzës ndërmjet bipeve dhe regjistron atë pjesë të sekondës në variablin pauseBetweenBeeps. Nëse i thoni skriptit të lëshojë bip, të themi, 120 herë në minutë, atëherë pauzaBetweenBeeps do të shkruhej në 0.5 sepse duhet të ketë një pauzë gjysmë sekonde ndërmjet bipeve.

Më në fund, skripti krijon një lak të pafund: sinjal, ndalo për një gjatësi të caktuar dhe më pas përsërit.

Klikoni butonin Run për të testuar skriptin tuaj dhe kur të keni dëgjuar mjaft tinguj, klikoni butonin Stop.

TEKNIKAT MIJA E PREFERUARA
Shtojcat e desktopit me një klikim
Këtu është një truk i vogël me Automator që mund të jetë një shpëtim për këdo që ka nevojë shpesh të dërgojë dokumente me e-mail. (Ai modelon komandën shumë të përshtatshme Send To që gjendet në menunë e shkurtoreve të makinave Windows.)

Krijo një proces në Automator me vetëm dy hapa: Merr artikujt e përzgjedhur të Finder (në kategorinë Finder) dhe Mesazhin e Ri Mail (në kategorinë Mail).

Nëse i dërgoni gjithmonë skedarë të njëjtit marrës - shefi juaj, për shembull - mund të paracaktoni adresën edhe në panelin e procesit të Automator. Nëse subjekti dhe teksti i mesazhit përsëriten çdo herë, mund t'i caktoni gjithashtu paraprakisht.

Tani zgjidhni File>Save As Plug-in. Emërtoni procesin.

Që tani e tutje, mund të dërgoni një dokument nga Finder duke klikuar mbi të me Control dhe duke zgjedhur Automator>Email This nga menyja që shfaqet.

Fitore! Mac OS X lëshon Mail dhe krijon një mesazh dalës me një skedar të bashkangjitur.

Këshillë falas: nëse futni një veprim tjetër Krijo arkivin (nga kategoria Finder) midis këtyre dy veprimeve, komanda juaj e menysë do të kompresojë gjithashtu skedarin (ose dosjen) në një skedar .zip përpara se ta dërgojë me postë!

Këshilla Do të jetë edhe më e freskët nëse e vendosni cilësimet e sistemit Preferencat e sistemit>Qasja universale>Dëgjimi>Flice ekranin kur shfaqet një tingull alarmi. Tani, kur skripti juaj të ekzekutohet, ekrani do të pulsojë së bashku me tingullin. Nëse jeni duke regjistruar muzikë, çaktivizoni Mac-in tuaj: do të keni një metronom vizual, por jo sinjal audio.

Krahasimi i AppleScript dhe Automator

Ka qindra përdorime për AppleScript - automatizimi i proceseve që janë shumë komplekse për Automator, kontrollimi i programeve që Automator nuk mund t'i shohë dhe programimi i gjërave si cikli i komandës që Automator nuk mund t'i bëjë.

Nëse e shikoni AppleScript vetëm si një zëvendësim për Automator, po humbisni shumë energji. Në të vërtetë, AppleScript ofron aftësi që Automator ndoshta nuk do t'i ketë në 10 vjet: është një mjet shumë më i avancuar.

Automatatori është i mirë për detyra të thjeshta. Nëse keni nevojë për AppleScript për të automatizuar Mac-in tuaj, mos e humbni shpresën. Ju po merrni një mjet vërtet të fuqishëm. (Mund t'i kombinoni ato dhe të futni AppleScripts në proceset Automator duke përdorur veprimin Run AppleScript.)

Fat i mirë me automatizimin!

  • AppleScript Apple, . AppleScript AppleScript. , - .

    AppleScript.

    0 . . . . . . . . . . . . . . . . . . . . . 6

    1 . . . . . . . . . 7

    2 . . . . . . 10

    3 (I) . . . . . . . . 13

    4 . . . . . . . . . . . . . . . . . . . . . 15

    5 . . . . . . . . . . . . . . . . . . . . . 17

    6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    8 (II). . . . . . . tridhjetë

    9 ? ! . . . . . . . . 32

    10 . . . . . . . . . . . . . . . . . . 34

    11 . . . . . . . . . . . . . . 40

    13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

    14 . . . . . . . . . . . . . . . . . . . 53

    16 . . . . . . . . . . . . . . . . 59

    17 . . . . . . . . 60 . . . . . . . . 60

    AppleScript Apple, . , AppleScript:

    AppleScript, AppleScript. , -, .

    AppleScript,. - AppleScript ( Adobe PhotoShop, QuarkXPress, Adobe InDesign). FileMaker Pro. , GraphicConverter, BBEdit, Microsoft Word AppleScript(). , AppleScript . , . . , AppleScript, AppleScript. , - AppleScript.

    . (. 15). - AppleScript. , .

    AppleScript, AppleScript:

    , ; AppleScript, .., AppleScript; (Mac OS X)

    AppleScript; AppleScript; AppleScript (Mac OS X).

    AppleScript. , Java, . AppleScript, 10-, -. .

    5 AppleScript, . - AppleScript Studio, (Developer Tools XCode).

    JavaScript, .

    () . , . , . , .

    . , : . - . , . : .

    AppleScript,. . Redaktori i skriptit (.2),.

    E drejta e autorit (c) 2003 nga Bert Altenburg

    : Bert Altenburg, - .

    1. . , - . , AppleScript . AppleScript.

    2. , PC, . - , -. Monitoruesi i CPU-së (shërbimet, aplikacionet), - . (Distributed Computing DC), Folding@home, . DC-, - . DC-. -- , DC- . , . ? DC- - . (), - . , - , . DC--: , . , DC-:

    www.aspenleaf.com/distributed/distrib-projects.html

    3. . , . () , - . - , . - , . - , :

    http://www.macinstruct.com/tutorials/crash/index.html

    AppleScript Mac OS. , - . , .

    , -. , (deklaratë), . , .

    AppleScript,. , 1 .

    AppleScript:

    thuaj "Kjo është një fjali e folur."

    Fred, Trinoids, Cellos, Zarvox, Victoria.

    thuaj "Kjo është një fjali e folur." duke përdorur "Zarvox"

    : AppleScript. , . , Victoria Zarvox.

    AppleScript. - , - . : . AppleScript - , . AppleScript,. (i skriptueshëm). , AppleScript (Mac OS X), .

    Gjetës. Gjetës. , . Gjetësi , - , . -, Trash, Finder.

    8, AppleScript.

    Adobe PhotoShop. PhotoShop. , Gjetës.

    AppleScript,.

    Trego, AppleScript (Mac OS X), Finder. AppleScript (Mac OS X) , - fund tregoj . Gjetësi i AppleScript Finder, . , :

    tregoni aplikacionin "xyz"

    (trego bllok). xyz xyz. , AppleScript , - , . , . (, ("). : , AppleScript . . .)

    Gjetës. , Gjetës. Gjetës, Gjetës.

    tregoni aplikacionit "Gjetës" zbrazni plehra hapni diskun e nisjes fundi tregoni

    Gjetës. Gjetës, - , . .

    Finder, AppleScript (Mac OS X).

    9tregoni aplikacionin "Finder" zbrazni koshin e mbeturinave, hapni disk fillimin në fund të sinjalizimit

    Gjetës. bip AppleScript. , .

    Bip (AppleScript (Mac OS X)) .

    tregoni aplikacionit "Gjetësi" zbrazni bipin e plehrave hapni diskun e nisjes fundi tregoni

    Bip Finder, AppleScript (Mac OS X). , . , -, Gjetës, bip, Gjetës.

    AppleScript (Mac OS X). - , Gjetës, . ().

    tregoni aplikacionit "Finder" zbrazni bipin e mbeturinave në fund, hapni diskun e nisjes

    AppleScript (Mac OS X), . () - , .

    thuaj aplikacionit "Finder" zbraze koshin thuaj hap disqet e nisjes "E zbrazja koshin dhe hapa diskun e nisjes për ty" duke përdorur "Victoria"

    AppleScript (Mac OS X), Finder. , .

    Redaktori i skriptit,. Redaktori i Skriptit AppleScript, Aplikacionet. , . .

    Përpiloni. , AppleScript , AppleScript . O Gjetës! Hidh plehrat e mia (Gjëtësi!!! !) Hej Gjetës! Pastroni koshin (Gjeni,) Gjetës. (përpilim) AppleScript (Mac OS X): - . , . , - . Redaktori i Skriptit.

    AppleScript (Mac OS X).

    thuaj "Po mësoj AppleScript në mënyrën më të lehtë!" duke përdorur "Zarvox"

    Vraponi,. Redaktori i Skriptit, !

    Hyni. Enter - Hapësirë ​​() (). Kthimi (Shift) -. Kthimi.

    Përpiloni. - Vrapo,.

    Run, Command-R. : , -

    , (skript i përpiluar) (aplikacion).

    : , - AppleScript,

    Ekzekutimi i redaktuesit të skriptit.

    : , AppleScript ,

    Redaktori i Skriptit. , - , (Preferencat e sistemit). , . - , Redaktori i skriptit, Hap skedarin.

    : Ruaj, - (vetëm për ekzekutim). , - .

    thuaj aplikacionit "Gjetës" zbraze plehra fund tregoj

    Redaktori i Skriptit.

    Aplikacion , :

    Aplikacioni i aplikacionit "Editori i skriptit". , xyz. - (-), pqr. - , AppleScript. , AppleScript pqr , tregoj .

    Redaktori i Skriptit, -. , kontroll . :

    1) Redaktori i skriptit të kontrollit. (.), Tell Blocks. , Tregojuni "Gjetësit".

    2) Gjetësi zbraz plehra , (), 1. . - .

    2 + 6 = ...... = 3 * 4

    2 + 6 = xy = 3 * 4

    AppleScript. (variablat) , . - (identifikuesit), . - AppleScript, grup.

    vendos x në 25 vendos y në 4321,234

    AppleScript,. : (- , (mete)). , x. , foto Gjerësia .

    caktoni gjerësinë e figurës në 8

    , (, -,). , AppleScript, - . , (8) .

    AppleScript - . , vendos, thuaj, te, bip , - AppleScript. , fotoGjerësia, . -,.

    AppleScript,. , .

    cakto fotografinë Gjerësia në 8 grupe fotografia Lartësia deri në 6 vendos fotografinë SipërfaqjaSipërfaqja te fotografia Gjerësia * fotografia Lartësia

    , (operatorë), - .

    vendos cubeEdgeLength në 10.0 vendos cubeVolume në cubeEdgeLength ^ 3

    Redaktori i skriptit,. , . (Rezultati) , 10.0. , 1000.0. , gjatësia e skajit të kubit ^ 3 , .

    : . - . (numrat e plotë) , - , (. 13)

Nga ky artikull do të mësoni se çfarë është AppleScript, pse dhe kujt i nevojitet, si mund të automatizoni aplikacionet e njerëzve të tjerë dhe të shtoni aftësitë e automatizimit tek tuajat.

Automatizoni atë

Shpesh ka probleme për të cilat është e paarsyeshme të krijohet një projekt i veçantë në një gjuhë të përpiluar. Për shembull, kur duhet të bashkoni shpejt një kod në gjunjë që thjesht duhet të bëjë një punë specifike - pa ndonjë dekorim GUI, trajtimin e të gjitha llojeve të situatave përjashtimore, optimizimin, etj. Këtu vijnë në shpëtim gjuhët e skriptimit - shell, Perl, PHP, e kështu me radhë. Të gjitha (ose pothuajse të gjitha) janë të disponueshme nën Mac OS X. Por në këtë sistem operativ, përveç gjuhëve të skriptimit të pranuara përgjithësisht, ekziston edhe një gjuhë e veçantë skriptimi që është e orientuar posaçërisht drejt Mac OS X dhe është e lidhur ngushtë me atë. Ky është AppleScript.

AppleScript është përfshirë me sistemin që nga Sistemi 7. Duke u rritur nga projekti HyperCard (i cili përmbante gjuhën e skriptimit HyperTalk, e cila është shumë e ngjashme me anglishten natyrale), AppleScript u krijua fillimisht për të lejuar shkëmbimin e të dhënave midis detyrave, si dhe për të kontrolluar puna aplikacionet e palëve të treta. Vetë AppleScript ka një funksionalitet mjaft modest: në këtë gjuhë, edhe skriptet për kryerjen e detyrave relativisht të thjeshta shpesh duken si thirrje për aplikacione të tjera. Megjithatë, pas një rishikimi të rëndësishëm të sistemit gjatë kalimit në linjën Mac OS X, gjuha AppleScript u bë më fleksibël dhe më e fuqishme dhe korniza e re e Cocoa i lejoi zhvilluesit të ndërtonin aftësi automatizimi në aplikacionet e tyre duke përdorur AppleScript me përpjekje minimale.

Skenar i thjeshtë

Për të redaktuar dhe ekzekutuar skriptet ne do të përdorim Redaktorin standard të Skripteve. Mund ta gjeni në dosjen /Application/AppleScript. Së pari, le të shkruajmë një skenar të thjeshtë "HelloWorld".

shfaq sinjalizimin "Hello World!" # Trego dialogun
thuaj "Hello World" # Dalje në kolona

Unë mendoj se nuk ka nevojë të shpjegoj asgjë këtu, por do të doja të vëreja aksesin jashtëzakonisht të lehtë në sintetizuesin e të folurit nga AppleScript duke përdorur komandën thuaj. Ky është komunikim i vërtetë me përdoruesin në stilin e Apple :). Sigurisht, ky dialog mund të personalizohet lehtësisht. Për shembull, shtoni butonat e nevojshëm:

Paneli me butona shtesë

shfaq sinjalizimin "Hello World!" butonat ("Përshëndetje", "Bye")
vendos përgjigjen në butonin e kthyer të rezultatit
nëse përgjigjja është "Përshëndetje", atëherë
...
tjetër
...
fund nëse

Tani le të shkruajmë diçka më të dobishme. Për shembull, le ta lëmë përdoruesin të zgjedhë një skedar dhe të lexojë përmbajtjen e tij:

# Paneli i përzgjedhjes së skedarëve
cakto skedarin në (zgjidh skedarin me kërkesën "Zgjidh një skedar për të lexuar:" të llojit ("TEXT"))
hapni për të hyrë në File

Leximi i përmbajtjes

vendosni përmbajtjen e skedarit në (lexoni skedarin)
mbyllni aksesin te File

Këta shembuj tregojnë qartë idenë kryesore të AppleScript - është shumë afër jetës reale gjuhe angleze. Prandaj, leximi i skripteve është i lehtë edhe për një person larg kodimit. Çdo komandë foljore mund të plotësohet me emra modifikues dhe parametra.

Ndërveprimi me aplikacionet

AppleScript përdor një mekanizëm mesazhesh për të komunikuar me aplikacione të tjera:

tregoni aplikacionin "Microsoft Word"

fund tregoj

Duke përdorur komandën tell, zgjedhim aplikacionin të cilit do t'i dërgojmë mesazhin. Në këtë rast, ne i kërkojmë MS Word të dalë. Çdo numër komandash mund të dërgohet në bllokun "tell - end tell". Mesazhet e dërguara në aplikacion mund të jenë më specifike. E gjitha varet nga komandat që zbatuan zhvilluesit e saj. iTunes, për shembull, eksporton mjaft komanda dhe veti në mjedisin AppleScript:

Hapni listën e dëshiruar të luajtjes në iTunes

tregoni aplikacionin "iTunes"
luaj listën e luajtjes me emrin "E preferuara ime"
fund tregoj

Mund të zbuloni grupin e mesazheve dhe llojeve të të dhënave që një aplikacion eksporton në mjedisin AppleScript duke parë terminologjinë e tij (skedari AppName.scriptRerminology në burimet e aplikacionit). Për ta bërë këtë, në Redaktuesin e Skriptit, shkoni te menyja "File - Open Dictionary - ..." dhe zgjidhni aplikacionin e dëshiruar.

Për ta bërë më të lehtë punën me klasat dhe komandat që aplikacioni eksporton, ato organizohen në seksione. Të gjitha aplikacionet që mbështesin skriptimin kanë të paktën dy seksione: një standard dhe një më specifik këtë aplikacion seksionet. Seksioni standard përmban një grup komandash standarde që çdo aplikacion Mac mbështet: hap, print, mbyll dhe mbyll. Përmbajtja e pjesëve të mbetura varet nga imagjinata e zhvilluesve.

Ekzekutimi i AppleScript nga brenda aplikacionit tuaj

Nëse po shkruani një aplikacion në Objective-C/Cacoa, atëherë ka mundësi që disa gjëra të jenë më të përshtatshme për t'i bërë duke përdorur AppleScript. Për të krijuar dhe ekzekutuar skriptet në aplikacionet Cocoa, ekziston klasa NSAppleScript. Këtu është një shembull i thjeshtë i përdorimit të tij - zbatimi i marrjes së një linje statusi të përdoruesit nga aplikacioni iChat.

NSAppleScript *iChatGetStatusScript = zero;
iChatGetStatusScript = [ initWithSource: @"thuaji aplikacionit "iChat" për të marrë mesazhin e statusit"];
NSString *statusString = [stringValue];

Është e mundur që e njëjta gjë mund të bëhet në një mënyrë tjetër pa përdorur një skript të gjeneruar në kohëzgjatjeje, por nuk ka gjasa që kodi alternativ të duket më i thjeshtë se kjo. Nëse skriptet janë të mëdha, mund t'i ruani në burime të paketave dhe t'i lexoni kur është e nevojshme.

Automatizimi në një aplikacion kakao

Është shumë e dobishme të shtoni mbështetje për skriptimin në aplikacionet tuaja Cocoa, sepse nëse aplikacioni juaj ka një ndërfaqe me AppleScript, atëherë përdoruesi, duke shkruar disa rreshta në AppleScript, do të jetë në gjendje ta personalizojë atë për nevojat e tij dhe ta integrojë atë me aplikacione të tjera. që ai ka instaluar dhe më pas, për shembull, të automatizojë zgjidhjen e detyrave rutinë. Për të eksportuar lloje dhe komanda në mjedisin AppleScript, duhet t'i përshkruani ato në skedarë të veçantë. Kjo është e mundur të bëhet në skedarët .scriptSuite dhe .script Terminology ose në një skedar me shtesën .sdef. Në të dyja rastet skedarët janë në format XML, por sdef është më i lehtë për t'u punuar.

Përmbajtja e skedarit të skriptit Termonologjia shfaqet në Redaktuesin e Skripteve kur shikoni fjalorin e aplikacionit. Ky skedar përmban një përshkrim të objekteve të eksportuara në AppleScript.

Duke hapur skedarin scriptSuite në Redaktuesin Plist, mund të shihni se ai përmban seksionet kryesore të mëposhtme:

  • AppleEventCode - një kod me katër shkronja që identifikon aplikacionin për mjedisin AppleScript (kodi duhet të jetë unik brenda të njëjtit sistem);
  • Emri - emri i seksionit që përmban komandat dhe klasat e eksportuara.

çmontoni organizimi i brendshëm këta skedarë nuk kanë shumë kuptim, pasi me shumë mundësi do t'ju duhet të merreni vetëm me skedarë sdef.

Shembull i skedarit sdef
















Në sdef, terminologjia e skriptimit është e përzier me pershkrim i detajuar komandat dhe llojet, të cilat mund të gjenden në skedarët .scriptingSuit. Le ta zbatojmë këtë në praktikë duke krijuar një aplikacion Kakao që mbështet AppleScripting. Për ta bërë këtë, në projektin e ri Cocoa, shtoni flamujt Scripting dhe OSAScriptingDefinition me emrin e skedarit tonë sdef në skedarin Info.plist:

...
NSApleScriptEnabled

Përkufizimi i OSASscripting
Skriptimin.sdef

Le të shtojmë skedarin e mëposhtëm Scripting.sdef në projekt:












Pra, nga AppleScript ne kemi në dispozicion një pronë - myprop. Gjithçka që mbetet është të shkruhet kodi ObjC që do të përpunojë leximin e kësaj vetie nga skriptet. Për ta bërë këtë, ju duhet të krijoni kategorinë NSApplication, pasi kjo është klasa që ne zgjodhëm si marrës të mesazheve nga skriptet.

#import
@interface NSApplication (Scripting) - (NSString *) myprop;
@fund
@implementation NSApplication (Scripting) - (NSString *) myprop
{
kthe @"Kjo është prona ime";
}

Nëse tani kthehemi te vetitë e aplikacionit tonë nga AppleScript, do të shohim pronën tonë dhe vlerën e saj midis tyre:

tregoni aplikacionit "Scripting"
Vetitë
fund tregoj

konkluzioni

Sigurisht, është e pamundur të përshkruash këtu të gjitha aftësitë e AppleScript dhe ndërveprimin e tij me aplikacionet e Kakaos. Po, kjo nuk është e nevojshme - ka manuale për këtë. Dhe ne, nga ana jonë, do të vazhdojmë serinë e artikujve rreth kodimit për platformat Apple dhe do t'ju tregojmë shumë gjëra të reja dhe interesante.

Hape, pre, konverto në një model tjetër ngjyrash, kurse. Hape, pre, konverto në një model tjetër ngjyrash, kurse. Hap Ose ndryshe: Zgjidhni, transferojeni në bufer, kaloni në një aplikacion tjetër, kopjoni nga buferi. Zgjidhni, transferoni në tampon, kaloni

A nuk tingëllon si një aktivitet krijues, apo jo? Por pothuajse të gjithë ata që merren me një kompjuter duhet të kryejnë dhjetëra e qindra operacione të përsëritura, në thelb identike në ditë. Dhe pasi punoi për tre javë si një lloj "konvertuesi inteligjent", nuk është më si mësimi version i ri"Photoshop" ose zotëroni InDesign - as nuk dëshironi t'i afroheni kompjuterit. Me një fjalë - keni nevojë për një asistent. E cila do të marrë mbi vete ekzekutimin e të gjitha (ose të paktën shumicës) veprimeve të mërzitshme dhe rutinë, por, natyrisht, të nevojshme të përsëritura.

AppleScript - çfarë lloj bishë është ajo?

Dhe ne kemi një asistent të tillë. Kjo është një gjuhë e veçantë për shkrimin e skripteve (ose, nëse preferoni, skriptet) e quajtur AppleScript. Kjo gjuhë u shfaq për herë të parë në Mac OS 7.5 (atëherë ende sistemi Macintosh), dhe u zbatua aq mirë dhe gjithashtu kishte aftësi kaq të gjera sa që me lëshimin e versionit të dhjetë të OS arriti vetëm në versionin 1.8. Por, çuditërisht, pavarësisht aftësive të saj të mëdha potenciale dhe historisë së saj më shumë se dhjetëvjeçare të ekzistencës, teknologjia AppleScript nuk është bërë e përhapur në mesin e përdoruesve të Mac. Nëse kjo është për shkak të miteve rreth kompleksitetit të tij, inercisë së përdoruesve që janë mësuar ekskluzivisht me kontrollin "ikonë-miu" të Mac-eve të tyre, apo diçka tjetër, nuk mund ta gjykoj, por fakti është një fakt: qindra e dinë për ekzistencën. i AppleScript, por përdorni vetëm njësitë e tij. Prandaj, për mendimin tim, nuk do të ishte e tepërt të merren parasysh parimet themelore të funksionimit të kësaj teknologjie.
AppleScript bazohet në Macintosh Apple Events, një shërbim sistemi për përpunimin e ngjarjeve që lejon shkëmbimin e komandave, të dhënave dhe kërkesave ndërmjet aplikacioneve. sistemi operativ, shërbimet e rrjetit dhe madje kompjuterë të ndryshëm. Motori i skriptit (i cili është një Zgjerim i zakonshëm i vendosur në dosjen System) i konverton komandat e skriptit në një sekuencë ngjarjesh dhe ia kalon ato aplikacionit të specifikuar në skript dhe pasi i përpunon ato, e pranon rezultatin dhe ia përcjell burimit të skriptit. .
Megjithëse AppleScript është një gjuhë e vërtetë programimi (ajo mbështet variabla, unaza, deklarata të kushtëzuara, nënprograme, lejon llogaritje komplekse dhe madje ka mjete për ndërtimin dhe përpunimin e kutive të dialogut), kryerja e detyrave kryesore ende bie mbi supet e aplikacionet e jashtme. Dhe AppleScript vepron si një lloj "ngjitës" që transferon të dhënat midis programeve ("transferoni një skedar nga Illustrator në Photoshop"), vlerëson gjendjen aktuale të mjedisit të punës të programeve individuale, OS dhe rrjetit ("ka rasterizimin e skedari tashmë i përfunduar, apo jo ende?” ), dhe ju lejon të ndërmerrni veprime bazuar në rezultatet e operacioneve të mëparshme (“nëse të gjithë skedarët janë rasterizuar, atëherë dërgoni materialet në një dosje të veçantë dhe ekzekutoni skriptin përgjegjës për montimin e shiritit të gazetës ”).
Ekzistojnë disa nivele të "skriptueshmërisë" së aplikacioneve. Kështu, për shembull, ato programe që janë më pak të përshtatura me automatizimin kuptojnë vetëm komandat themelore, më të thjeshta: ngarkoni një aplikacion, hapni një dokument, dërgoni për të printuar dhe mbyllni aplikacionin (ekzekutoni, hapni, printoni dhe mbyllni). Ato më "komoduese" (të tilla si Photoshop, Illustrator dhe FreeHand) kanë në arsenalin e tyre mjete që janë mjaft të mjaftueshme për të shkruar programe të përpunimit të skedarëve grupor dhe kryerjen e sekuencave të caktuara të veprimeve (komandat makro). Epo, ato që zbatojnë mbështetje për pothuajse të gjitha aftësitë e teknologjisë AppleScript (dhe kjo përfshin QuarkXPress, Adobe InDesign dhe shumicën e programeve Apple) bëni të mundur kontrollin e punës suaj në nivelet më "të thella": vendosni parametrat e printimit, përdorni tastierën, kontrolloni dhe ndryshoni vlerat e variablave të brendshëm, etj.

Bazat e Skriptologjisë

Për të futur tekstin burimor dhe për të ekzekutuar skriptet, mund të përdorni programin Script Editor - mjeti kryesor dhe i vetëm për krijimin e skripteve në paketën standarde të Mac OS.
Redaktori i skriptit ndodhet në dosjen Apple Extras/AppleScript (për versionin e lokalizuar të Mac OS - Add-ons/AppleScript), dhe pas nisjes ai shfaq një dritare të ngjashme me atë të treguar në Fig. 1.


Oriz. 1. Redaktori i Skriptit

Fushat e sipërme dhe të poshtme të hyrjes synojnë të përshkruajnë skriptin dhe tekstin e tij, respektivisht, dhe nuk ka gjasa të kenë nevojë për komente shtesë. Butoni Record ju lejon të regjistroni një komandë makro; për ta bërë këtë, pasi të keni shtypur butonin, shkoni te aplikacionet e nevojshme, dhe kryeni një sërë veprimesh; pas së cilës teksti i skriptit do të shfaqet në fushën e poshtme të hyrjes (duhet theksuar se aftësia për të regjistruar komandat makro nuk mbështetet nga çdo program). Butoni Kontrollo sintaksën kontrollon nëse ka ndonjë gabim në tekstin e skenarit, dhe gjithashtu e sjell atë në një formë "të tregtueshme" - theksohet me shkronja të zeza dhe të dhëmbëzuara. fjalë kyçe dhe blloqe të mbivendosur.
Skenari i parë. Për të filluar, siç pritej, le të shkruajmë programi më i thjeshtë, i cili kryen disa veprime themelore: mbyll të gjitha dritaret e hapura, heq të gjithë disqet e lëvizshëm nga media, organizon ikonat në ekran, pastron koshin e riciklimit dhe fiket kompjuterin. Teksti i një programi të tillë duket si ky:

tregoni aplikacionit "Finder"

Mbyll çdo dritare
nxjerr çdo disk
pastroni desktopin
plehra bosh
fike

Fund tregoje

Çfarë do të thotë e gjithë kjo? Shërbimi Apple Events ("bërthama" e teknologjisë AppleScript) transferon të dhëna, kërkesa dhe mesazhe jo vetëm midis programeve, por midis elementeve të programit të quajtur objekte, të cilat mund të kenë një strukturë të mbivendosur të quajtur model objekti. Kështu, për shembull, për programin Finder, modeli i objektit (më saktë, vetëm një nga degët e këtij modeli) mund të paraqitet në formën e mëposhtme: Finder - Desktop - Folder - File; Për redaktori i tekstit ky model do të marrë formën Dokument - Faqe - Paragraf - Fjali; për një ilustrim vektori do të duket si Ilustrim - Forma bazë - Kurba Bezier - Pika (Fig. 2).


Oriz. 2. Shembuj të modeleve të objekteve

Çdo objekt zakonisht ka një ose më shumë veti (Figura 3) që mund të vendosen ("vendosni lartësinë e faqes në 14 inç"), të modifikohen ("ndryshoni gjerësinë nga 8 në 8.5 inç") dhe të kontrollohen ("çfarë është e barabartë me të drejtën margjina e faqes?").


Oriz. 3. Vetitë e objektit

Për të kontrolluar një objekt të caktuar, ai duhet të zgjidhet (tregohet) në modelin e objektit. Për këtë qëllim përdoret dizajni tregoj fund tregoj, dhe të gjitha komandat që kontrollojnë objektin përmbahen brenda këtij konstrukti; nëse objekti ndodhet "në thellësi" të njërës prej degëve të modelit, atëherë përdoren disa blloqe të vendosura brenda njëri-tjetrit. tregoj fund tregoj. Në shembullin e mëposhtëm, skripti hyn gradualisht në desktop (një nga elementët e modelit të objektit Finder) dhe më pas e zhvendos dosjen "test", e cila është në desktop, në Kosh.

tregoni aplikacionit "Finder"
tregoni desktopin

Fshi dosjen "test"

Fund tregoje
fund tregoj

Kur shkruani një skript që kontrollon ndonjë program - nuk ka rëndësi nëse është Finder, FileMaker, Adobe Acrobat ose diçka tjetër, ju duhet të dini se çfarë komandash të gjuhës AppleScript mbështet ky program, çfarë objektesh përfshihen në modelin e tij të objektit, si dhe emrat dhe qëllimet e të gjitha vetive të objekteve të disponueshme. I gjithë ky informacion ruhet direkt në skedarin e ekzekutueshëm të një programi të caktuar, në të ashtuquajturin fjalor aplikacioni. Për të përdorur këtë fjalor, në programin Script Editor duhet të ekzekutoni komandën File / Open Dictionary (File / Open Dictionary) dhe në dritaren që shfaqet zgjidhni skedarin e ekzekutueshëm të aplikacionit me interes. Si rezultat, një dritare e ngjashme me atë të paraqitur në Fig. do të shfaqet në ekran. 4 - në anën e djathtë ka një listë të të gjitha komandave dhe objekteve, në anën e majtë ka përshkrimet e tyre të shkurtra.


Oriz. 4. Zbatimi i fjalorit

Skenari i dytë. Le të kalojmë në zgjidhjen e problemeve praktike. Ata që merren me dizajnin e uebit shpesh duhet të kontrollojnë faqet e tyre për pajtueshmëri me versionet më të vjetra të shfletuesve. Për ta bërë këtë, duhet të hapni dritaret me dosje, të kërkoni skedarë të ekzekutueshëm të programeve të shikuesve atje, t'i shkarkoni ato dhe më pas të kërkoni gjithashtu dosje me faqe në internet në disqe. Në përgjithësi, nuk është përvoja më e këndshme. Le të krijojmë një skript që do të thjeshtojë shfletimin e faqeve: ai automatikisht do të ngarkojë disa shfletues të ndryshëm, dhe në secilën prej tyre do të hapë dokumentin që na nevojitet.

tregoni aplikacionit "Finder"

Zgjidhni (specifikoni) skedarin e kërkuar
zgjidhni skedarin "index.html" të dosjes "Uebfaqja aktuale" e desktopit
-- cakto variablin myFile shtegun drejt skedarit të zgjedhur
vendosni myFile në përzgjedhjen si varg

Ngarkoni Microsoft IE dhe hapni faqen e zgjedhur
tregoni aplikacionin" Internet Explorer 3.01"
hapur (alias myFile)
fund tregoj

Ne bëjmë të njëjtin veprim me Netscape Navigator
tregoni aplikacionit "Netscape Navigator 3.01"
hap (alias myFile)
fund tregoj

Në programin e mësipërm janë shfaqur disa dizajne të reja. Të gjitha rreshtat që fillojnë me simbole "--" janë komente. Në AppleScript, komentet mund të shkruhen ose në një rresht të veçantë ose në fund të rreshtit, menjëherë pas komandës. Në çdo rast, të gjitha karakteret e mëposhtme "--" dhe para fillimit linjë e re konsiderohen komente dhe injorohen kur skripti ekzekutohet.

Komanda "select" simulon zgjedhjen eksplicite të një elementi me kursorin e miut dhe veprimi i tij të kujton disi përdorimin e konstruktit tregoj fund tregoj, por me ndryshimin se gjatë përdorimit të komandës zgjidhni ne mund t'i caktojmë disa veti të objektit të zgjedhur (për shembull, shtegun e një skedari ose dosjeje) në një ndryshore.

Operatori vendosur shërben për të treguar vlerat e variablave që krijohen kur aksesohen për herë të parë. Kjo do të thotë, nuk ka nevojë të përshkruani fillimisht emrin dhe llojin e ndryshores: ju keni shkruar, për shembull, vendosni myDate në datën aktuale, dhe AppleScript krijoi variablin dhe zgjodhi madhësinë dhe llojin e kërkuar. Por kjo nuk është e gjitha: përdorimi i operatorit vendosur ju mund të ndryshoni të gjitha vetitë e objekteve. Kjo bëhet si më poshtë:

tregoni aplikacionit "Finder"
tregoni desktopin
tregoni skedarin "Lista e çmimeve"

-- ndryshoni veçorinë e komenteve të skedarit "Lista e Çmimeve".
-- skedari është në desktop
vendos komentin në "Kjo listë çmimesh është e vjetëruar!"

Fund tregoje
fund tregoj
fund tregoj

Ose e njëjta gjë, vetëm duke përdorur komandën zgjidhni:

tregoni aplikacionit "Finder"

Zgjidhni skedarin "Lista e çmimeve" të desktopit
vendos komentin e përzgjedhjes në "Kjo listë çmimesh është e vjetëruar!"

Fund tregoje

Siç mund ta keni vënë re, deri më tani e gjithë puna me skriptet - shtypja e tekstit burimor dhe ekzekutimi - kryhej ekskluzivisht me ndihmën e një redaktuesi special. Kjo metodë është e mirë kur ju duhet të krijoni një skript të ri ose të ribërni një të vjetër. Por për përdorim të përditshëm nuk është mirë - ndërsa hapni Redaktuesin e Skripteve, ndërsa gjeni skriptin e kërkuar në disqe, mendoni pa dashje - a nuk do të ishte më shpejt të bëni të njëjtën punë me dorë, pa asnjë automatizim? Zhvilluesit e AppleScript u kujdesën për këtë - skriptet mund të ruhen jo vetëm në formë skedarët e tekstit, por edhe në formë të përpiluar, plotësisht i përshtatshëm për ekzekutim autonom. Për të kthyer skriptin në kod të ekzekutueshëm, duhet të ekzekutoni komandën Save As Run-Only në redaktuesin e skriptit. Në kutinë e dialogut që shfaqet (e ngjashme me atë që mund të shihet në Fig. 5), zgjidhni Application nga lista rënëse; rivendosni kutinë e kontrollit Qëndroni hapur (nëse nuk e aktivizoni këtë opsion, atëherë pas ekzekutimit skripti do të përfundojë automatikisht punën e tij, përndryshe ai do të mbetet në memorien e kompjuterit) dhe kontrolloni kutinë e zgjedhjes Më të reja të shfaqjes së ekranit fillestar. Pasi të keni përfunduar të gjitha veprimet e përshkruara, nisja e skriptit nuk do t'ju shkaktojë ndonjë vështirësi: thjesht vendosni kursorin e miut mbi të dhe klikoni dy herë mbi butonin.


Oriz. 5. Ruajtja e skriptit si një program i ekzekutueshëm

Skenari i tretë dhe i fundit. Me siguri për përfitimet Rezervo kopje shumë kanë dëgjuar. Dhe ata që të paktën një herë në jetën e tyre kanë humbur rezultatet e punës së tyre mujore (në rastin më të keq - të paktën një javë) me siguri e dinë se është më mirë të shpenzoni 15 minuta çdo ditë për arkivimin. dosjet e nevojshme se pastaj të shkulësh flokët dhe të hedhësh hi në monitor. Por, si rregull, edhe pas humbjes informacion i rendesishem njerëzit nuk i ndryshojnë zakonet e tyre: ju mund t'i thoni vetes: "Kjo është ajo, nga sot unë do të bëj kopje të të gjithë skedarëve!" Dhe do të kalojnë një javë ose dy - dhe programet duket se "nuk kanë probleme" dhe nuk ka kohë të lirë - "Dhe pse më duhet ai rezervë! Dhe kjo do të ndodhë." Për ta bërë jetën pak më të lehtë për të gjithë ata që duan të shohin skedarët e tyre të sigurt dhe të shëndoshë, por nuk u pëlqen shumë të punojnë me programin StuffIt, ne do të shkruajmë një skenar që do të arkivojë të gjitha të dhënat e nevojshme çdo ditë dhe do t'i vendosë në një speciale. disk. Këtu është teksti burimor i një programi të tillë:

tregoni aplikacionit "Finder"

Specifikoni diskun dhe dosjen në të cilën ruhen të gjithë skedarët
-- për arkivim
vendosni myArhiveFolder në "Mac OS: Puna aktuale:"
-- specifikoni dosjen ku ruhen arkivat
cakto myTargetFolder në "Për arkivat:Publish arkivin:"
-- caktoni emrin e arkivit të ardhshëm
-- (emri është data aktuale)
vendos myFile në vargun e datës së (datës aktuale) & ".sit"
-- krijoni emrin e plotë të skedarit (shtegu + emër)
vendosni myArhiveFile në myTargetFolder & myFile

Nëse një skedar me të njëjtin emër ekziston tashmë
-- (d.m.th., rezervimi u krye sot)
-- atëherë ne thjesht përfundojmë skenarin
nëse jo (ekziston (skedari myArhiveFile)) atëherë

Nëse një skedar me emrin e dhënë nuk ekziston tashmë,
-- më pas shkarkoni StaffIt Deluxe dhe kryeni arkivimin,
-- dhe shkarkoni menjëherë StuffI nga kujtesa
tregoni aplikacionit "StuffIt Deluxe"

Aktivizoni
krijoni arkiv të ri me vetitë (emri i rrugës:myArhiveFile)
gjëra (alias myArhiveFolder) në arkivin 1
mbyll arkivin 1

Skripti i mësipërm thjeshton procedurën e kopjimit, por jo aq sa do të donim - për të filluar arkivimin do të duhet të kërkoni këtë skript (në disqe ose në desktop) dhe ta ekzekutoni atë. Për të automatizuar plotësisht punën, duhet të përpiloni skriptin dhe ta ruani në dosjen System/Shutdown Items. Tani, sa herë që fikni kompjuterin, arkivuesi automatikisht do të ngarkojë dhe ruan të gjithë skedarët e rëndësishëm në një disk të veçantë. Duhet të theksohet se arkivimi do të kryhet vetëm një herë në ditë, pavarësisht nëse kompjuteri ka punuar për 20 orë rresht, ose rindizet çdo gjysmë ore - duke përdorur operatorin e gjendjes nëse fundi nëse Po kontrollojmë nëse ia vlen të arkivohet, apo është më mirë të presim. Deri të nesërmen.

Pra, çfarë është më pas?..

Pasi të keni lexuar për aftësitë e AppleScript dhe të shihni se sa e lehtë është të krijoni skripta, edhe për fillestarët, mund të dëshironi të vazhdoni të eksploroni këtë mjet automatizimi. Dhe këtu ju pret zhgënjimi i parë. Fatkeqësisht, praktikisht nuk ka asnjë informacion mbi AppleScript në Rusisht: për të numëruar të gjitha botimet, gishtat e njërës dorë janë më se të mjaftueshme. Prandaj, për të mësuar një gjuhë skriptimi, do t'ju duhet edhe njohja e mirë e gjuhës angleze.

Ekzistojnë dy burime kryesore informacioni rreth teknologjisë AppleScript. E para është faqja zyrtare e Apple Computer, ose më saktë një seksion i faqes kushtuar gjithçkaje që lidhet me skriptet: dokumentacioni teknik, mësimet, shembujt, koleksionet e lidhjeve dhe shumë më tepër. Adresa për këtë seksion është http://www.apple.com/applescript/. Ju këshilloj fuqimisht që së pari të shkarkoni Udhëzuesin e gjuhës AppleScript - një libër shkollor i ilustruar mirë që përfshin shumë shembuj praktikë (libri gjendet në http://developer.apple.com/techpubs/macosx/Carbon/pdf/AppleScriptLanguageGuide.pdf, madhësia e skedarit - 2,6 MB). Burimi i dytë - faqja http://www.scripter.com - përmban shumë materiale si në AppleScript ashtu edhe në gjuhë të tjera alternative të shkrimit për platformën Macintosh.

Përveç kësaj, nëse vendosni të merreni seriozisht me shkrimin e skripteve, atëherë do t'ju duhet një mjedis i mirë mjeti - Redaktori i Skripteve, i furnizuar me Mac OS, është i përshtatshëm vetëm për skriptet e thjeshta me 20-30 rreshta kodi. Në këtë rast, ne mund të rekomandojmë Scripter 2.5 nga Main Event Software - redaktori ka një modalitet korrigjimi dhe një mekanizëm të menduar mirë për shfaqjen e fjalorëve të aplikacioneve. Dhe nëse do të krijoni programe AppleScript që do të kenë ndërfaqen e tyre të përdoruesit, atëherë nuk do të dëmtonte të merrni gjithashtu FaceSpan 3.5 nga Teknologjia Dixhitale - ky aplikacion do të reduktojë kohën që duhet për të krijuar meny dhe kuti dialogu në ekran , dhe do t'ju lejojë të shmangni lulëzimin që kërkon kohë dhe të pakëndshme me skica në letër milimetrike.

Në vend të një përfundimi

Shkrimi i skenarëve është interesant. Shkrimi i skripteve është i dobishëm. Të shkruash skenarë është madje bukur. Edhe pse, natyrisht, është shumë më e këndshme të kënaqesh me kotësinë e dëshiruar, ndërsa skenari "i sapopjekur" punon me durim të gjithë rutinën javore.

Merrni kohë, kaloni disa ditë duke mësuar gjuhën, shkruani disa skripta që thjeshtojnë punën tuaj dhe ju vetë do të kuptoni se AppleScript është një mjet shumë i thjeshtë, shumë i fuqishëm dhe shumë fleksibël. Edhe pse, a duhet të prisnim diçka ndryshe nga Apple?..

Publikime mbi temën