Title: Reviewing some open source distraction free editors
Author: Solène
Date: 15 September 2021
Tags: editors unix
Description: 

# Introduction

This article is about comparing "distraction free" editors running on
Linux.  This category of editors is supposed to be used in full screen
and shouldn't display much more than text, allowing to stay focused on
the text.

I've found a few programs that run on Linux and are open source, I
deliberately omitted web browser based editors

* Apostrophe
* Focuswriter
* Ghostwriter
* Quilter
* Vi (the minimal vi from busybox)

I used them on Alpine, three of them installed from Flatpak and
Apostrophe installed from the Alpine packages repositories.

I'm writing this on my netbook and wanted to see if a "distraction"
free editor could be valuable for me, the laptop screen and resolution
are small and using it for writing seems a fun idea, although I'm not
really convinced of the use (for me!) of such editors.

# Resource usage and performance

Quick tour of the memory usage (reported in top in the SHR column)

* Apostrophe: 63 MB of memory
* Focuswriter: 77 MB of memory
* Ghostwriter: 228 MB of memory
* Quilter: 72 MB of memory
* vi: 0.89 MB of memory + 41 MB of memory for xfce4-terminal

As for the perceived performance when typing I've had mixed results.

* Apostrophe: writing is smooth and pleasant
* Focuswriter: writing is smooth and pleasant
* Ghostwriter: writing is smooth and pleasant
* Quilter: there is a delay when typing, I've been able to type an
entire sentence and being so fast I've been able to see the last word
being drawn on the screen
* vi: writing is smooth and pleasant

# Features

I didn't know much what to expect from these editors, I've seen some
common features and some other that I discovered.

* focus mode: keep the current sentence/paragraph/line in focus and
fade the text around
* helpers for markdown mode: shortcuts to enable/disable bold/italic,
bullet lists etc... Outlining window to see the structure of the
document or also real time rendering from the markdown
* full screen mode
* changing fonts and display: color, fonts, background, style sheet may
be customized to fit what you prefer
* "Hemingway" mode: you can't undo what you type, I suppose it's to
write as much as possible and edit later
* Export as multiple format: html, ODT, PDF, epub...

# Personal experience and feelings

It would be long and not really interesting to list which program has
which feature so here is my feelings about those four software.

## Apostrophe

It's the one I used for writing this article, it feels very nice, it
proposes only three themes that you can't customize and the font can't
be changed.  Although you can't customize that much, it's the one that
looks the best out of the box, that is easiest to use and which just
works fine.  From a distraction free editor, it seems it's the best
approach.

This is the one I would recommend to anyone wanting a distraction free
editor.
Apostrophe project website
## Quilter

Because of the input lag when typing text, this was the worse
experience for me, maybe it's platform specific?  The user interface
looks a LOT like apostrophe at the point I'd think one is a fork from
another, but in regards to performance it's drastically different.  It
offers three themes but also allow choosing the fonts from three named
"Quilt something" which is disappointing.
Quilter project website
## Focuswriter

This one has potential, it has a lot of things you can tweak in the
preferences menu, from which character should be doubled (like quotes)
when typed, daily goals, statistics, configurable shortcuts for
everything, writing from right to left.

It also relies a lot on the theming features to choose which background
(picture or color) you want, how to space the text, which font, which
size, opacity of the typing area.  It has too many tweaks required to
be usable to me, the default themes looked nice but the text was small
and ugly, it was absolutely not enjoying to type and see the text
appending.  I tried to duplicate a theme (from the user interface) and
change the font and size, but I didn't get something that I enjoyed. 
Maybe with some time spent it could look good, but what the other tools
provide is something that just works and looks good out of the box.
Focuswriter project website
## Ghostwriter

I tried ghostwriter 1.x at first then I saw there was a 2.x version
with a lot more features, so I used both for this review, I'll only
cover the 2.x version but looking at the repositories information many
distributions providing the old version, including flatpak.

Ghostwriter seems to be the king of the arena.  It has all the features
you would expect from a distraction free editor, it has sane defaults
but is customizable and is enjoyable out of the box.  For writing long
documents, the markdown outlining panel to see the structure of the
document is very useful and there are features for writing goal and
statistics, this may certainly be useful for some users.
Ghostwriter project website
## vi

I couldn't review some editors without including a terminal based
editor.  I chose vi because it seemed the most distraction free to me,
emacs has too many features and nano has too much things displayed at
the bottom of the screen.  I choose vi instead of ed because it's more
beginner friendly, but ed would work as fine.  Note that I am using vi
(from busybox on Alpine linux) and not Vim or nvi.

vi doesn't have much features, it can save text to a file.  The display
can be customized in the terminal emulator and allow a great choice of
font / theme / style / coloring after decades of refinements in this
field.  It has no focus mode or markdown coloration/integration, which
I admit can be confusing for big texts with some markup involved, at
least for bullet lists and headers.  I always welcome a bit of
syntactic coloration and vi lacks this (this can be solved with a more
advanced text editor).  vi won't allow you to export into any kind of
file except plain text, so you need to know how to convert the text
file into the output format you are looking for.
busybox project website
# Conclusion

It's hard for me to tell if typing this article using Apostrophe editor
was better or more efficient than using my regular kakoune terminal
text editor.  The font looks absolutely better in Apostrophe but I
never gave much attention to the look and feel of my terminal emulator.

I'll try using Apostrophe or Ghostwriter for further articles, at least
by using my netbook as a typing machine.