+40
Under review

Lightweight markup support (Markdown, reStructuredText)

burrum 6 years ago • updated by pepe casa 2 years ago 24

I'm not a big fan of traditional text formatting because of all its problems, like having to preserve it during copy/paste, having to think about own save format, and so forth. This adds complexity and bugs, and you have to maintain it.


While not using formatting, I still need to organize my text for readability, so I use simple techniques like stars (*) for bullet lists, line breaks to separate paragraphs, something to highlight headings and so on. Now this is very close to using a lightweight markup language. What they are doing is define a "standard" set of such simple techniques. Your raw text will always look fine, but you can additionally present it with rich styles by using extra renderer.


Just check out how Github utilizes Markdown: raw text, rendered text. It even handles code sections. There's another language, reST or reStructuredText, popular in Python world.


The idea is to have two modes: raw and rendered for both notes list and note editor. Editor in rendered mode could apply styles on-the-fly similar to how Confluence editor works.


Links: Markdown (implementations), reST.

viewing editing notes-list text-formatting
-2

I know about the markup language and while i agree on (most of) your thoughts, imo we don't need this feature. I also used the same standards as you and still do, e.g. asterisk for bullet lists, line breaks for paragraphs. However, i started using the new richt text features on its second revision. The first revision introduced with v 1.4 was incomplete. The second revision is a big step forward. Imo, no need for a second formatting concept.

+1

IMO moving to a more universal and *standard format* like markdown is a good justification for adding or shifting to such a formatting concept as markdown. I do not believe the argument that "we don't need" it - is progressive enough if it would make CN more standard and inclusive with immediate utility for a broader audience of users. The same argument could be made for having another note taking system like CN, obviously we don't need CN, but we love it - and use it *because* it has progressive features that give it more utility for us.

I heartily promote the idea of CN supporting markdown in a 2-mode view approach which I believe would make CN generally more useful and valuable to a broader audience - which over time has come to also include myself as an existing user.

I voted for this idea.

but what Cinta using for structuring in text currently ?

Now CintaNotes is WYSIWYG and uses RTF (when loaded in editor) + Internal format (when stored in database) + HTML (when exported to XML or Simplenote)


I liked some principles of WYSIWYM ,

how about to use it instead of  WYSIWYG

As I understand it requires separating the note editing view into "Editing" and "Rendered". I'd like to avoid this since it will complicate matters considerably.


+2

I like this idea in it :

"marking the content according to its meaning, its significance in the document, instead of designing its appearance."

This is nice, but it's just an idea. How should it be implemented, without putting an extra strain on the user?


In future when improoving formating text, implement this principle.

For example Headig1, Heading2, etc. should be relative to main text font. 


When exporting, it gives possibility to export in terms ''Headings1/2/3", not "font face, bold, size" etc.. 

This adds semantic meaning to headings rather than just style. Interesting.

I just realized why semantic markup is better than style markup. It makes easier for other content presentation systems to parse and present the content.


For example, if all websites agreed to put semantic markup into their pages, we could fetch any article processed by automated distraction-removal tools like ViewText.org. This, however, would lead to smaller metrics most sites yearn for, like page views, search engine popularity, unique visitors, etc.

Nice service, but if you know some CSS rules, you can change sites more effectively.



+2

Thomas, Alex, I think I can rephrase this feature request now.


The idea is to replace this "Internal format" with some human-readable light markup, while keeping the rich WYSIWYG editor on top of it. In the "Formatted" mode, the editor translates formatting commands into markup on the fly and renders it. For markup users, it renders markup elements on the fly as they complete. This takes best from both worlds. People who want just rich text will have it, and never have to look at markup/plaintext. They can always stay in "Formatted" mode. Hopefully they will get some toolbar and keyboard shortcuts. People who prefer monospace plaintext with minimal markup (like me) could use "Plain" mode.


I argue for human-readable markup as a base because I see it much more reliable storage format than RTF-like formats, or anything based on XML.


There's a good related historical case described in a blog post about Confluence merge of Rich Text and Wiki markup editors (scroll down to "Original Post"). Note: I don't think another XML-based underlying format is a good idea unless you want to go for tables and embedded media, which was their goal. But I like the way of thinking to consider both technical and non-technical users.


Alex, I could demo this hybrid editor in Confluence instance of our project in a screen-sharing session, if you feel interested.

Burrum, you made up a nice proposal in the end. :) I am happy the discussion was constructive.

Answer
Under review

The difficulty with WYSIWYM is that CintaNotes functionality is centered around being able to quickly copy and paste text content from elsewhere using a few simple hotkeys. If you converted to WYSIWYM, you would need a way to past the content with the appropriate markup to preserve formatting, and you'd also need to worry about having two different views of the text: the markup view and the formatted view. This adds a whole new layer of complexity to the product.

To provide an alternative approach i have added a request to export notes to Markdown format. You can vote for it here: Export to Markdown.
+1
I format my notes in a form of markdown. It is great for keeping notes that are easy to read and easy to export into other formats... without having to fight against formatting issues that occur when copying and pasting from within a Word document.

I use Pandoc to convert the notes into wiki text, pdf and word documents, depending on who requires the output. This would be a great feature in my opinion.

Cheers :)
+2
Add text formatting toolbar in note editor is top rated idea.
How about using Markdwon as formatting.
In default condition, the note is in Markdown preview mode, once you click,  the note switchs to editable mode.

Please support Markdown Syntax and drop RTF which is so 1995

+1

I strongly support this suggestion. It would make CintaNotes much more attractive to developers and other tech-minded users. You need to look no further than GitHub or StackOverflow, where every text form is a Markdown editor. Both are hugely popular, and I fear their choice of text format influences other software and services so much that CN risks to become less and less attractive for that ever-increasing user segment as time goes on.


Simplenote also supports it (isn't there already some code in CN related to this?). The lack of Markdown is currently listed as a con on Slant. RTF seems to bring some issues with Linux/Wine support. One recent app comparison lists the lack of Markdown as one of shortcomings of CN. Another review for a similar app for Mac describes Markdown as a major feature.


I really hope you would consider this feature for implementation one day. Maybe as a switch in the options for new notes, if set to Markdown they would have a "source/preview" toggle near the top with a keyboard shortcut and a slight bg texture difference for the editor to distinguish between the current mode. Add to that the ability to convert existing notes back and forth between formats, and it would be perfect.

Thanks for your comment, we'll take it into consideration!

Markdown está por todas partes. No entiendo que todavía no esté implementado en CintaNotes.