Inside Quick Actions
Table of Contents
Quick Actions is Tower's version of the Command Palette. This feature has received praise from our users since its inception, so we thought it was high time we wrote an article covering everything you can achieve with it (spoiler: it's a lot)! ☺️
We will also share the origin story of this feature and discuss some of the challenges we encountered along the way.
If you spend a lot of time sitting in front of a computer, chances are you are looking for new ways to become as productive as possible – and few improvements are as significant as mastering the keyboard.
This is why Command Palettes are so enthusiastically embraced by developers! They allow you to quickly execute commands by simply typing what they are looking for, without needing to touch the mouse.
The Origin Story
As a short introduction, we thought it would be interesting to learn how this feature came about, so we reached out to Heiko Witte, our senior Mac developer. Heiko not only worked on developing this feature but was also the one who initially conceived it!
“The inspiration for Quick Actions came from the likes of Spotlight, Launchbar, and Alfred,” Heiko explained. “I wanted to be able to quickly look up items within Tower and perform actions on them.”
“I wanted to be able to quickly look up items within Tower and perform actions on them.”
Heiko first presented the idea to Alex, our CTO and co-founder, during a visit to Darmstadt in 2016. Alex was immediately on board and offered Heiko his full support to start working on it.
Implementation began on March 13, 2017. We know this because Heiko is a fan of meticulously keeping a work journal, and he confirmed the date by referring back to his entries. On that glorious day, he met with Alex at a coworking space in Wiesbaden (Heimathafen) to initiate the implementation process.
The development process often comes with challenges, and Quick Actions was no different. These were the main obstacles that Heiko pinpointed:
- Supporting both synchronous and asynchronous loading.
- Enabling fuzzy matching of items to make search even faster.
- Validating actions, as some actions are only available in specific situations.
- Devising a generalized structure that allows for describing supported items and their associated actions in a way that makes the system easily extensible.
Fast forward some months, Quick Actions was ready to hit prime time! It was introduced in Tower 3.0 for Mac and later incorporated into Tower for Windows.
Getting Started with Quick Actions
To launch Quick Actions, all you need to do is press CMD + SHIFT + A if you're on a Mac, or ALT + SHIFT + A if you're on a Windows machine.
This is the preferred way for most folks, but you can actually also click the "Quick Actions" button to access the Command Palette.
You can then easily filter the list of possibilities as you start typing (Tower supports fuzzy matching). Once you have narrowed down the options, press the right arrow (→) to view all available actions for a certain entry.
While your selected option will be listed at the top, you may want to revisit the full list at times. In such cases, you can simply use the left arrow (←) to return to the complete list of actions.
All right, time to see what we can do with Quick Actions!
1. Performing Branch Operations
Quick Actions is a great way to quickly perform all sorts of branch operations. Begin by typing the name of a local branch and then use the right arrow (→) to choose the operation you wish to perform.
This feature includes common tasks like checking out a branch or viewing its history, as well as more advanced actions such as merging, rebasing, publishing, or deleting the branch.
In Quick Actions, everything is contextual. This means that if you type a remote branch, the available options will change accordingly, allowing you to perform tasks like fetching or editing the connection's settings.
2. Inspecting Commits
Are you interested in learning more about a particular commit? If you know the commit message (or if you have the commit hash), you can enter that information to:
- Explore the changes made by the commit.
- Launch your favorite Diff Tool to review the changes introduced.
- Make modifications to it, such as editing the commit message or the commit itself.
- View it in the commit history to understand the context in which it was added (as shown below).
3. Looking into Files
You can type a file name to display it in the File History, see who worked on it (also known as "Blame"), or open it with your preferred text editor.
4. Actions in the Working Copy
You can use Quick Actions to navigate to any of Tower's sidebar views (more on that later), but the "Working Copy" entry offers some unique features worth knowing.
Apart from navigating to that view, you can open a Finder/Explorer window at the root of the project, launch a Terminal window, or create a Snapshot.
💡 Snapshots are similar to stashes, but they are automatically reapplied to the working copy (this is an exclusive Tower feature!). This allows you to quickly save the project's current state as a stash to immediately test out an idea.
5. Switching Author Identity
If you frequently switch between multiple author profiles, such as one with your work email address and another with your personal email address, you'll be glad to learn that you can easily toggle between them by typing your name or email.
Quick Actions will show the authors that have been added to the "User Profiles" tab in the Settings. You can view and manage the list from there.
6. Changing the Way Tower Looks
Our Command Palette also enables you to easily switch your color theme and appearance. Simply type the name of the theme you want (e.g., "Solarized") to see that option, or type "Light" or "Dark" to immediately change Tower's appearance.
7. Navigating to Tower's Views
You can use Quick Actions to navigate to all the available views in Tower's sidebar. For instance, to access the "Pull Requests" or "Settings" view, simply start typing those words!
If you're using a Mac and frequently perform these actions, there's a better way. Press CMD + 1 through CMD + 6 to switch between different views. CMD + 0 will take you to the currently checked out branch.
💡 The "Reflog" option will only appear in Quick Actions if you have enabled it in the "General" tab of Tower's Settings.
Psst… there's also "Quick Open"!
You may wonder how you can quickly navigate to other repositories altogether. For that, "Quick Open" is your friend!
To launch it, press CMD + SHIFT + O on a Mac or CTRL + O on Windows — or simply click the "Quick Open" button.
When the input field is blank, the repositories will be arranged based on the date they were last opened. Begin typing to easily locate the project you need to work on.
Quick Open displays all repositories in your Home Directory, including those you haven't opened before. This is the default setting, but you can disable it by going to the "Advanced" tab in the Preferences window. You can also specify folders for Tower to ignore on that screen.
Maybe we'll write a story about Quick Open in a future blog post!
We hope you enjoyed learning more about this popular Tower feature, its origin, and its capabilities! Don't forget to sign up for our newsletter below and follow Tower on Twitter and LinkedIn! ✌️
Join Over 100,000 Developers & Designers
Be the first to know about new content from the Tower blog as well as giveaways and freebies via email.