Home | | Help | Contribute | Plug-ins | About | Contact | Search
About TeXmacs
Manual | Top | Previous | Next


GNU TeXmacs
Installed version 1.99.5
Supported systems Most GNU/Linux systems
Copyright ľ 1998–2002 by Joris van der Hoeven
License GNU General Public License
Web sites
Contact contact@texmacs.org
Regular mail
Dr. Joris van der Hoeven
Dépt. de Mathématiques (Bât. 425)
Université Paris-Sud
91405 Orsay Cedex

Table 1. Summary of the principal information about GNU TeXmacs.

2.The philosophy behind TeXmacs

2.1.A short description of GNU TeXmacs

GNU TeXmacs is a free wysiwyw (what you see is what you want) editing platform with special features for scientists. The software aims to provide a unified and user friendly framework for editing structured documents with different types of content (text, graphics, mathematics, interactive content, etc.). The rendering engine uses high-quality typesetting algorithms so as to produce professionally looking documents, which can either be printed out or presented from a laptop.

The software includes a text editor with support for mathematical formulas, a small technical picture editor and a tool for making presentations from a laptop. Moreover, TeXmacs can be used as an interface for many external systems for computer algebra, numerical analysis, statistics, etc. New presentation styles can be written by the user and new features can be added to the editor using the Scheme extension language. A native spreadsheet and tools for collaborative authoring are planned for later.

TeXmacs runs on all major Unix platforms and Windows. Documents can be saved in TeXmacs, Xml or Scheme format and printed as Postscript or Pdf files. Converters exist for TeX/LaTeX and Html/Mathml.

GNU TeXmacs is hosted by INRIA, Bâtiment Allan Turing, Palaiseau, France.

2.2.Why freedom is important for scientists

One major objective of TeXmacs is to promote the development of free software for and by scientists, by significantly reducing the cost of producing high quality user interfaces. If you plan to write an interface between TeXmacs and other software, then please contact us.

As a mathematician, I am deeply convinced that only free programs are acceptable from a scientific point of view. I see two main reasons for this:

However, it is strange, and a shame, that the main mathematical programs which are currently being used are proprietary. The main reason for this is that mathematicians often do not consider programming as a full scientific activity. Consequently, the development of useful software is delegated to “engineers” and the resulting programs are used as black boxes.

This subdivision of scientific activity is very artificial: it is often very important from a scientific point of view to know what there is in the black box. Inversely, deep scientific understanding usually leads to the production of better software. Consequently, I think that scientists should advocate the development of software as a full scientific activity, comparable to writing articles. Then it is clear too that such software should be diffused in a way which is compatible with the requirements of science: public availability, reproducibility and free usability.

3.The authors of TeXmacs

The GNU TeXmacs system, which is part of the GNU project, was designed and written by Joris van der Hoeven. The system was inspired both by the TeX system, written by D. Knuth, and by Emacs, written by R. Stallman. Special thanks goes to them, as well as to the C.N.R.S. (the French national institute for scientific research), which employs me and authorized me to freely distribute this program. Further thanks go to the contributors below.

3.1.Developers of TeXmacs

3.2.Authors and maintainers of plugins for TeXmacs


Yann Dirson and Emmanuël Corcelle.


Andrey Grozin, Bill Page, David Mentré and Tim Daly.


Kasper Peeters.


Michael Graffam.


Michael Graffam.


Nicolas Ratier.


Mark Arrasmith.


Maarten Wegewijs.


Bernard Parisse.


Stephan Mucha.


Jorik Blaas.


Stefan Weinzierl.


Michael Graffam.

Macaulay 2

Dan Grayson.


Joris van der Hoeven.


Joris van der Hoeven and Grégoire Lecerf.


Michael Graffam.


Andrey Grozin and James Amundson.


Christopher Creutzig and Andrey Grozin.


Michael Graffam.


Karim Belabas.


Ero Carrera.


Andrey Grozin.


Michael Lachmann.


Andrey Grozin.


François Poulain, Serge Steer and Claude Gomez.


Joris van der Hoeven.


Emmanuël Corcelle.


Nicolas Ratier.


Ayal Pinkus.

