What exactly is that within the <rtfd > tag?

I assume it’s rtfd, of course. But it doesn’t look like rtf and so I am guessing it must be encoded to be XML safe.

It looks a little like Base64 encoding, but I tried it in an online Base64 decoder with no luck.

What is it and how can it be decoded? I am interested in being able to feed it into a script, decode it, and extract links (either from rtf, or by using textutil to convert the rtf to html and extract from there).

Most links can of course be found in the links block. But not links dragged into the text pane of note that haven’t then been manually converted to a Web Link. Hence the interest in plumbing the mysteries of the rtfd.

Yes, and yes that is my assumption as overall a TBX file is indented to be well-formed XML. The move from RTF to RTFD was so as to allow the embedding of images in $Text, as users have requested.

The link anchor positions are stored in a <link> objects as character offsets in the plain text version of $Text stored in the <text> tag.

That’s definitely one for @eastgate.

This has been the case since (v6, May 2014) and is because the link is only defined in the rich text of the received data. I believe early experiments to adopt these as true Tinderbox links threw up some issues. I believe the intention is to allow this again in due course, though I’d hazard a guess that it won’t be in v8.x. The same is true for ‘smart URLs’ where the Apple RTF framework detects a value URL and makes into an RTF layer link.

Yes: it’s Base-64 encoded RTFD.

I believe early experiments to adopt these as true Tinderbox links threw up some issues. I believe the intention is to allow this again in due course, though I’d hazard a guess that it won’t be in v8.x.

It’s more likely than not that this will be part of Tinderbox 9.

3 Likes