laurent22 / joplin

Joplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS.
https://joplinapp.org
Other
45.62k stars 4.96k forks source link

WYSIWYG to-do list #176

Closed poVoq closed 4 years ago

poVoq commented 6 years ago

09 March 2020 by @laurent22: The next version of Joplin will include an experimental WYSIWYG so I'm using this post to list the work that still needs to be done on it:

If you find any issue or bug please post here.


22 Jan 2018 by @poVoq: Original post:

Would be awesome if synergies with this great new WYSIWYG markdown editor could be utilized: https://github.com/nhnent/tui.editor

janos-szenfner commented 6 years ago

Would be a great addition.

robotman3000 commented 6 years ago

Perhaps this is a little too soon to ask, but is this going to become a planned feature anytime soon?

crouthamela commented 6 years ago

+1 for integrating a JS WYSIWYG. It would really help adoption of the app. I've read numerous negative comments about having to know Markdown to use it.

rainbyte commented 6 years ago

It would be cool to have some kind of markdown syntax shortcuts too, eg. boostnote has buttons above keyboard to add checkboxes (instead of writing - [ ]), also for lists, cursive and other common syntax.

semiopat commented 6 years ago

Ure it could be good; though it's not a big missing feature on desktop (for me), it's really a need on iOS (associated to a markdown bar for links, quote, list… the simple bar of github forum would be great…

admirabilis commented 6 years ago

The lack of a WYSIWYG editor is the reason I haven't yet migrated from CherryTree, which is an awesome app, but without Android support.

Edit: for my own reference: https://github.com/laurent22/joplin/issues/289

Murosic commented 6 years ago

+1 for WYSIWYG

berkuse commented 6 years ago

+1

laurent22 commented 6 years ago

For information, I did manage to integrate the TUI Editor in this branch but the problem is that its API is very limited and so the functionalities required by Joplin (such as resources, math formula, etc.) cannot be integrated.

For now I don't see a WYSIWYG editor happening any time soon so, instead, features to make working with Markdown easier will be added, such as the recently added toolbar buttons. Maybe also helpers for example to create and edit tables, etc.

I leave the issue open for now anyway since it's the most up-voted one, and in case someone figures out some solution. The TUI Editor authors seem quite active so maybe it will improve enough to be usable in Joplin at some point.

dmd commented 6 years ago

I really like the way Bear does it - you write in Markdown, but WYSIWYG, in a single pane, rather than an editing pane and a view pane. E.g., you type *this* and the stars are visible but also "this" is italics.

bernd-wechner commented 6 years ago

WYSIWYG would rock! But keyboard shortcuts for all the current formatting buttons would help for a start.

armaccloud commented 5 years ago

It would also make the interface cleaner and make more room for a TOC because two separate panes are not necessary anymore. It would be nice to see this make it more user-friendly for non-technical people.

cosmicscr commented 5 years ago

Just started using Joplin. I immediately wish there as a wysiwyg markdown editor option.

+1 for wysiwyg

trymeouteh commented 5 years ago

When I introduced a friend to this he didn't like the markdown editor since it was hard to remove bolded text and looked messy in the editor window. A WYSIWYG would go a long way.

edenpc commented 5 years ago

+1 for wysiwyg

AlekseyMko commented 5 years ago

+1 for wysiwyg Don't really like double pane but really love Jopline itself

edenpc commented 5 years ago

Another option is instead of implementing a single editor that can switch between WYSIWYG and markdown modes, you integrate two separate editors, one for markdown and one for WYSIWYG. Then the user can decide which editor to use in the settings.

I'm not sure how difficult this would be to implement though.

nikolayhg commented 5 years ago

+1 I add the keywords Rich Text Editor or Rich Markdown Editor, so that others can find easier this issue.

Other relevant editors might be:

marquis-de-muesli commented 5 years ago

+1 I have been trying out different note taking applications, and while Joplin is the best i have found so far, WYSIWYG would make it even better.

I just looked at the previously mentioned HyperMD, and while i don't know how feasible it is, its certainly a unique and beautiful way to edit/preview. https://github.com/laobubu/hypermd/

Also, Leannote https://github.com/leanote/leanote, "solves" the problem by offering "simple" and "advanced" notes, with two different editors. Not the most elegant solution, but its a different approach.

horizonbrave commented 5 years ago

well I'm putting my vote here, but I don't mind which WYSIWYG editor, as long as I get one =) Many thanks!

