Tinderbox Forum

How to include comments for annotated notes?

Still feeling my way around how Tinderbox functions, and I’m increasingly working with annotated text that we’re importing into a Tinderbox file.

Under this scenario, each annotations is converted into discrete TBX notes, and which contain fleshed out Attribute / Value relationships.

I’m wondering: is there a way to attach or include comments to TBX notes? I’m wondering how this would work both as I’m including notes to comments, while the Text window is already filled with text from annotation and if there’s a way to also carry over comments for annotated notes before we import them into our Tinderbox file.

Thank you for your help.

Consider representing the comments as other Tinderbox notes. There’s even a special command menu, Note ▸ Footnote, to make this easy.

1 Like

That’s great. Thank you for that helpful suggestion.

Is there a way to carry over these footnotes (as comments) for annotated notes before we import them into our Tinderbox file?

For instance, is there some syntax I can use to bracket that text?

More on Tinderbox’ Footnotes feature.

Yes. the general concept is to use the Explode method. As the default configuration is to explode each paragraph to a new note, you will want to use a custom limiter in the source that will be unique. For instance if you place ####—a string that won’t occur in your source notes or annotations, you can explode on that (marker) text via the Break at delimiter option. Indeed, using the latter you can choose to Delete Delimiter so that the added-in marker its not retained post-explode.

The latter method mean you can have one comment source file containing a source and one or more annotations appended after it, using a special explode marker (as above) between each segment to form a note in Tinderbox.

Indeed you could join each of those combined notes into a single composite composite text with a different explode delimiter. Then, post import, you’d expode the first level to vive a discrete note+annotations. Then you would further explode eacg of the latter into the main note and discrete annotations.

That leases a little work of deciding where in your document you wish to place the main notes, e.g. perhaps next to, or linked to, a note describing the source. Then similarly describe where the annotation(s) got and how/if they are linked. If that seems a chore, it shouldn’t be. If nothing else it will make you consider why you are so arranging the notes and whether your first choice of arrangement makes sense.

But in summary, yes!

†. If it does, just pick something else but making sure it doesn’t occur in the to-be-exloded text.

1 Like

Thank you for your input on this.

To give some context, we’re using the annotation approach that @mwa assisted @print714 with, involving annotations with MarginNote, rendering annotated notes and their attributes / values with OmniOutliner, and then importing them into Tinderbox. It’s quite a good process, and we’re trying refine it and add some features – such as ways to include comments to notes on the annotation end, and carrying over those comments to Tinderbox.

While I like the approaches you and @eastgate have provided, I’m wondering if it might make more sense to create out commented in Ziplinks. I’ve just reviewed some of the Ziplinks configurations, and it seems like one could include comments with the [[<SAMPLE TEXT>]] approach within MarginNote, and have it survive the OmniOutliner rendering process and import into Tinderbox (hopefully). Naturally, this requires experimentation.

Before getting to far ahead of ourself, I was wondering if it’s possible to create an agent query that would combine one of the values we use (e.g., Follow up, Follow up QTS, Review incidents) with something that identifies the the existence of Ziplinks in notes. I’m just trying to find a way to capture all comments (i.e., say, through the existence of Ziplinks), and organize them by select attribute / values we’d use for research review.

Thank you again for your help.

https://www.acrobatfaq.com/atbref9/index/ObjectsConcepts/Concepts/Links/TextLinks/TextlinkcreationviatheZi.html

