Tinderbox Forum

Note taking on an iPad and opml export

I really enjoyed the Tinderbox meetup yesterday. Thanks Mark Bernstein for these meetups! I am very interested in Michael Becker’s proposition about Zotero. I mean: taking reading notes in Zotero in order to paste it then into a Tinderbox file with its attributes. This is the reason why I’m writing here today. I’m working on a new writing project which implies a lot of reading notes. I’d like to avoid taking manual reading notes anymore since it is really too long to transcript these ones on a computer. So I’ve been taking notes for a while on an iPad and as I need to add tags to my reading notes, I had to search for an app which exports notes in opml format. The proposal Michael Becker made here to use Drafts with a specific script is functional, but I don’t know how to use it seeing as it seems that it is not possible to export every note with its proper tags, but only a sum of notes and tags. Nor Apple Notes nor IThoughtsX do not export notes with its tags and Zotero isn’t yet practicable on an iPad. Regarding this, OmniOutliner does it very very well as you can see below.

But, maybe someone here knows another app or another workflow? Thanks for your suggestions.


Hey there. Gald you enjoyed it. One strategy would be to do your reading, tagging and situations in Zotero or, my preferred reading app as of late “Highlights” (https://highlightsapp.net/). A combination of the two, Highlights and Devonthink works well. Rather than exporting OPML, with Highlights you can export to markdown. You can then export the markdown, import it into Tinderbox, run an explode and apply a stamp to parse the markdown into attributes (@mwra helped me with the stamp yesterday), see Extract text from the following standard format - #8 by satikusala.

Maybe I need to do a video on this flow.

OmniOutliner and OPML is possible but you need to understand OmniOutliner doesn’t export standard OPML—insofar as there is a standard. The problem is the spec is very bare-bones and virtually every OPML capable app uses their own customised version of OPML. so, it’s often not a simple a ‘just’ importing an OPML file. This issue is less that the file doesn’t import, but you don’t get what you expected. Some fiddling under the hood is required.

An OmniOutliner oddity re OPML is that OmniOutliner doesn’t have a notion of a discrete title. What it shows as the title of a note is essentially the first paragraph of its title-and-text in one. So for export you need to do some customisation of your OmniOutliner file so you have a column for what will become $Name and a column for $Text.

I helped a user (off forum) with a long and bloodstained MarginNote → OmniOutliner → Tinderbox process using OPML. Is is do-able but no using standard output. Note the work needed is in configuring OmniOutliner to export OPML in a useful manner, rather than changes being needed in Tinderbox—unless you want to go through the pain of trying to extract everything form a single munged-together $Text.

I’ve no spare time now until late September for such a project, but if no-one steps forward with a worked solution, do please raise the subject again then.

My advice, from experience, is pretty much anything is better than OPML because it is such a loosely defined/interpreted format. It’s a bit like getting a suggestion to ‘just’ use CSV without an explanation that you still need to consider escaping quotes, line breaks in values, etc., etc., for things to ‘just’ work.

I don’t mean to sound negative, it’s just the way things are with many exchange formats!

Side thought: OmniOutliner and Tinderbox both support AppleScript. That might be a much less painful way to move the information between the two apps.

†. See OPML 2.0.

Another approach is to make use of Devonthink To Go on the iPad, synchronise that with Devonthink on the Mac, then “watch” Devonthink from Tinderbox. The synchronisation between the two Devonthinks is excellent and flexible. In my own use, I do not watch Devonthink from Tinderbox, but tend to do exports from time to time.

For deliberate note-taking on something I’m reading away from my Mac, I use Devonthink To Go to make my notes directly. You can of course keep a PDF you are reading in Devonthink too. Devonthink on the iPad has gotten more and more full-featured.

For on the spur of the moment notes I still start in Drafts, later when processing new notes in Drafts I export the relevant ones to Devonthink (or Tinderbox). Since Drafts syncs between Mac and iOS, I can do this export on the go or on my Mac.

I wasn’t at the meetup so it may be that this suggestion does not meet some requirement posed at the meetup.

Thanks for your answers. I’ll look at what I can do and tell you.

Hi Dominique, could you advise -

  1. How many notes you expect to take?

  2. How long are these notes (word count) on average?

  3. Do you tend to make these notes on the fly, in different locations, from different capture devices in the course of a day?

  4. Regarding the quoted portion above - do you think exporting a csv of your selected or all Drafts notes, then cleaning it up in a csv editor, then flying it into Tinderbox complete with $Tags populated as a column in the csv, might work? Or using the Tagger feature to extract selected bits of $Text and store them as Attributes?

1 Like

Hi Art, thanks for your answer.

  1. About 5 notes per page.

For instance :

Souci de Platon : former l’esprit à l’écart de la sophistique, laquelle est sans éthique (p. 35). Tags: Sophistique; Éthique.

Le thème de la lutte est présent à la fois dans les exercices spirituels et dans la dialectique, méthode d’accès à la vérité (p. 35-36). Tags: Lutte; Exercice spirituel; Dialectique; Vérité.

Pourquoi le philosophe doit-il lutter ? (p. 36) Tags: Philosophe; Lutte.

  1. About 500 words for an article, much more for a book.

  2. I take notes only on my iPad.

  3. I’d like to simplify my process as much as possible: with Omnioutliner, the process is reduced to four operations :
    a. Taking notes, adding tags.
    b. Sync my notes on my computer.
    c. Export them into Tinderbox.
    d. Make a stamp for the whole.

I don’t understand the way it could work with Drafts. In this screenshot below, there are three Tags for all the notes below. But, I need to have multiple tags per note.

dear Dominique,
My 2 cents: even I’m aware that Taskpaper doesn’t handle OPML, a decent IOS client exists (Taskmator), and TaskPaper has a very handy and fast tag search which is very useful to explore reading notes.
hope this helps,

Thank you for that suggestion. Merci pour ces 2 cents !

dear Dominique,
you’re welcome! As a deeper dive into TaskPaper, a (txt) file in which I store some reading notes. First level project (see left pane) displays the papers (EndNote format), the right pane displaying my notes (here, two, one per parag.) along with specific tags. Also note that a click on any tag on left bottom will display all the notes with those tag (nested tags are available, too). This is a pretty good lightweight Qualitative Data Analysis software. Since any file is in raw txt it becomes easy to be exploded in TB (not tried, though).
hope this helps,

Thank you for this information.

I’m trying to follow the atomic level of Notes in the Project. Will a specific “note” be the content of a Note? Or will there be several of these “notes” that add up to one larger “Note”?

From an initial perspective, it seems that the key atomic item in this use is the individual “note” that you are making. Then that individual “note” needs to be tied to:

  1. Source Material - Title ($Source)
  2. Author - ($Author)
  3. Page # or Paragraph # ($Location)
  4. Specific user-generated tags ($Tags)

All the above are probably $Attribute sets (or lists).

According to me there are 3 quick ways of going about this:

  1. Use Drafts, then export to a spreadsheet or CSV editor
  2. Directly input into a spreadsheet or CSV editor
  3. Input into a database app - like Filemaker-2-Go etc
  4. Input into an app that will recognize the OPML import and also understand what and distinguish between $Tags, $Author, etc., and pour into Tinderbox from there.

Personally, I am a BIG fan of assembling all my raw data from 2-3 apps on my iOS devices (including Drafts), all into a big spreadsheet, then cleaning the data there prior to importing to Tbx.

This is a particularly useful technique for catching errors, removing duplication, and also connecting together ideas that did not appear connected at first reading.

Here is my flow, which I am adjusting a bit for what I think your use might be:

  1. Enter individual notes, as they arise, in Drafts. You can use delimiters (like semicolons etc) to add the author info, page info, and so on after the text portion (so each note will contain all the other variables, except separated using delimiters).
  2. Select ALL drafts in Drafts, and export to CSV
  3. Import into Excel or CSV editor, clean up the data. If you’ve used delimiters, you can use Text-to-Columns to break up the text and auto-insert $Source/$Author/$Location into separate columns
  4. Drafts also atuo-captures things like date, location, etc if you need it fyi
  5. When the data is ready as you like it, simply export the csv or copy-paste into Tinderbox.
  6. You can skip the Text-to-Columns in Step 3 and import using the Tagger feature instead, which will do something similar, except you would need to use custom delimiters/separators so the Tagger could act appropriately on each variable

Another advantage of this system is that you will always have a reference backup spreadsheet of all your notes along with the specific metadata of each note.

Does this help at all?

PS: I am a regular TaskPaper user - great app. I have tried though to transfer data from TP3 ro Tbx, but it doesn’t always work as expected. There are a few reasons for this, but basically TP3 is very much a dedicated outliner with tagging added to make alternate grouping techniques and search processes easier. I haven’t super-thoroughly checked it, because the Drafts>Excel>CSV>Tbx route works perfectly for me.

It takes a few hours to line up and clean up a few hundred notes, but I find that time well worth it because it also allows me to revise my notes, fix typos, and so on.


Tinderbox has some special Taskpaper support built-in. Any remaining issues ought to be reported; we can likely address them.

1 Like

I’m not quite sure what obstacle you mean to indicate in this remark. However, if you are saying that Drafts does not support different tags for each individual draft (note), then that is false. Each draft can have multiple tags and the set of these tags might be unique to it amongst all the drafts stored within Drafts (the app). Just try to vary the tags among notes.

I’ve no doubt it works fine; for my purposes though, i require a method to co-import multiple Attributes per note, which I wasn’t able to get working as smoothly with TP3 as I can with CSVs.

Anyway, perhaps we could spend a few minutes next Meetup to go over a few TP3 import scenarios?

Thank you for your answers, the work they require, thanks for having taken time for answering me. I didn’t think it was possible to use Taskpaper in that way. I’m waiting for Zotero on iPad. So, as I don’t want to multiply the intermediate tasks between reading a pdf and transfer my notes on my computer, I’ll stick to use Omnioutliner on my iPad and I’ll see then how I could both take notes, directly into a pdf, and export notes and tags maybe by way of a script. I was very impressed by the way one can export Zotero’s notes into Tinderbox. I’m going to follow this way.

Cool. BTW, have you seen https://www.marginnote.com/ ?

Beware aware though, MarginNote has very poor export facilities; don’t expect to go easily from MarginNote → Tinderbox. I say this having spent ages helping a user try to just that. It seems MarginNote’s designers either don’t think users will export data or just don’t care about those who try, sadly. This is a common failing in many annotation apps. The devs fail to think outside their app. But what is the point of easily making lots of notes if you can’t do much with them?