In July, I showed how you can get the URL scheme for a SoundCloud user or track from an embed code so that you can open right into that track or user in the SoundCloud iOS app from a launcher like Launch Center Pro. Today I decided to automate the process for a track URL.#

You can use the script here.#

To get the embed code, go to a track on the desktop site (make sure it's not a playlist); click on the Share button; click on the Embed tab; and copy the code within the Code & Preview box and copy it to your clipboard. Paste it into the text area in my script, click the button, and get the URL scheme.#

I have not done many test cases; I am assuming all track IDs are the same length. If this script doesn't work for you, please report in the comments section.#

Want to comment? The permalink for this post is


"Douchebag": The White Racial Slur We’ve All Been Waiting For.#

The Shonda Rhimes Revolution: Finishing What ‘The Sopranos’ Started
Insightful essay by Mark Harris.#

Anita Sarkeesian on GamerGate: 'We're Going to Fix This'.
When I was in Portland for my talk at the XOXO Festival, this little boy came up to me and said, “Hi, I’m a feminist gamer.” How do you stop doing this work after that?#

How to Get Ahead By Sounding Less Feminine.#

IT HAPPENED TO ME: I've Been Forced Out Of My Home And Am Living In Constant Fear Because Of Relentless Death Threats From Gamergate (by @spacekatgal)#

What research says about cats: they're selfish, unfeeling, environmentally harmful creatures (Vox)
I like 'em anyway.#

Dear White People,’ About Racial Hypocrisy at a College.
Rarely have I read such a positive review by A.O. Scott.#

Just create this URL action, title it something like Send to Drafts 4: drafts4:///create?text=[[draft]]#

Yesterday I blogged about opening links from TTYtter for PERL in Lynx while running the app over SSH. This morning I decided to just run the app locally on my work computer. Due to IT restrictions, I don't have access to .profile, so I just downloaded the text file to a local directory, changed the name of the file to twitter, made it executable by typing chmod +x twitter, and went through the OAuth process. Now while in that directory I can just type ./twitter to run the app. #

A benefit of running the app on my local machine is that I can open URLs in a GUI web browser. The developer suggests that MAC OS X users can /set the urlopen parameter to open %U. For work reasons, my default browser is not the browser I use for personal browsing, so I went into the text file, and changed#

$urlopen ||= 'echo %U';#


$urlopen ||= 'open -a "Google Chrome" %U';#

Now I can just type /url followed by the thread ID, and the first link in the tweet will open in Chrome.#

Want to comment? The permalink for this post is


I'm so glad that v4 of Drafts runs as a separate app than v3, and that they use distinct URL schemes. I can use v3 on my iPad to sync via Simperium with my iPhone (which I have not upgraded to iOS8) and still be able to play with the new iOS8-only version on my iPad.#

TTYtter is a Linux command-line app for Twitter. I use it over SSH while at the office, so (as far as I can tell) I cannot open links into a GUI browser from within the app. #

In TTYtter, one types /url followed by an alphanumeric string to open the first link mentioned in a tweet. By default, /url is set to echo %U which just "prints" the URL out in the terminal. This is not very useful. One can set the value by typing /set urlopen followed by the app in which one wants to view the URL. I have been typing /set urlopen lynx --accept-all-cookies %U at the beginning of every session, but this gets tiresome.#

I know nothing of PERL, but I know that this app is just one big executable text file. So I just opened it in a text editor, searched for urlopen and changed#

$urlopen ||= 'echo %U';#


$urlopen ||= 'lynx --accept-all-cookies %U';#

Now I can view the link in the Lynx browser (and without having to accept cookies each and every time) without having to set the variable again.#

Want to comment? The permalink for this post is


I brought a banana to work. Instead of eating it, I bought a package of chocolate chocolate-chip cookies and ate 1/2 the bag. #

Trouble at the Koolaid Point — Serious Pony.
a woman should be able to feel safe to express herself w/o harassment#

Cops Pepper Spray Black Teen In His Own Living Room After Mistaking Him For Burglar.#

Terrifyingly Brilliant Spider Creates Stunningly Advanced Web.#

To Raise, Love, and Lose a Black Child (The Atlantic)#

My WordPress blog is glitchy. Recently, every daily Pisces horoscopes has "missed schedule" and I have had to manually publish it. I keep forgetting, so I created an IFTTT recipe using the Date & Time and Pushbullet channels: Every day at 6:45am, I get a link pushed to my devices. When I swipe on the Pushbullet notification on my iPad, it opens to the admin page on WordPress for scheduled Pisces daily horoscope posts. Then I just do a Quick Edit to set today's to "Published," and go about my day.#

Want to comment? The permalink for this post is


Dave Winer is commemorating 20 years of blogging.#

He turned the comments off his blog post, so I'm sharing my appreciation here.#



I've been blogging since 2001. At times I've taken it in professional directions. It got me into my current line of work as a web producer. Everything I've learned -- HTML, CSS, Javascript, PHP -- I've picked up so that I could hack my own blogs. #

I can honestly say that your work has improved my life. I learned Javascript just so I could take full advantage of Fargo. I publish this blog via Fargo even though it is rough around the edges, because I love writing in outlines. #

I've never met you in real life, and I'm certain we've pissed each other off on mailing lists and in comments sections, but I've learned from you in these interactions that it helps a developer when a user explains a problem in as much detail as possible, so that it can be replicated. It's forced me to be more clear in my communications. And to RTFM.#

I admire your devotion to the open internet, and to your championing of RSS and OPML as tools to distribute and organize information that can be shared across multiple platforms.#

Lastly, I appreciate that you have been creating tools that are accessible to anyone with a Twitter account, not just to geeks. I hope your contributions live on for a very long time.#

Want to comment? The permalink for this post is


Dammit I have a headcold.#

This essay on Paula Deen was an entertaining, informative read. It was published in the online magazine Matter on Medium. I know that Medium has venture capital, but I don't understand how they can continue to fund quality, long-form journalism without either ads or a subscription model.#

I've been playing with Extensions and Today screen widgets in iOS 8 on my iPad, and I'm just fine still using my 4s with iOS 7. Some iOS 8 features add convenience, but a javascript bookmarklet to add an article to Instapaper works just as well as an Instapaper extension. There is currently nothing in iOS 8 that I feel I have to have on my iPhone.#

The only app whose release I "dread" is Drafts, because I know that it will be iOS 8-only and will sync with Cloudkit. As long as I keep my iPhone as-is, I will not be able to upgrade to Drafts even on my iPad if I want to sync notes between my devices.#

Want to comment? The permalink for this post is


The stunning weirdness of Ayn Rand: Why her newfound popularity makes no sense (

I used to have a linkblog on a subdomain of Dave Winer's, and used the Fargo bookmarklet to quickly add links to my linkblog outline. Then when Dave released Radio3 I started using that bookmarklet to add links. However, even though with Radio3 I can have my own linkblog that cross-posts to Twitter and has an RSS feed, that's not on my own domain. If Dave released Radio3 on GitHub and I could run it from my own server, then I would feel I have more control over it. But for all his writing on silos, Radio3 itself is a silo. If Dave takes the site down, I lose my linkblog, even if all the links have been shared on Twitter.#

So for now I'm going to share links on my regular blog. If you're reading it on the web, a shared link will be preceded by . If you're reading this in a feed reader, you'll see |link| preceding the link title.#

Whether I share something here or on Twitter (or both) will be a crapshoot. Sometimes the decision is dictated by the device I am using at the time I want to share a link. I hate using on mobile devices, so it's easier then to just use Tweetbot. But if I'm at a desktop computer, I'll more likely share it here -- unless I am so incensed about a story that I want to share it also (or exclusively) on Twitter. I can share a headline from Fargo on Twitter using the following script, but the tweet always needs editing before I post:#


Visit the Fargo scripting page in the docs to learn how to install this script, or watch this video.#

So, follow me on Twitter as well!#

Want to comment? The permalink for this post is


Roxane Gay and Lena Dunham on Online Criticism (Vulture)#

Tweet This Post#

TextExpander for iOS recently had to change how it works in iOS 7, and currently TaskPaper does not support snippets. [According to the Google group](!searchin/taskpaper/textexpander/taskpaper/R1KqfUh9saU/znxS0IKaLmMJ), the team is working on it but the text editing apps (like WriteRoom) are higher priority.#

I've come up with a workaround using Launch Center Pro. You can adapt this to your own needs. This action expands a TextExpander snippet within a TaskPaper search query, copies it to the clipboard, and opens my `todo` list in TaskPaper. If you're on your iOS device, you can tap on [this link]( to install it. #

Here is the URL of the action:#


In TextExpander, I have a snippet called `ddue3` that uses the following TextExpander math: `%@+3D%Y-%m-%d`. This expands into YYYY-MM-DD three days from today. If today is 2013-12-29, the search query is `@due < 2014-01-01`. #

TaskPaper uses a similar URL scheme to that of Writeroom's, so to open the app to my todo list, I use the x-success parameter from x-callback-url to go to `taskpaper://open/todo.taskpaper`. Then I just click on the search icon and paste the clipboard contents to see any tasks that are due before New Year's Day.#

© 2014 Jeffrey Kishner.
Last update: Fri, Oct 24, 2014 at 2:01 PM.