Too many editors!"

abstract: Specialized editors for files with specific syntax are very useful - except when they each come with its own idiosyncratic set of editing commands. Perhaps markdown files, with a very few easy to learn formatin commands can replace many of them and a single editor environment like atom, where language specific tools are integrated in the same general editing environment are a solution.

Too many editors!

I have written a blog about the difficulties and implied cost of the wide variety of programming languages we are often forced to use to achieve some end with todays technology, i.e. computers. The case in point was the realization of a web application, where the design is expressed in half a dozen languages --- from HTML for the text and CSS for appearances, JavaScript for interactions, etc.

Yesterday, I became aware of how many editors to edit text in some specific format or intention I use.

  1. There are a few "basic text editors" I use because none of them satisfies for various reasons. They are from the Linux universe: Pluma, Gedit, Mousepad. None of them seems to satisfy fully; pieces are missing, e.g. word wrapping, access to spell checker, find & replace function.

  2. There is one programmer editor, which does everything (Geany), but confuses with too much functionality and defaults which I would have to adapt but forgot how.

  3. I use a text editor (LibreOffice) for short letters and similar; usually distracted by too many options and defaults which are not the ones I expect (set up is always possible).

  4. For programming, I use an Integrated Development Environment (IDE); I recently switched from Leksah to Visual Studio Code and tried Atom. A final decision is not yet made, in either case complexity is high and requires explicit learning of routines for common tasks, which means the investment is high.

  5. Writing longer text is often LyX (a nearly WYSIWYG surface for TeX/LaTeX).

  6. Production of books and other very long text goes to TeX studio and LaTeX. Integrated with:

  7. BibTex, which is required for the description of References to Literature.

  8. My homepage and blog I write in markdown with ReText, but are tempted to switch to an Integrated Writer Workbench:

  9. Writing longer comprehensive topics is perhaps best done with specialized environments like Zettlr, Atom or Visual Studio Code for Markdown to have "distraction free" environments.

Why does this list document a problem? Why does it document the of cause cognitive stress, distraction and reduced productivity? The editor should fulfill a need (to edit a text) in a special situation and is optimized for the target the designer had in mind (with lots of additions of "also useful" suggested by helpful bystanders).

There is hardly any consistency, beyond the copy - cut - paste - save functions, which are, thanks god, nearly always on the same control-key combinations. I think nothing else is "universal" (in this limited universe of editing): not always a find (and with some differences in details of the functionality), missing a find - replace, select - drag, language specific and automatically selected "comment" functions (required by the plethora of language we write in), selection of language and spelling checker (how is it done? how long do you search for it?).

The editors differ in the handling of "views" and mapping them to screen estate (multiple screens, split windows...).

concepts of "projects" etc. etc. have to be learned (and are confusingly different in the different "integrated" environments. Learning how to automate a repeated task is usually much more difficult than to do it repeatedly.... must all be learned.

Each time you switch from one to another one, you have to switch the set of keystrokes used for the common tasks (but mapped to different commands). It drags you down.

I hope to reduce the list. But how?

PS: I just realize how nice Markdown works: one can read the final text and edit the same format. Without the visual distraction of a WYSIWYG editor (which feels to me like writing on a galloping horse) or the two format situation of LaTeX (edit one format, read another).

Produced with SGG on with master5.dtpl.