Yesterday, David Sparks released the Keyboard Maestro Field Guide, the seventh paid course offered through his Learn MacSparky site1. This 4-hour block of videos covers 76 different screencasts about Keyboard Maestro, the Mac automation application that provides significantly deep capabilities and makes them available to use across your Apple desktop or laptop.
As usual, David’s course is well-paced, insightful, and makes it easy to learn complex topics like Keyboard Maestro’s slightly esoteric design language.
One type of apps that make the Mac more useful than iPad for many are clipboard managers.
Instead of copying & pasting one thing at a time, tools like Alfred, Pastebot, and Copied let Mac users copy lots of information in batches and then use it later (often with special formatting or inserting with keyboard shortcuts).
On iOS, the problem isn’t nearly as solved – since apps don’t have the same access to your clipboard at all times, they can’t capture everything you’re cutting & pasting on your iPhone or iPad.
However, Copied does provide a solution that works across the Apple device line, letting you save things to their database, sync it across iPhone, iPad, and Mac, and share it elsewhere.
And, with support for URL scheme actions on iOS, it’s possible to use Copied in conjunction with an app like Workflow. You can create shortcuts that clip the contents of your clipboard, share sheet & save it into your Copied lists for organization, and much more.
Getting your clippings in
While getting text into Copied is mainly done through the action extension, sometimes it can take too many taps to get my information in just the right place.
To start taking advantage of Copied’s deeper features, I turned to the URL scheme and set up three workflows to show my clipboard, open a list, and add a clipping with a custom title.
Show clipboard in Copied:
The first workflow I’ve built adds on to the base URL of copied:// that opens the app and includes clipboard at the end. When this is run or opened with a shortcut phrase, Copied will display your clipboard text in a new window and let you add a title or choose a group before saving it.
Open Copied list:
The second workflow lets you open into one of the custom lists you might’ve added to Copied in order to grab one of your clippings out of there.
Since this workflow includes a main List action where I include all my Copied list names, I also added a Combine Text and Save File action that creates a .txt file in iCloud Drive of the list names for use in other workflows.1
Editor’s note: Even if you don’t plan to use this often, add it with your list names and run it to save the List names to iCloud.
If there is a link included that will be added into the URL field separate from the clipped text too. Here I’ve grabbed the names of the Copied lists from iCloud, then use Choose From List to let you pick which one to save within.
Plus, at the beginning, you’ll see some logic that makes the workflow more dynamic. It uses Count and an If action to check whether something is present coming from the action extension’s that it can use – this allows it to work if run from the share sheet, or otherwise default to the clipboard if started from the Workflow app, the widget, or as a shortcut with Siri.
Clipping specific types of content
My original goal looking into the Copied URL scheme was finding a better way to clip tweets and blog posts I’ve come across for use in my own writing later, so the next two workflows were designed for just that.
This workflow takes text that I’ve highlighted or left comments on within Instapaper, then takes the Markdown outputted by tapping Share All Notes at the bottom of a saved piece and saves the link, quote, and title of piece into one of my Copied lists.
This is specifically designed for the way Instapaper outputs its notes, with some relatively sloppy logic that strips out the parentheses and brackets to grab the results I want.
Ideally I would know how to create regular expressions and could extract just the text I want so this wouldn’t potentially break with any odd formatting, but I don’t yet know how – it’s in progress, but for now this does work how I want it to.
The second workflow I’ve built (shown above in three steps) extract a tweet’s text from a Twitter link and input the information into Copied, since clipping a tweet normally only saves the URL and not the tweet itself.
Here the workflow uses the Twitter API 2 and extracts the username, handle, and body of the tweet, then rearranges it all into a clipping title, copied tweet, and the URL into one of my lists.
This nicely formats the display name and Twitter handle as the title, too, so I can reference what I’ve saved much easier.
Getting clippings back out
Finally, I used the other actions available in the Copied URL scheme to retrieve clipping later.
Editor’s note: this image is photoshopped to show both workflows on the same iPad.
Search in Lists:
The Search in Lists workflow I’ve created lets you type in a query and see if you’ve already saved it in Copied.
Running this will put the clipboard or action extension input into a text body, let you type what you’re searching for, and then opens into that space in Copied and displays your clipping to act on as you please.
Grab Item from List:
For those of you who might set up Copied lists that they want to refer to over time, they can use something like Grab Item From List to retrieve clippings from a specific point inside of a list.
While this example workflow I’ve made lets you type in a number to get the item in that spot in the list, you could also tweak it slightly to always retrieve the same clipping too.
I can see this being useful for people who have canned replies saved in Copied – you could swap Ask For Input with a Dictionary action and set up multiple items where each Key is your the title from Copied for your canned reply and the value is its position in the list. That way, when the workflow is run you can pick from the options and grab the corresponding clipping.3
Clip away, friends
Overall, utilizing Copied’s URL scheme helps bring down the friction of adding clippings into the app, plus helps you get even more organized as you add to the database.
With the ability to set these up as custom voice Shortcuts to launch using Siri and the workflows being designed to accept input everywhere they are run, Copied’s usefulness can be extended further whenever you’re using it on iOS.
Now it can be easier to use Copied more on whichever device you prefer, with the ability to clip & save content smoothly on any Apple platform.
If you have any questions, feel free to reach out to me on Twitter as @mattcassinelli.
There’s also a Create Folder action at the top that creates /Lists/ in your Workflow folder in iCloud Drive, the only place where workflows can save to in the background (without opening the file picker). ↩
I got the basis of the workflow from @brentacprime on Twitter, who also mentioned that he had found the workflow originally elsewhere online.
This does a lot of the logic for accessing Twitter’s API and returning tweet text, so I mostly changed the way the text was arranged at the end and added in the Copied URL scheme logic. ↩
I could have used this back when I was answering frequently asked questions as @WorkflowHQ on Twitter. ↩
If you’ve picked up Apple’s HomePod in the past few weeks and tried to use iTunes on your Mac to Airplay something to the speaker, you probably got blasted with the music playing at full volume.
This occurs since HomePod uses iTunes’ in-app volume slider to adjust its levels rather than your Mac volume, and iTunes is usually at 100% because the hardware keys are used control my computer’s overall sound instead1. Plus, if I want to change the volume on HomePod after the music starts, I have to go into iTunes and drag the slider – you can’t turn it down that quickly.
To get around this, I installed a Mac app called iTunes Volume Control that’s available on GitHub. Created by Andrea Alberti, it’s an app that lives entirely in your menu bar and changes the Mac’s hardware volume keys to control iTunes instead. When it’s running, it can entirely take over mute, volume up, and volume down – or, you can set it so you have to hold a modifier key like Command before hitting the keys. I use the latter option, so I can control my Mac volume with the keys normally and then use ⌘ + or ⌘ – to adjust iTunes when I need to.
Once you’ve installed the app, you’ll find it’s much better experience playing music from iTunes with HomePod as your speaker. I set iTunes Volume Control to launch at login, so it’s basically always running when I use my computer and I never have to turn it on when I need it2. I’ll usually open iTunes, use ⌘ – to turn down the volume, then pick my song and AirPlay to my HomePod.
iTunes Volume Control also provides an option to change the step size for each press, so the volume can be changed in more specific intervals – you can set it go up 3% each time, for example, rather than the default 10% at a time. This gives you fine-grained control of the HomePod volume, right from your keyboard.3
I could see improving this setup using iTunes and AppleScript – you could set up a command to launch iTunes already set to 30% and set to AirPlay to the HomePod, avoiding the setup process each time I want to listen from my Mac on my HomePod. However, I have no experience there and that’s a project for another day.
The best part of this setup is that iTunes Volume Control is entirely free to download and use. Check out the documentation first, but use this link to get the app and start controlling your HomePod from your Mac.
Instead of adjusting the levels in iTunes and on your Mac separately, it’s much more common to leave iTunes at 100% and change the volume on the whole computer instead. ↩
I normally hide it in the menu bar using Bartender, so I can click on the Bartender icon to reveal it but keep it away from view otherwise. ↩
I do the same thing with HomePod normally by using my Apple Watch. Once you change the source in Control Center on your iPhone to the HomePod, the Now Playing controls show up on Apple Watch and let you control the smart speaker from your wrist. ↩