3.3.Administration of TeXmacs and material support

3.4.Porting TeXmacs to other platforms

3.5.Contributors to TeXmacs packages

3.6.Internationalization of TeXmacs


Chu-Ching Huang and Zou-Hu.


Luka Marohnić.


David Rezac.


Magnus Marius Rohde.


Joris van der Hoeven.


Teemu Ikonen.


Michèle Garoche, Joris van der Hoeven.


Dietmar Jung, Hans Dembinski, Jan Ulrich Hasecke, Christoph Strobel, Joris van der Hoeven, Thomas Langen, Ralf Treinen.


Alkis Akritas.


András Kadinger.


Andrea Centomo, Lucia Gecchelin, Xav and Daniele Pighin, Gian Luigi Gragnani.


Nobuki Takayama.


Karnes Kim.


Robert Janusz, Emil Nowak, Jan Alboszta.


Ramiro Brito Willmersdorf, Márcio Laurini, Alexandre Taschetto de Castro.


Dan Ignat.


Andrey Grozin.


Ziga Kranjec.


Álvaro Cantero Tejero, Pablo Ruiz Múzquiz, David Moriano Garcia, Offray Vladimir Luna Cárdenas.


Harald Ellmann.


Chu-Ching Huang.


Volodymyr Lisivka.

3.7.Other contributors

Final thanks go to all others who have contributed to TeXmacs, for instance by sending bug reports or by giving suggestions for future releases: Alexandre Abbes, Alessio Abogani, Aaron Acton, Till Adam, Murali Agastya, Eizo Akiyama, Javed Alam, Doublet Alban, Michele Alessandrin, Guillaume Allègre, Andreas Almroth, Tom Alsberg, James Amundson, Piero D'Ancona, Daniel Andor, Ayal Anis, Larry D'Anna, Javier Arantegui Jimenez, André Arnold, Uwe Assmann, Philippe Audebaud, Daniel Augot, Olaf Bachmann, Franky Backeljauw, Nick Bailey, Adrian Soto Banuelos, Pierre Barbier de Reuille, Marc Barisch, Giovanni Maniscalco Basile, Claude Baudouin, Marten Bauer, Luc Béhar, Roman Belenov, Odile Bénassy, Paul Benham, Roy C. Bentley, Attila Bergou, Christophe Bernard, Konrad Bernloehr, Karl Berry, Matthias Berth, Matteo Bertini, Cédric Bertolini, Matthew Bettencourt, Raktim Bhattacharya, Giovanni Biczó, Anne-Laure Biolley, Benedikt Birkenbach, Jim Blandy, Sören Blom, François Bochatay, Christof Boeckler, Anton Bolfing, Robert Borys, Didier Le Botlan, Mohsen Bouaissa, Thierry Bouche, Adrien Bourdet, Michel Brabants, Didier Bretin, Jean-Yves Briend, Henrik Brink, Simon Britnell, Alexander M. Budge, Daniel Bump, Yoel Callev, José Cano, Charles James Leonardo Quarra Cappiello, Patrick Cardona, Niclas Carlsson, Dominique Caron, António Carvalho, Michel Castagner, Topher Cawlfield, Carlo Cecati, Beni Cherniavsky, Kuo-Ping Chiao, Teddy Fen-Chong, Henri Cohen, Johann Cohen-Tanugi, Dominique Colnet, Vincenzo Colosimo, Claire M. Connelly, Christoph Conrad, Riccardo Corradini, Paulo Correia, Olivier Cortes, Robert J. Cristel, Maxime Curioni, Allan Curtis, Jason Dagit, Stefano Dal Pra, Thierry Dalon, François Dausseur, Jon Davidson, Mike Davidson, Thomas Delzant, Jean-Pierre Demailly, Peter Denisevich, Alessio Dessi, Benno Dielmann, Lucas Dixon, Mikael Djurfeldt, Gabriel Dos Reis, Alban Doublet, Steingrim Dovland, Michael John Downes, Benjamin Drieu, Jose Duato, Amit Dubey, Daniel Duparc, Guillaume Duval, Tim Ebringer, Dirk Eddelbuettel, Magnus Ekdahl, Ulf Ekström, Sreedhar Ellisetty, Luis A. Escobar, Thomas Esser, Stephan Fabel, Robin Fairbairns, Tony Falcone, Vladimir Fedonov, Hilaire Fernandes, Ken Feyl, Jens Finke, Thomas Fischbacher, Juan Flynn, Cedric Foellmi, Enrico Forestieri, Ted Forringer, Christian Forster, Charlie Fortner, Stefan Freinatis, Michael P Friedlander, Nils Frohberg, Rudi Gaelzer, Maciej Gajewski, Lionel Garnier, Philippe Gogol, Björn Gohla, Patrick Gonzalez, Nirmal Govind, Albert Graef, Michael Graffam, Klaus Graichen, Ian Grant, Frédéric Grasset, Guido Grazioli, Wilco Greven, Cyril Grunspan, Laurent Guillon, Yves Guillou, Tae-Won Ha, Harri Haataja, Sébastien Hache, Irwan Hadi, James W. Haefner, Sam Halliday, Ola Hamfors, Aaron Hammack, Guillaume Hanrot, Alexander K. Hansen, Peter I. Hansen, Zaid Harchaoui, Jesper Harder, Philipp Hartmann, P. L. Hayes, Karl M. Hegbloom, Jochen Heinloth, Gunnar Hellmund, Ralf Hemmecke, Roy Henk, John Hernlund, Alain Herreman, Alexander Heuer, Johannes Hirn, Santiago Hirschfeld, Andreas Horn, Peter Horn, Chu-Ching Huang, Sylvain Huet, Ed Hurst, Karl Jarrod Hyder, Richard Ibbotson, Benjamin T. Ingram, Alexander Isacson, Michael Ivanov, Vladimir G. Ivanovic, Maik Jablonski, Frederic de Jaeger, Pierre Jarillon, Neil Jerram, Paul E. Johnson, Pierre-Henri Jondot, Peter Jung, Mukund S. Kalisi, Antoun Kanawati, Yarden Katz, Tim Kaulmann, Bernhard Keil, Samuel Kemp, Jeremy Kephart, Michael Kettner, Salman Khilji, Iwao Kimura, Simon Kirkby, Ronny Klein, Peter Koepke, Matthias Koeppe, John Kollar, Denis Kovacs, Jeff Kowalczyk, Dmitri Kozionov, Ralph Krause, Neel Krishnaswami, Friedrich Laher, Winter Laite, Anthony Lander, Russell Lang, David Latreyte, Christopher Lee, Milan Lehocky, Torsten Leidig, Patrick Lenz, Kalle Lertola, Tristan Ley, Joerg Lippmann, Marc Longo, Pierre Lorenzon, Ralph Lõvi, V. S. Lugovsky, Gregory Lussiana, Bud Maddock, Duraid Madina, Camm Maguire, Yael Maguire, Paul Magwene, Jeremiah Mahler, Vincent Maillot, Giacomo Mallucci, Lionel Elie Mamane, Sourav K. Mandal, Andy P. Manners, Yun Mao, Chris Marcellin, Sylvain Marchand, Bernd Markgraf, Eric Marsden, Chris Marston, Evan Martin, Carlos Dehesa Martínez, Paulo Jorge de Oliveira Cantante de Matos, Tom McArdell, Alisdair McDiarmid, Bob McElrath, Robert Medeiros, Phil Mendelsohn, Sébastien de Menten, Jean-Michel Mermet, Jon Merriman, Herve le Meur, Ingolf Meyer, Amir Michail, Franck Michel, Arkadiusz Miśkiewicz, Sasha Mitelman, Dirk Moebius, Jack Moffitt, Jan David Mol, Klaus-Dieter Möller, Harvey Monder, Juan Fresneda Montano, André Moreau, Guillaume Morin, Julian Morrison, Bernard Mourrain, Stephan Mucha, Toby Muhlhofer, Vijayendra Munikoti, Nathan Myers, Norbert Nemec, Thomas Neumann, Thien-Thi Nguyen, Han-Wen Nienhuys, Nix N. Nix, Eduardo Nogueira, Immanuel Normann, Jean-Baptiste Note, Ralf Nuetzel, Kostas Oikonomou, Ondrej Pacovsky, Bill Page, Santtu Pajukanta, Pierre Pansu, Ilya Papiashvili, Bernard Parisse, Frédéric Parrenin, André Pascual, Fernández Pascual, Yannick Patois, Alen L. Peacock, François Pellegrini, Antonio Costa Pereira, Enrique Perez-Terron, Jacob Perkins, Bernard Perrot, Jan Peters, Jean Peyratout, Jacques Peyriere, Valery Pipin, Dimitri Pissarenko, Yves Pocchiola, Benjamin Podszun, Martin Pollet, Benjamin Poussin, Isaías V. Prestes, Rui Prior, Julien Puydt, Nguyen-Dai Quy, Manoj Rajagopalan, Ramakrishnan, Adrien Ramparison, Nicolas Ratier, Olivier Ravard, Leo Razoumov, Kenneth Reinhardt, Cesar A. Rendon, Christian Requena, Diego Restrepo, Chris Retford, Robert Ribnitz, Thomas CLive Richards, Staffan Ringbom, Eric Ringeisen, Christian Ritter, William G. Ritter, Will Robinson, Juan Pablo Romero, Pascal Romon, Juergen Rose, Mike Rosellini, Mike Rosing, Bernard Rousseau, Eyal Rozenberg, Olivier Ruatta, Filippo Rusconi, Gaetan Ryckeboer, Philippe Sam-Long, John Sandeman, Duncan Sands, Breton Saunders, Claire Sausset, David Sauzin, Gilles Schaeffer, Guido Schimmels, Rainer Schöpf, David Schweikert, Stefan Schwertheim, Rui Miguel Seabra, Chung-Tsun Shieh, Sami Sieranoja, Vasco Alexandre da Silva Costa, Marciano Siniscalchi, Daniel Skarda, Murray Smigel, Václav Šmilauer, Dale P. Smith, Luke Snow, René Snyders, Pekka Sorjonen, Kasper Souren, Rodney Sparapani, Bas Spitters, Ivan Stanisavljevic, Starseeker, Harvey J. Stein, Peter Sties, Bernard Stloup, Peter Stoehr, Thierry Stoehr, James Su, Przemyslaw Sulek, Ben Sussman, Roman Svetlov, Milan Svoboda, Dan Synek, Pan Tadeusz, Luca Tagliacozzo, Sam Tannous, John Tapsell, Dung TaQuang, Gerald Teschl, Laurent Thery, Eric Thiébaut, Nicolas Thiery, Helfer Thomas, Reuben Thomas, Dylan Thurston, Kurt Ting, Janus N. Tøndering, Philippe Trébuchet, Marco Trevisani, Boris Tschirschwitz, Elias Tsigaridas, Michael M. Tung, Andreas Umbach, Miguel A. Valle, Rémi Vanicat, Harro Verkouter, Jacques Vernin, Sawan Vithlani, Philip A. Viton, Marius Vollmer, Guy Wallet, Adam Warner, Thomas Wawrzinek, Maarten Wegewijs, Duke Whang, Lars Willert, Grayson Williams, Barton Willis, Claus-Peter Wirth, Ben Wise, Wiebe van der Worp, Pengcheng Wu, Damien Wyart, Wang Yin, Lukas Zapletal, Volker Zell, Oleg Zhirov, Vadim V. Zhytnikov, Richard Zidlicky, Sascha Ziemann, Reinhard Zierke, Paul Zimmermann.

3.8.Contacting us

You can either contact us by email at


or by regular mail at

    Joris van der Hoeven

LIX, École polytechnique

91128 Palaiseau Cedex


There are also several TeXmacs mailing lists:




4.Important changes in TeXmacs

Below, we briefly describe the most important changes which have occurred in TeXmacs since version We also maintain a more detailed change log.

In general, when upgrading to a new version, we recommend you to make backups of your old TeXmacs files before opening them with the newer version of TeXmacs. In the unlikely case when your old file does not open in the correct way, please send a bug report to


and send your old document as an attached file. Do not forget to mention your version of TeXmacs and the system you are using.

4.1.Improved spacing inside formulas (

In the new version, the spacing around mathematical operators has been made dependent on the semantic context. For instance, when used as an infix operator in a subtraction x - y, there are small spaces around the minus sign - ; this is no longer the case in - x, where we use the minus as a prefix. Similarly, the spacing inside lists of operators + , - ,× is now correct. However, the modification may alter the spacing inside some formulas in existing documents. For critical documents, you may thus want to review the line breaking.

Some of the keyboard shortcuts inside formulas have also been modified. For instance, and are now obtained by typing & resp. %. The shortcuts for , and | have also been changed. For more information, please refer to the documentation on editing mathematical formulas. At this place, you will also find more information about the newly added semantic editing features.

4.2.Auto-matching brackets (

From now on, inside mathematical formulas, all brackets have to match and all big operators should admit well-specified scopes. To this effect, the way parenthesized expressions are edited has changed, although the old non-matching editing style can be restored using EditPreferencesKeyboardAutomatic bracketsDisable.

Documents for previous versions of TeXmacs will be upgraded automatically in order to make all brackets match and determine the scopes of big operators. Although this task is accomplished using heuristics, the result should be correct most of the time. In any case, from the typesetting point of view, the upgraded documents will always look the same.

4.3.More context dependent interface (

The interface of the new version of TeXmacs is more context dependent. On the one hand, the menus and toolbars have been reorganized. Several items from the Insert menu have been moved to the Format menu, whereas the context dependent menus Text, Mathematics, Table, Session, etc. have disappeared, their contents being moved to the Insert menu.

On the other hand, a new top-level Focus menu has been created. Its contents is highly context dependent and determined as a function of the current focus. Similarly, a third focus toolbar has been introduced. For more information, we refer to the section on typing structured text.

TeXmacs developers should also notice that the introduction of the focus has modified the way contextual overloading is done. For more details, we refer to the sections on contextual overloading and the TeXmacs editing model.

4.4.Default look and feel (

From this version on, the default look and feel of TeXmacs depends on your operating system and environment. The implemented look and feels (Emacs, Gnome, KDE, MacOS, Windows) attempt to be as compatible as possible with the look and feel of other applications on your system. You may choose an alternative look and feel in EditPreferencesLook and feel.

In order to make the TeXmacs keyboard shortcuts as compatible as possible with the standards on your system, we have redefined many of the keyboard shortcuts. Although these changes will only marginally affect the Emacs look and feel, there will be substential changes for all other look and feels.

If you upgrade from a previous TeXmacs version with the Emacs look and feel, then you will be able to keep most of your habits. In all contrary cases, including installation of TeXmacs on a new computer, you probably need to retake a look at our sections on keyboard configuration and mastering the keyboard. In cases of doubt, please refer to the user manual; the keyboard shortcuts in the manual are automatically adapted to the active look and feel.

4.5.Linking tool (

From this version on, TeXmacs includes a linking tool, as well as a tool for remote connections to a TeXmacs server. In the 1.0.6.* series, these tools are still under development, so we ask users for their kind feedback. In order to enable the tools, you have to activate them in EditPreferencesUtilities. Notice that the linking tool replaces the Proclus plug-in. If you were a user of this plug-in, then please check with its author Alain Herreman whether an automatic upgrade facility is available.

4.6.Type 1 fonts become the default (

From now on, TeXmacs uses Type 1 fonts by default, which enable you to generate higher quality Pdf files. The basic TeXmacs distribution (for Unix) comes with a minimal set of EC fonts for European languages, but an additional font package can be downloaded from our web site (the additional fonts are directly included in the Windows version). Whenever a given font is not available as a type 1 font, then TeXmacs falls back on Metafont in order to generate a Type 3 substitute. This behaviour can be further customized in EditPreferencesPrinterFont type.

4.7.New multi-part document mechanism ( –

Previous versions of TeXmacs provided the “project” mechanism for dealing with large documents like books. In the new version, any large structured document can be transformed into a multi-part document whose individual parts can be viewed and edited in an efficient way (see DocumentPart). Former multi-file projects are deprecated although still supported. They can be transformed into multi-part documents using ToolsProjectExpand inclusions. A new multi-part document corresponds to a single file.

4.8.Improved scheme interface ( –

The Scheme interface has been further improved and stabilized. For those users who customized the behaviour of TeXmacs using a personal initialization file, it may be necessary to make a few corrections. Some information about the new Scheme interface can be found in SchemeExtensions. Further documentation will be written later.

4.9.Improved titles (

From now on, titles of documents are more structured. This makes it easier to render the same title information in the appropriate ways for different styles. Old-style titles are automatically upgraded, but the result is only expected to be correct for documents with a single author. For documents with multiple authors, you may have to re-enter the title using our new interface.

4.10.Improved style sheets and source editing mode (

We are making it easier for users to edit style sheets. This improvement made it necessary to simplify many of the standard TeXmacs styles and packages, so that it will be easier to customize them. However, if you already designed some style files, then this may break some of their features. We mainly redesigned the list environments, the section environments and automatic numbering. Please report any problems to us.

4.11.Renaming of tags and environment variables ( –

Most environment variables and some tags have been renamed, so that these names no longer contain whitespace and only dashes (and no underscores) as separators.

4.12.Macro expansion ( –

An important internal change concerning the data format has been made: macro expansions and function applications like

(expand tag arg-1arg-n)

(apply tag arg-1arg-n)

are now replaced by hard-coded tags

(tag arg-1arg-n)

Moreover, functions have systematically been replaced by macros. The few built-in functions which may take an arbitrary number of arguments have been rewritten using the new xmacro construct. If you ever wrote such a function yourself, then you will need to rewrite it too.

The new approach favorites a uniform treatment of macros and functions and makes the internal representation match with the corresponding Scheme representation. More and more information about tags will gradually be stored in the D.R.D. (Data Relation Definition). This information is mostly determined automatically using heuristics.

Notice that some perverse errors might arise because of the above changes. Please keep copies of your old files and report any suspicious behaviour to us.

4.13.Formatting tags (1.0.2 –

All formattings constructs without arguments (like line breaks, indentation directives, etc.) have been replaced by tags of arity zero. This makes most new documents badly unreadable for older versions of TeXmacs and subtle errors might occasionnaly occur when saving or loading, or during other editing operations.

4.14.Keyboard ( – 1.0.1)

The TeXmacs keybindings have been rationalized. Here follows a list of the major changes:

You may choose between several “look and feels” for the keyboard behaviour in EditPreferencesLook and feel. The default is Emacs, but you may choose Old style if you want to keep the behaviour to which you may be used now.

4.15.Menus ( – 1.0.1)

Several changes have been made in the menus. Here follows a list of the major changes:

4.16.Style files (

Many changes have been made in the organization of the TeXmacs style files. Personal style files which depend on intermediate TeXmacs packages may require some slight adaptations.

We are working towards a stabilization of the standard style files and packages. At the end of this process, it should be easy to adapt existing LaTeX style files for journals to TeXmacs by customizing these standard style files and packages. As soon as we have time, we plan to provide online documentation on how to do this at HelpOnline documentation.

4.17.Tabular material (0.3.5)

The way tabular material is treated has completely changed. It has become much easier to edit tables, matrices, equation arrays, etc. Also, many new features have been implemented, such as background color, border, padding, hyphenation, subtables, etc. However, the upgrading of old tabular material might sometimes be erroneous, in which case we invite you to submit a bug report.

4.18.Document format (0.3.4)

The TeXmacs document format has profoundly changed in order to make TeXmacs compatible with XML in the future. Most importantly, the old style environments like


which are applied via matching pairs <begin|env>text<end|env>, have been replaced by macros


which are applied via single macro expansions <expand|env|text>. Similarly, matching pairs <set|var|val>text<reset|var> of environment variable changes are replaced by a <with|var|val|text> construct (close to XML attributes). From a technical point of view, these changes lead to several complications if the text body consists of several paragraphs. As a consequence, badly structured documents may sometimes display differently in the new version (although I only noticed one minor change in my own documents). Furthermore, in order to maintain the higher level of structure in the document, the behaviour of the editor in relation to multiparagraph environments has slightly changed.

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".