Re: [editing] Leading with ContentEditable=Minimal

On Jun 30, 2014, at 1:43 PM, Johannes Wilm <johannes@fiduswriter.org> wrote:
> On Mon, Jun 30, 2014 at 10:01 PM, Ryosuke Niwa <rniwa@apple.com> wrote:
> <snip> 
> 
> On Jun 26, 2014, at 3:24 PM, Olivier F <teleclimber@gmail.com> wrote:
> <snip> 
>> I agree these all seem the same. Here are a few other use cases I can think of:
>> 
>> * Create a web-based structured content editor, where the allowable DOM elements and/or classes in the content are pre-defined.
> 
> Could you elaborate on the use case of making such an editor?  e.g. allowing only certain types of styling in comments.
> 
> We do that in Fidus Writer.  Part of the point is to keep the structure of the document semantically defined. Users can't change font sizes of individual words, etc. . This is because one of the main tasks of scientific journal editors who currently receive drafts in Word or Libreoffice format have to undo all the manual styling the writers have added in order to get everything to look in a similar way. we simply take those styling possibilities away so that we can define the entire design through one stylesheet as well as easily convert to other formats, such as LaTex or an Epub, and be sure that we cover all formatting tags that were used.

Interesting. That's a very good use case indeed.

> 
>> * A complete book/whatever editor, which can contain areas of non-editable content, nested editable content, etc... See fiduswriter.org, and what CKEditor are doing with widgets.
> 
> Could you elaborate on how non-editable content appears/used inside an editable content?
> 
> We also do that - for example in the case of formulas. Generally the text is editable near-Wysiwyg style. But when it comes to formulas, we let the user enter them in Latex format and display the result using mathjax. Each formula object within the text is a noneditable island. If the user clicks on it with the mouse, he can change the formula.
> 
> Another example are figures: We want them to always be block elements and to have exactly one caption without styling. They are therefore non-editable islands and if the user clicks on them he can change the figure's display and the caption text.

Ditto.

> 
>> * Browser-based code editor. Currently CodeMirror and others go through amazing lengths to provide something that looks and behaves like a desktop code editor.
>> * Browser based "word art" generator where end-user types some text and it renders in 3D along a curve and in rainbow colors on a <canvas>.
> 
> These are great use cases.
> 
> I'd throw in two more:
> Web-based DTP application: The app can creates a document that contains pagination, columns, and a complex illustrations.  It needs to let users edit any text that appears in the document.  Each editable text needs to be accessible, and styles applied to text need to be backed by the application's internal model of the document.
> Yes, but wouldn't this require some fragmentation logic? To create something like what Quark Xpress was in the 1990s, I think you'd need CSS Regions or equivalent. It seems as if that would be a little outside of the scope of the caret moving logic, or how do you mean? I would find it great if this ever happens, but as I understand it the whole fragmentation debate was left aside for a while.

CSS regions is still shipped in iOS/OS X Safari, and I don't expect it to go away anytime soon.  CSS columns support is still in Blink as well.  Furthermore, I don't think CSS WG is halting the work on fragmentations either.  We should still keep it as a use case for the new editing API.  In addition, I would suggest that you go talk with people in CSS WG and add your use case.

> Semantic HTML WYSIWYG editor for a blogging platform: The editor needs to able to add both semantic and visual annotation to the document as it will be published as a blog.  Headings are to be marked up with h1. h2, etc... and each acronyms, abbreviations, and so forth are marked up with respective HTML elements.  However, the editor also supports visual annotations such as bolding, italicizing, and enlarging text, each of which will be interpreted by the editor to respective underlying semantics in HTML.
> Yes, and in order to keep things consistent he may want to disallow certain types of styling. A few years ago it was common to see people with Joomla sites who just pasted the text into the editor after copying it from a word processor. Each blog post therefore ended up having very different styling.

Could you elaborate more on what kind of inline styling you're thinking of?  And how and why you want to allow/restrict certain styles?  You're providing us of really important information here, and I really appreciate if you could give us more information here :)

- R. Niwa

Received on Tuesday, 1 July 2014 02:40:09 UTC