Provided by: abcm2ps_8.14.17-2_amd64 bug

NAME

       abcm2ps - translate ABC music notation to PostScript or SVG

SYNOPSIS

          abcm2ps [global_options] ABC_file [file_options] ...

DESCRIPTION

       abcm2ps  translates  tunes  written  in  the ABC music notation format to customary sheet music scores in
       PostScript or SVG. It is based on abc2ps 1.2.5 and was developed mainly to  print  Baroque  organ  scores
       that  have  independent voices played on multiple keyboards and a pedal-board. The program has since been
       extended to support various other notation conventions in use for sheet music.

       Options given immediately after the command name apply to the run as a whole; options given after an  ABC
       file name apply to that file.

       Formatting parameters can also be set in "format files" and in the ABC files themselves.

OPTIONS

       The list of the command line options may be known running:

          abcm2ps -h

       The options may be grouped when they have no argument, but the last one (ex: -lnGI20).

       The options may be disabled when starting with '+' or ending with '-' (ex: +MT1 is the same as -MT1-).

       The general output format is the last found in the command line.  It may be:

       -E     for Encapsulated PostScript, one file per tune

       -g     for SVG, one file per tune

       -v     for SVG, one file per page

       -X     for XHTML+SVG

       -z     for (X)HTML+SVG with (X)HTML+ABC input

       (see below for more information)

   List of the options
       -      Read the abc file from stdin.

       --<format> <value>
              Set the <format> parameter to <value>.

              This has the same effect as a format parameter directly in the source file.

       -a <float>
              Maximal horizontal compression when staff breaks are chosen automatically. Must be a float between
              0 and 1.

              This correspond to the %%maxshrink formatting parameter (default: 0.65).

       -A     This option inserts reference elements in the PostScript or SVG output.

       -B <int>, +B
              Try to typeset <int> bars on each staff line.

              This corresponds to the %%barsperstaff formatting parameter.

       -b <int>
              Start measure numbering at <int>.

              This corresponds to the %%measurefirst formatting parameter.

       -c, +c The  continuation symbol is implicitly appended to each music line. This amounts to automatic line
              breaking.

              This corresponds to the %%continueall formatting parameter.

       -D <dir>
              Search the format files in the directory <dir>.

       -d <unit>
              Set the vertical interstaff space to <unit>.

              This corresponds to the %%staffsep formatting parameter (default: 46pt).

       -E     Produce EPS output instead of simple PS.

              In this mode, each tune goes to a different file which name is  "<name>nnn.eps"  or  "<title>.eps"
              (see option '-O')

                 • 'nnn' is a sequence number incremented at each tune

              Output to stdout is forbidden.

              EPS  files  are  normally  embedded  into  Postscript documents, but they may be a way to generate
              graphical images. For example, using GhostScript:

                 abcm2ps voices -Ee7
                 gs -sDEVICE=pngmono -r80 -g590x174 \
                    -dBATCH -dNOPAUSE \
                    -sOutputFile=quitolis.png Out001.eps

              (the values for -g are the values of the bounding box in the .eps, multiplied by (80 / 72),  where
              80 is the value for -r, and 72 is the default resolution)

       -e [ <tune index list> ] [ <regular expression> ]
              Select which tunes from an ABC file to print.

              <tune  index  list>  is either a comma-separated list of tune numbers (as per the X: header), or a
              regular expression which will be matched against the tune headers as a whole.  The -e option  must
              occur after an ABC file name and applies to that file.

              Ranges  of  tune  numbers  may  be  specified like <t1>-<t2>; <t2> may be omitted which means "all
              remaining tunes until the end of file". Note that filtering may cause problems, e.g., with  global
              (non-tune) definitions in the ABC file.

              This corresponds to the %%select formatting parameter.

       -F <file>, +F
              Read the format (or PostScript) file <file>.

              When omitted, the default type of a format file is '.fmt'.

              In the form '+F', the default format file ('default.fmt') is not read.

       -f     Enable flat beams (useful for bagpipe tunes).

              This corresponds to the %%flatbeams formatting parameter.

       -G, +G Omit slurs on grace notes.

              This corresponds to the %%graceslurs formatting parameter.

       -g     Produce SVG output instead of EPS.

              In this mode each tune goes to a different file which name is 'Outnnn.svg' (see option '-O').

              If the output is stdout (option '-O-'), all the SVG images are output without XML header.

       -H     Display the current format values.

       -h     Quick help, equivalent to "abcm2ps" without any arguments.

              This also shows the default settings for some parameters.

       -I <unit>
              Indent the first line of the tune by <unit> (default: 0).

              This corresponds to the %%indent formatting parameter.

       -i, +i Insert a red cercle around the errors in the PostScript output.

       -j <int>[b], +j
              Output a measure number every <int> measures.

              If  <int> is 0, the measure number appears at the left of each staff.  The trailing b causes a box
              to be drawn around each measure number (default: no measure numbering).

              This corresponds to the %%measurenb formatting parameter.

       -k <int>
              Set the size of the PostScript output buffer in Kibytes.

              Setting this value to a higher value permits the generation of  big  tunes  with  -E  or  -g.  The
              default value is 64.

       -l, +l Generate landscape output.

              This corresponds to the %%landscape formatting parameter.

       -M, +M Suppress lyrics.

              See the %%writefields w formatting parameter.

       -m <unit>
              Set the left margin to <unit> (default: 1.8cm).

              This corresponds to the %%leftmargin formatting parameter.

       -N <int>, +N
              Number the pages.

              <int> indicates the mode:

                 0      no page numbers

                 1      at top left

                 2      at top right

                 3      at top left on even pages, top right on odd pages

                 4      at top right on even pages, top left on odd pages

              For  compatibility  with  previous  versions,  '+N'  is the same as '-N0', and '-N' is the same as
              '-N2'.

              If a header is defined ("%%header"), this option is ignored.

       -n, +n Include notes and history from ABC tune N: fields.

              See the %%writehistory N formatting parameter.

       -O [ <directory> ] [ <name> ], +O
              Define the output file directory and/or name.

              The directory must end with the directory separator ('/' for unix/windows, '\' for mac).

              By default, the output file goes to the current directory with the name:
                 'Out.ps' for PS,

                 'Outnnn.eps' for EPS (see option '-E'),

                 'Outnnn.svg' for SVG (see options '-g' and '-v') or

                 'Out.xhtml' for XHTML+SVG (see options '-X' and '-z').

              'nnn' is a sequence number.

              When <name> is present, it is the name of the file, or it replaces "Out" in the file name.

              If <name> is '=', it is replaced by the name of the ABC source file (not for '-z').

              If <name> is '-', the result is output to stdout (not for  EPS).   '+O'  resets  the  output  file
              directory and name to their defaults.

       -p     Bagpipe format.

              When present, format output for bagpipe regardless of key.

       -q     Quiet mode.

              When present, only the errors are shown.

       -s <float>
              Set  the  page  scale  factor to <float>. Note that the header and footer are not scaled (default:
              0.75).

              This corresponds to the %%scale formatting parameter.

       -S     Secure mode.

              When present, file  inclusion  (%%format  and  %%EPS)  and  PostScript  injection  (%%beginps  and
              %%postscript) are disabled.

       -T <int> [ <voice> ], +T [ <int> [<voice> ] ]
              Activate or deactivate tablature drawing.

              •

                <int> is the tablature number as defined in %%tablature.
                       There may be only 8 different tablatures.

              •

                <voice> is the voice name, full name or subname as found in V:.
                       When absent, apply to all voices.

              Up to 4 such commands may be defined.
                 Ex: '-T1flute +T2'

       -V     Show the version number.

       -v     Produce SVG output instead of simple PS.

              In this mode each page goes to a different file which name is 'Outnnn.svg' (see option '-O').

       -w <unit>
              Adjust the right margin such that the staff width is <unit> (default: none).

              This corresponds to the %%staffwidth formatting parameter.

       -X     Produce XML+SVG output instead of simple PS.

              The default file name is 'Out.xhtml' (see option '-O').

       -x, +x Include the X: tune number in the title.

              This corresponds to the %%writefields formatting parameter.

       -z     Produce SVG images from ABC embedded in markup language files (HTML, XHTML..).

              The  source  file  is copied to the output file and the ABC sequences are converted to SVG images.
              The ABC sequences start by either %abc.. or X:..  and stop on the first markup tag (<..).

              The generation creates one image per block, i.e. a  music  line  or  a  text  block.  For  a  same
              rendering  as the other SVG generation (-g, -v or -X), don't forget to set the line space to null,
              for example enclosing the ABC sequences by:

                 <div style="line-height:0"> .. </div>

              There can be only one output file.

              Note that the default output file is 'Out.xhtml', so, don't forget to change the file type if  you
              generate HTML (.html) or XML (.xml) files.

              See "sample8.html" for a source example.

       -0, +0 Split tunes across page breaks if necessary.

              This corresponds to the %%splittune formatting parameter.

       -1, +1 Output one tune per page.

              This corresponds to the %%oneperpage formatting parameter.

ADDITIONAL FEATURES

       Clefs  Clefs can be given in K: and V: headers.  The full syntax is:

                 clef=<type><line>[+8|-8]

              "clef=" can be omitted when the <type> is a clef name.

              <type> denotes the clef type. It  may be:

              • A note pitch (G, C, or F)
                   The pitch indicates which clef is meant: G is the treble clef, C the alto clef and F the bass
                   clef.  It also gives the name of the note that appears on the clef's line.

              • A clef name
                   The available clef names are treble (clef gives the pitch for G), alto or tenor (C), and bass
                   (F).

              • perc or P
                   In  percussion  mode,  accidentals  change  the glyphs used for note heads. By default, sharp
                   notes are drawn as "x" and flat notes as circled "x".  This may be changed by redefining  the
                   PostScript functions pshhd and pflhd.

              • none
                   No clef will be displayed.

              The  <line>  gives  the number of the line within the staff that the base clef will be written on.
              The default values are 2 for the treble clef, 3 for the alto clef, and 4 for the  tenor  and  bass
              clefs.

              The "+8" and "-8" options draw an 8 above or below the staff, respectively.

              When   no  clef  is  specified,  clef  changes  between  "bass"  and  "treble"  will  be  inserted
              automatically.

       Multi-voice typesetting
              Multiple voices may be defined within the header or the tune using:

                 V:<name> <definition> ...

              where <name> is a word consisting of letters and digits only (like "violin1"). In the  tune  body,
              the following notes refer to this voice until another "V:" is encountered.

              A <definition> can be one of:

              • "clef="...
                   See above

              • "name="<name> or "nm="<name>
                   The  <name>  will  be  displayed  at  the  beginning  of the first staff. It can contain "\n"
                   sequences which will force line breaks. If it contains whitespace it must be double-quoted.

              • "subname="<name> or "snm="<name>
                   The <name> will be displayed at the beginning of all staves except  for  the  first.  It  can
                   contain  "\n"  sequences  which  will force line breaks. If it contains whitespace it must be
                   double-quoted.

              • "merge"
                   The voice goes on the same staff as the previous voice.

              • "up" or "down"
                   Forces the direction of the stems for the voice.

              • "dyn=up" or "dyn=down" or "dyn=auto"
                   Forces positioning of dynamic marks (above or  below  the  staff)  or  reverts  to  automatic
                   positioning (the default).

              • "gstem=up" or "gstem=down" or "gstem=auto"
                   Forces  the  direction  of  the stems of grace notes (always up or always down) or reverts to
                   automatic positioning (the default).

              • "stem=auto"
                   Reverts to automatic positioning of note stems (up or down) (the default).

              • "lyrics=up" or "lyrics=down" or "lyrics=auto"
                   Places lyrics above or below the staff or reverts to automatic positioning (the default)

              • "gchord=up" or "gchord=down"
                   Places guitar chords above (the default) or below the staff.

              • "stafflines="<value>
                   Sets the number of lines on the staff in question. (default: 5)

              • "staffscale="<value>
                   Sets the scale of the associated staff up to 3. (default: 1)

              All other definitions are ignored.

       Definition of the staff system
              By default, each voice goes on its own staff. The %%staves <definition> pseudo-comment can be used
              to control staff assignment. The <definition> consists of voice  names  (from  V:)  and  pairs  of
              parentheses, braces or brackets.

              • When a voice name is not within a pair of special characters, it goes on a separate staff.

              • For  voice names enclosed in brackets, a bracket is displayed at the beginning of each line that
                joins the staves of the voices in question.

              • For voice names enclosed in braces, all the voices go on two staves (keyboard score). There  can
                be at most four voices between a single pair of braces.

              • For voice names enclosed in parentheses, all the voices appear on a single staff.

              The  | character prevents measure bars from being drawn between two staves.  If %%staves occurs in
              a tune, all the voices not mentioned will not be output at all.

              The %%score directive occurs in the ABC  draft  2.0  standard  and  is  similar  to  the  %%staves
              specification described above. The rules are:

              • Voice  names within parentheses form a "voice group" and go on a single staff. A voice name that
                is not within parentheses forms its own voice group and goes on a staff by itself.

              • Voice groups within braces form a "voice block" and are preceded by a big brace in  the  output.
                This is especially useful for keyboard music.

              • Voice  groups or voice blocks within brackets form a "voice block" and will be preceded by a big
                bracket in the output.

              • If a | character occurs between two voice groups or voice blocks, the bar lines in  all  of  the
                associated staves will be continuous.

              • A  single  voice surrounded by two voice groups can be preceded by an asterisk to make it into a
                "floating" voice. This means that, for each note of the  voice,  a  separate  decision  is  made
                whether it is printed on the preceding or the following voice group's staff.

              • Voices  that appear in the tune body but not in the %%score directive will not be output at all.
                If there is no %%score directive, each voice will be output on its own staff.

              • A %%score directive inside a tune resets the mechanism so voices can be removed or added.

       Voice overlay
              You can add notes to a staff without introducing a complete extra voice  by  using  the  ampersand
              (&).  A single measure can be split into two voices like:

                 |F2A2Bc&F2c2bc|

              The (&...&...&) construction allows splitting multiple measures:

                 |!f!(&GG<G|GG F=E| E2  E(_D/E)|_D D  C      D |C4- |C
                    &DC<C|CC_D C|=B,2_B,B,   |_A,A,(G,/A,/)B,|F,4-|F,&)zzD=E|

              A  double  ampersand  (&&) will allow overlaying more than two lines of music but this feature has
              not yet been implemented.

       Lyrics Aligned lyrics under a staff are written as a w: line directly below the staff line. For example:

                 edc2 edc2|
                 w:Three blind mice, three blind mice

              Each word in the w: line (delimited by blanks) is associated  with  one  note,  in  sequence.  The
              following special symbols modify this behaviour:

              *      Skips one note.

              -      Splits  a  word  into  two syllables which are associated with two adjacent notes. A "-" is
                     drawn between them.

              |      Advances to the next bar line.

              ~      Is output as a space, but unites two words so they appear under a single note.

              _      Draws a thin underscore from the previous note to the next.

              To include more than one line of lyrics,  use  multiple  w:  lines.  To  include  hyphens  without
              splitting a word over multiple notes, use \-.

              If  a  word starts with a digit, this is interpreted as a stanza number and outdented a bit to the
              left.

       Slurs and ties
              The direction of slurs and ties may  be  controlled  using  the  "(,"  /  "('"  and  "-,"  /  "-'"
              constructions.

       Microtone pitches
              Microtone  pitches are indicated by a fraction after an accidental, as in ^3/4c. When omitted, the
              numerator defaultes to 1 and the denominator to 2 (so ^/c is the same as ^1/2c). The numerator and
              denominator values may not exceed 256. There is built-in support for quarter-tone accidentals (1/2
              and 3/2  sharps  and  flats);  for  other  values,  rendering  functions  must  be  defined  using
              %%postscript.

       EPS inclusion
              EPS files may be included inside tunes using the pseudo-comment %%EPS <file>.

SEE ALSO

       A brief introduction referencing further documentation is installed in <docdir>/abcm2ps/README.md.

       The ABC music notation is at  <http://abcnotation.com/> .

       Especially,    you    may    find    a   discussion   of   differences   with   the   ABC   standard   at
       <http://moinejf.free.fr/abcm2ps-doc/features.html>   and   a    list    of    formatting    options    at
       <http://moinejf.free.fr/abcm2ps-doc/> .

AUTHOR

       abcm2ps  was written by Jean-François Moine < <http://moinejf.free.fr/> > starting from abc2ps by Michael
       Methfessel.

       Parts of this manual have been written by Anselm Lingnau < <lingnau@debian.org> > for the Debian system.

       Permission is granted to copy, distribute and/or modify this document  as  long  as  its  origin  is  not
       misrepresented.

                                                                                                       ABCM2PS()