Brion vibber wrote:
> Individual paragraphs, table cells, etc would be an even nicer
> fine-grained level to do inline editing on, but this requires having a
> reliable way to associate parts of rendered output with the parts of
> source code which created them.
I'm aware of these difficulties. There are a number of ways I can see this
being tackled. Firstly, only pure wikitext can be edited inline. That is, if
you try to edit some text which is the result of 2 #switch's inside 6 nested
templates being transcluded through 2 articles, then there's just no option
to edit inline. Either that, or attempting to edit that part inline sends
you to an appropriate edit page - either for the article, the template, the
nested template, etc - more difficult.
But focussing on the easy stuff: inline editing on a page with nothing but
nice, pure, transclusion-less wikitext, I don't see this as being so hard.
Obviously the renderer renders the code for inline editing into the output,
so there wouldn't be a correspondence issue.
For instance: for every paragraph, or the contents of every table cell, the
renderer can output some funky code that allows inline editing on that part.
This funky code is ultimately a function with inputs for two numbers that
define a range of characters in the wikitext that will be replaced by the
result of the inline editing. The renderer obviously renders these numbers
into the output as constants when it parses the wikitext.