Summary: This module provides a basic user's guide to Connexions' MathML editor. In it you will learn how to access the editor, how to create, edit, and delete MathML expressions using the editor, and how to insert the MathML code into a module.
Note: Your browser may not currently support MathML. See our browser support page for additional details. You can always view the correct math in the PDF version.
This module covers some basic points of Connexions' MathML editor, now in beta testing. It is organized as a tutorial and will lead you through basic usage of the editor, though you can skip around the sections if you wish. The tutorial covers:
You will learn how to create the expression
You will also learn about the basic layout of the MathML editor, the context of your cursor within the editing area, and how to select or highlight part or all of the MathML within the editor with key strokes or the mouse.
All of these aspects of the editor and more are covered in more detail in the MathML Editor: Manual.
Currently, the MathML editor is only supported in Mozilla Firefox. If you use Internet Explorer or another browser, you can download Firefox for free under the link.
When editing a module using Mozilla's Firefox browser, click on an element within the module to open a blue editing box.
![]() |
On the top-right hand side of the box is a "MathML Editor" link which will open up the editor.
![]() |
The popup window can remain open while editing a module and can even stay open while editing several modules. At any point one can close the window, but the contents of the editor will be lost.
The editor has two main sections: the toolbar and the main editing area.
The toolbar consists of
The editing area is the main area for creating math. It begins empty, but math can be pasted directly in here from Connexions, or created on the spot by either typing in expressions or using the toolbars. See the section Inserting expressions into a module below for how to move math from Connexions to the math editor and back.
When you first open the MathML editor, the Editing area should have one blank box in it, called a "block". A block is an empty slot that can be filled with a number, variable, or longer expression consisting of at least one operator and its associated arguments.
Click inside of it to place your cursor inside the empty block.
There are two ways to insert math using the keyboard. The simplest way is to use keyboard shorthand notations for operators. These exist for simple algebra notations, and are similar to the buttons on a calculator (for instance, * for multiplication, - for negative or minus). A full list of Keyboard shortcuts is located here.
The MathML editor will correctly parse a sequence of text and numbers and keyboard shortcuts into operators and arguments. For instance, 3-4 will be interpreted as "3 minus 4", and 3/(x+9) will be interpreted as "3 divided by the quantity x plus 9".
The second way to create operations using the keyboard is to type out the MathML name. This is analogous to choosing the operation from the toolbar menus and is discussed in the same section.
With a blank MathML editor open, try typing in the following (or copying it from here and pasting into the editor):
x^2+b*xHit Enter. The MathML editor will display this as:
Notice that we had to be explicit about our operations. Although most textbooks, and even our MathML editor, represents the product visually by printing times operation in different ways, depending on the surrounding operations.
If you try to represent the product of bx, that portion of your expression will be highlighted, indicating that there is a problem with the code that must be fixed before being used in a module. Simply click on b*x.
Be sure the editing area of the MathML editor contains the expression we entered,
To do this, we will have to add an argument to the addition operation. Move your cursor to the end of the expression by clicking on the last times operation. Then type in +c and press Enter.
You do not always have to add on to the right-hand side of an expression. Try moving your cursor to the beginning of the expression, typing in c+ followed by Enter. Experiment with adding more arguments to the plus operation just after the power operation or just before the times operation.
In our example, power operator, while we want to make the entire power operation one argument of a times operation. The other argument will be the new element that we are adding,
The underlying structure of our new expression will look something like this:
( ( (a) ( (x)^(2) ) ) + ( (b)*(x) ) + (c) )For this we will need to choose the context of our cursor carefully, or we will get different math. Make sure your cursor is on the left hand side of the power operation, the path says Path: / plus / power and that
Then type in a* and press Enter. The MathML should display as:
What if our cursor had been in a different context when we typed in a*? We could have moved our cursor farther to the left so that the context was the entire plus operation, where the path bar would read Path: / plus and the entire expression would have had a light grey background. In this case, typing in a* would have affected the entire grey area and would have resulted in this display:
If our cursor was next to the Path: / plus / power / ci. Typing in a* next to the
Let's put our expression
The MathML editor won't automatically insert your MathML expression into a module. You will have to copy and paste the MathML code. You can paste it into any module you wish, not only the module that you first accessed the MathML popup window from. The popup window can remain open even if you edit several different modules, but once you close it all contents of the editor will be lost.
You can press Ctrl+A (or ⌘+A on Macs) to select your entire expression. You can also double-click in the white box outside of your expression to select it all. If you want to select only a portion of the expression, hold the Shift key down and use the left and right arrow buttons, or double click on the operator of just the portion you want to select (i.e. double click + to select everything within the plus operator, or double click on two multiplied objects to just select that product).
Copy your expression by pressing Ctrl+C (⌘+C). Open your module and click on a segment to edit. Press Ctrl+V (⌘+V) to paste the MathML code directly into your module.
There are two ways to select expressions within the editor. By using one of the methods above, you copy the underlying MathML code. This is what you need to copy MathML code over to a module, or to select a portion of your code to delete.
By clicking and dragging over an expression within the edit box, you select only the text. Like any other text you enter, if you copy part of your code and paste it as an argument of an operator within the editing area, the MathML editor will correctly parse it and generate the underlying code. This is also called "wrapping" your existing math.
There are several ways to delete part or all of your expression. You can either move your cursor to the context of the portion of your expression you want to delete, then push Delete, or you can select the portion of your code you want to delete, and press Delete.
To delete Path: / plus / times.
![]() |
Press Delete once, and that part of your expression should be highlighted in blue.
![]() |
Press Delete again and that portion will delete.
![]() |
You should be left with a blank block where the expression Delete you have deleted the content of one argument of the plus operator, but not the argument itself. You can type in a different expression that will replace Delete one more time to delete the block. Notice that the context automatically moves to the next argument, which in our case is the ci element
"If you are ready to start creating new materials in Connexions, or adapting and reusing existing materials, this guide and tutorial will help you get started. Questions are always welcome to […]"