<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Evan Sims &#187; instapaper</title>
	<atom:link href="http://evansims.com/tag/instapaper/feed/" rel="self" type="application/rss+xml" />
	<link>http://evansims.com</link>
	<description>The life and times of a video game designer and web developer from Chicago.</description>
	<lastBuildDate>Fri, 03 Sep 2010 05:27:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
	<atom:link rel="hub" href="http://superfeedr.com/hubbub" />
			<item>
		<title>A Better Instapaper Sync for Kindle/Mac</title>
		<link>http://evansims.com/2009/12/a-perfect-instapaper-sync-for-kindle/</link>
		<comments>http://evansims.com/2009/12/a-perfect-instapaper-sync-for-kindle/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 13:55:32 +0000</pubDate>
		<dc:creator>evan</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[automator]]></category>
		<category><![CDATA[instapaper]]></category>
		<category><![CDATA[kindle]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[sync]]></category>

		<guid isPermaLink="false">http://www.evansims.com/?p=1380</guid>
		<description><![CDATA[I&#8217;ve been using my Kindle with my Instapaper feed for a few months now. It works really well, but I wanted an easier way to sync the two. The Instapaper blog recently pointed to an Automator script that makes the process much easier, but I thought I&#8217;d take it a bit further. My variation of [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using my Kindle with my Instapaper feed for a few months now. It works really well, but I wanted an easier way to sync the two. The Instapaper blog recently pointed to <a href="http://www.wired.com/gadgetlab/2009/12/how-to-make-your-kindle-into-an-automatic-instapaper/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+GearFactor+%28Blog+-+Gadget+Lab+%28Gear+Factor%29%29">an Automator script</a> that makes the process much easier, but I thought I&#8217;d take it a bit further.</p>
<p><span id="more-1380"></span></p>
<p>My variation of this Automator workflow will:</p>
<ul>
<li>Detect when a Kindle is mounted.</li>
<li>Confirms if you want to sync your device with Instapaper.</li>
<li>Deletes any old Instapaper files on the device.</li>
<li>Downloads a fresh Instapaper archive and places it on your Kindle.</li>
<li>Asks if you want to dismount the Kindle, and does so if chosen.</li>
</ul>
<p>Once you have this workflow in place all you really need to do is plug your Kindle in and wait for it to do it&#8217;s thing. Couldn&#8217;t be easier.</p>
<p>One issue to be aware of: while you have your Kindle mounted, any insertion of USB drives (or anything that will show up in /Volumes for that matter) will start the script. I&#8217;m looking for a workaround on that one, but it&#8217;s a relatively minor issue. Plug it in, sync it, unplug it. That&#8217;s the point of it, anyway.</p>
<p>You must also be signed into your Instapaper account through Safari for the Instapaper archive to be downloaded successfully. Automator uses your Safari session to grab the file.</p>
<p>Finally, the script should work with any number of Kindle devices, but only one may be plugged in at a time for the sync to work properly.</p>
<h3>Download</h3>
<p><strong><a href="/downloads/kindle_instapaper_sync_v1.zip">You can download my workflow</a></strong> and customize it for yourself. You&#8217;ll want to move the file to your ~/Library/Workflows/Applications/Folder Actions directory and work with it from there. Alternatively, you can <a href="#build-manually">build the workflow manually</a>.</p>
<h3>Install the Workflow</h3>
<ol>
<li>If you downloaded the pre-built workflow, ensure it&#8217;s been copied to the location I mentioned.</li>
<li>Open Finder and press Control+Shift+G. In the prompt, enter &#8220;/Volumes&#8221; and press Enter.</li>
<li>If you don&#8217;t have the path bar enabled in Finder, go to the View menu and select &#8220;Show Path Bar.&#8221;</li>
<li>Right click &#8220;Volumes&#8221; in the path bar and select &#8220;Folder Actions Setup&#8230;&#8221;</li>
<li>Attach the &#8220;Update Kindle with Instapaper.workflow&#8221;, ensure both checkmarks are checked.</li>
</ol>
<p>Plug in your Kindle, and watch the magic. <img src='http://evansims.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h3 id="build-manually">Build The Workflow Manually</h3>
<ol>
<li><strong>Open Automator and create a new Folder Action.</strong> Set the &#8220;receives files and folders added to&#8221; drop down to &#8220;Volumes&#8221; (select Other, then press Control + Shift + G and enter &#8220;/Volumes&#8221;, press Go and then OK.)<br />
&nbsp;</li>
<li><strong>Add a &#8220;Run AppleScript&#8221; action</strong> with the following code:
<pre><code>on run {input, parameters}

	tell application "Finder"
		if exists disk "Kindle" then
			return input
		else
			error -128
		end if
	end tell

	return input
end run</code></pre>
</li>
<li><strong>Add a &#8220;Ask for Confirmation&#8221; action.</strong> This will allow us to cancel our Instapaper update if we&#8217;re not ready for a fresh copy.<br />
&nbsp;</li>
<li><strong>Add another &#8220;Run AppleScript&#8221; action</strong> to check for any existing Instapaper files on the Kindle, and move them to the trash for us.
<pre><code>on run {input, parameters}

	tell application "Finder"
		set kindleFolder to "Kindle:documents:" as alias
		set instapaperFiles to every file in kindleFolder where
			name of it contains "Instapaper-ReadLater-"
		move every item of instapaperFiles to trash

		-- If you'd like to automatically empty your trash, uncomment:
		--empty the trash
	end tell

	return input
end run</code></pre>
<p>Lines 5 and 6 should be on one line.<br />
&nbsp;</li>
<li><strong>Add a &#8220;Get Specified URLs&#8221; action.</strong> Delete the default URL and add <strong>http://www.instapaper.com/mobi</strong>.<br />
&nbsp;</li>
<li><strong>Add a &#8220;Download URLs&#8221; action.</strong> Point the Where value to your Kindle/documents folder.</strong>.<br />
&nbsp;</li>
<li><strong>Add another &#8220;Ask for Confirmation&#8221; action.</strong> This time we&#8217;ll be asking whether we want to dismount our Kindle or not.<br />
&nbsp;</li>
<li><strong>Add one more &#8220;Run AppleScript&#8221; action</strong> to dismount our Kindle from the file system, allowing us to just unplug the device without any further steps.
<pre><code>on run {input, parameters}

	tell application "Finder"
		if exists disk "Kindle" then
			try
				eject "Kindle"
			end try
		end if
	end tell

	return input
end run</code></pre>
<p>&nbsp;</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://evansims.com/2009/12/a-perfect-instapaper-sync-for-kindle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
