Using VS Code for writing novels

Alessio Corridori
5 min readJan 27, 2020

--

Visual Studio Code is a powerful and popular source-code editor developed by Microsoft. As a web app designer, I start to use it since one of the first releases in 2016. Later in the years, I began to use it not just for writing code, but also for writing fictions.

Here are some reasons why you should consider to use Visual Studio Code for storytelling.

1. It’s Free and Multiplatform

VS Code runs on Windows, Linux, and macOS. It’s lightweight enough to work without any problems even on not so powerful computers. I successfully installed a custom build even on a Raspberry Pi 3 board.

2. You can set up the look

Probably you’ll spend a lot of time in front of your writing app, so it’s better if it looks good.
Developers all around the world have designed a massive amount of free different color themes. They alter the look-and-feel of the application dramatically, and you can change them according to the time or place you’re working or (suggestion) to the mood of the story.
The web site vscodethemes.com shows the preview of the most popular themes.
The one I’m using usually it’s the Gruvbox Material Dark Hard Flat.

Example of three different themes.

3. Markdown editing

Markdown is a popular way to style the text, control the display of the document, and formatting words.
VS Code supports Markdown natively (just save the file with the .md extension) and has a lot of plugin for extending the basic syntax or functionalities. One of the most helpful? Markdown PDF, that converts Markdown files to pdf, Html, png, or jpeg files.
The standard preview can be easily customized, working a little with code.

Markdown with customized preview.

4. Multicolumn layout

Working on a novel requires a lot of written down records: characters, locations, plot points, or just “out of context” ideas.
VS Code editor can be split horizontally or vertically into two or even three parts.
Loading a different file on each column, let you consulting or taking notes on-the-fly without leaving the chapter you’re writing.
Two different columns can even contain the same file; this is super useful when you need to check something up and down on the text and don’t want to lose the line you are writing in.

Two-column layout: characters description and novel’s chapter opened side by side.

5. Spellcheck

Spell Right is a multilingual, offline, and lightweight spellchecker for VS Code. The beauty of this plugin is that it can be activated and deactivated with a click. Usually, while writing the first draft, I disable spellcheck not to be distracted by error warnings.
Spellcheck in different language combinations at the same time can also be enabled.

Spellcheck options menu

6. Minimap

The minimap shows the structure of the document. It displays an outline visual reference of paragraphs distribution and comes in handy to navigate long texts.

Minimap gives you a high-level overview of the document

7. Searching tools

Designed as a code editor, VS Code has advanced built-in search functionalities.
When you search for a word, for example, the tool not just count the occurrences founded, but show their position and distribution on the minimap.

The little dots on the right of the minimap show how many times I used the word “ghiaccio” (ice). Probably too much…

8. Zen writing

Are you distracted or annoyed by menus, tools, or by the OS taskbar?
Don’t worry. The Zen Mode hides all the interface and leaves only your document in full screen and centered layout.

Zen Mode: the page width can be adjusted by dragging the border.

9. Words Counting

If you need to track your work or have an idea of the length of your novel VS Code has some plugins that count the words and estimates the total reading time. Word Count is the one I’m using.

Words count and reading time on the status bar

10. Version Control

VS Code has integrated source control and includes Git support in-the-box.
In a straightforward explanation, Git is a free and open-source distributed version control system designed to handle changes in the software.
It’s a specific tool for developer, but can be a lifesaver for writers too.
While editing or revisioning your text, the “viewing diffs” function compares the old version with the new one and displays the differences.

11. Screenwriting with Fountain

Fountain is a simple markup syntax for writing, editing, and sharing screenplays in plain, human-readable text.
VS Code supports the language with a plugin that shows a live preview of the screenplay while your writing, like happened with Markdown.

Conclusions

Coding consists of writing structured, meaningful text for computers, and VS Code is an excellent code editor.
Give it a chance also for writing meaningful text for humans.

As a non-native English speaker, I hope my writing doesn’t sound too (much) weird, and these simple tips may be useful to you.
Every screen capture was made from my computer, and the text (in Italian) shows drafts of my works.

--

--