iOS Bookmarklet to Convert Link into OPML File for Fargo.io

I’ve been using Dave Winer’s new outliner Fargo obsessively since its launch. It has lots of useful keyboard shortcuts, and imports/exports all outlines in OPML format. You may be familiar with OPML as a way to store a list of RSS feeds, but it’s also used by mind-mapping applications like iThoughts and MindNode, as well as outliners like Carbonfin Outliner.

Unfortunately, this application is very much desktop-focused. It barely works on the iPad. Fortunately, Fargo syncs with the /Apps/smallPicture folder in Dropbox, so if you can get an OPML file into this folder, you can import it once you’re back on the desktop.

I’ve been using Cotton Notes on my iPhone and iPad to work with outlines, because I can tap on any node and export that node and all its subnodes as an OPML file to the /Apps/Cotton Notes folder in Dropbox. This app also will import OPML files. When you import an OPML file that includes links formatted as follows

<outline text="Google" type="link" url="http://google.com" />

 
it converts it to Markdown:

[Google](http://google.com)

 
One the one hand, this is great, because it still keeps the link and you can toggle between previewing the Markdown or not. The downside is that when you export the outline, it stays in Markdown.

In Fargo, the first link format (which is according to the original spec) displays with this icon bookmark instead of a wedge, and when you use the expand shortcut, Fargo opens the link in a new tab. Fargo does not support markdown, so if I import an OPML file from Cotton Notes, the link will show as [Google](http://google.com).

Fargo does let you create an HTML link within the text, but if you export it, the HTML is URL-encoded. For example, an HTML link in Fargo (which looks like Google) will export as follows:

&lt;a href=&quot;http://google.com&quot;&gt;Google&lt;/a&gt;

 
This is unreadable if I import it into Cotton Notes.

I suppose the proper way to create a link in Fargo is to choose Edit Attributes… in the Outliner menu, and manually add them:

type link
url http://google.com

 
This creates a link according to the OPML spec and will properly import into apps like Cotton Notes and iThoughts (although these apps then change the link formatting).

The OPML Bookmarklet

All this to introduce a bookmarklet I’ve written for iOS. It will take the title and link of a page and create an OPML file in the /Apps/smallPicture folder, which you can then import into Fargo. (To import, just go to File > Open and then click on a file called “Link” with a filename that is a timestamp. This will create a new outline in Fargo.)

This bookmarklet requires Drafts. From your iOS device, you will need to tap on this link to import a Dropbox action into Drafts called opml.

Then, bookmark any page in mobile Safari and title it opml. Tap on bookmarks and edit, and remove the URL of the bookmark. Paste in the following and then save:

 
You’re all set. Next time you want to import a bookmark into Fargo, just tap on the opml bookmarklet. It will send a formatted link to Drafts, which will then insert the draft into an OPML file, which is then saved to Dropbox.

If you want to get the link into an outline in which you are already working, create a public link for the new outline, copy the URL, go to your working outline, click on Import… and enter the public URL to import the link into that outline.

Warning

If a title or URL that you’re bookmarking contains any special characters that would ordinarily have to be encoded, this bookmarklet will not work. It will create an OPML file but if you try to import it into Fargo, it will show up null. (For example, & needs to be &amp;.) I don’t know any way around this. You’ll have to actually go into the OPML file to fix the URL or just bookmark URLs that don’t have parameters.

Speak Your Mind

*