mybb2 icon indicating copy to clipboard operation
mybb2 copied to clipboard

Choose an editor for creating topics/posts.

Open euantorano opened this issue 8 years ago • 9 comments

We need to select a JS based WYSIWYG editor for 2.0.

This editor will be used when creating posts, conversations and other content.

Requirements

  • MyCode/BBCode support
  • Markdown support
  • Ability to disable WYSIWYG feature, showing plain BBCode/Markdown and remember this choice (and allow this choice to be set via User CP/Admin CP)
  • Ability to easily add new buttons/menus to the editor toolbar
  • Open Source and permissively licensed (MIT, BSD3 or similar)
  • Good display and performance on mobile

Nice to have

  • Full screen edit mode

euantorano avatar Sep 30 '17 16:09 euantorano

How will data be stored and processed? If we're going to store already parsed data and an original content to allow edits (so two database fields: one for preprocessed content, one for non-processed content), https://quilljs.com would be the nicest of them all IMHO. It needs a Quill-to-BBCode/Markdown parser, but its API is well documented.

Shade- avatar Sep 30 '17 16:09 Shade-

That's a good question. Currently we store data pre-parsed, but there are a few downsides:

  • BBCode/MyCode when added or modified won't be supported until a post is edited
  • @ style mentions won't track username changes, leading to confusion

@dvz Suggested that for the second issue we can pre-parse content that doesn't contain mentions, and otherwise parse on display. This is a possibility.

I think that really we need to benchmark the parser to make a decision.

euantorano avatar Sep 30 '17 16:09 euantorano

I suggest summernote, big machine and very configurable.

AdrianKuriata avatar Oct 13 '17 20:10 AdrianKuriata

I'm not sure if this is somewhere we can suggest editors but my vote goes for Monaco:

https://microsoft.github.io/monaco-editor/

kawaii avatar Oct 22 '17 15:10 kawaii

Yes, this is as good a place as any to suggest editors. A good suggestion should explain the features provided, the license, etc.

Monaco seems to be mostly targeted towards the writing of code, rather than prose (this is for the editor used to markup posts).

euantorano avatar Oct 22 '17 15:10 euantorano

Have a look on StackEdit https://github.com/benweet/stackedit https://stackedit.io/

a nice and clean editore, i love the live preview function and its easy to customise to

Broatcast avatar Oct 23 '17 06:10 Broatcast

Regarding this post and related ones, if we are really going the mixed parser way I guess Quill is the only choice we have. I've been looking for already-built editors with BBCode and Markdown support but either they do not support one of the above, or they support them separately.

The main advantage of Quill is that it uses its own logic and formatting, which can be then converted to whatever you like. That's why I would choose it, even if we'll need to write our own Quill-to-BBCode/Markdown JavaScript parser.

Shade- avatar Dec 17 '17 11:12 Shade-

Certainly not fulfilling all of our requirements, but have just come across this feature-rich Markdown editor and wanted to share with you guys: https://github.com/nhnent/tui.editor

effone avatar Apr 02 '18 14:04 effone

Also, I guess this MarkItUp! a good start?

Its an old one, light-weight, very flexible to suit our need ... This is not a full fledged editor but an engine to make editor as per requirement on top of it, as they say ... Supports HTML, BBCode, Textile, Markdown, Dotclear, Wiki even own custom markups << This may be helpful for custom MyCodes ? https://github.com/markitup/1.x

effone avatar Apr 10 '18 05:04 effone