There are many tools that can be used to write a book and prepare it for self publication. Microsoft Word, of course, is commonly used for this purpose, and LibreOffice Writer, a free, open-source alternative to Word, is rock solid.
Word processors, however, are not true typesetting systems, though they do a decent job if “good enough” is your aim. If your aim is a little higher, you need to move up a level.
The next level up from word processors is the tier of publishing systems that do a more nuanced, attractive, and professional-looking job of kerning and leading, especially for print books and PDFs with fully justified lines. Adobe InDesign, Adobe Framemaker, QuarkXPress, and Affinity Publisher are commercial products that offer this kind of quality. The open source world offers Scribus, as well as traditional text-based typesetting systems such as troff and LaTeX, two systems frequently lauded for their ability to produce beautiful typesetting. It’s your choice which typesetting program or system to use, but they all have a non-trivial learning curve.
As a self-published independent author myself, as well as being a retiree on a tight budget for software, I’m going to outline a way to produce great looking books and ebooks using a combination of free tools that work in Windows, MacOS, or Linux. These products and systems are not as widely used as Microsoft Word, and they have a reputation for being “techie,” but I think they’re accessible to anyone who is willing to take on a modest amount of learning.
The tools covered in this article are:
- Markdown text markup notation
- Google Docs
- LyX and LaTeX typesetting systems
- Sigil ebook editor
- Zotero bibliographic manager
These are the tools I used to produce Shift Happens: Essays on Technology, co-authored with my wife, Marion Turner Wilburn, in 2020, during the first wave of the Covid-19 pandemic. Shift Happens is an overview of many of the technologies of the past century that have shifted our lives, environment, and perceptions. We made it available in ebook, PDF, and printed book formats. Given the subject matter, we wanted to include a “Further Reading” bibliography. We wanted the references in the ebook format to provide hotlinks to the cited sources so that readers could simply tap or click on a link to jump to it. The tools we used made achieving this an easy task.
One input, multiple outputs
Markdown is an example of what are called text markup schemes — methods that allow you to add attributes and structure to plain text files, then run them through a document converter that translates the Markdown files into another format, such as HTML. The goal of Markdown is to create one set of master input files, such as chapters of your book, and from those create multiple outputs, whether ebooks, PDF documents, HTML pages, or printed books or reports.
Markdown is simple and easy to learn. For example, surrounding a word or phrase with asterisks, e.g., *italic* produces italic text. Double asterisks around **boldface** produce boldface. Other features follow similar patterns.
Furthermore, there are text editors that are designed specifically to help you with Markdown. Four of the best known are iA Writer, Byword, Ghostwriter, and Typora. They make italicizing a word or phrase as simple as pressing Ctrl-I, as in a word processor. All four have preview modes.
Although Markdown files are usually created in a text editor, you can use Markdown notation in a word processor such as Google Docs, then export your work as a plain-text Markdown file. We used Markdown this way when we wrote our book.
Work from anywhere
Google Docs is a brilliant collaboration tool. As we were writing the content of our book, we had many writing sessions where we both sat in the same room, each with a laptop on our laps, working back and forth through rough passages. We could see in real time the changes the other was making to the text and we would then decide whether to keep it or modify it further.
What made this possible is that Google Docs is a Cloud-based product that you can access from any browser or Google Docs app. The writing and editing of our book was done from a mix of Windows, Mac, Linux, Chromebook, and iPad computers. Having the content in the Cloud also protects it from computer hard disk failure or any other local calamity. There is comfort in knowing that content remains safe on the Web.
Another thing Google Docs is brilliant at is versioning, which it does automatically. We sometimes decided that we preferred an earlier version of what we had written, and we could go into a file’s document history and recover previous passages easily and painlessly.
We used Markdown inside Google Docs as our master documents for the project and any changes to our chapters were done there and nowhere else. Google Docs can export its files as plain text, and we exported them back as plain-text Markdown files once the chapters were finished.
From anywhere to anywhere
Pandoc is an open-source, command-line utility that is an impressive document converter — a Swiss-army knife that can convert a large number of document formats into other formats. We used it to convert plain-text Markdown files to LaTeX files and HTML files in preparation for final book production. It can even be used to convert Markdown files into other formats, such as Microsoft Word. Pandoc is available for Linux, MacOS, and Windows.
In use, Pandoc invoked from the command line, such as
$ pandoc -o chapter1.html chapter1.md
as an example of converting a Markdown file to an HTML file, or
$ pandoc -f markdown -t latex chapter1.md
to convert a Markdown file to a LaTeX file with the same base filename, e.g.
Lyx and LaTeX
LaTeX (pronounced LAY-tek) is a rich typesetting system available for all major operating systems. There are distributions of LaTeX available for easy installation in Windows (MikTeX), MacOS (MacTeX), and Linux (TeX Live). Often used for formal academic books, reports, conference proceedings, and theses, it has hooks for creating footnotes, end notes, bibliographical entries, and mathematical equations. Its output is gorgeous.
To be honest, though, LaTeX can be bewildering to a newcomer, and for this reason I highly recommend using LyX, a front-end word-processing-like editor that uses LaTeX as the back end for final output. LyX is easier to use than straight LaTeX — if you can use Word, you can use LyX, which comes with excellent help file documents. LyX, too, is available for Windows, Mac, and Linux computers. LyX and LaTeX were used to typeset the PDF and on-demand print versions of Shift Happens, and using them proved no more difficult than using a graphical DTP package.
In practice I used Pandoc to convert our Markdown text files to plain .tex files, and imported those into LyX. From inside LyX I adjusted margins, spacing, justification, chapter and section numbering, page size, gutter margin, kerning level, bibliography, and table of contents to create a 6x9" format trade book. I exported the result as a PDF file, ready to read, and also ready to upload to our on-demand book publisher Blurb. You may choose a different publisher such as Kindle Direct Publishing (KDP).
Getting it right
An Epub file can best be described as a zip file containing a miniature website. The contents of the zip container are HTML files, maybe some CSS files and some images in its /img directory, plus a manifest that lists all the files and graphics in the publication, as well as containing Epub metadata. If you want to create an Epub, or modify an existing one, you could scarcely do better than turn to Sigil, a terrific, free Epub editor.
One part of Sigil is an HTML editor displaying HTML code on the left, and live rendered output on the right, for comparison and direct editing. High-level menu options can be used to adjust heading levels, and attributes such as bold and italic. It is easy to create and test Internet links, and to include graphics. Sigil also makes it easy to split or combine chapters and sections. For Shift Happens we simply imported our individual chapter files in the HTML format created from our Markdown files by Pandoc, made a few adjustments where needed, and saved the results to Epub format. For the Amazon Kindle store, we used KDP to upload the finished Epub to convert to Amazon’s proprietary ebook format. The conversion was perfect.
By the way …
If you plan to publish a non-fiction book and intend to include a bibliography or “Further Reading” appendix, it’s useful to use some kind of bibliographic software that will store your references and format them according to one of the bibliographic style sheets that are used in the sciences, social sciences, and humanities. Zotero to the rescue.
Zotero describes itself as a “personal research assistant — a free, easy-to-use tool to help you collect, organize, cite, and share research.” It does a great job at this, allowing you to grow your references as you research topics. It has data entry screens, but best of all it can automatically create entries from a website and format them correctly. It is used directly on a computer and the results are syncronized with the Web version. It is also available as an add-on to most major browsers, and it can be integrated with Word, Google Docs and LibreOffice.
Zotero is a professional-grade package, up to the task of organizing and exporting references in accepted academic bibliographic citation styles. If all you need to do is create a simple bibliography and don’t need all of Zotero’s bells and whistles, you can use its simplified Web-based sister product, ZoteroBib.
The devil is in the details
Assembling these tools in Windows, MacOS, and Linux — downloading them for use on your book project — is as straightforward as any software installation. Although it may sound complicated to use several packages instead of just one or two, like Word and InDesign, the workflow smooths out as your familiarity with the software grows. Nonetheless, there is a learning curve involved and all the packages require attention to detail. The shift, for many users, is see your book as a logical structure, rather than a visual one. The software is guaranteed to produce visually beautiful output once you get the structure of your book down. The beauty of these products is that they work with anything from a simply structured novel to a complex academic book. Best of all, the products are free.