trymeouteh commented 5 years ago

A good WYSIWYG for Desktop and Mobile will put this app above Evernote.

rcrx commented 5 years ago

Tools>General Options>Text Editor Command Path: /path/to/WYSIWYG/editor

trymeouteh commented 5 years ago

Tools>General Options>Text Editor Command Path: /path/to/WYSIWYG/editor

Which WYSIWYG will work for Joplin? Quill?

Also this is not possible for mobile devices and I would prefer to have a universal WYSIWYG editor for desktop and mobile that comes with Joplin and is enabled by default. I do not mind if there a way to change the WYSIWYG editor on desktop via Tools>General Options>Text Editor or those who are more tech savvy.

sunrez commented 5 years ago

+1 for a WYSIWYG editor (like the one we're using to put this comment into Github!).

What about CKEditor's Markdown output? :

https://ckeditor.com/docs/ckeditor5/latest/features/markdown.html

HVR88 commented 5 years ago

I've been writing in "markdown" since before markdown was a thing. No problems at all to write/edit in that fashion. I can also write in C, Perl, PHP, Python and damn, I used to be able to do straight 68k op-code assembly.

But all of that's besides the point. No WYSIWYG editing and Joplin is a complete non-starter. Not just for me, but for pretty much 100% of the potential market. However many users exist now, the potential number with direct styled editing is multiple orders of magnitude more.

I can't think of a single person I know who will stop using Evernote for a program where you have to toggle a markdown editor or do side x side editing. I like the OPTION of viewing in markdown, but having it as a requirement is very much 1999. But this is 2019.

deftdawg commented 4 years ago

I just found Joplin today and downloaded 1.0.93, was thinking this would be perfect if it had wyswig like vnote... 10 hours later this preview drops, and it's very nice and quite usable.

Here are some adds for your todo-list:

dpoulton-github commented 4 years ago

Joplin 1.0.194 Portable (prod, win32) Revision: 92bee549 (master) Windows 10 Pro x64 (VM)

Posting here as requested rather than the forum.

This is what I have found after a quick test. I understand that some features have still to be implemented and they may be the reason some of the below was found.

laurent22 commented 4 years ago

Does not display existing picture resources, just a "broken image link" icon (works in standard viewer pane). If the image is unnamed (like in the default notes) there is not even a broken image link icon.

It should handle resources. How does your link look like?

Uploading a picture using the WYSIWYG editor adds an absolute path to the resource and retains the file extension. For example ![picture.png](C:%5CUsers%5Cvbox%5CDesktop/JoplinProfile/resources/8181b1a3e44740e7a900b6532723e020.png) instead of ![picture.png](:/8181b1a3e44740e7a900b6532723e020) (neither work for WYSIWYG editor, second one does for standard viewer pane)

That's strange, I've just tried adding a picture and it works fine. Maybe it's the Windows path that's not supported properly yet.

Otherwise, I've added these issues to the list.

dpoulton-github commented 4 years ago

Apologies for the graphics heavy post. It also appears that Joplin will automatically convert corrected resource links back to incorrect ones.

Joplin 1.0.194 Portable (prod, win32) Revision: 92bee549 (master) Windows 10 Pro x64 (VirtualBox VM)

Default new "install". Default notes are the only notes. No customisations. No non-default plugins activated.

In split view picture resource link is OK and picture displays

1 standard

Switch to WYSIWYG

2 standard_wysiwyg

Give the resource a name in markdown editor

3 named_pic

Switch to WYSIWYG

4 named_pic_wysiwyg

Add a picture from the desktop using WYSIWYG

5 joplin_logo_added

View in split mode. Note path for new picture, also the path for the existing picture has changed

6 joplin_logo_split

Manually edit the paths back to required format.

7 edited_entries

Switch to WYSIWYG

8 edited_entries_wysiwyg

Edit the note in WYSIWYG (added "EDITED" to first line of the note) and switch to split view. Paths have changed again.

9 edited_note

amandamcg commented 4 years ago

Joplin 1.0.194 (prod, darwin) Revision: 92bee54 (master) Mac 10.14.16

This is awesome! Thanks for working on it. Couple things I saw

Checklists

Headers

header 2

header 3


Go to WYSIWYG view, put the cursor at the end of header 2 and click the H2 icon in the toolbar two times. The first time it removes the header, the second time, it applies the H2 to every item, ending up with 

header 1

header 2

header 3


In other cases, I've seen it end up 

header 1

header 2header 3



### Images
I also see a broken image. Mine is trying to find the path `## ![normal-zoom.png](../../../../..:/676aee7b2a4c4b6da50c11bb61b14c95)`
. Removing the ../'s fixes it.

--- 

Also, agree with @dpoulton-github that support of userstyle.css would be great, but can see that it is probably not an MVP feature. :-) 
subaru22b commented 4 years ago

