On Mon, Jun 6, 2016 at 6:37 PM, Vincent Massol <[email protected]> wrote:

>
> > On 06 Jun 2016, at 16:47, Marius Dumitru Florea <
> [email protected]> wrote:
> >
> > On Sat, Jun 4, 2016 at 1:05 AM, Vincent Massol <[email protected]>
> wrote:
> >
> >> Hi Marius,
> >>
> >>> On 03 Jun 2016, at 20:29, Marius Dumitru Florea <
> >> [email protected]> wrote:
> >>>
> >>> Hi devs,
> >>>
> >>> While working on adding extension points to support the replacement of
> >> the
> >>> current WYSIWYG editor I came to the conclusion that we need to make a
> >>> clear distinction between Edit Modes and Editors.
> >>>
> >>> An Edit Mode is basically an HTML *form* that allows you to edit some
> >> data
> >>> that is associated with an XWiki document. There can be for instance an
> >>> edit mode to edit the document title and content, another edit mode to
> >> edit
> >>> the document objects, another one to edit the document access rights,
> and
> >>> so on. Ideally, XWiki extensions should be able to provide new edit
> >> modes.
> >>> The current place where we expose the Edit Modes is the Edit Menu.
> Class,
> >>> Objects, Access Rights, Inline Form are well defined edit modes. Before
> >> we
> >>> talk about the Wiki and WYSIWYG "edit modes" let's define what an
> editor
> >> is.
> >>>
> >>> An Editor is basically a form *field*. Most of the time it is an
> enhanced
> >>> form field, a widget, that allows you to edit a single document field.
> >> The
> >>> editor obviously depends on the field type. There can be a date editor
> >>> (known as date picker), a plain text editor, a rich text editor, and so
> >> on.
> >>> Ideally, XWiki extensions should be able to provide new editors for
> >>> specific data types. For instance an extension could replace the date
> >>> picker. Another one could replace the rich text editor.
> >>>
> >>> The relation between Edit Modes and Editors is many to many. An Edit
> Mode
> >>> can use multiple editors and an Editor can be used by multiple Edit
> >> Modes.
> >>> For instance the rich text editor can be used in the "Content" edit
> mode
> >>> (for document content) but also in the Inline Form edit mode, for
> >> TextArea
> >>> object properties.
> >>>
> >>> If we agree with this distinction then I think XWiki should have
> separate
> >>> extension points for Edit Modes vs. Editors.
> >>
> >> So far so good, I completely agree :)
> >>
> >>> What does this mean for the CKEditor integration? Well, CKEditor is an
> >>> editor.. so it doesn't make sense to have a "CKEditor" edit mode.
> >> CKEditor
> >>> can be used to edit the document content as well as the TextArea object
> >>> properties that contain wiki syntax. So there should be no "CKEditor"
> >> entry
> >>> in the Edit Menu. Otherwise we need to add "Inline Form - CKEditor"
> also,
> >>> and so on for each Edit Mode that can use the CKEditor.
> >>>
> >>> So I think we should go in the following direction:
> >>>
> >>> * Replace Wiki and WYSIWYG entries from the Edit menu with a single
> Entry
> >>> that will represent the Edit Mode for editing the document title,
> content
> >>> and syntax. I'm not yet sure what name should we use for this Edit
> Mode.
> >>> Let's call it "Content" for now.
> >>> * The default edit action (for simple users) will
> >>> ** open the Inline Form edit mode if the document has a sheet
> associated
> >>> ** open the "Content" edit mode otherwise
> >>> * The "Content" edit mode will use the Editor configured in the User
> >>> Profile, falling-back on the wiki preferences
> >>
> >> And also falling back on the global preferences for the farm if not
> >> defined at the wiki level.
> >>
> >>> * The Inline Form edit mode will use for TextArea properties the Editor
> >>> specified in the property meta data, falling-back on the User Profile
> >>> setting, then on the wiki preferences
> >>> * We should have an administration section to configure the default
> >> Editor
> >>> as wiki level (wiki preferences)
> >>>
> >>> We don't have to implement all this right away. I'd like to start by
> >> making
> >>> the editor list from the TextArea meta data, User Profile and wiki
> >>> preferences extensible, so that CKEditor can add its entry there.
> >>>
> >>> WDYT?
> >>
> >> So I agree with everything you said. However it could also be possible
> to
> >> also have edit mode with editors. For example consider the following
> edit
> >> menu:
> >>
> >> Edit
> >>  |_ Content
> >>    |_ … With Default Editor
> >>    |_ … With GWT WYSIWYG
> >>    |_ … With CKEditor
> >>    |_ … With Wiki Editor
> >>  |_ Inline / Form
> >> …
> >>
> >> So the Edit > Content menu entry could have sub menu entries to choose
> >> explicitly which editor to edit with for the fields which support a
> >> "content editor”.
> >>
> >> There could be other options but I would definitely not like a solution
> >> where I have to go to my profile and change my preferences whenever I
> need
> >> to change the editor to edit a given page. There are several reasons for
> >> this:
> >>
> >
> >
> >> * Some pages are good to be edited in WYSIWYG (pure content pages),
> while
> >> others are better edited using the wiki editor (code pages)
> >>
> >
> > We should be able to configure the preferred editors for a given wiki
> page
> > like we do for user, wiki and farm. And we can with nested pages, by
> using
> > the "space" preferences. The code "space" of an application could be
> > configured to use the plain text editor for instance. The question is
> what
> > is the fall-back chain? Can the user overwrite the preferred editor as
> page
> > or wiki level?
>
> That’s not what I meant. We’re not going to force users to have to set an
> admin option per wiki page! :)
>
>

> When editing a page the user needs to be able to choose whether he wants
> to edit with a visual editor or a syntax editor.
>

You are referring to plain wiki pages here, but users interact a lot with
structured pages also where they cannot choose from the edit menu the
visual editor or the syntax editor.


>
> > * Right now we already have a similar issue with showing hidden pages. It
> >> take a lot of time to switch back and forth and for devs it’s a pain.
> >>
> >
> >
> >> So while I agree with everything you said, I’d like that we also find a
> >> way to be able to very quickly select which editor to use without
> having to
> >> set it in your profile.
> >>
> >
> > This translates into another configuration level: request. It means being
> > able to overwrite the preferred editors for a specific request. But this
> is
> > generic and could be used for other configuration options, like the
> hidden
> > pages.
>
> Yes per request. But that’s technical. We need to find how it translates
> in the UI. One option I mentioned is shortcut keys but that may not be
> enough. Another idea is also what I suggested with the Edit menu showing
> various options.
>
> Thanks
> -Vincent
>
> > I guess one solution could be to have shortcuts keys to force editing
> with
> >> a given editor. I don’t know if it would be good enough though.
> >>
> >> WDYT?
> >>
> >> Thanks
> >> -Vincent
> >>
> >>> Thanks,
> >>> Marius
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to