Note: This documentation is for Moodle 2.7. For up-to-date documentation see TeX notation filter.

TeX notation filter

From MoodleDocs

Location: TeX Notation settings link in Administration > Modules > Filters > Manage filters


The TeX Filter is a core Moodle filter intended to allow one to convert tex expressions into GIF images. The filter relies on three binaries to accomplish this for expressions contained between appropirate tokens. Where these binaries are not available, Moodle provides for a fallback through the use of Mimetex. Versions of MimeTex for Linux (glib2.3), Windows, Mac OS X and FreeBSD are included in the Moodle distribution. There are other technologies available for displaying Tex (see the section on Math tools for a discussion.)


Methods

To avoid confusion you should note that the TeX filter has two separate methods for converting the TeX notation to images. The preferred method is a collection of three binaries that you are responsible for installing and configuring on your server. The filter settings page relates entirely to this method. If this fails for any reason the filter will fall back to a single binary - MimeTeX - that is included with Moodle. A number of different builds are included for popular operating systems.

Turn the Filters On

Before doing anything else, you need to go to Administration > Filters > Manage Filters and activate the Algebra and TeX Notation Filters, the default Filters. If you install other TeX filters, they too will need to be activated.

Usage

To use the default MimeTeX filter the resource should include a TeX expression delimited by double-dollar signs. Example:

   $$ \sqrt{x + y} $$

If this does not display properly, then there are two possible reasons, turn the filters on and check the paths to the latex, dvips and conversion binaries. You can find those in the Tex Notation Settings page.

MimeTeX

Moodle uses a number of MimeTeX pre-built binaries in the Moodle standard distribution and are located in the filters/tex directory. These are "fallback" binaries that will operate if you have no other TeX filter in place or it the one you have does not function properly. There are a number of different versions for different operating systems. The TeX filter picks the appropriate binary for the detected host operating system (you will need to hack the script if your operating system is not included). Note that your web server needs to be set up with appropriate permissions for running binaries in that location.

Windows Users need to download and install at least two other programs, a TeX editing program, MikTeX is one, and a image generating program, either GhostScript or Image Magick, to use a TeX filter, but the fallback of MimeTeX appears to be sufficient to at least get started.

If you use TeX in a GIFT question import file you must escape { } and = (even # and ~) with a \ before each symbol.

More information on Using TeX Notation. The MimeTeX manual is available and, potentially, it could be useful, but maybe not - too confusing if you have little experience with TeX and has no relationship with the Moodle environment.

Settings Page

The TeX filter settings page are primarily intended to adjust the operation of the LaTeX renderer. The defaults for the three path settings are selected according to the detection of the operating system on which Moodle is running. These are simply suggested common values - Moodle does not check that the binaries actually exist at these locations. More recent versions of Moodle show a green tick or a red cross next to the path setting - this shows that the binary exists at that location (only). The settings have no effect on the operation of the MimeTex binary (used if any of these binaries are not found).

Installing the binaries

This depends on your platform, but for a typical Linux install you are going to need a latex implementation (e.g. tetex) and the convert binary (e.g, from ImageMagick). A typical command - in this case for Ubuntu - that installs everything you need would look something like:

   apt-get install tetex-base tetex-bin tetex-extra imagemagick ghostscript

On newer versions of Ubuntu, tetex has been replaced by texlive. You may need to experiment a bit (for example, ImageMagick doesn't seem to work properly on Solaris but Ghostscript does). If you find the combination that works for your system kindly add the info to this page! On Windows however, ImageMagic seems to work as it should with teXLive.

LaTeX preamble

Enables the LaTeX preamble to be specified. The default should work for most users, but you may need to change it to support non-latin character sets etc. Please see the LaTeX documentation for further details.

Transparent colour

This should be set to your normal text background colour. The default setting is #FFFFFF (i.e., white).

Density

This setting effects the size of the resulting image. The default setting is 120 pixels, and it produces an image of reasonable quality, but for some complicated equations, this still may not be enough. It may be that anything less is not going to produce an image of sufficient quality but the image size can be controlled by the TeX encoding when the page is rendered.

Path of latex binary

Path to standard latex binary.

On a MacOS X, the path is "/usr/texbin/".

In Windows, using MiKTeX, it is usually something like C:\texmf\miktex\bin\latex.exe

Path of dvips binary

Path to standard dvips binary - generally distributed as part of a LaTeX system.

On a MacOS X, the path is "/usr/texbin/".

On Windows using MikTeX is is usually something like C:\texmf\miktex\bin\dvips.exe

Path of convert binary

Path to standard convert binary. This is distributed as part of the Ghostscript system, or ImageMagick in Linux.

A simple check is made to establish if the binaries exist at the given paths. A tick or a cross is displayed alongside each as a result. Note that this does not check that the application actually works, just that it is there.

On a MacOS X, the path is "/usr/local/bin/".

On a Windows based PC the path is something like C:\Program Files\ImageMagick\convert.exe (for ImageMagick, but something else for GhostScript.)

Debugging TeX filter

The TeX filter has a debugging script (which will be much more helpful if you turn moodle debugging on) included that should help if you are having problems. The URL will be as follows...

  http://your.moodle.path/filter/tex/texdebug.php

You can either enter this path explicitly or with appropriate role permissions the TeX images (or more likely incorrectly rendered text, if you need debugging) will link to this. There are a number of options and suggestions to facilitate debugging the filter. Note that options for the latex/ghostscript versions are only provided from Moodle version 1.8.3.

Mimetex on Debian based systems

For some reason, the mimetex file that comes with Moodle doesn't work on Debian based systems (like Debian, Ubuntu, ...). What works is installing Mimetex and Ghostscript on your server as Debian package (needs to be executed as root):

apt-get install tetex-extra mimetex gs

Move your old mimetex file away

mv /var/www/moodle/filter/tex/mimetex.linux /var/www/moodle/filter/tex/mimetex.linux.old 

Make a symbolic link to the mimetex file, installed by the debian installer

ln -s /usr/bin/mimetex /var/www/moodle/filter/tex/mimetex.linux

See also