Using Kindle/ePub books with DEVONthink


I like to use DEVONthink to organise all my PDFs, book & journal notes etc, and am wondering about taking the plunge into eBooks, through services such as Amazon’s Kindle, iBooks etc.

I am wondering about the use of formats such as .ePub and .asw in DEVONthink. Right now I can see that they don’t work natively in DEVONthink or Quick Look. Are there any plans to introduce this?

Alternatively what are the options for converting such formats to PDF to use in DEVONthink? I am aware there may be some encyption issues here.

I am curious about other people’s experience of eBooks. Is having one Application (hopefully DEVONthink) to search through one’s book collection, with highlights preserved and viewable either in the book as a whole or separately still a distant prospect?



I have been using this free app to convert my kindle clippings into an HTML file that I then import into dtpo.

This isn’t such a great solution, though, so if anyone has better ideas I hope to hear them!

On more thought, I made this script. Run it on the MyClippings.txt file from Kindle. It separates each Clipping, checks to see if it has already been added to the database, gives it a URL to look up the book and annotation on Google Books (that doesn’t work very well), tags it as a “Kindle Clipping”, and places it in a Group named for the book.

tell application id "com.devon-technologies.thinkpro2"
	set theSelection to the selection
	if theSelection is {} then error "Please select some contents."
	set SplitPointRegEx to "=========="
	set OldDelimiters to AppleScript's text item delimiters
	repeat with CurrentItem in theSelection
		set AppleScript's text item delimiters to SplitPointRegEx
		set theSource to the plain text of CurrentItem
		set RepeatCount to 0 as integer
		set TotalCount to (count each text item of theSource) as integer
		repeat until RepeatCount is equal to TotalCount - 1
			set RepeatCount to RepeatCount + 1
			set CurrentText to (text item RepeatCount of theSource)
			if length of CurrentText is greater than 0 then
				if paragraph 3 of CurrentText does not contain "Bookmark" then
					set ShortText to (texts from paragraph 5 to end of CurrentText)
					--This prepares the URL search string
					set NewOldDelimiters to AppleScript's text item delimiters
					set AppleScript's text item delimiters to "+intitle:"
					set item_list to every word of paragraph 2 of CurrentText
					set TitleSearchText to the item_list as string
					set AppleScript's text item delimiters to "+"
					set item_list to every word of ShortText
					set ContentSearchText to the item_list as string
					set AppleScript's text item delimiters to NewOldDelimiters
					set SearchPath to "" & ContentSearchText & "+" & TitleSearchText
					set AlreadyPosted to (every content in every database whose URL is SearchPath)
					if (count of AlreadyPosted) is 0 then
						set TargetGroup to create location (paragraph 2 of CurrentText) in current database
						create record with {name:ShortText, type:rtf, content:ShortText & return & return & paragraph 2 of CurrentText, URL:SearchPath, tags:"Kindle Clippings"} in TargetGroup
					end if
				end if
			end if
		end repeat
	end repeat
	set AppleScript's text item delimiters to OldDelimiters
end tell

Because I don’t use a Kindle but instead Kindle for Mac, iPad and iPhone, I am still wondering how I get the highlights and notes into DTP. There doesn’t appear to be a MyClippings.txt file to run the script on