How to replace rather than add tags in MacOS?
I've been scratching my brain on this one for a while. In macOS, it's easy to add tags to a file (whether right-clicking on a file, using the toolbar shortcut button or using the File menu). In each case, this opens the Tags menu which allows you to choose a tag that you want to add (for example, the default color-based tags). It's equally easy to remove any currently assigned tags.
However, I can't find a way to replace all existing tags with a new one. Let me explain my case scenario:
- I add a tag "ToDo" (Blue) to a file.
- Once I begin work I have to replace the "ToDo" tag with an "In Progress" tag (Orange).
- When I complete the work, I have to replace the "In Progress" tag with "Completed" (Green).
Currently, for steps 2 & 3, I have to open the Tags menu, manually remove any tags assigned to the file/folder, and finally add the new tag.
Is there a way to simplify that process by removing all assigned tags and replacing them with the new tag, all in one go? I assumed that holding down the Option key (or another modifier) may change the "Add Tag" action to a "Replace Tag" action, but no success.
I know I could achieve this with Terminal Scripting or Keyboard Maestro, but I'm trying to see if there's a native way to do this.
Thanks!
Solution 1:
A native solution:
- Define a custom keyboard shortcut for the Finder.app in Settings > Keyboard > Shortcuts > App Shortcuts. Map the menu item “Tags…” to some keyboard shortcut, I used ⌘ CommandS.
- Now, selecting any file and hitting ⌘ CommandS brings up a little window where you can enter your tags.
- ⌘ CommandA selects all existing tags, you can then write your new tags and confirm with enter.
This means you can replace all tags of a file with “Important” by typing ⌘ CommandS, ⌘ CommandA, “Important”, ⏎ Return, ⏎ Return. The window also does completion of tags, so a (case-insensitive) unique prefix of the desired tag name is enough.