USING LED: AN X-WINDOWS MINI-EDITOR FOR LABANOTATION

Francis Edward Simon Hunt
George Politis
and
Don Herbison-Evans

Basser Department of Computer Science
Technical Report 343

University of Sydney

(updated 14 October 2003)

RUNNING THE EDITOR

This editor is designed to run under the X-Window system under Unix. This means that to use LED, an X-Windows program must be running on the terminal or workstation being used. If this is not running by default, then it may be necessary to run "eXcursions" or some such program on the workstation, and set the Unix DISPLAY variable to the name of the workstation.

The program is run with optional parameters giving the window height, the window width, and the stem of the filename of output data. These parameters can be given in any order. If none are used, then LED defaults to using a height and width appropriate for a PC, and an output file called "led.lbn".

USING THE EDITOR

As may be seen in the description of the design of the editor,or by reading the source code, LED is event driven. The basic action performed by the editor is to wait until the user presses the (left) mouse button, and then, depending on the position of the cursor, to carry out an appropriate operation. Some commands can also be initiated using keyboard keys, and the keyboard is also used to input filenames for the INPUT and POST commands. The following mouse events can occur:

The cursor is on a "blank" spot (i.e., not in any menu or symbol on the staff). Then:
Deselect any previously selected symbols, and "beep", while maintaining the current Command action status.

The cursor is on a symbol in a Symbol Menu:
While the button is being pressed, draw the symbol at the current cursor position, so that is effectively dragged along by the cursor. When the button is released, insert the symbol at that point on the score, either aligned with the nearest grid square, or where it is left, depending on whether the SNAP or FREE Command mode has been selected. If the final position overlaps the Menu area, the dragged symbol copy is deleted.

The cursor is on one of the symbols on the staff, (including the bar and staff lines):
Then expand, contract, shade, move, copy, or delete that symbol, depending on the Command mode previously set.

The cursor is on the Command menu: there are 21 cases here, but before deciding which the user has selected, LED writes out a copy of the current score to the output file (default name "led.lbn"), and then:

The cursor is in the "QUIT" box (or the "q" key struck):
Write a final version of the score to the output file (default:"led.lbn"), and then exit from the program.

The cursor is in the "CLEAR" box (or the "c" key struck):
Clear the staff of all symbols, reset the bar spacing to 4, and set the Command mode to "COPY".

The cursor is in the "REDO" box (or the "r" key struck):
Clear the staff of all symbols, and then redraw them all. Set the Command mode to "COPY".

The cursor is in the "INPUT' box (or the "i" key struck):
Read in the score from the file named using the keyboard in the pop-up menu. The default name is displayed, and may be modified using the backspace key, and keying in the required name. The INPUT command is then executed by hitting the OK box of the pop-up menu with the cursor, or hitting the Return (Enter) key. The command can be cancelled by hitting the CANCEL box of the pop-up menu. If the score already has symbols, the new score is positioned to have its lowest bar line coincident with the uppermost bar line of the existing score.

The cursor is in the "POST" box (or the "p" key struck):
Write the score in PostScript format to the file named using the keyboard in the pop-up menu. The default file name is displayed, and may be modified using the backspace key, and keying in the required name. The POST command is then executed by hitting the OK box of the pop-up menu with the cursor, or hitting the Return (Enter) key. The command can be cancelled by hitting the CANCEL box of the pop-up menu.

The cursor is in the "DOTS" box (or the "d" key struck):
Draw or remove the guiding grid of dots on the score. Hits in this box alternately add and remove the grid.

The cursor is in the "STAFF" box (or the "s" key struck):
If there are no staff lines drawn on the score, then draw the standard 3 staff lines on the score each spaced by 3 grid squares from the next, or if staff lines already exist, draw 3 more at a position 8 grid squares to the right of the rightmost. If this would put them to the right of the score area, no action is taken.

The cursor is in the "+" or "-" boxes (or the "+" or "-" keys struck):
Increment or decrement the number of grid squares for the bar line spacing.

The cursor is in the "BAR" box (or the "b" key struck):
put bar lines throughout the score with a width sufficient to reach from the leftmost symbol to the rightmost. The spacing of the first 2 bar lines is 2 grid squares. Subsequent bar lines are spaced by a number of grid squares equal to the bar line spacing. The second grid line is double to indicate the start of the movements. The bar lines are all numbered on the left hand side.

The cursor is on the size (arrow) boxes:
Increase/contract the size of the next selected symbols. The size is increased by the larger upward pointing arrow, contracted by the smaller downward pointing arrow. The size is changed by adding or subtracting the amount of one grid spacing. If a contraction is requested for a symbol already only one grid spacing big, it is halved in size. Symbols from the DIRECTION, ROTATION and PATH menus, and STAFF lines are only scaled in the time dimension, i.e.: only lengthened, not broadened. STAFF lines have decrements subtracted from the bottom of the symbol, and so have the bottom point moves up one grid spacing for each decrement. The contact bow and the bar lines are scaled only in width.

The cursor is in the "COPY" box:
Drag a copy of the next selected symbol to a required location. Other subsequent symbols selected will likewise be copied until the Command mode is changed.

