Hacking free software for creative writing
Creative Writing
Some tools designed for programming can also be very helpful for writing fiction. A few to look at include personal wikis, random word generators, and version control tools.
One of the most important lessons I have learned from using free software is the ability to improvise. Although I am not a developer, I long ago learned to hunt for useful scripts and adapt them for my own purposes. However, it is only recently that I realized that, with a little improvisation, tools designed for programming can be made useful for writing fiction.
Some free software, of course, is already designed for use by writers. Although a sadly high number of users have yet to learn that, as Robin Williams said in the title of her book, The PC is Not A Typewriter [1], LibreOffice is designed for writers of long documents. Similarly, Calc, like any spreadsheet, is ideal for outlining scenes and for keeping track of more abstract elements of storytelling, such as the phases of the moon or the course of a character's illness. However, the repositories of free software also contain some less obvious tools that are useful for writers, including those detailed below.
Personal Wikis
Wikis are popular for free software projects. However, individuals also find them useful for many other purposes, which is why the personal wiki has become common. For writers, personal wiki files are useful because they can be linked and lightly formatted, which is a more reliable way to organize background information like the biography of characters than relying on directory and subdirectory structures. Countless personal wikis are available, but VimWiki [2] is a command-line option that is easy to learn, while Zim [3] offers the same advantage on the desktop (Figure 1).
Coining Fantasy Names
Invented names are an important part of fantasy and science fiction. Gamers often use online databases, but a writer needs something more original. But how to generate names that can be easily pronounced? One useful tool is a random word generator like xkcdpass [4].
Xkcdpass is a password generator named for the famous xkcd comic that suggests that a string of random words can be used for strong passwords. By default, xkcdpass generates five random words that can also be used for name coining. For example, say xkcdpass generates:
limelight diary deepen recovery collected
From these five words, I could generate names like Diardeep, Deeplim, Colvery, and Rylight, adding more until inspiration fails and I generate a new set of random words.
Using xkcdpass's options, I could vary the number and length of the generated words. If I wanted to use a particular string – for instance, "skul" to suggest something sinister – I could choose to generate only words that contained that string. And if the words sound too English? Then with the option --wordfile=WORDFILE
, I could use the dictionary for another language. Xkcdpass currently supports Finnish, French, German, Italian, Norwegian, Portuguese, and Spanish, and it would be relatively easy to create a new dictionary by copying and pasting other dictionary systems.
Version Control Tools
For most writers, version control is haphazard. A common joke is that a writer's files will be a collection of names like final.odt
, 2nd-final.odt
, and absolutely-final.odt
. Version control systems like Git [5] and Mercurial [6] have never been widely used by writers because of the difficulty of using them with office suite files.
However, with a little searching and the recent release of diffoscope, version control is now possible (more on diffoscope below). Admittedly, merging files remains mostly manual, but I find that is what I prefer anyway. The most useful feature of version control is the existence of multiple branches, so that the relation of one draft to another is easily detectable (Figure 2). Despite the fact that a command like git
has dozens of options, a writer's needs are relatively simply, which allows the basic workflow to be learnable in less than an hour.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Endless OS 6 has Arrived
After more than a year since the last update, the latest release of Endless OS is now available for general usage.
-
Fedora Asahi 40 Remix Available for Macs with Apple Silicon
If you've been anticipating KDE's Plasma 6 for your Apple Silicon-powered Mac, then you're in luck.
-
Red Hat Adds New Deployment Option for Enterprise Linux Platforms
Red Hat has re-imagined enterprise Linux for an AI future with Image Mode.
-
OSJH and LPI Release 2024 Open Source Pros Job Survey Results
See what open source professionals look for in a new role.
-
Proton 9.0-1 Released to Improve Gaming with Steam
The latest release of Proton 9 adds several improvements and fixes an issue that has been problematic for Linux users.
-
So Long Neofetch and Thanks for the Info
Today is a day that every Linux user who enjoys bragging about their system(s) will mourn, as Neofetch has come to an end.
-
Ubuntu 24.04 Comes with a “Flaw"
If you're thinking you might want to upgrade from your current Ubuntu release to the latest, there's something you might want to consider before doing so.
-
Canonical Releases Ubuntu 24.04
After a brief pause because of the XZ vulnerability, Ubuntu 24.04 is now available for install.
-
Linux Servers Targeted by Akira Ransomware
A group of bad actors who have already extorted $42 million have their sights set on the Linux platform.
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.