I would like to give names to different Mission Control Spaces; currently a new Space gets the default name Desktop n
where n
is a number.
Desktop 1 | Desktop 2 | Desktop 3
How can I give each space a custom meaningful name?
Ask Different is a question and answer site for power users of Apple hardware and software. It only takes a minute to sign up.
Sign up to join this communityI would like to give names to different Mission Control Spaces; currently a new Space gets the default name Desktop n
where n
is a number.
Desktop 1 | Desktop 2 | Desktop 3
How can I give each space a custom meaningful name?
Nope, there is no way to natively do that. But you can put an application into fullscreen and the Desktop will take the application's name.
Else way, there is some third party applications who will help you do to so (not all of them may run natively on ARM yet):
Spaces Renamer
Spaces Renamer is a combination of an application and SIMBL plugin to allow you to rename your spaces.
Total Spaces
The commercial app TotalSpaces by binaryage allows you to name Spaces.
You may need to partially disable SIP in order to use TotalSpaces or Spaces Renamer, see:
You should probably read this before to disable it: https://eclecticlight.co/2019/06/19/what-is-sip-and-when-is-it-safe-to-turn-it-off/
Related posts:
I am using the built-in Stickies app. I've created a sticky for each space on the top left corner. Just set the sticky window to Floating which keeps it on top of every other window.
This way you get a nice label for each Space which is visible while you are working.
To see all your Spaces just select the Stickies app, click Control + ↓ and you see the stickies in a row which represent your Spaces and also clickable:
Plus desktop can be selected from a list as asgardian07's answer shows.
Command + Tab
to select the stickies app, then hit Control + Down
to view the stickies on the Mission Control then use left/right
arrows to navigate between them and hit Enter
to select a sticky.
Jan 8, 2022 at 15:11
This is something that I wanted for ages, so I finally got around and built an open source solution!
It behaves similarly to TotalSpaces in that it uses SIMBL to hook into the display functionality, and uses an application with a top menu bar button to rename the desktops. To install it, just head over to my GitHub and follow the installation instructions!
Screenshots:
Edited Names
Name-changing UI
A very low technology but quite direct solution is to assign keystrokes to each desktop
With this approach, you'll also want to keep your Desktops in fixed order:
Add a sticky to each desktop, with the desktop label. Then you can right-click on the app icon and switch between desktops!
UPDATED SOLUTION:
I came up with a better hack inspired by Karl's answer. Open up the Stickies app. Right click on it on the Dock and select Options -> All Desktops.
Create one sticky. In it create a list like this:
Desktop 1 - Email
Desktop 2 - Gaming
Desktop 3 - Home Business
Make it tall enough and the font large enough so that it is legible when in Command Center.
Now, when you go into Command Center, your "legend" will be available on all Desktops so you can quickly see which one to switch to.
ORIGINAL SOLUTION:
Here's another hack. Open TextEdit and create a new document. Change the font size to something like 175 points and reshape the window to be very short and very wide. Type in the name you want for that desktop. Then duplicate the document, move it to a new desktop and change the name visible there.
As a result you can usually read the names in Mission Control (as long as a window isn't obscuring it) and you can easily switch to a Desktop by name by showing all TextEdit windows and selecting the correct one.
[Update: creator here - I have pulled this app from the App Store because it's a free app that I currently don't have a great way to test on Monterey, as I don't own hardware that can run it (I have a 2014 MBP), and it now has not received bug updates in over a year.]
There's an app (in the Mac App Store) that lets you name Spaces via the menubar. It also lets you give each Space a unique icon, and tells you how you spend time across your Spaces (and the apps within them). Because macOS APIs are limited, the names stay in the app and don't show up in Mission Control. But they are persistent.
The app also lets you jump directly to another (named) Space via its dropdown menu. B/c Apple lets you have up to 16 Spaces per screen, this is handy in navigating between them.
Here's a preview shot, you can see the option to jump directly to a Space (app calls them Rooms) via a dropdown, and you can see time spent across them.
Free in the App Store -- CurrentKey Stats. I made it, and it launched about a week before this comment was made. For additional stats (30-day view and exportable reports) you can buy an upgrade, but all the above stuff is free.
I'm currently in a position where I want to define a Desktop by a task I'm currently working on; one desktop per task. This makes solutions like using a full screen app or assigning an image unsuitable for me, since I often use more than a single app to fulfill a task and my to do list changes so often that creating custom desktop backgrounds or writing out a legend is not efficient.
What I've been doing is, since I usually need several terminals at a time, I just name each one based on what I'm doing. That helps me remember what all my terminals are for, and then I can just right-click on the terminal icon to get a sort of on-the-fly legend.
I have found that opening one app per desktop names it after that. In my work that's really helpful because it allows me to have google gasmask open in one, terminal running my local server in another, atom in another and so on, very helpful that it names it after the app running!
I had a thought. Why not just put a small sticky on the monitor above the desktop space with the description of that desktop.
You could also make a screenshot of the application. Then set that as the desktop wallpaper for that space.
I tried this solution and it worked perfectly with Catalina so it should work for everything before that
There is one simple, effective solution that does not require disabling SIP or constant fiddling.
The Wallpaper for each Space can be set independently. Control-click on the desktop of a Space, select Change Wallpaper and choose an image relevant to the function of the space. You can also make one yourself in your favourite image editor with the name you want to give the space. Personally, I'm enjoying typing the name I want to give the space into an image synthesiser and using the AI-generated image.
We are not allowed to do this because Apple has reserved the name for the name of the application that resides as a maximized window on the desktop.
However, Apple could provide the name and change the font or something else depending on whether it is a maximized app desktop or a normal desktop. If I have time I will suggest this to Apple.
Here is what it looks like when you have a named desktop using Google Chrome and the information about my MacBook:
I cannot believe that after so many years, apple still do not allow you do this. I like the idea of sticky notes, but I hate to use mouse searching for the sticky notes among so many applications. I end up writing an hammerspoon script to help me with it. After all the setup of stickies as suggested in the other answers and put the following script in my init.lua, just pressing {"cmd", "alt", "ctrl"} + "space" leads me to pick the desktop/spaces. Hope it helps! BTW, I must admit that chat-gpt helped me with most of the coding.
function showAppMissionControl(appName)
local app = hs.application.get(appName)
if app then
app:activate()
-- Trigger Mission Control (Application Exposé)
hs.eventtap.keyStroke({ "fn", "ctrl" }, "down") -- You may need to adjust the key combination if your keyboard layout is different
end
end
local hyper = {"cmd", "alt", "ctrl"}
hs.hotkey.bind(hyper, 'space', function()
showAppMissionControl('Stickies')
end)
I've figured it out. All you have to do is make the app or browser page full screen, and it will automatically be named in the mission control view. See photo.