I need help with this Read Later shortcut

I am confused by a ‘Read Later’ shortcut recommendation that I activated (found in the shortcuts app). In theory, it’s perfect for me in sending things directly to pocket.

The only problem that I have is that for some reason my iPhone 11 suggests that it is copying from the MacBook Pro when I run the shortcut on my iPhone… thus not picking up the URL that I am trying to send to ‘Pocket’ from my phone.

I don’t know what to change to make it pick up the URL from the phone rather than the MacBook.

What I am trying to do is use the ‘Tripple Tap’ on the back of the phone to activate this.

Can anyone HELP…?

Here is the link to the shortcut.

Not sure if that’s the best way to share this so please let me know if I am doing it wrong.

Thanks folks.

EDIT: typos … ugh, its Saturday morning. :man_shrugging:

It could be that the If TYPE is URL step that’s causing this behavior. I suspect that the shortcut is looking at the input type, deciding it is not a URL, then getting the clipboard. If Universal Clipboard is activated between the phone and desktop, then the Shortcut is grabbing the last thing on the clipboard, which might have come from the desktop. Adding a Quick Look step just after the Get Clipboard step would confirm that, I think.

What happens if the shortcut is changed to …

  • remove the Get Type and If steps
  • change the Add to Pocket step to be Add Shortcut Input to Pocket as URL // I don’t use Pocket, so I’m guessing at the syntax.
  • Add Safari Web Pages to the Shortcut Accepts types in the first step

The shortcut restricts input types to URL already, so I’m not sure if the Get Type and If statements are strictly needed. If the shortcut were set to accept ALL input types, then those two steps might add to the outcome. (BUT … I might be missing something about what those two steps are meant to do, so apologies if I’m not getting it.)

If the shortcut is meant to grab the clipboard if nothing is passed via the share sheet, I’d suggest altering the shortcut to include:

  • If shortcut input does not have any value
  • get clipboard
  • no otherwise
  • change the Pocket step to add If Result to Pocket

Hope that helps.

3 Likes

I am not savvy enough to understand this, BUT I appreciate the suggestions SO I am going to duplicate the shortcut and have a play with your suggestions to see if I can get them to work.

What you suggest as to why it’s picking up from the clipboard makes sense.

Thanks again.

I’ll let you know how I get on.

1 Like

Sorry … I struggled with how much detail to put in my response. I find it difficult to find the right balance between in avoiding coming off as lecturing, especially written out like this. I’m happy to go into more detail if you like.

Not sure how to action this bit?!

Lecture away my friend. I am happy to learn, just painfully aware that I lack the skills and experience to succeed without help… so no problem with how detailed you choose to be.

In the Add to Pocket section

  • tap on the variable URL to highlight it
  • select the keyboard/back icon at the top left of the window that slides up from the bottom
  • backspace to delete URL
  • tap the magic wand icon, second from the left on the toolbar just above the keyboard to enter “select magic variable mode”
  • the top portion of the screen will change to dim out the shortcut steps and highlight the results of each sortcut step. In shortcuts-speak, these are called “Magic Variables”.
  • scroll to the top of the shortcut and tap on the highlighted “Magic Variable” just under the “Shortcut Accepts” step at the very top.
  • screen should scroll back down to the “Add to Pocket” step with Shortcut Input now filled into the “add” line

FWIW, it took me forever to get used to the concept of “Magic Variables” in shortcuts. I’m not a programmer by training and always thought I had to assign the output of a process to a variable if I wanted to use that information later. As it turns out, Shortcuts does that automatically and calls them “Magic Variables”, BUT it doesn’t let us see those variables in the same way it lets us see variables we create ourselves. Its one of those “I solemnly swear I’m up to no good” sort of things, I think.

The other thing I’ll say is that Magic Variables are really useful in most cases, but in longer or more complex shortcuts I find them more and more confusing to keep track of. Shortcuts with multiple IF statements, or multiple nested IF statements, or multiples of any sort of step I find really confusing, because ALL of the results are IF Result. Usually by the second or third IF statement in a shortcut I’ll start to assign variables with easier-to-remember names. YMMV, but I thought I’d share.

3 Likes

OK … let me try it this way.

The Accepts statement at the very top of the shortcut is very specific about what it will accept - it will only accept URLs. So the shortcut will appear in the share sheet only the an app is trying to pass a URL to the share sheet. And that’s good, because Pocket will only accept URLs, so no need to have the shortcut appear in the share sheet when an image is being passed into it.

Put another way, the shortcut says “I only accept Granny Smith apples. I won’t accept Gala, Macoun, or Red Delicious. And don’t even try to send me oranges or any other kind of fruit.”

OK. It might not be as broad as possible, but it shouldn’t fail, so its fine. Not being a Pocket user, I don’t know what other types of content Pocket will accepts, so I can’t comment on what other types might be selected in the Accepts section. I’d imagine “articles”, “Safari Webpages”, and perhaps “text” or “media” might work, but IDrK.

The next few steps set the shortcut input to a variable named URL and then checks the type of the variable 'URL` to make sure it is a URL. Its a good process step to make sure the input content is what is expected (“trust but verify”), but in this instance it isn’t strictly necessary, since the shortcut has already said it won’t accept anything other than URL’s.

And then for reasons I can’t yet explain, the checking step (the IF statement) looks at the variable type and decides it is not, in fact, a URL. Or … the shortcut says it will only accept Granny Smith apples, so its given what appears to be a Granny Smith apple, but then it looks at the Granny Smith apple and decides that it isn’t a Granny Smith apple.

One possible explanation is that there is some sort of type definition thing going on here. The thing to know is that all variables come with (I think) three pieces of information attached: the name of the variable, the type of the variable, and the content of the variable. So the type of the variable could be “Macoun” while the content of the variable is “Macoun that has been painted green to look like a Granny Smith”.

So the shortcut says “GIVE ME ONLY GRANNY SMITH APPLES!”. It gets handed a green apple that looks like a Granny Smith. It looks at the apple and says “Nope. Not Granny Smith. What else ya got?” (All in Wizard of Oz voice, obviously.)

Perhaps somewhere in the conversion from “shortcut input” to “variable URL” the type of the variable got changed to something else? I mentioned before that I’m not a programmer, so I’m dancing very close to the edge of my understanding of all this.

So then since the shortcut checks the type of the variable and decides that the variable is not type=URL, it executes the Otherwise section of the IF statement and grabs the clipboard. And that’s good because it makes the shortcut useful it its run from the Shortcuts app directly after copying a URL to the clipboard.

The reason I mentioned that second change to the shortcut was to restore the ability to use the clipboard if the shortcut is run from the Shortcuts app. But I changed it to check whether anything was passed into the shortcut and only if nothing was passed into the input is it to use the Clipboard. I don’t know if this is strictly the best way to do this, but its the way I do it and it seems to work for me.

Sorry for the wall of text. Hopefully that makes sense. Please LMK if it doesn’t. I’m happy to take another swing if you like.

1 Like

I want to acknowledge your very detailed response and I’m very very grateful.

I shall tackle this tonight and see where I get to.

I’ll let you know how I get on.