Joplin 1.0.194 Portable (prod, win32) Revision: 92bee54 (master) Windows 10 Pro x64

I noticed directory paths and typed markdown add extra backslash \

This is from WYSIWYG editor -> Markdown Editor

vivaldi_2020-03-15_21-16-12

The good thing about this is if you removed the extra backlash, it will convert it properly into the correct format.

vivaldi_2020-03-15_21-19-13

In the Markdown editor, once you remove the extra backlash and just leave the , when you Ctrl+L back to the WYSIWYG editor, it will format it joplin**

deftdawg commented 4 years ago

The following example is a table with columns having centre alignment, it is rendered correctly by the WYSIWYG layout, however if any part of the document changes, the alignment is scrubbed when the document is saved, changing all table columns to left-aligned.

| Setting | Value |
| :-: | :-: |
| X | 2 |
deftdawg commented 4 years ago
bernd-wechner commented 4 years ago

Got me beat, how are you switching to WYSIWYG editor?

aviret commented 4 years ago

Got me beat, how are you switching to WYSIWYG editor?

image

bernd-wechner commented 4 years ago

Hmm, that option visible on my 1.0.193 ... did it enter in 1.0.194?

aviret commented 4 years ago

Hmm, that option visible on my 1.0.193 ... did it enter in 1.0.194?

Yes see here and you get it from here

Grettings

andrewmakarskiy commented 4 years ago

I made some corrections to an existing note then hit the command+z button and the whole note just disappeared. Not exactly what I added but the previous note. If you proceed with this combination it switches to a completely different note, the one that was previously edited. This is kind of dangerous though, I think.

joshsweaney commented 4 years ago

This is fantastic, been waiting for this feature for a long time. My notes are usually pretty simple, so everything is working fine for me now.

The only issue I encountered is that when upgrading my notes to the new encryption, the cursor would not appear in WYSIWYG mode (but it would work fine in regular markdown mode). A simple restart solved the issue though. I'll keep using it in WYSIWYG mode and post back here if I find any bugs! Thanks for the update.

Mortimersnodgrass commented 4 years ago

Let me know if I'm reporting imperfections with wysiwyg in wrong place. If you select text and right click in wysiwyg, you only have the option to create a link. In markdown you have: copy, paste and cut; In viewer copy. Ctrl-c works, but I think there should be more options with the context menu.

dbogdanov commented 4 years ago

Fantastic update!

