# Configuration

You can configure ®ina; by choosing Settings Configure Regina from the menu under &linux; and &windows;, or Regina Preferences on &macosx;.

There are several panels of options; each is described in its own section below.

## General Options

The General options panel controls the overall behaviour of ®ina;.

The settings here are:

Use unicode for mathematical symbols

Most modern computers now have a rich set of fonts that include subscripts, superscripts and a range of mathematical symbols. By default, ®ina; will use these symbols to make its display easier to read (e.g., subscripts when describing abelian groups, or superscripts when describing group presentations).

If you cannot read these symbols on your machine (e.g., the subscripts and superscripts are too hard to read, or the fonts do not provide these symbols at all), then you can uncheck this option. This will cause ®ina; to use “plain” &ascii; symbols only, which are supported on every machine.

Warn before generating immersed and/or singular surfaces

If checked, ®ina; will ask for confirmation whenever you try to enumerate normal surfaces without selecting embedded surfaces only. ®ina; asks for confirmation because non-embedded (immersed and/or singular) surfaces are typically much slower to generate, far more numerous, and ®ina; only offers very basic support for them.

Labels on facet pairing graphs

If checked, ®ina; will label each node in the dual graph of a triangulation with the number of the corresponding top-dimensional simplex.

Toolbars

®ina; 7.4 made a significant change to toolbars in the triangulation and link viewers: they now include many more actions, and the buttons are now icon-only (no text labels).

This option allows you, if you prefer, to revert to the old behaviour from ®ina; 7.3.1 and earlier.

If you choose Detailed (the default), you will have the new behaviour (many actions and no text labels). If you choose Simple, you will have the old behaviour (few actions, and text labels alongside the icons). The two screenshots below illustrate both the new and old behaviour.

Multithreading

®ina; offers multithreaded (i.e., parallel) algorithms for some tasks that are computationally intensive, such as exhaustive simplification. In this drop-down box, you can select how many of the cores on your machine ®ina; will use for such tasks.

The options include:

- None, which instructs ®ina; not to use multithreading at all;

- Polite, which instructs ®ina; to use half of the available cores, leaving half free for other purposes;

- Aggressive, which instructs ®ina; to use all of the available cores on your system.

Of course, this is a trade-off: more cores means faster algorithms, but it also may degrade the performance of your computer if you are doing other intensive tasks on your machine at the same time. If you are not sure which option to use, the polite option is usually a sensible compromise.

Group simplification

®ina; includes tools for simplifying group presentations (such as fundamental groups of triangulations and various knot/link groups. By default ®ina; will use its own internal simplification algorithms; however, here you can configure it to use external tools instead.

The following options are available:

- Use Regina indicates that ®ina; should use its own internal algorithms, based on small cancellation theory and Nielsen moves.

- Use GAP indicates that ®ina; should use &gaplongurl; for group simplification. This requires you to have ⪆ installed on your system; you can tell ®ina; how to find it via the tools options.

Packet tree jump size

Specifies how many steps a packet moves through the tree when you select Packet Tree Move Jump Up or Packet Tree Move Jump Down . See moving packets around for further details.

Text encoding for imports/exports

Specifies how ®ina; encodes international characters when importing or exporting data. International characters are letters or symbols not found on a typical English keyboard.

If you are not sure what to use, the default encoding &utf8; is a good choice (this is a modern standard and can represent all languages). If you only ever use plain English letters and symbols, you do not need to worry about encodings at all.

For more information on text encodings, see imports and exports.

Offer help for new users on startup

If checked, ®ina; will show a link to the Getting Started dialog at the bottom of the main window each time ®ina; starts.

You can view this information at any time by selecting Help Getting Started from the menu.

## &python; Options

The &python; options panel controls the behaviour of &python; consoles.

The settings here are:

Auto-indent

If checked, ®ina; will automatically indent each new command in a &python; console with spaces to match the previous line. You can of course add more spaces or remove them using backspace before you type your command.

Spaces per tab

Controls the number of spaces that are inserted into the command box when you press Tab.

## Tools Options

The Tools options panel controls how ®ina; works with third-party software.

The settings here are:

Diagnostic messages from &snappea;

Specifies whether the &snappea; kernel should write diagnostic messages to the terminal.

When you are working with the &snappea; kernel (for instance, if you are using a &snappea; triangulation, or visiting ®ina;'s &snappea; tab), the &snappea; kernel sometimes sends out messages indicating what it is doing. An example of such a message might be “Computing hyperbolic structure . . .”.

If this option is checked, then all such messages will be written to the terminal from which you started ®ina;. If this is unchecked (or if you started ®ina; some other way, such as from a menu or taskbar), then these messages will be suppressed.

⪆ executable

Tells ®ina; where to find &gaplongurl;. ⪆ is not required by ®ina;, but if it is installed then it can help simplify group presentations.

This setting should be the name of the command that starts ⪆ (the default is simply `gap`). ®ina; will look for this command on the default search path. If you have installed ⪆ somewhere unusual then you will need to provide the full path to the executable (such as `/usr/local/bin/gap`).