Supersnel je favoriete programma’s openen
Automatiseringen hoeven natuurlijk niet altijd groot en complex te zijn, of ingewikkelde dingen op te lossen.
Juist die kleine dingen, die je duizend keer per dag doet, zijn vaak interessant om te automatiseren.
In deze Automation Monday gaan we het opstarten van programma’s via je toetsenbord versnellen.
Wat is het doel van deze automatisering?
Het doel hier is eigenlijk heel simpel: we willen vanaf het toetsenbord snel bepaalde programma’s (die je vermoedelijk veel gebruikt) kunnen starten.
Als het programma al draait moet het op de voorgrond komen. Als het nog niet draait, willen we het opstarten en dan op de voorgrond zetten.
En voor de Finder (op de Mac) willen we ook dat er altijd geopend wordt met een venster; anders hebben we technisch gesproken de Finder wel actief, maar visueel nog geen Finder-venster.
Wat hebben we nodig om programma’s snel te starten via het toetsenbord?
Eerlijk is eerlijk: Windows-gebruikers hebben hier in sommige opzichten een voordeeltje. Daar kun je bijvoorbeeld met Windows-toets + E direct de Verkenner (Windows’ versie van de Finder) openen.
Op de Mac hebben we allerlei andere opties om dit te gaan doen. Alfred is een logische keuze, die ik honderden keren per dag gebruik.
En hoewel Alfred eerst en vooral een "app launcher" is, kun je er nog veel meer mee. (Daar kijken we wellicht nog een keer naar.)
Een eigen App Launcher bouwen
Toch is het niet wat we nu gaan gebruiken. Voor Alfred moeten we namelijk eerst een toetsencombinatie uitvoeren (ik gebruik alt (⌥) + spatie) en dan een paar letters van het programma typen om het op te starten. Dat betekent dat we toch weer even moeten opletten of we de goede starten en die frictie is voor je veelgebruikte programma’s nét te veel.
Ja, we praten hooguit over secondes… Maar over de dag heen ga je dat merken.
Dus we gaan het anders doen. Met Keyboard Maestro!
Bovendien kun je zo iets over Keyboard Maestro leren, wat ook leuk is. 😉 (Maar geen zorgen, dit is niet geforceerd in KM bedacht door mij. Dit is echt iets wat ik zelf meerdere keren per dag gebruik.)
Hoe kunnen we onze eigen "app launcher" via het toetsenbord maken?
Er zijn verschillende manieren om dit aan te pakken. De methode die ik gebruik is als volgt:
- Ik gebruik een toetsencombinatie (voor mij ctrl (⌃) + spatie (␣), maar je kunt natuurlijk doen wat jij handig vindt)
- Er worden ongeveer 10 apps gepresenteerd, die ik veel gebruik door de dag heen
- Door op de juiste toets te drukken opent een app
Hoe werkt Keyboard Maestro?
Keyboard Maestro is een érg uitgebreide app, en in één artikel kunnen we nooit alle mogelijkheden bespreken.
Ik ga er dus even wat sneller door heen voor nu, om tot de kern van onze automatisering te komen.
Acties in Keyboard Maestro
Keyboard Maestro werkt net als bijvoorbeeld Opdrachten, waar we het al vaker over gehad hebben.
Je maakt een macro (vergelijkbaar met een Opdracht) die je opbouwt uit blokjes. Elk blokje is een bepaalde actie.
Zo’n actie kan bijvoorbeeld het typen van een tekst zijn (handig voor tovertypen, hoewel ik daar liever TextExpander voor gebruik); een tekst naar het klembord halen; klikken op een bepaalde locatie op het scherm (een absolute positie, relatieve positie, of zelfs een plaatje wat je hebt laten zien aan Keyboard Maestro); een link openen; een serie toetsencombinaties uitvoeren…
Er zijn echt eindeloze mogelijkheden met Keyboard Maestro, die ook goed te combineren zijn.
Een Keyboard Maestro macro uitvoeren
Zo’n macro wil je dan natuurlijk ook kunnen "openen", of uitvoeren. Ook hier heeft Keyboard Maestro weer allerlei mogelijkheden:
- Je kunt een toetsencombinatie gebruiken (dat is wat wij gaan doen)
- Je kunt het automatisch laten uitvoeren als je verbindt met een WiFi-netwerk dat een bepaalde naam heeft (handig om bijvoorbeeld bepaalde acties uit te laten voeren als je met je laptop op kantoor, of juist thuis inlogt)
- Een bepaald USB-apparaat wordt aangesloten of juist verwijderd
- De tekst in je klembord gewijzigd is…
En ook hier: nog veel meer opties, zodat je bijna altijd wel kunt zorgen dat het op exact het juiste moment gebeurt.
De app launcher: een action palette
Voor onze app launcher gaan we ook gebruik maken van een zogenoemd action palette in Keyboard Maestro.
Dit zorgt er voor dat we bij het drukken op de sneltoets een klein venstertje te zien krijgen met de verschillende apps die we kunnen starten.
Daar binnen maken we dan voor iedere app een actie aan, waar we een specifieke toets (bijvoorbeeld een letter of cijfer) aan koppelen. Op die manier hoeven we geen sneltoetsen te maken voor de individuele apps, en kunnen we ons ook makkelijk bedenken over de "algemene" toets; als je ctrl (⌃) + spatie (␣) later toch ergens anders voor wilt gebruiken is dat zo geregeld.
De action pallettes in Keyboard Maestro zijn een ideale manier om snel toegang te krijgen tot verschillende acties die bij elkaar horen, zonder dat je sneltoetsen moet maken per actie.
Bovendien kun je het beperken tot één bepaalde app (of een paar apps, bijvoorbeeld al je tekstverwerkers), zodat je dezelfde sneltoets kunt gebruiken voor meerdere programma’s.
Aan de slag: de app launcher bouwen
Ok, tot zo ver een heleboel uitleg en theorie. Hoog tijd om echt iets te doen. 😉
Macro groep maken voor het pallette
We beginnen in Keyboard Maestro door een macro group te maken via File, New Macro group (shift (⇧) + cmd (⌘) + N).
Geef deze groep een logische naam, bijvoorbeeld App Launcher.
Zorg dat het vinkje rechtsboven aan staat (en dus geen kruisje is), want anders is deze groep niet actief.
We willen dit als een soort globale sneltoets gebruiken, dus Available in all applications. en Available in all windows. zijn de eerste twee opties.
Voor de derde kiezen we Shows a pallette for one action when:, om een action palette te openen via onze toetsencombinatie.
Voor de when-actie kiezen we The hot key ctrl (⌃) + space (␣) is pressed., of welke toetsencombinatie jij ook wilt gebruiken. Houd er rekening mee dat deze globaal werkt, dus iets wat al in gebruik is in andere programma’s (zoals cmd (⌘) + A) is waarschijnlijk niet zo handig. Keyboard Maestro "wint" deze wedstrijd namelijk altijd, en je verliest de standaard functionaliteit op die manier.
Bij de Palette Style zou je eventueel nog een ander thema kunnen kiezen, maar het idee is dat je dit nog geen halve seconde ziet, dus ga hier niet te veel tijd in stoppen. 😉
Macro’s toevoegen
Nu we dit hebben kun je macro’s toe gaan voegen. Dit doe je door onder de middelste kolom (waar Macros boven staat) op de Plus-knop te klikken.
Geef het een logische naam, zoals de naam van de app die je gaat openen. Zelf zet ik er ook gelijk voor met welke toets ik deze app open. Zeker in het begin, als je nog even moet wennen, is dit een handig hulpmiddel.
Als je zou kiezen voor cijfers (wat ik niet doe, zoals ik straks zal uitleggen) zorgt dit er ook voor dat de programma’s gelijk in de juiste volgorde staan; je macro’s worden namelijk automatisch in alfabetische volgorde gezet.
De trigger is hier een "hot key". Typ simpelweg het cijfer, of de letter, die je wilt gebruiken en houd de actie er achter op is pressed.
Acties toevoegen
We zijn nu op het punt dat we de toetsencombinatie ctrl (⌃) + spatie (␣) kunnen gebruiken om ons pallet te openen. Dat we daarna op een sneltoets kunnen drukken om een macro uit het pallet te openen.
Maar de macro doet nog niets!
De laatste stap is dan ook acties toe te voegen aan de macro.
In dit geval willen we eigenlijk maar één simpele actie: een app openen. Of beter gezegd: een app activeren; dat wil zeggen dat we het programma openen als het nog niet geopend is, en dat we het sowieso naar de voorgrond halen.
In Keyboard Maestro doen we dit door te klikken op de plus onder de rechterkolom.
Nu kunnen we in de middelste kolom alle acties zien (als je op All Actions klikt in ieder geval 😉), of bladeren per categorie. Met de zoekfunctie in deze kolom kun je de actie Activate a Specific Application vinden. Je vindt deze ook terug in de categorie Application Control.
Sleep dit naar de rechterkolom, en kies het programma wat je wilt "activeren", bijvoorbeeld Safari.
Wanneer je nu de stappen volgt: ctrl (⌃) + spatie (␣), daarna de toets die je gekoppeld hebt aan de macro, zal Safari naar de voorgrond komen.
Bijzondere situatie: de Finder
Er is een uitzondering op dit geheel, waar we iets bijzonders moeten doen.
Finder opent standaard niet per se met een venster. Als er nog geen Finder venster open is activeert het programma Finder wel, maar we zien het niet.
Als je al wel een venster open hebt komt dit netjes op de voorgrond.
Wat mooier is, is het volgende:
- Als we de Finder activeren, en er al wél een venster is: laat dat venster zien
- Als we de Finder activeren, en er nog géén venster is: open een nieuwe venster, in de standaard map (deze kun je wijzigen door in de Finder cmd (⌘) + , te gebruiken en een andere map in te stellen)
Dit kunnen we doen door de actie Execute AppleScript te gebruiken, die je vindt in de categorie Execute.
Nu gebruiken we het volgende korte AppleScript:
tell application "Finder" reopen activate end tell
- Met de eerste regel geven we aan dat we het tegen de Finder hebben;
- De tweede regelt vertelt de Finder om een standaard venster te openen, als er nog geen venster is;
- De derde regel haalt de Finder naar de voorgrond;
- En met de laatste regel sluiten we het script af.
Waarom ik letters gebruik voor mijn app launcher
Als je kijkt naar de letterlijke macro’s die ik gebruik, zul je zien dat ik letters gebruik en geen cijfers. En dat die letters dan nog niet eens in alfabetische volgorde zijn!
De letters die ik gekozen heb zitten allemaal aan de linkerkant van het QWERTY-toetsenbord. (QWERTY is de standaard toetsenbord-indeling in onder andere Nederland, in België gebruik je waarschijnlijk AZERTY. Niels zweert nog steeds bij Colemak.)
Dus voor OmniFocus bijvoorbeeld gebruik ik niet O, wat ook een logische keuze zou zijn, maar S, omdat ik daar sneller bij kan.
Dat is ook de reden dat ik geen cijfers gebruik — wat ik in een eerdere versie nog wel deed. Ze zijn eigenlijk te ver weg. Wederom, het scheelt misschien maar weinig, maar alles telt in deze kleine interacties die je zo veel keer per dag doet.