Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WYSIWYG #2556

Merged
merged 63 commits into from Mar 9, 2020
Merged

WYSIWYG #2556

merged 63 commits into from Mar 9, 2020

Conversation

laurent22
Copy link
Owner

@laurent22 laurent22 commented Feb 22, 2020

WYSIWYG in desktop app using TinyMCE, for evaluation purpose only at the moment.

The pull request also includes a refactor of the "NoteText" component, with improved handling of state, which should solve some of the issues with saving and loading notes that have been around for a while. It will also make it easier to switch to a different code editor (instead of Ace Editor) by more clearly defining the interface that an editor must support.

Still to do for WYSIWYG in particular:

  • Handle checkboxes
  • Handle images upload
  • Handle code blocks
  • Handle when note updated via sync, or via API

Big issue that maybe has no solution: most Markdown plugins are not supported and most likely any special plugin-specific formatting will be lost when editing a note with the WYSIWYG editor. The exception is fence-delimited Markdown plugins like Mermaid, Fountain or Katex, which are handled separately.

@laurent22 laurent22 added desktop All desktop platforms WIP labels Feb 22, 2020
@tessus
Copy link
Collaborator

tessus commented Feb 22, 2020

Is this the editor @devonzuegel mentioned a while back?

@tessus
Copy link
Collaborator

tessus commented Feb 22, 2020

Ok, it's not. I just checked the code.... Sorry for the noise.

@laurent22
Copy link
Owner Author

laurent22 commented Feb 22, 2020

I've picked TinyMCE because it's been around forever, so it's stable, has good doc, and you can find answers to questions on SO, forums, etc. because it's widely used. It's also easy to extend, which is important for us.

All other editors I've tried are almost in alpha state. They often look good in demos but when you look closely there are big issues, like poor API, difficult to extend, poor quality doc and non existent support.

@ksorv
Copy link

ksorv commented Feb 25, 2020

@laurent22 Idk very much, but i worked on kind of similar thing with Vue.
I used QuillJS and TipTap, both were actually very capable and stable.
You checked them too?

@laurent22
Copy link
Owner Author

laurent22 commented Mar 9, 2020

I think it's good enough for basic note editing at this point, so I'm going to merge so that it can be evaluated.

Remaining work to do on it will be listed there: #176

@laurent22 laurent22 merged commit 84c3ef1 into master Mar 9, 2020
@laurent22 laurent22 deleted the wysiwyg2 branch August 12, 2021 14:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
desktop All desktop platforms
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants