## 3.2 Emacs user interface

Besides running SINGULAR in an ASCII-terminal, SINGULAR might also be run within Emacs. Emacs (or, XEmacs which is very similar) is a powerful and freely available text editor, which, among others, provides a framework for the implementation of interactive user interfaces. Starting from version 1.3.6, SINGULAR provides such an implementation, the so-called SINGULAR Emacs mode, or Emacs user interface.

Generally, we recommend to use the Emacs interface, instead of the ASCII-terminal interface: The Emacs interface does not only provide everything the ASCII-terminal interface provides, but offers much more. Among others, it offers

- color highlighting
- truncation of long lines
- folding of input and output
- TAB-completion for help topics
- highlighting of matching parentheses
- key-bindings and interactive menus for most user interface commands and for basic SINGULAR commands (such as loading of libraries and files)
- a mode for running interactive SINGULAR demonstrations
- convenient ways to edit SINGULAR input files
- interactive customization of nearly all aspects of the user-interface.

In order to use the SINGULAR-Emacs interface you need to have Emacs version 20 or higher, or XEmacs version 20.3 or higher installed on your system. These editors can be downloaded for most hard- and software platforms, sources from either http://www.gnu.org/software/emacs/emacs.html (Emacs), or from http://www.xemacs.org (XEmacs). (Download of binaries depend on your OS). The differences between Emacs and XEmacs w.r.t. the SINGULAR-Emacs interface are marginal -- which editor to use is mainly a matter of personal preferences.

The simplest way to start-up SINGULAR in its Emacs interface is by running the program `ESingular` which is contained in the Singular distribution. Alternatively, SINGULAR can be started within an already running Emacs -- see Running SINGULAR under Emacs for details.

The next section gives a tutorial-like introduction to Emacs. This introductory section is followed by sections which explain the functionality of various aspects of the Emacs user interface in more detail: how to start/restart/kill SINGULAR within Emacs, how to run an interactive demonstration, how to customize the Emacs user interface, etc. Finally, the 20 most important commands of the Emacs interface together with their key bindings are listed.

> 3.2.1 A quick guide to Emacs |  |
> 3.2.2 Running SINGULAR under Emacs |  |
> 3.2.3 Demo mode |  |
> 3.2.4 Customization of the Emacs interface |  |
> 3.2.5 Editing SINGULAR input files with Emacs |  |
> 3.2.6 Top 20 Emacs commands |  |

User manual for Singular version 4.4.1, 2025, generated by texi2html.