Tinderbox Forum

Is there a way to convert or arrange an array of linked notes to an outline of these notes?

I need to convert an array of linked notes to an outline of these notes. Pulling the notes to a container is not handy and visual. And it is important to keep the order of linked notes in the outline.

Where do you want the resultant outline to go? I’m assuming into the text of a note given you don’t want to use a container (…because you use map view?).

When you say ‘array of inked notes’ do you mean linked only to each other? I ask as how will you query the document to locate (only) these notes.

Note you can’t work via action code with a notes that are simply selected on screen or copied to the clipboard. You will need some form of distinguishing data to allow an action code query to find the notes of interest.

If you pass the notes as a list into text, note that action code can’t create Tinderbox link the source notes, not can it (rich text) style the items as a RTF list.

So, to help give you an appropriate answer it would help to know a bit more about your scenario. If a bit lost an alternative would be to give a more fulsome description of the end state you desire (so we don’t have to rely on everyone’s imagination working the same way!)

Mark, thank you for your answer. The idea is very easy. On a map view I want to connect notes with links in a definite order, one after another without branching. Then make an outline of these notes (not their Text) somewhere keeping the order of links. And then work with notes and create a resulting document for final editing.

Actually, it’s not as easy as in your mind’s eye! You still haven’t explained what you mean ‘somewhere’. Do you mean as the text of a note? If not there, where then?

There is no single action code method to select a ‘line’ of notes based simply of the single visual strand of links connecting them. The fact there is only a single set of links essentially only a visual cue. So we don’t know how to ‘find’ these notes other than by eye, as the latter doesn’t give us anything to act on in terms of making the outline…

If you’re having difficulty describing the end point make two small files - a before and after and upload them here so we can see what’s in your mind’s eye.

I’d also suggest reading up the note on outline vs map interfaces and how the map z-order, i.e. front-to-back layers (as seen when overlapped) reflects the outline order you see in the outline.

For instance, if you set the z order of your linked notes so they are in outline order (first note in the chain being lowest in outline order). Or, switch to outline view and do it there (it won’t change the their x/y position on the map). Set something unique (a badge, colour, etc.) to just those notes so we can query for them. We can then get a list of those notes and sort it on outline order ($OutlineOrder). Then, when you’ve told us where you want the list of note names to go we can figure out this step.

I’ve read the references and uderstand that it is not an easy task. I’ll try to explain what my need is. I like to arrange notes on a map where I can quickly see the structure and connection between information in notes. Then I quickly connect the related notes with links in certain order without moving them. Then perform some action and have the chain of all the linked notes in a container in the order they are linked.

Well unfortunately, I don’t believe that can be done by an action. For a start actions, by design don’t delete, copy or make new notes. I understand that has been a pragmatic design compromise to avoid mis-coded processes wreaking havoc on documents.

I’d suggest investigating other ways to queue your notes in map view.

Thank you, Mark! I believe you are right. This is a very loose process, I’ll try to optimize my work in a different way.

Thanks for the confirmation.

I wish there was a way to at least add notes and adornments automatically – but I can see how a stray bit of code could easily lead to an infinite loop or something equally as catastrophic.

There’s a bit of an odd way to cause automatic note creation. Prototypes can be containers and have children and other descendants. These children and descendants are not themselves prototype. So if I have protoNote which has these two children, and I assign protoNote to be blueberry’s prototype, I get this automatically:


An agent or rule could then move the children somewhere else.

Fragile. Breakable. Yet workable.

Ingenious stuff. I’ll think if I can shoehorn it into a couple of ideas I have. Thanks for the tip!

More on the feature @PaulWalters describes is here. Note the limits on objects bequeathed (500 notes), support for bequeathing adornments and the extra setup planning if any of the bequeather items are them selves based on a prototype (in short: don’t bequeath a note that itself is a prototype).

It’s worth clarifying that the bequeathal of children/descendants happens once when the source prototype is first assigned to a note. Removing the prototype does not remove any prototype-bequeathed items.

Thanks for the pointer. I’ll play around in a test file before I let it loose on any real stuff.