I use a self-hosted HackMD (now CodiMD) [1] instance for this. The hosted version pushes more and more towards account creation but you can start without account by visiting [2] directly.
They have real time collaboration and a long list of additional plugins [3] that allow all kinds of nice collaboration use cases.
For example it is possible to convert some bullet points into a presentation with minimal effort.
What does Write.md provide compared to HackMD? Not affiliated with HackMD, just a happy user and always curious about alternatives.
Question if I may: which one would you recommend, the HackMD version or the community fork, and why? Both seem to be actively maintained and interfaces look close enough (other than template buttons and nudges towards signing in upon opening a new document in the company version).
We self-host CodiMD as well. It's great for collaborative technical writing, such as software analysis and design specs. It lets the developers just use Markdown, which is really great when dealing with code samples (triple-backtick blocks!).
WriteMD doesn't look like it can compete with CodiMD, which is free software and can be hosted locally — two huge advantages. Perhaps it'll improve though. Always good to know of alternatives.
Something's off with scrolling. If I scroll the editor, the viewer seems to follow but actually it's not in sync. For example, I can see the two bottom sections in the editor ("What is markdown", etc.), but they aren't yet visible in the viewer. Once I reach the bottom of the editor, the viewer suddenly jumps to the bottom.
Does it support a 400k* word text file without slowing down to a crawl (i.e. a 5-10 second lag between a keypress and a change)? I've tried many markdown editors for my novel, and sadly most editors fail this very basic test :(
* Edit: I misread the output of wc. The novel is ~70k words, ~400k characters. Leaving the 400k figure above because of the discussion that follows, because it should still be a reasonable use case, and because it makes even more surprising that most editors fail this even more basic test.
As a little experiment of your question (using the original figure actually) I repeated a dozen or so ~lines~ paragraphs of Lipsum... a lot, until I ended up with a text file with a little over 17K lines... 532K words... and either 3.1M or 3.6M characters, depending whether you count spaces.
MacDown (a native MarkDown editor for macOS) opens it in a snap, has no lag editing, and even the rendered preview (which scrolls with the editor side) has no lag. Memory usage was about 150MB.
For shits and giggles I then pasted that content into the OP's linked tool.. The Safari process for that tab is still sitting at 100% CPU a minute or so later, and is unresponsive.
Is this example a bit ridiculous? Sure. But it demonstrates the difference between a native app - oh, and the process for that tab just disappeared because Safari killed it - and trying to make an app in a web browser.
I really like MacDown but it has this weird bug of sometimes hanging for up to 30 seconds with a spinning beach ball and then continuing as if nothing happened.
I disagree! We're having the following conversation:
Me: "I want to edit this as a single file, but I can't, because it's slow due to inefficient data structures"
You: "Why would you want to edit it as a single file?"
Me: "Why wouldn't I?"
You: "Because it's slow due to inefficient data structures!"
My point is, I want to edit it as a single text file for creative / process reasons, and there are algorithms and data structures that make this possible, as evidenced by the editors that do let me do it in real time, so there's no real reason not to.
I could, and I did for some time, but it's a PITA. The question should be "why should I?". I've since found a Markdown editor that works well for a file this size (Typora - I also had good experiences with Texts).
I've done this in various formats, including single editor, scrivener, and so forth.
I've found that the process of breaking a book up into "chunks" to be a useful one to me. If I can't chunk it, there's probably something wrong with the structure.
But hell, if what you have works for you, go for it. I'm currently using the LeanPub build system which seems to be just enough structure without getting in the way.
Sure, I could edit chapters, or even "acts", separately, and I did for some time; but the novel is a single work, and searching text, replacing text, etc, is much simpler with a single file.
I can see both sides of this. In some ways, this is the old "seat of your pants" vs. "plot the book out" discussion. The important thing is whatever works for you.
Why should you? Perhaps if there are other features of a particular editor that make it worth it. I'm otherwise not one to defend anything that's potentially unnecessarily slow :)
If it was a solved problem in the 90s, can't you just use a text editor from the 90s? No need to bash on this project just because it doesn't fulfill your use case.
Modern editors are fairly complex. Splitting a bitbuffer and showing ascii line by line is simple. But modern editors have to deal with unicode, where some characters (surrogates) are two chars long, and can be followed by modifiers such as skin color of emojis. Then some characters are wider then others. So a modern editor must first parse the string encoding, then parse the language (markdown) for further formatting and coloring or building a WYSIWYG, usually on every key stroke.
The expensive part is showing the text on the screen, generating the fonts, where old editors didnt have fonts.
In the context of a book, yes. But I mean in the context of an online Markdown editor. (Or even a Markdown editor at all. Can you actually write books in Markdown?)
Yes, you can. The "Programming Perl" book by Larry Wall was famously written entirely in "POD" format, which is just like markdown. I don't know if it was split into several files.
That's untrue. Novels are usually in the 90-110k range, depending on genre. If you're an established author, especially in fantasy or sci fi, insane doorstoppers like that do occur, but 400k is an outlier even for sff.
Here you have a list of very famous books with their word counts. Quite a few of them have more than half a million words. Thus, it is reasonable to expect that a text editor is able to handle that size. After all this is a tiny amount of data compared to what has to deal a program that does image or video processing, so there's 0 reason for a text editor to be "laggy" when dealing with just a few megabytes.
Seriously, that’s stupid. You’re collecting outliers. Unpublished writers trying to hawk 400k word novels are for the most part delusional. Every single piece in your list that goes into that territory is something written by an established author.
Though, to be fair, an author organizing a work of that size in a single markdown document has bigger problems than key lag.
A good editor can handle them without any trouble. I just downloaded Moby Dick from Project Gutenberg and opened it in Emacs. It opened instantly, I could immediately go the end (line 22333), scroll around, count the words (there are around 222617), count the ocurrences of the word 'whether' (there are 91, the last of which is on line 21769), make a change somewhere in the middle. All of this is instant.
You can do all that instantly in Vim too (... and I just checked to make sure). A megabyte of text is just not a lot of text for a good editor.
Thanks. That's nice, but not exactly what I meant. By WYSIWYG editing I mean visual editing like Word or Google Docs, but saving Markdown; not typing Markdown and having a real-time preview separately.
Typora does this nicely; I type an asterisk, it looks like an asterisk, but when I close the asterisk, the text in between goes italic. The asterisks are hidden unless the cursor is within the italic part. I can double-click to select a word, press cmd-I, and the word goes italic (by adding the asterisks). Etc.
I realize this is a matter of personal preference but for me, using editors that are changing the text I write as I write it between code and markup is really annoying. I can buy using pure WYSIWYG (i.e. Word) or typing plaintext, but something is just off for me when the editor tries to do both. I prefer knowing whether what I'm looking at is the actual contents of the file or just a representation of them, but whatever floats your boat obviously. Since a terminal based editor will never be able to to what you require it to, unfortunately this means your selection for "optimized" editors is limited.
AsciiDoc is a standardized format that's just as simple as MD. But far more features.
Have been looking for something that lets us author asciidoc documents, but markdown (with varying standards) seems far more popular. some of these end up as not being Github compatible or whatever.
Hi, looks good. I'm curious about the inline variables and mustache template syntax. Haven't seen them in any other markdown dialect. Anyone else using them?
Thanks, I'm extending the editor to be more useful from a number of use cases I've spoken with users about. The variables and handle bars extend the markdown capabilities and looking to add more features. Let me know if your have any in mind and I will add it to our list!
They have real time collaboration and a long list of additional plugins [3] that allow all kinds of nice collaboration use cases. For example it is possible to convert some bullet points into a presentation with minimal effort.
What does Write.md provide compared to HackMD? Not affiliated with HackMD, just a happy user and always curious about alternatives.
[1] https://github.com/hackmdio/codimd [2] https://hackmd.io/new [3] https://hackmd.io/features