Productivity series: Spotlight replacement

Productivity series: Spotlight replacement

miroslav galic · January 6, 2023

Introduction

Continuing with the theme of my previous article (sharing my MacOS menubar setup), I’d like to show you how I used Spotlight and why I replaced it with another tool. The app is called Raycast and it's a real productivity swiss army knife.

It does everything Spotlight does plus some built-in features like Clipboard History, Snippets with text expansion, bookmarks search, calendar agenda, timers, reminders, convert units, math, etc. But it also has an Extension Store, where you can download community-contributed extensions/integrations. At the end of the article, I will share a few that I'm using.

If you are new to macOS or don't use Spotlight, let's see why the omnipresent search bar is powerful.


Why Spotlight is great

Spotlight is a system-wide desktop search feature of Apple's macOS and iOS operating systems

You can open it via CMD + Space shortcut keys.

I used Spotlight mostly for opening and switching between apps. There are many ways to do just that, but I don’t know any faster way than hitting Cmd + Space and typing in the first letter of the app and hitting Enter.

My macOS dock is always set to hide, not to take that precious screen real estate on small laptop screens. And when you train (by using) Spotlight what each search letter opens, I don’t see why anybody would use Dock, or Mission Control to switch apps.


Moving away from Spotlight to Alfred

I felt one could do even more from this powerful input box so I stumbled into Alfred.

Alfred comes with a Clipboard manager, bookmark search, custom web search, etc. However, those are premium features, and it costs ~40€ to get those.

Next to that, as powerful as it is, Alfred looks like outdated software.


Here comes Raycast

After some searching, I found out about Raycast, and for a shortcut person like myself, it blew me away 🤯.

Out of the box, it does everything mentioned tools do and then some. But unlike them, it has a built in Extension Store, where you can install various community-contributed extensions.

You get all that completely free for personal use. See more about pricing plans on their website.


Features I use the most

I will go over some of the built-in features I use the most and will end it with a couple of extensions I installed myself.

Open or switch to any app quickly

When you type in the Raycast input box, it will remember which result you used with that query. This is how you train Raycast to be more relevant to you.

For example, I use one-letter shortcuts to open many apps. To open Outlook, I press o, to open Chrome, I press c, to open Visual Studio Code, I press vs... When your result is highlighted, press Enter and the app will open/focus.

Clipboard history

Remember how many times you copy something, and you need to paste it again, but now your clipboard contains different content, so you can’t paste.

Clipboard History saves what you have copied and if you need to paste it again, you press a shortcut key to open Clipboard history and search what you want to paste or use your keyboard/mouse to navigate to an item and paste it directly.

It's a screenshot from the clipboard history of the author of this article on Raycast.

In this extension settings, you can configure a custom keyboard shortcut to show the Clipboard History window at any time. I use CMD + Shift + V. Notice how the usual paste with CMD + V still works like before.

To configure a global hotkey for an extension, open Raycast and then CMD + ,to navigate to Raycast Preferences. Follow the steps from the screenshot to get an overview of extension settings and change them to your liking.

As a software developer, I use Jira a lot. With that comes a lot of copying and pasting of Jira issue numbers. Some nice people share links to tickets, and some others, just use ticket numbers as plain text. To be able to navigate to that ticket in Jira quickly, you can use Quick Links.

You do this by defining a custom URL and the dynamic part of it. So when you paste something in that dynamic part, it will open that link in your browser. Optionally, you can give an alias to your Quick Link for easy and quick access.

In the end, this looks like this:

• Copy issue number
• Press CMD + Space to open Raycast
• Press j (for Jira)
• Press space to focus on the dynamic part of the URL
• Paste the issue number
• Press Return key to open it in a new browser tab

Make sure to check out extension settings and adjust them to your needs.

Opening bookmarks

On any given day, I open vast amounts of the same websites, eg. Jenkins jobs for builds and deployments, production Jenkins jobs, specific pages in Confluence, GitHub, team calendar in Confluence, and the list goes on and on.

Sure, one could use the browser bookmarks bar, but that requires using the mouse and clicking more than a few times just to open one page.

When you use the Search browser bookmarks extension (to which you assign a nice alias eg. b), then all you need to do is:

• Open Raycast prompt (CMD + space)
• Press b (alias for browser bookmarks extension)
• Press space and start typing
• Press Return key when your result is highlighted

Notice how you can bookmark any different page in Jenkins, so you have very quick access to those pages, without the need to navigate using the mouse or manipulating URLs. Once you give meaningful names to your bookmarks, opening them is super fast.

Snippets

If you find yourself needing to type something repeatedly, eg. some code snippet, URL, greeting, full name, date, etc. this one is a true time-saver. I started using a global text replacement tool called Espanso some time ago, but I didn’t find it working reliably. What was cool about it, it would replace predefined shortcut text eg. :br with Best Regards as you type.

But since Raycast can do the same, I just uninstalled it and configured my shortcuts using Raycast snippets.

For example, to open our INT environment, I type in the URL bar :int and this expands to a snippet I have defied in the snippets collection.

I am pretty sure you type in your email at least once a day. If you have a long name, you can configure a snippet for your email. By giving it a shortcut it is easy as:

• Focus on any input field or text editor
• Type :mail
• Raycast will automatically expand that to your email.

Snippets are even more powerful than that. You can even configure parts of the snippet to be dynamic, eg. dates and time, and even where to place the cursor.

One snippet I use a lot is to access a deep object in the Redux store. For that, I have shortcuts eg: :pal and this expands to someStore.store.store.getState()['SOME_OBJECT'].

Notice how much typing that saves.

Rest of the extensions

There are many more extensions to be discovered and used in the Raycast extension store.

With Raycast prompt open, type Store and install the ones you find useful. Or just navigate to the website and browse over there.

I can recommend: Reminders, Timers, Window management, One Thing, Depcast, Brew, Kill process, etc… or just doing a prompt like: 1m to in, or 34usd to eur.

In conclusion

I can not possibly cover all the features of Raycast in one blog post. However, I hope I have shown you a new tool to be added to your arsenal should you like it.

For me, it makes mundane daily tasks a bit more fun and quicker to do. And since Raycast can do so much, it made me uninstall many other apps and simplify my setup.

I hope you had fun reading. Now go explore Raycast and let me know which are your favorite features.

Don’t forget you can type raycast in Raycast prompt. There is a handy Walkthrough feature 😉


miroslav galic