Writing blog articles
I'm not the most active blogger out there, of course. But, and I take pride in that, I am a vim power user. And since the blogging software I use (and the one I used to use) use Markdown for writing articles, it would come to mind that I use vim for writing blog articles, right?
Turns out, no. I've been experimenting using different markdown editors in the last couple of months and I must say, I think I found the one I like most. I could've used the web-based editor that ships with writefreely, but there's two problems with that: first of all, it is online. I want to be able to write my blog articles without needing an active internet connection. For example, while riding a train in Germany, you don't have internet most of the time, although it is getting better. Secondly, writing in the browser is not as distraction-free as it is with a dedicated app in fullscreen mode.
What I want when editing Markdown
First of all, writing a blog article differs greatly from coding in one aspect: You're actually writing. When working with code, you often find yourself editing the code, rather than writing new one. Of course, sometimes you implement new features and write a lot of code in one sitting, but nevertheless you don't write like you write when writing prosa. You rather “construct”.
And thus, you don't need a “Text editor” for writing blog articles, you need a software that is for writing prosa. Plus, and that's what I value: it should stay out of my way. That's the one feature that I would like to see in such a software. No bells, no whistles, no automatic rendering, no highlighting except italic, bold,
code sections and section headers. That's all I would like to see. Other than that, it should be a cursor and that cursor should not even blink.
So I tried to find a software that implemented these features, while still integrating nicely into my desktop (which is KDE Plasma on stable NixOS). I like a dark theme on my desktop, so it shouldn't be blank text on white background but rather white on dark-greyish background, same theme as my desktop if possible.
The first impression counts!
And like always, the first impression counts. I don't like to spend a lot of time when selecting a new tool. I just want to fire it up and start working with it, optionally giving in to 5 or 10 – but not more – minutes of trying a few things to understand how the tool should be used. With the markdown editor, I only wanted to write, of course. So not more than 2 minutes of fiddling around.
So I fired up the NixOS search and asked it for “markdown editor”.
The first one I looked at was Apostrophe which seems to be nice, but GTK software. First impression: Maybe, but there might be something for KDE/QT, right?
From A, lets go to Z: zettlr. Unfortunately this looks like Apple software, and my Notebook had suddenly one thread of firefox at 100% CPU usage when opening that website. Not a good impression either. Tab closed. marktext was up next. This one looks nice, but has a few features that I consider bloat: It renders diagrams and math formulas – I don't need this, especially because I paste the markdown into my blog anyways. Another tab closed.
You see where I'm getting at. The first impression really counts for me with these things. After all, I wanted something light and distraction free.
Then, still browsing the NixOS search, I clicked on the “homepage” link for ghostwriter, which links to the projects github site. There's also a github hosted website which has screenshots. But I did not find it when I first searched for a tool.
So what I did is install it on my desktop and fire it up:
nix-shell -p ghostwriter --run ghostwriter
And I immediately liked what I saw.
There is indeed a live-preview and an outline feature and even some more things I don't even looked at yet. I was able to confiure a dark theme in the settings within a few clicks and when going fullscreen, that's as distraction-less as I need.
The decision was made
And that's what I use now. I've already prepared a rather long article (way over 3000 words, not yet published) with it and I enjoyed the experience working with it.
Publishing the blog article is nothing more than uploading the text content via CTRL-C, CTRL-V to my blog.