The cursor is in the "MOVE" box:
Drag the next selected symbol with the cursor, and when the mouse button is released, delete the original. Other subsequent symbols selected will be moved likewise until this Command mode is changed.

The cursor is in the "DEL" box:
Delete the next selected symbols from the score, until the Command mode is changed.

The cursor is in the LOW, MIDDLE, HIGH or BLANK shading boxes:
Update the shading level of the (next) selected symbols.

The cursor is in the "SNAP" or "FREE" boxes:
Place future symbols on the staff either on the grid or freely, respectively.

The cursor is on either the UP or DOWN arrow in the Scroll bar on the left-hand side:

The cursor is on the UP Scroll arrow:
Move the score half a screen-height, so that an area of the score higher up is visible. Any staff lines are automatically extended to continue the full height of the new view of the score. Any bar lines are also repeated with their set spacing into the newly viewable area. New bar lines are appropriately numbered on the left.

The cursor is on the DOWN Scroll arrow:
Move the score half a screen-height so that area of the score nearer the beginning is visible. If the screen already shows the beginning of the score, this menu item has no effect.

SYMBOLS

STAFF: three staff lines are generated by the STAFF Command menu, and placed 6, 8, and 10 grid squares from left hand side of the working area. Invocation of the STAFF menu a second time generates 3 more staff lines 8 grid squares to the right of the first set. Further invocations of the STAFF Command menu box have no effect. The EXPAND and CONTRACT Command menus will alter the position of the bottom of a staff line. The use of the UP Scroll menu extends the height of the staff lines to reach to the top of the highest viewed position of the score. Staff lines are symbols in thir own right, and can be copied, moved and deleted.

BARS: these are drawn by invocation of the BAR Command menu. They are spaced by as many grid squares as have been set in the BAR Command menu, except the first pair are spaced by 2 grid squares, and the second bar is a double to indicate the start of the score. They extend in width from the furthest left current symbol to the furthest right. If there are no symbols on the score, they extend full across the score. Invocation of the UP Scroll menu adds more bar lines to reach to the top of the highest viewd score position. Each bar line is a symbol in its own right. It may be expanded or contracted (in width), made double/single (LOW/MIDDLE), and copied, moved and deleted.

DIRECTION menu symbols: these may be expanded and contracted but only in their length. They may be shaded: high, middle, low, or blank. The central direction symbol ("place") also can be used to create the various torso symbols. The mode is changed automatically to SNAP on selecting a symbol from the DIRECTION menu.

PIN menu symbols: these may be expanded or contracted (isotropically), although they cannot be made any smaller than they appear in the menu. They can be shaded HIGH or LOW or BLANK. They can also be "shaded" MIDDLE, in which case their form changes to a T shape appropriately inclined. When used in ROTATION menu symbols to indicate amount of turn, it is wise to place the PIN symbol in FREE mode rather than SNAP, otherwise it will not necessarily align properly with the ROTATION symbol. Thus, the mode is changed automatically to FREE when a PIN symbol is selected.

FACING menu symbols: these may be expanded or contracted, but not shaded. Their size in the FACING menu is the smallest they can be made. The mode is changed automatically to SNAP on selecting a symbol from this menu.

LIMB menu symbols: strictly these are joint symbols, but can be made into limb symbols by adding a "|" symbol from the KEY menu. They can be expanded and contracted, but cannot be made smaller than they appear in the menu. They cannot be shaded.

SPACE menu symbols: additional symbols for intermediate of flex and extension can be constructed by adding "." symbols from the KEY menu. The "return" and "spacehold" symbols can be shaded, and they can all be expanded and contracted, although their smallest size is that shown in the menu.

AREA menu symbols: these can be expanded or contracted only in length, and they can be shaded. They are useful for indicating areas of the body when used with other symbols.

ROTATION menu symbols: can be shaded, lengthened and shortened. They cannot be widened. Pairs of the basic rotation symbols can be superimposed to construct other rotation symbols, and single basic rotation symbols can have other symbols placed in them, although this placement is best done in FREE mode rather than SNAP mode. The mode is changed to SNAP on selecting a symbol from the ROTATION menu.

KEY menu symbols: these are taken from the keyboard, and cannot be expanded, contracted or shaded. Many are useful for constructing other symbols not provided by LED.

MISCELLANEOUS menu symbols: these can be expanded and contracted. The foot hooks can be made smaller size by contracting twice, even though the first contraction actually enlarges the symbol slightly. The half circles cannot be made smaller. They are useful for constructing the "release" symbol. The "contact bow" is widened or narrowed by one grid square for each invocation of the EXPAND or CONTRACT Command menus. The contact bow is also double by making it LOW, and dotted by making it HIGH. The other MISCELLAnEOUS symbols cannot hav their levels altered. It is usually wise to place the MISCELLANEOUS symbols using the FREE mode rather than SNAP mode.

PATH menu symbols: these can be expanded or contracted in length only. Circular path symbols can be constructed from the "air" symbol by adding "/" or "\" symbols from the KEY menu.

RESULTS

Some results may be seen in the scores produced by using LED of the 23 approved competition New Vogue dances, such as the Merrilyn.