posted by Alcibiades on Tue 20th Dec 2005 18:40 UTC

"Book writing in Linux, 5"

When using the navigator, you can find sections very easily, but the only way to move them around is select-cut-paste. It doesn't support drag and drop.

The insertion and manipulation of graphics is possible but not intuitive. Tables are very easy to insert, but restricted in type. Don't, for instance, attempt to have a table with multiple line feeds in a cell.

Lyx seems rather robust in use. Force it to quit, for instance, by killing the process, and the file you are working on will become unusable, but an emergency file will be found in the same directory, and that is usable. It also makes a backup as you go along, and if you forget to save, will offer to use the more up to date copy on a reopen.

2. Leo

There are a great many programming oriented editors. At the extreme of simplicity, you have Gedit or Kedit, and at the extreme of complexity, Emacs or perhaps Vi. Leo is quite different from any of these. It is a programming editor written around the concept of Literate Programming, and has drawn a lot of its inspiration from More. It is the most powerful outliner available for Linux, apart perhaps from Vim Outliner, and unlike that, its outlining function is reasonably accessible to ordinary users. You do have to be aware if recommending this that you are using a programming editor for novel/book writing. So it is not going to be either what the author intended, or a perfect fit. In particular, a lot of the user's guide is going to be irrelevant or confusing. But despite this, it can still be the right tool for some people.

On starting Leo you see a three pane layout. The top right is a log window, containing messages that will be incomprehensible to our target users, the top left is a document structure window, and the bottom is the text entry window. This will probably have to be rearranged to show document structure on the left and text entry on the right, and the log window eliminated. Text entries are highlighted and colored in accordance with the requirements of Literate Programming; these have to be reset for our purpose.

Once this is done, you end up with a classic outliner. You can have nesting to any depth, which is expandable or collapsible at will, and you move sections around by select and drag. This is quite powerful and very easy to use, but there's a lot more.

The greater power of the program becomes clear from the cloning function. As the user's guide puts it ``Clones are useful for making alternate views of a program. For example, when I begin to fix a bug I clone all the sections of the code that relate to the bug, and place those cloned sections under a new headline whose name is the name of the bug I am fixing.''

Precisely the same thing may happen if one is writing a history, and wants to look at all the sections touching on, lets say, famine in 18th century France, or certain families. The power of cloning is that it lets you assemble all these parts in one place and go through them quickly, without either having to page through the entire document looking for them, or change the structure of the document.

All this comes at the price of some complexity. One will want to keep the target user well away from large sections of the UG, particularly those explaining tangling and untangling.

Leo supports document structure to the extent that the Outlining function does. It doesn't support footnotes, margin notes, Chapter headings. You cannot paste graphics into it. The text it generates is fairly accessible since the markup information is contained in the lead-in to the document, and is not scattered through the text. It has zero page layout functions.

Table of contents
  1. "Book writing in Linux, 1"
  2. "Book writing in Linux, 2"
  3. "Book writing in Linux, 3"
  4. "Book writing in Linux, 4"
  5. "Book writing in Linux, 5"
  6. "Book writing in Linux, 6"
  7. "Book writing in Linux, 7"
  8. "Book writing in Linux, 8"
e p (0)    73 Comment(s)