There is a high need for good documentation on TeXmacs as well as people who are willing to translate the existing documentation into other languages. The aim of this site is to provide high quality documentation. Therefore, you should carefully read the guide-lines on how to write such documentation.
High quality documentation is both a matter of content and structure. The content itself has to be as pedagogic as possible for the targeted group of readers. In order to achieve this, you should not hesitate to provide enough examples and illustrative screen shots whenever adequate. Although the documentation is not necessarily meant to be complete, we do aim at providing relatively stable documentation. In particular, you should have checked your text against spelling errors.
It is also important that you give your documentation as much structure as possible, using special markup from the tmdoc style file. This structure can be used in order to automatically compile printable books from your documentation, to make it suitable for different ways of viewing, or to make it possible to efficiently search a certain type of information in the documentation. In particular, you should always provide copyright and license information, as well as indications on how to traverse your documentation, if it contains many files.
When selecting the tmdoc
document style, the top level
The present TeXmacs documentation is currently maintained on texmacs.org using
https://www.texmacs.org/tmweb/download/svn.en.html
In fact, SVN is not ideal for our documentation purpose, because it is not very dynamic. In the future, we plan to create a dedicated publication website, which will allow you to save documents directly to the web. It should also allow the automatic conversion of the documentation to other formats, the compilation of books, etc.
Most documentation should be organized as a function of the topic in a directory tree. The subdirectories of the top directory are the following:
Various information about the TeXmacs system (authors, changes, etc.).
Documentation for developers.
The main documentation.
Please try to keep the number of entries per directory reasonably small.
File names in the main directory should be of the form type-name.language.tm. In the other directories, they are of the form name.language.tm. Here type is a major indication for the type of documentation; it should be one of the following:
For inclusion in the TeXmacs manual.
For inclusion in the TeXmacs tutorial.
You should try to keep the documentation on the same topic together, regardless of the type. Indeed, this allows you to find more easily all existing documentation on a particular topic. Also, it may happen that you want to include some documentation which was initially meant for the tutorial in the manual. The language in which is the documentation has been written should be a two letter code like en, fr, etc. The main name of your file should be the same for the translations in other languages. For instance, man-keyboard.en.tm should not be translated as man-clavier.fr.tm.
Appropriate meta data for TeXmacs documentation can be entered from
the
All TeXmacs documentation falls under the GNU Free Documentation License. If you want your documentation to be included in TeXmacs, then you have to agree that it will be distributed under this license too. The license information
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
should be specified at the end of each file. This can be done
by clicking on
In a similar manner, you may add a copyright notice by clicking on
As a general rule, you should avoid the use of sectioning commands inside the TeXmacs documentation and try to write small help pages on well identified topics. At a second stage, you should write recursive “meta help files” which indicate how to traverse the documentation in an automatic way. This allows the reuse of a help page for different purposes (a printed manual, a web-oriented tutorial, etc.).
The tmdoc style provides three
markup macros for indicating how to traverse documentation. The
Typically, at the end of a meta help file you will find several
Besides the copyright information macros and traversal macros, which have been documented before, the tmdoc style comes with a certain number of other macros and functions, which you should use whenever appropriate.
Notice that the tmdoc style
inherits from the generic
style, so you should use macros like
The main environment which is used for explanations of macros,
environment variables,
The
In this example, we used
The function
In this example, we notice that all
The following markup elements can be used in order to describe various graphical user interface elements, such as keyboard shortcuts, menus or icons.
This macro is used to indicate a keyboard shortcut for a
This unary macro is used for explicit keyboard input. For instance, when giving A C-b return as argument, the result is Shift+ACtrl+BReturn.
This function with an arbitrary number of arguments indicates a menu
like
Consider the following sentence:
In this example, the menu entries
Can be used in order to specify one of the TeXmacs icons, such as and . The macro takes one argument with the file name of the icon (the full path is not needed).
Similar to the
This macro can be used to indicate a cursor position, as in .
This macro can be used for indicating the visual aids around the current focus and the further outer context (e.g. ), in the case of inline elements.
Block versions of
Notice that the contents of none of the above tags should be translated into foreign languages. Indeed, for menu tags, the translations are done automatically, so as to keep the translations synchronized with the translations of the actual TeXmacs menus. In the cases of markup, styles, packages and d.t.d.s, it is important to keep the original name, because it often corresponds to a file name.
The
This macro is used in order to indicate a macro or a function like
This macro should be used in order to indicate macro arguments such as body.
This macro is used for the indication of environment variables such as font-size.
This macro is used in order to indicate a length such as 12em.
Some other potentially useful macros are the following:
For indicating some TeXmacs document fragment. This macro is especially useful for TeXmacs source code, as in
<assign|red-text|<macro|body|<with|color|red|body>>>
In this example, we used the keyboard shortcut Meta+- in order to deactivate the source code inside an active outer document.
For descriptive tables; such tables can be used to document lists of keyboard shortcuts, different types of markup, etc.