A long held dream

… and I expect it to remain so, but who knows?

tl;dr Unrestricted annotation editing in Tiddlywiki

Picture the scene…


<dream>

You read something on the web in a browser. While reading, you think of something, a thought, an idea, something semi-related. “I should make a note of that.

In the case of TiddlyWiki, you have a number of options, none of which needs to be documented or discussed here beyond this: some several minutes later, you have captured what you need, in a tiddler incorporating the original, your additional thought/idea and have it neatly filed away.

In my dream however, I’m already in my TiddlyWiki when I think of something semi-related. I click somewhere near the spot where the idea occurred to me (i.e. the anchor point), a box pops up, I enter my idea and close the box. That took several seconds, not minutes. The tiddler in question displays an icon/button at the anchor point, linking to the inevitable sub-tiddler that hosts the idea/thought.

</dream>


Clearly, for this to work requires a dense underlying construct far beyond what we know of as “a tiddler” today. Perhaps, a little like CodeMirror works, a click-through layer lives atop each tiddler’s body, a matrix of potential anchor points meshed with a computationally aware, predictable mapping to potential tiddlers used as annotations for my ideas. Perhaps, again like CodeMirror, each word is a potential anchorable point ™.

Perhaps when I’m retired from my day job I’ll try to write something like this. In the meantime, I’ll leave it here, possibly gathering dust, hopefully germinating into something a little more tactile than a dream
:nerd_face:

1 Like

Do you mean something like a static danmaku comment ? Maybe the Dynannotate plugin could be used as a starting point?

1 Like

Very loosely speaking, yes, kind of, though obviously, anchored to the timeline is meaningless here.

You’d think so, and thanks for pointing it out. But I’ve used it and removed it. In terms of marking up its output, searching thousands of tiddlers, it’s simply too slow. For example, @Mark_S’s regexps plugin is much faster – no lag at all even while typing into a tiddler with a live search active.

Beside, this is more about, after the fact annotation, not searching, matching and marking up existing content.

Unless there’s some usage pattern of dynannotate I’m unaware of?

2 Likes

@jeremyruston’s TWPub has some of these pieces in a really amazing prototype focused on epub books: https://twpub-tools.org/

I recently came across Roam Highlighter being used with LogSeq – whose template could certainly be made to be used with TW, too.

2 Likes

Not a dream as such for me, but more of a “how would I do this” subconscious process in the back of my sponge, that regularly pops up and lets me know “still working on it”.

But mine involves something that is much more quick/light/agile for entering that thought (haven’t figured that one out yet). And where I enter it, there is an automated process somewhere that takes the note, and adorns it with whatever necessary so that the note fits into my TiddlyWiki with all of the intertwingularities possible.

(For me, TiddlyWiki does not lend itself well to the taking down of a distraction-free quick note.)

So that at the end of the day, when I get to my TiddlyWiki, there it is, just waiting for me to tidy up that automagically adorned tiddler with final touches.

Something like that.

:laughing: fantastic!

1 Like

Yeah, I imagine a whole bunch of hamsters back there spinning away.

As I often say: to look at me, you may think the hamster is dead, yet the wheels are always spinning …

TLDR; I use the following WebDav single-file wiki to track my ideas and more important a lot of links to web resources that will help me to implement something.


I think my "<you name it> Manager" is part way to what you think about.

The dashboard looks as follows. It contains an overview about ideas or topics I’m interested in.

Klicking the links will open the “details” view. …

nginx-webdav looks like this:

1: There is some general description in the tiddler text
2: It contains "Links, ToDo’s … " and so on. … These are related tiddlers are stored seperately

It’s easy to add ToDo’s

The ToDo editor looks like this:

1: ToDo title = Tiddler title
2: related script. … So there is a connection between the ToDo and the “script” tiddler
3: Some additional info. Could be multi-line … Is 1 line atm
4: Save and Cancel buttons

Saved todo looks as follows:

1: Standard interface for ToDo’s
2: Next …

It would be simple to add a Notes*tab which can also have a connection to the “main” topic.

→ At the moment Notes are collected in the tiddler body ←

The ToDo’s Overview looks as follows:

1: The overview shows all open ToDo’s
2: New ToDo’s can be created from the overview and “linked” to a main topic.
3: Same ToDo “input mask” … but with dropdown to select the related topic. … It should be possible to crate a “Notes input mask” from a “global” overview and link it to a main topic

What do you think?

It would be possible to add a Notes button to the “link - line”, which imo would make more sense.

Notes to the main topic are imo good to go into the tiddler text of the main topic. eg:

I think you may be having such dreams, I have similar ones, because the pieces are available but we have not yet put in place. Our subconscious has seen the path, our waking mind has not , Yet.

Please look at this thread The quickest and easiest ever todolist in tiddlywiki ? Requires 5.2.0 - #2 by TW_Tones and look at my comments not by those wandering off to other todo lists. Try quick list.

The thing is quick list simply overlays a tiddler via the view template and in a sense redefines the content such that you do not bother seeing a wikified view just that coming from quicklist, use the handy fold button.
Each line is treated as a todo. is given a checkbox and a + button to transform into a tiddler if an only if you want to.

Quicklist is but one of an unlimited number possible views of the same content and can be switched in and out.

Perhaps a start to reach you dreams would be to generate a view of your tiddler content which is programaticaly “littered” with + buttons or metaphorical ones that on clicking creates a field or tiddler you can use to annotate?

Even discussing this the possibilities are expanding in my mind.

Before your dreams come true, consider using the Freelinks: Freelinking of tiddler titles. Plugin and others to approach what you want.

Is tiddlyclip still working on modern browsers and tw5.2.0?

My key point is we are close.

Consider;

  • If each line or sentence could be clicked to create an annotation or tiddler.
  • Use natural language knowledge to identify keywords, action statements for todo’s, or actions or imperatives. Then permit click to annotate any one of these.

Sorry for the delay… thanks for that great expose, @pmario - but…

Perhaps I was less than clear. That’s pretty much exactly what I don’t want. I have many ways of capturing ideas and storing them for later. Those solutions all suffer from the provisions of this scenario:

I want to capture (and thereby annotate) at the exact point in the tiddler where the idea occurred. I don’t want to “go somewhere else” and create something, I want my focus to remain where I am and not move an inch (2.5 cm).

Like I said… a dream.

:dart: :rocket:

Thanks for getting it, Tony :slight_smile:

That’s where I am in my head – paragraphs, though, not sentences. Annotations are anchored to their source paragraphs.

Q: What happens if the source tiddler is edited and the paragraphs get moved around or deleted?

A: The hosted annotations become orphans. A collection of orphans is anchored to the top of the tiddler body, else, force at least one initial paragraph and anchor them there?

So right now I’m thinking of <p> identities like tiddler-title + paragraph-number + ann_index (because para may have more then one annotation). I (we) could overload the class attribute or use data-ann-id attribute.

But this is a ramble… none of it is thought through (it being a dream and all :laughing: )

In my referenced quicklist yes they are paragraphs using splitregexp[\n] if you creat a fieldname from a paragraph 5.2.0 only when checked, then the only orphans occur if a paragraph changes, it is a fieldname. You could also remove orphans automagicaly. Reordering paragraphs carry there checkbox state with them.

Any subtiddlers created can be tagged with the quicklist tiddler and you can then manage subtiddlers independantly what ever happens in the original tiddler.

Ask if you want me to illistrate.