Langue: en

Version: 312270 (ubuntu - 07/07/09)

Section: 1 (Commandes utilisateur)


planfacile - A document compiler.


planfacile [options] [files]


PlanFacile is a document compiler, designed for table of contents computation. More precisely, PlanFacile considers that a document is a set of concepts linked by dependencies. PlanFacile generates a document using those ideas, sorted in order to read it from the begininng to the end with a minimum of cross references to further parts of the document.

PlanFacile generates only non-formated documents, such as HTML or LaTeX sources.


For a common use of PlanFacile, it is not necessary to know all the language of PlanFacile. The goal of this section is to present the minimum necessary to know how to write a document.


Ideas A document, as said before, is a set of ideas the author wants to communicate to the reader. One idea is a part of the document that can be represented by a title. For example, if the writer sees that one title does not accurately represent the text of the same idea, he should just make sure that two concepts are not put in one #idea command... The syntax of an idea is quite simple :




Also, some ideas are dependent in one document, so they are linked by dependencies (See paragraph Dependencies).

Automatic ideas Sometimes, PlanFacile adds an idea to the document. In that case, the writer can replace the default text by an idea that suits the document. To do this, there are two commands, which are like #idea :




The index parameter is given by PlanFacile, in the default message...

In the same way :

#generic{parent reference}{reference}title#text



Dependencies In a document with ideas about the same subject, it is quite natural that ideas need some of the others to be understood by the reader. This relation is a dependency between ideas.

If the writer puts a dependency in the text of idea A to the idea B, this means that the reader will need to understand idea B before reading idea A in order to understand this last idea.

The syntax of a dependency, in its simplest form, is :


However, the writer may need to add a positive number to specify the weighting of the dependency if the organisation of the document is not the right one, even if the writer has put the correct dependencies :


The reference must be one of the words used in the #idea command.

Complete source code

The ideas are not sufficient to produce a document. To complete a source code, the writer needs to learn a bit more about the language of PlanFacile.

Standard The first command of the source can be #standard, that indicates to PlanFacile to load standard definitions, to be able to produce a document in LaTeX or in HTML (more formats will be present in the future).

Options and macros When the writer uses the command #standard, the compiler will be able to generate all formats. The writer must indicate his choice with some commands.

A choice, such as the output format, can be set with an option :


and a text parameter can be set with a macro, for a very specific use :



PlanFacile uses 36 options to modify its behavior. Listing all of these here is not interesting, as the -h option gives some help about all options.

Some options are often useful :

-o output file specify the output file, to write the document ;

-O option define a compiler option, as the #option command. Then the user has the possibility to set some parameters at the time of compilation ;

-d ignore invalid dependencies. Useful when the writer wants to compile a part of a document, to check if this part is error free ;

-A ignore undefined automatic ideas. Sometimes, PlanFacile adds some ideas to complete the document. This option avoids an error when an automatic idea appears.


See also latex(1), xpdf(1), firefox(1), lynx(1).


If you have a problem that you can not solve by reading the documentation, or if you find a bug, you can send an email to and we will send a reply as quickly as possible.