Wednesday, August 12, 2009

The Zim Desktop Wiki as a Storywriting Tool

There's plenty of programs available for anyone who wishes to write stories. Most often, the program used is a word processor such as Writer or M$ Word. Those programs are good choices, but are heavyweights. What if you need something simpler, and yet more capable? Then, let me introduce you to the Zim Desktop Wiki. It is a free and open source desktop notetaking application, similar to the Tomboy application. You can write note pages with simple markup in it, and hook up the pages with wiki links. However, Zim is much more suited to the task of writing a story, while Tomboy is too simple and too minimalist to be of practical use. So, we'll continue on with Zim.

(PS: for the anti-Mono folks out there, you will be pleased to know that Zim is written in Perl)

Let's get started. First, install zim with your distribution's package manager. Arch Linux, Fedora, Debian, and Ubuntu all have it on their repos. If it's not on your distro's repositories, or if you're on Windows, you can download it or its sources
here. Once installed, fire it up, and you'll see the launch window. Click on the "Add" button or press ALT-A to create a new notebook. These "notebooks" are a collection of related pages. Choose a directory (or folder) for the notebook to be stored in, and then name it. The other things are optional, and can be modified later from the launch window with the "Change" button. Press "OK" and you'll be taken back to the launch window. Double click on the entry for the notebook you just created, and then the main editing window will be brought up.

Now, at this point familiarize yourself with the interface some. At the top, you'll see some buttons (index, home, back, forward) for browsing and for formatting (link, bold, italic, underline, strike). You'll see a sidebar on the left, which will list your notebook's pages. If you don't see it, press F9 to show it, and press F9 again to hide it. And then you have a blank page. This is the "Home" page, which will usually serve as the table of contents. At the top is the header or title of the page, and below that is the date of creation.

To get started, type in "\diams" and space. You'll get a bullet-point to start things off with. Type out "Chapter One". From there, highlight the words you just typed and then press CTRL-L. The words will become a hyperlink. Click on the hyperlink or press ALT-Enter while the typing cursor is over it. You will be taken to a new page, titled Chapter one. Fill out a small little story, doesn't have to be good or anything, since we're just testing waters. Have a couple names of people and places included.

So, now what? What's the advantage over a full-fledged word processor, aside from having multiple documents? The advantage is the hyperlinking, which we will soon see. Highlight each name you have entered. Then, press CTRL-L like you had done on the first page. Each name is now a hyperlink. From here, you can create a page for each character in your story, giving background information on them, along with personal notes about their history, personality, likes and dislikes, all of that. Then, you can do the same for places, giving as much information or as little as you want about the places and their history. What about events or objects unique or relevant to the story? You can make pages for them as well.

So, what does this give you? An organized way to keep notes about your story, so that they can quickly be looked up at the click of a mouse. Many of the greatest novel writers, such as JRR Tolkien and Frank Herbert have kept extensive notes about their stories. They help greatly with keeping your storyline consistent. I've just touched on only a few of Zim's capabilities. There's many more to be discovered. There is plenty of documentation for it
here. And, to wrap things up, I will indicate one additional use for Zim. You can use it to create web pages, by exporting it all to html. Zim's own website was created this way. So, after your story is published, you can take the notes and use them to put together a website for your fans.

And, of course, there are many other uses for Zim as a note-taking application. You can also use it for research papers, documentation, custom content or rules for Dungeons & Dragons, or for creating simple web sites. For me, though, I use it for story writing, and I can say that it helps a ton. One of these days, though, I need to get around to publishing the aforementioned content for Dungeons and Dragons.


  1. Hey, thank you for this post. I tried out zim on Ubuntu 9.04 and it's quite nice.. I'll be using it from now on.

  2. Thanks for this article! I'm a zim convert, too.

    You might not know that there's an even easier way to make a bullet point than typing "\diams " -- you can just type "* " (asterisk+space) at the beginning of the line, and then you'll get a nice round bullet for a bullet point.