4 Exact Spacing and Score Formatting
4.1 Page layout and spacing
4.1.1 \units
The \units tag specifies the physical units in which absolute
dimensions are specified per default.
\units<s>
Parameters
-
type - one of "mm","cm","m","in","pt","pc","hs".
- "mm" - millimeter
- "cm" - centimeter
- "m" - meter
- "in" - inch
- "pt" - point
- "pc" - pica
- "hs" means halfspaces of the current staff.
Default: "cm"
Range: none
Remarks:
- The \unit tag should be specified at the beginning of the
piece, preferably before the first note of the first voice.
Example:
{ [ \units<"in"> ... ] }
4.1.2 \pageFormat
The \pageFormat is used to specify the physical size
of the output pages and to define the printable area.
\pageFormat<type>
\pageFormat<type,lm,tm,rm,bm>
\pageFormat<w,h,lm,tm,rm,bm>
Parameters:
-
type- paper type, one of "A4","A3","letter".
-
w,h: width and height;
if no units are specfied, the units specified by
the \units tag are used.
-
lm,tm,rm,bm: left, top, right, bottom
page margins; if no units are specfied, the units specified by
the \units tag are used.
Defaults:
If \pageFormat is not specified, "A4" is assumed.
If the margins are not specified, the following values
are assumed as default-values: lm=2cm, rm=2cm,
tm=5cm, bm=3cm.
Range: none
Remarks:
-
The \pageFormat tag should be defined at the
beginning of a piece before the the first note of the first
voice. Later on, it should only be used at the
beginning of pages (see \newpage)
Examples:
4.1.3 \newPage
The \newPage tag is used to specify exact locations
for pagebreaks. In pieces with multiple voices (segments),
it should be consistently used in one specific voice
(controlling voice).
Parameters: none
Range: none
Examples:
4.1.4 \space
The \space tag is used to specify exact horizontal spacing
between notational elements. For multiple voices, voice
coordination is preseverved in the following way:
if at a given metrical position, the information
provided by the \space tags occuring in the different
voices is incompatible, extra space is inserted where
needed. This can also happen, if in one of more voices
no \space information occurs - in which case automatic
spacing is used for these voices.
However, spaces specified via \space are never compressed
or ignored.
\space<dd>
Parameters:
-
dd - the horizontal distance that is inserted at the current
position; if no units are specified, halfspaces of the
current system are taken as default units.
Range: none
Remarks:
-
The \space tag is also used to realise spacing
before and after barlines, clefs, key signatures, etc.
Examples:
{ [ c \space<10.2> d ] } % forces 10.2 halfspaces between
the c and the d.
4.1.5 \staff
As in Basic GUIDO,
the \staff tag is used to assign the current voice to
a staff. Here, an additional parameter is introduced
to explicitly specify the vertical spacing between
staves.
\staff<id,dy>
Parameters:
-
id (integer; obliatory) -
specifies the number of the staff
the current voice is assigned to;
staves are numbered 1,2,etc.
-
dy - vertical space between bottom line of this staff and
top line of next staff; if no units are specified,
the units defined by the \units tags are used.
Range: none.
Semantics:
If dy is specified, it defines the vertical space
between the bottom line of staff id and
the top line of the next staff. The next staff
is the one which occurred next to the first occurrence
of staff id<.
Remarks:
Examples:
4.2 Staff and system layout
The appearance and format of a system and staff can
be specified using the following tags.
4.2.1 \staffFormat
The \staffFormat tag can be used to specify the format
and size of the current staff.
\staffFormat<style,size>
Parameters:
-
style - either "standard" or "n-line", where
n is an integer from 0 to 7(?).
Default: "standard"
-
size - a float number, defining the size
of one halfspace in this system. If no units are specified,
the units defined by the \units tag are used.
Default: 3pt (= ca. 1.0583mm)
Range: none
Remarks:
- If the type is n-line, the lines
are numbered from bottom to top (this is
important when using the \clef tag, e.g.).
Examples:
4.2.2 \accol
The \accol tag is used to group
staves into accolades (staff groups).
\accol<id,range,style>
Parameters:
-
id (integer or string; obligatory)
- identifier for the accolade group
specified by the tag.
-
range (string; obligatory) - identifies the staff
which are partd of the accolade group
specified by this tag; the string is of the form
"m-n", where m and n are integers
identifying the staves which are part of this
accolade group. "m" can be used
synonymously to "m-m".
-
type (string; optional) -
graphical appearance of the accolade
brace, one of "standard" = "straightBrace",
"curlyBrace", "thinBrace", "none".
Default value: "standard"
Range: none.
Remarks:
- Accolades can arbitrarily
overlap but always involve consecutively
numbered staves.
- To specify the vertical spacing within and between
accolades, the \staff tag is used.
Examples:
4.2.3 \systemFormat
The \systemFormat tag is used
for specifying which staves are displayed within the
system. It allows also to specify a horizontal displacement
of the beginning of the system w.r.t. the left margin
of the printable area.
The \systemFormat
tag should be used directly after a \newSystem tag.
\systemFormat<staves,dx>
Parameters:
-
staves - A string of the form "1,3,5-8"
which specifies which staves to display. Inside this string,
the staves are referred to by using the id as
specified by the \staff tag.
If not specified, all staves are displayed.
-
dx - The horizontal distance between
beginning of the current system and the left margin of the printable area.
If no units are specified, the units defined by the \units
tag are used.
Default: 0
Range: none
Remarks: none
Examples:
4.2.4 \newSystem
The \newSystem tag is used to explicitly specify system
breaks. \newSystem needs to be specified only in one voice,
multiple occurrences at the same metrical position
are interpreted as a single system break.
\newSystem
\newSystem<dy>
Parameters:
-
dy - The vertical distance between the top
of the current system to the
top of the following system. The top of system is
given by the top line of the first staff.
Range: none
Remarks:
For indentation of systems, the \systemFormat tag is used.
Examples:
{ [ c d e \newSystem c d e], [ c0 d e f \newSystem g h] }
% this will create three systems with two staves each.
4.2.4 \staffOff, \staffOn
The \staffOff tag makes the current staff invisible
starting from the position where it occurs
until the next \staffOn is encountered.
While the staff is invisible, all notational elements fixed
to it (notes, rests, dynamic markings, etc.)
also become invisible.
\staffOff
\staffOn
Parameters: none
Range: none
Remarks:
For indentation of systems, the \systemFormat tag is used.
Examples: