Text editors are for coders, not for writers. If you are a writer, you need a word processor rather than a text editor. A good minimal terminal-based word processor is Wordgrinder.
The difference between a text editor and a word processor is attention to the formatting of paragraphs. In terms of typesetting, a paragraph of human-language text flows, whereas in text editor terms, the paragraph is a single line of text.
Elements of code in text editors are mostly a single line too, but the lines are strictly nested (somewhat depending on the coding language) in order to speak to each other hierarchically. Also, coding languages need special explicit markup to indicate the beginning and ending of larger objects, such as curly brackets to mark the beginning and ending of objects across many lines.
In a human-language text, the same structuring function is served by uniform whitespace separating the paragraphs and some occasional special lines called headings. Mostly the text consists of paragraphs that, in typesetting terms, have a flat relationship with each other – only sequence, no hierarchy.
The author describes Wordgrinder as follows:
WordGrinder is a word processor for processing words. It is not WYSIWYG. It is not point and click. It is not a desktop publisher. It is not a text editor. It does not do fonts and it barely does styles. What it does do is words. It’s designed for writing text.
Its default file format ends in .wg and contains multiple “documents” (called buffers in text editors) in a single file. This is advanced enough to let you write novels, but the default formatting does not quite allow for technical writing with footnotes, indexes, tables or graphs, and whatnot.
Yet, by being basic, Wordgrinder is also close enough to a text editor, so you can write in a markup language of your choosing to enable all the most advanced elements of publishing. Export and import for plain text, ODT, HTML, Markdown, LaTeX, and Troff is inbuilt.
Navigation in documents is Word-like, menu-based and with familiar keybinds. The keybinds are reassignable during live session.
Thank you for highlighting this neat little tool. I have just had a go with it, and when I change the colour scheme to green text/black background, it reminds me vaguely of my old Amstrad PCW8256 word processor. To this day, I think Locoscript is one of the most user-friendly and fast/easy document-processing programs ever written – and despite being around 35 years old, I still use it if I don’t need to send the document in an editable format to someone else. Of course, at work, Libreoffice will remain king of the office suites…
I like the bare-bones philosophy of this word processor – it’s like the best bits of LaTeX and FocusWriter rolled into one. LaTeX is great because it makes intelligent formatting decisions for you. It only needs to know, “this is main paragraph text, this is a header, this is a figure caption” etc., and sorts out fonts, sizes and positioning based on that. FocusWriter is great because it’s WYSiWYG, but the interface is minimalist and doesn’t distract. WordGrinder seems to be somewhere between the two.
I also love the fact that, like LaTeX, this editor runs in the terminal – so I don’t even have to waste time booting into a graphical desktop environment. Then to share or print, you just export to HTML or ODT. It’s a shame it doesn’t have its own native printing functionality, but printing’s still possible via export to troff/odt/LaTeX/HTML.