November 15, 2007

Kile rationalizes LaTeX

Author: Bruce Byfield

You can think of Kile as an IDE for the LaTeX document layout system. Instead of requiring you to learn a considerable amount of markup language, as LaTeX itself does, or providing you with a graphical interface that hides you from the complexity, as Lyx does, Kile automates the process of working with LaTeX while keeping the markup visible. This arrangement makes Kile an ideal way for beginners to learn LaTeX, as well as a convenient and efficient way for more advanced users to work with LaTeX.

Designed for KDE, Kile is available directly from many major distributions' repositories. However, you should also install viewers for DVI, PostScript and PDF, such as KDVI, KGhostview, and KPDF, so that you can view Kile's most common and useful output file formats.

The interface

The basics of Kile are mostly obvious as soon as the program opens. On the left is a multipurpose pane. Its 10 views are available from buttons to its right, with the button for the current view expanded and displaying text. The default view is a file manager, from which you can click on a .tex file to open it in the main editing window. However, you can use the same pane to show a tree view of the document structure or insert a variety of symbols, including special characters, arrows, relationships, delimiters, and Greek characters, as well as advanced LaTeX commands.

To the right of the multipurpose pane is the main editing pane, with a tab for each open document. The main editing pane displays markup and content, with a tree structure for collapsing or expanding different parts of the document. Additional markup is available from the toolbar, which sports many buttons reminiscent of those in a word processor, such as those for font weights and lists, and others for basic formulas and for searching for errors after an unsuccessful effort to compile output.

Below the editing pane is a third pane with tabs for log messages about the document you are building and compile errors for output, as well as a tab for a console.

Work flow

Starting a document in Kile is similar to starting one in KWord. When you select File - > New, you can choose from a number of basic document templates, ranging from an article or book to a letter or a presentation constructed using Latex-Beamer. Alternatively, you can open an empty document, either defining its basic characteristics through the Quick Start dialog or beginning with a genuinely blank document by pressing the Cancel button in the dialog -- a choice that only those comfortable with LaTeX should try, since even basic document structure is not provided with this choice.

Once the document is defined, adding content is much the same as in a word processor. You can check spelling by selecting Tools -> Spelling, or get a word count from File -> Statistics, in which your content is carefully delineated separately from LaTeX commands and environment definitions. You can create a master document to make working on a long piece of work easier by subdividing it into a number of smaller files.

The main difference is the visibility of markup, and the lack of any direct WYSIWYG display. If you want to see what your document will look like at any point, you need to compile it (see below), then select Build -> View -> ViewDVI or press Alt-3 to open it in a DVI viewer. However, what may surprise new users is how quickly they stop worrying about the exact look of the document -- the longer they use Kile, the truer the LaTeX user's credo that the system helps them to focus on content seems to become.

Another difference is that major structural elements ranging from paragraphs and sections through to tables of contents and bibliographical elements are built with structures entered from the LaTeX menu or the toolbar buttons. This arrangement helps new users to see how a LaTeX document is constructed, and, for more experienced users, has the advantage of being less error-prone than manual typing of markup.

When you are finished entering content or wish to see what the document looks like so far, you must save the document, then compile it from the Build -> Compile submenu. Kile outputs to a number of formats, ranging from TeX and LaTeX to DocBook, HTML, and PDF (the format use to display a LaTeX-Beamer presentation). Alternatively, you can select File -> Print to save the document to PostScript, or to print to paper.

You can see the results of your compile in the bottom pane. If the document contains any errors or warnings, you can use the items in the bottom of the Build menu or the buttons on the toolbar to skip directly to each error so that you can correct them. However, before you do, you might want to enable View -> Show Line Numbers to keep yourself oriented. After you have corrected any errors, compile again, repeating the process until Kile reports no errors.

Especially when you are first starting out, you should consider compiling often, particularly when you are trying new formats. That way, you learn what you are doing and avoid having to correct countless errors of the same type.

Limitations and advantages

If you are a new user, the advantage of Kile is that it can quickly help you gain a basic competence in LaTeX. Instead of having to remember or look up commands, you can enter them from a menu. Similarly, instead of worrying about whether you have created a basic document correctly, you can see from the template exactly what the basic structure should be, as well as the various options available to you.

However, what Kile (or to be fair, any program) cannot do is reduce the overall complexity of LaTeX. Even when commands are available from the left pane or a menu, LaTex remains a complicated program that takes time to master. In fact, the available options can be overwhelming, even in Kile. But what Kile does do is give you a context in which you can easily expand your knowledge of LaTeX, free of any worry about syntax errors or the unfocused feeling that many users get when confronted with such complexity.

In effect, Kile does for LaTeX what LaTeX does for word processing: It allows you to concentrate on your immediate concerns, ignoring the looming complexity until you have need of it. It's a rationalization of LaTeX that preserves much of the intent of LaTeX while making the system more accessible to everyone.


  • Desktop Software