Tinderbox Forum

Making your custom prototypes available to all documents

This is a moderately advanced topic. Those interested are advised to “follow along at home” and construct these suggestions on your own.

If you have a prototype that you want to use in more than one document, the Shared Prototypes feature can help you. Here’s a step by step walk through.

Option 1: modify an existing built-in prototype

  1. Create a new Tinderbox document and save it to the folder /User/Library/Application Support/Tinderbox/prototypes as a document named Prototypes.tbx. The folder must be named “prototypes” in lower case. The Tinderbox file must be named “Prototypes.tbx” with initial capital.
  2. Add the built-in prototype you want to modify with File > Built-In Prototypes >.
  3. Move the prototype to the root of the document, rename it, and delete the note named “Prototypes”, like this:

  1. Modify your new prototype as you wish. Do not use custom attributes.
  2. In the “Prototype” tab of the “Properties Inspector” make sure “Prototype” is checked.

Screenshot of Safari (12-10-20, 5-42-25 AM)

  1. Save the document and quit Tinderbox.

The next time you use Tinderbox your custom prototype will appear in the File > Built-In Prototypes > menu, at the bottom, separated in the menu from the built-in prototypes with a horizontal divider.

Option 2: make your own prototypes

For this case skip steps #2 and #3 from Option 1 above. Just create a note at the root of “Prototypes.tbx”, configure the note however you wish.

You may share your “Prototypes.tbx” file with others. They can install it to the folder /User/Library/Application Support/Tinderbox/prototypes on their own machine.

Some personal use cases

Here is my current list of custom prototypes. The “MultiMarkDown” prototype is used frequently, and contains Fletcher Penney’s MultiMarkDown parser that I installed with Homebrew – a nerdish one-time effort.

With my custom “MultiMarkDown” prototype I take advantage of Tinderbox’s prototype inheritance. After I install my custom “MultiMarkdown” prototype in a document, I use it as the prototype for other prototypes. For example, for notes dragged into Tinderbox from DEVONthink, I configure the built-in “Imported from DEVONthink” prototype to have my “MultiMarkDown” prototype as it’s prototype.

Once I’ve done that, then any documents I watch or drag in from DEVONthink that use MultiMarkDown syntax will be previewed correctly in Tinderbox since the “Imported from DEVONthink” prototype has inherited the value of $HTMLPreviewCommand from my own custom MultiMarkDown protoype.

Custom prototypes and prototype inheritance can be “layered” to build up a toolkit of custom features that you want to add to your documents.



Speculation: I haven’t tested this, but I believe you could install R Markdown and use it in a similar way that I use MultiMarkDown.

3 Likes

Thanks for the reference to R Markdown. Making data-driven/linked documents is on my do-study list. Being able to all some/writing in Tinderbox would be good. This is a welcome nudge to push this up the to-do list.

1 Like

I’m curious if someone could get the R Markdown parser working with Tinderbox. I don’t know all the dependencies but it would a nice integration if it works.

1 Like

Integration with R intrigues me, too. Hmmmm.

2 Likes

Which leads us to R Bookdown based upon it.

Any chance you’d be able to share what the DevonThink Markdown template looks like? this is something I’ve been trying to figure out how to do right for a while.

Love this thread, BTW.

There is no DEVONthink template (unless I don’t understand the question).

If you drag a document from DEVONthink to Tinderbox’s outline or map view, or you use File > Watch > Group from DEVONthink, then Tinderbox automatically adds the “Imported From DEVONthink” prototype to the document and assigns it to every note that corresponds to a document in DEVONthink. Looks like this:

If you are asking about my personal “MultiMarkdown” prototype, this is what it looks like:

The “MultiMarkdown” template points to Penney’s MultiMarkdown parser installed with Homebrew – follow the links about this that I included in the original post.

See more on using Markdown preview. See more on $HTMLPreviewCommand, and more on alternative mark-up (sic) previews.

1 Like