I am missing these icons in the WYSIWYG layout:

Screen Shot 2020-04-02 at 00 05 08

dbogdanov commented 4 years ago

Another request for the to-do list: Add an option (and a keyboard shortcut) to paste without formatting. Useful for copy-pasting from web documents.

kaushalyap commented 4 years ago

Really need this!

noklam commented 4 years ago

I don't know when is this WYSIWYG editor was introduced, but the function of the markdown table is a BIG plus. IMO editing table with markdown is always painful, this definitely helps a lot.

deftdawg commented 4 years ago

Progress has been amazing so far! The tables editing ui is particularly nice 😄

Here's some stuff I found as of Joplin 1.0.200 (prod, darwin) Revision: 142976f (master):

deftdawg commented 4 years ago

I'm running: Joplin 1.0.201 (prod, darwin) Revision: e65af8c (master)

I've noticed that it seems like code blocks are having blank lines and spaces removed around them... it's causing lines to smash together and code blocks to break.

For example this is a shell code block and there used to only 3 back-ticks at the start of the code block and be an empty line before "Requirements Discussion" at the end:

# Create a launch.json w/ settings from  https://github.com/microsoft/vscode-recipes/tree/master/Angular-CLI

``````shell
# fix for: ERROR:root:code for hash md5 was not found.
curl https://raw.githubusercontent.com/Homebrew/homebrew-core/94d572a132a63651739fef1931f540404b7eaa31/Formula/python%402.rb > python@2.rb
brew reinstall python\@2.rb

# Migration: Angular 6 to 9
npm i fsevents@1.2.9
npm install --save-dev @angular-devkit/build-angular
```Requirements Discussion
laurent22 commented 4 years ago

@deftdawg, I can't replicate this bug. Do you have a step by step example with Markdown sample that shows how to replicate it?

graphit0 commented 4 years ago
* [ ]  Table: Creating a table doesn't render an editable header row though when the document is saved an empty header row is prepended.

Client: Joplin 1.0.201 (prod, win32) Revision: e65af8c1 (master)

I'm experiencing a seemingly similar bug @deftdawg described: new empty row of a table appearing after saving a note.

Steps:

  1. Create table in WYSIWYG
  2. Write any header of the table
  3. Change layout to markdown
  4. Change layout to WYSIWYG
  5. See the header to be empty whereas the header used in the second step moved down to the next row

I've recorded a quick illustration. Hope it helps Video_2020-05-07_144023

TiberiusRegenschein commented 4 years ago

Client: Joplin 1.0.197 (prod, linux)

The [toc] functionality is gone and reverted in links to chapters when toggling between WYSIWYG and otther view.

Steps to reproduce:

  1. Add [toc] into a note
  2. Switch between other view and WYSIWYG
  3. Click on Link from toc
  4. Switch back The result is that the [toc] function is gone
guy-rouillier commented 4 years ago

I just upgraded to 1.0.207 and got the warning about using the WYSIWYG editor. I saw this line in the online help Experimental WYSIWYG editor in Joplin:

At the moment, the feature is a bit hidden. To enable it, go into the menu View => Layout button sequence, and choose "Split / WYSIWYG". Then click on the Layout button to toggle between modes.

None of the menu items were changing anything for me, and my button bar did not display a Layout button. Then, just by chance, I tried clicking the "Code View" item in the button bar, and now the Layout button appears. Clicking the Layout button repeated changes from one layout to another, including one showing the WYSIWYG editor. I like this editor so far in my limited testing.

OH!! Ok, finally I understand the purpose of the Layout button sequence menu item: in controls what alternatives appear during repeated clicking on the Layout button. A simple wording change in the online help will clarify:

"To switch between the WYSIWYG and standard editors, first click the Code View button. A new Layout button will appear in the button bar. Clicking the Layout button repeatedly will cycle through available layouts. To select available layouts, use the View menu, Layout button sequence."