Hi, Eric Abrahamsen <e...@ericabrahamsen.net> writes:
> We're just talking about annotations-plus-metadata here, right? Not > actual in-text TODOs? I don't know. > From what I can tell, rasmus seems to be proposing an in-text TODO, I mainly extrapolated from your example. Further, I extrapolated from the notion of org-inlinetasks.el. Since we have one we should try to minimize the distance whilst still keeping syntax as simple as possible, e.g. [comment:] or [TODO-TAG:] (I don't know what the "@" operator meant in your previous example). > I've definitely wanted some sort of a track changes equivalent in Org, > but we'd want to be careful about this. Isn't this the job of VC? I'm not sure how we can concisely represent all the needed metadata? Something like [comment: txt :annotation annot :author a :date d :other-properties p] is not "accessible" for non-Emacs users of the Org format. > 1. Annotations attached to arbitrary text in the buffer. The buffer text > should be visible, the annotation data invisible (basically the way > links work right now). This is a fortification/overlay issue. And I disagree strongly on having invisible parts. > 2. Plain annotation: just a chunk of free-form paragraph text that is > attached to the buffer text. What do you concretely have in mind here? Can't this be done with an inlinetask at the beginning of the file? Or a noexport heading? > 3. Replacement text: an alternate version of the buffer text; this could > be the basis of track changes stuff. Is this not the job of VC? > 4. Timestamps This seems like the job of e.g. vc-annotate.el, no? > 7. "Author" metadata would probably be unnecessary with full access to > the export channels, but it might still be desirable. What John was talking about was for collaboration. When you export John's notes on your machine how can it know it's from John if not set explicitly? In any case, I think it could be too verbose. Sidenote: In collaborated papers I simply use prefix "R:" and "K:" in inlinetasks. > That's all I can think of, just trying to get the ball rolling. I don't > have any opinions about actual syntax, though something with curly > braces might be nice. Nothing with curly braces is nice :) I think I have something much less ambitious in mind, as I'm perfectly happy with only spanning a subset of org-inlinetasks.el. Disregarding date and generalizing replacement text to "annotation", which could be set to "replace" with a keyword, you could perhaps have something like one of these: [comment/Property:annotation; text] [comment/TODO-TAG@author: annotation; text] [comment/Property: annotation] [TODO-TAG/Property@Author: annotation; text] [comment/Property: annotation] - Of course the / and @ operators are optional. - I'm not sure what "Property" would be. - Author could also be @work as in your previous example. - Perhaps calculating TODO-TAGS on a document basis is a can of worms. - I would be happier with having text before annotation, but that makes it weird when you have no text attached (for inline tasks not associated to a piece of text). —Rasmus -- A clever person solves a problem. A wise person avoids it