Ziplinks is a method not a type - ie the link created with [[ … has no intrinsic memory of how it was created and is just a link

… unless you were to routinely add something to the text describing the link …
[[<My New Note|link text to My New Note::Created with ziplink>]]

which would result in a note with ‘Created with ziplink’ as its first line ( which could be search for $Text.paragraph[0] etc…)

That would be a bit clunky I expect for your needs…

As @Markoconnor has already correctly pointed out the term zip-link refers to the method of creating a link. Importing/pasting text with content like "In this text [[AA|this]] links to note ‘AA’ will not generate a link.

I think your error of assumption is to assume Tinderbox $Text is written in wiki-style mark-up. As my example above shows, it isn’t. This also explains why there is no feature to do as described previously.

If you think this feature is needed, then as is the general case, email your idea, with an explanation and the need, to Eastgate. Explaining the need helps explain value to the user base and judge whether the engineering cost gives acceptable return on investment (if only in terms of effort being used that might otherwise be expended on other features or maintenance). Why you? Because you have the problem so can best describe the need. :slight_smile:

Issues affecting the idea:

  • what happens to text containing what lo’s like relevant wiki-markup but isn’t, e.g. a code sample. We wouldn’t want some users’ import ruined just so other users are inconvenienced.
    • As the zip method allows creation of a blank target note, mis-detection of specimen zip-link-style mark-up could cause havoc.
  • what happens if the target note is not present? The input might misdescribe the target title/path or there might be duplicate targets, etc.

… and so on. Given the above, I think automatic processing of import, i.e. in all cases, is too likely to have false positives. But a feature to post-process selected note(s) $Text could work given something I noticed testing my example imported text in the opening paragraph above. I found I can invoke the desired link creation by inserting the $Text input cursor after the last ] and pressing the Return followed by the Backspace. The former causes the wiki mark-up to be detected/processed and the latter key removes the actual keystroke character entered into the $Text.

So, worst case, today you can easily manually post process the ‘zip’ links mark-up using the keystrokes described. Indeed, that might be good practice as it makes you review your data and check the correct target is linked.

Thank you, @Markoconnor & @mwra. I appreciate your input, and believe I understand what you’re suggesting.

The problem with making a feature request is that we don’t know what syntax will work for making a comment in MarginNote, surviving the OmniOutliner rendering process (though I suspect we can find something that will be fine), and then serve as a some kind of note-comment in Tinderbox.

As to what you’re suggesting, @mwa, can you first describe the Ziplinks syntax we ought to first use?

Under this scenario we’d have the text window include the captured, annotated text from the MarginNote annotation & OmniOutliner rendering, and then the comments contained in the Ziplinks syntax – followed by manually inserting $Text afterward the Ziplinks syntax in Tinderbox. Have I got that right?

Again, I thought that marrying comments in Ziplinks and using a query agent (e.g., using a “Follow up” value) would provide a possible solution to what we’re seeking.

Thank you very much.

The syntax for the zip method is described here. There are lots of options, so you need to read that and decide which options you want for your process and then describe them here. Otherwise it is a lot of time and guesswork for others to try and figure out what at the moment is only clear in your mind.

To what will these new text links point? Can you give an example.

If still stuck describing the process, make a small TBX with an example of the sort of content you are importing to Tinderbox and also including the same content properly processed into its correct location/configuration in the TBX (links created, info taken from $Text and placed in attributes , etc., Then, the most important part, describe that process so someone with the file can start with the same sample input and get the same result. Don’t worry if you can’t describe how everything in the input gets to its right place don’t worry. The point is giving the reader an understanding of how many discrete tasks must be applied to the note with the imported source info (you simply can’t guess with a workflow of your complexity). Then post the TBX in this thread.

If that seems like a homework assignment, it definitely is not and is necessary to understanding your process. If we can see what In fact it is exactly the sort of process experienced users apply in their own work when facing such an implementation problem for which the answer is not obvious. Experience shows that either/both the creation of start and end examples or/and documenting the process sheds light on the likely solution. Or, as here, it provides the minimum necessary information for others to understand your problem. After all if I can’t document a process, I probably don’t understand the process—I lesson I learned in the early years of writing aTbRef and still re-learn. :slight_smile:

By looking at the start/end of the process in the test TBX doc we can ascertain meaningfully if zip-created links are feasible and how, if at all, the data leaving MarginNote needs to be altered so as to arrive correctly into Tinderbox.

It might in any case be helpful to have a broader overview of your project.