Organizing Your Information with Zim Desktop Wiki

(Note: This article was originally published, in a slightly different form, at and appears here via a CC-BY-SA 4.0 license.)

There’s no denying the usefulness of a wiki, even to a non-geek. You can do so much with one — write notes and drafts, collaborate on projects, share information, build complete websites. And much more.

I’ve used more than a few wikis over the years, either for my own work or at various contract and full-time gigs I’ve held. While traditional wikis are fine, I really like the idea of desktop wikis. They’re small, easy to install and maintain, and even easier to use. And, as you’ve probably guessed, there are a number a desktop wikis available for Linux.

Let’s take a look at one of the better ones: Zim.

Getting Going

You can either download and install Zim from the software’s website, or do it the easy way and install it through your Linux distribution’s package manager.

Once Zim’s installed, start it up.

A key concept in Zim is the notebook. A notebook is like a collection of wiki pages on a single subject. When you first start Zim, it asks you to specify a folder for your notebooks and the name of your first notebook. Zim suggests Notes for the name, and ~/Notebooks/ for the folder. Change that if you want to. I did.

Adding a notebook in Zim

After you set the name and the folder for your notebook, click OK. You get what’s essentially a container for your wiki pages.

An empty note in Zim

Adding Pages to a Notebook

So you have a container. Now what? Start adding pages to it. To do that, select File > New Page.

Adding a page to a notebook in Zim

Enter a name for the page, then click OK. From there, you can start typing.

Starting a note in Zim

That page can be whatever you want it to be: notes for a course you’re taking, the outline for a book or article or essay, or an inventory of your books. It’s up to you.

Zim has a number of formatting options, including:

You can also add images and attach files to your wiki pages, and even pull in text from a text file.

Zim’s Wiki Syntax

You can add formatting to a page using the toolbar, but that’s not the only way to do the deed. If, like me, you’re kind of old school, you can use wiki markup for formatting.

Zim’s markup is based on the markup that’s used with DokuWiki. It’s essentially WikiText with a few minor variations. To create a bullet list, for example, type an asterisk. Surround a word or a phrase with two asterisks to make it bold.

If you have a number of pages in a notebook, it’s easy to link them. There are two ways to do that.

The first way is to use CamelCase to name the pages. Let’s say I have a notebook called Newsletter. I can rename the notebook for my weekly letter by typing WeeklyMusings. When I want to link to it from another page in the notebook, I just type WeeklyMusings and press the space bar. Instant hyperlink.

The second way is to click the Insert link button on the toolbar. Type the name of the page you want to link to in the Link to field, select it from the displayed list of options, then click Link.

Adding a notebook in Zim

I’ve only been able to link between pages in the same notebook. Whenever I’ve tried to link to a page in another notebook, the file (which has the extension .txt) always opens in a text editor.

Exporting Your Wiki Pages

There might come a time when you want to use the information in a notebook elsewhere—say, in a document or on a web page. Instead of copying and pasting (and losing formatting), you can export your notebook pages to any of the following formats:

To do that, click on the wiki page you want to export. Then, select File > Export. Decide whether to export the whole notebook or just a single page, then click Forward.

The first window in Zim's export wizard

Select the file format in which to save the page or notebook. With HTML and LaTeX, you can choose a template. Play around to see what works best for you. For example, to turn your wiki pages into HTML presentation slides, you can choose SlideShow_s5 from the Template list. If you’re wondering, that produces slides driven by the S5 slide framework.

The second window in Zim's export wizard

Click Forward. If you’re exporting a notebook, you can export the pages as individual files or as one file. You can also point to the folder in which to save the exported file.

The third window in Zim's export wizard

Is That All Zim Can Do?

Not even close. Zim also has a number of plugins that expand its capabilities. It even packs a built-in web server that lets you view your notebooks as static HTML files. This is useful for sharing your pages and notebooks on an internal network.

All in all, Zim is a powerful, yet compact tool for managing your information. It’s easily the best desktop wiki I’ve used.