X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fuser%2Fconverters.itely;h=5c7a6f618751970fb84117f233e86ac873424010;hb=d31248d7770fb5770c2caacfb3547984bf8dcdc3;hp=d8a3d8c2d669523c0aece9a3956c892eb7e25349;hpb=0afe76f729e557b06c8bdacabd3eb3ba8b9247df;p=lilypond.git diff --git a/Documentation/user/converters.itely b/Documentation/user/converters.itely index d8a3d8c2d6..5c7a6f6187 100644 --- a/Documentation/user/converters.itely +++ b/Documentation/user/converters.itely @@ -1,5 +1,5 @@ @c -*- coding: utf-8; mode: texinfo; -*- -@c This file is part of lilypond.tely +@c This file is part of lilypond-program.tely @ignore Translation of GIT committish: FILL-IN-HEAD-COMMITTISH @@ -7,6 +7,8 @@ version that you are working on. See TRANSLATION for details. @end ignore +@c \version "2.12.0" + @node Converting from other formats @chapter Converting from other formats @@ -16,27 +18,24 @@ There are other tools that produce LilyPond input, for example GUI sequencers and XML converters. Refer to the @uref{http://@/lilypond@/.org,website} for more details. -These are separate programs from lilypond itself, and are run -on the command-line. By @q{command-line}, we mean the command -line in the operating system. Windows users -might be more familiar with the terms @q{DOS shell} or -@q{command shell}; OSX users might be more familiar with the -terms @q{terminal} or @q{console}. OSX users should also -consult @ref{Notes for the MacOS X app}. - -Describing how to use -this part of an operating system is outside the scope of this -manual; please consult other documentation on this topic if -you are unfamiliar with the command-line. +These are separate programs from @command{lilypond} itself, and are +run on the command line; see @ref{Command-line usage} for more +information. If you have MacOS 10.3 or 10.4 and you have trouble +running some of these scripts, e.g. @code{convert-ly}, see @ref{Setup +for MacOS X}. +@knownissues +We unfortunately do not have the resources to maintain these +programs; please consider them @qq{as-is}. Patches are appreciated, but +bug reports will almost certainly not be resolved. @menu * Invoking midi2ly:: Importing MIDI. +* Invoking musicxml2ly:: Importing MusicXML. +* Invoking abc2ly:: Importing ABC. * Invoking etf2ly:: Importing Finale. -* Invoking musicxml2ly:: -* Invoking abc2ly:: Importing ABC. -* Generating LilyPond files:: +* Generating LilyPond files:: GUIs, transcribers, and algorithmic composition programs. @end menu @@ -53,11 +52,11 @@ MIDI (Music Instrument Digital Interface) is a standard for digital instruments: it specifies cabling, a serial protocol and a file format. The MIDI file format is a de facto standard format for exporting music from other programs, so this capability may come in -useful when importing files from a program that has a convertor for a +useful when importing files from a program that has a converter for a direct format. -@command{midi2ly} converts tracks into @internalsref{Staff} and -channels into @internalsref{Voice} contexts. Relative mode is used +@command{midi2ly} converts tracks into @rinternals{Staff} and +channels into @rinternals{Voice} contexts. Relative mode is used for pitches, durations are only written when necessary. It is possible to record a MIDI file using a digital keyboard, and @@ -96,21 +95,21 @@ Show summary of usage. @item -k, --key=@var{acc}[:@var{minor}] Set default key. @math{@var{acc} > 0} sets number of sharps; @math{@var{acc} < 0} sets number of flats. A minor key is indicated by -@samp{:1}. +@code{:1}. @item -o, --output=@var{file} Write output to @var{file}. @item -s, --start-quant=@var{DUR} -Quantize note starts on DUR. +Quantize note starts on @var{DUR}. @item -t, --allow-tuplet=@var{DUR}*@var{NUM}/@var{DEN} Allow tuplet durations @var{DUR}*@var{NUM}/@var{DEN}. -@item -V, --verbose +@item -v, --verbose Be verbose. -@item -v, --version +@item -V, --version Print version number. @item -w, --warranty @@ -121,76 +120,81 @@ Treat every text as a lyric. @end table -@refbugs +@knownissues Overlapping notes in an arpeggio will not be correctly rendered. The first note will be read and the others will be ignored. Set them all to a single duration and add phrase markings or pedal indicators. -@node Invoking etf2ly -@section Invoking @command{etf2ly} +@node Invoking musicxml2ly +@section Invoking @code{musicxml2ly} -@cindex ETF -@cindex enigma -@cindex Finale -@cindex Coda Technology +@cindex MusicXML -ETF (Enigma Transport Format) is a format used by Coda Music -Technology's Finale product. @command{etf2ly} will convert part of an ETF -file to a ready-to-use LilyPond file. +@uref{http://@/www.@/musicxml@/.org/,MusicXML} is an XML dialect +for representing music notation. + +@command{musicxml2ly} extracts the notes, articulations, score structure, +lyrics, etc. from part-wise MusicXML files, and writes them to a .ly +file. It is invoked from the command-line. -It is invoked from the command-line as follows. +It is invoked from the command-line as follows, @example -etf2ly [@var{option}]@dots{} @var{etf-file} +musicxml2ly [@var{option}]@dots{} @var{xml-file} @end example Note that by @q{command-line}, we mean the command line of the operating system. See @ref{Converting from other formats}, for more information about this. -The following options are supported by @command{etf2ly}: +If the given filename is @file{-}, @command{musicxml2ly} reads input +from the command line. + +The following options are supported by @command{musicxml2ly}: @table @code -@item -h,--help -this help -@item -o,--output=FILE -set output filename to FILE -@item -v,--version -version information -@end table +@item -a, --absolute +convert pitches in absolute mode. +@item -h,--help +print usage and option summary. -@refbugs +@item -l, --language=LANG +use a different language file 'LANG.ly' and corresponding pitch names, +e.g. 'deutsch' for deutsch.ly and German note names. -The list of articulation scripts is incomplete. Empty measures -confuse @command{etf2ly}. Sequences of grace notes are ended improperly. +@item --lxml +use the lxml.etree Python package for XML-parsing; uses less memory and cpu time. -@node Invoking musicxml2ly -@section Invoking @code{musicxml2ly} +@item --nd --no-articulation-directions +do not convert directions (@code{^}, @code{_} or @code{-}) for +articulations, dynamics, etc. -@uref{http://@/www.@/recordarde@/.com/xml@/.html,MusicXML} is an XML dialect -for representing music notation. +@item --no-beaming +do not convert beaming information, use LilyPond's automatic +beaming instead. -@command{musicxml2ly} extracts the notes from part-wise MusicXML -files, and writes it to a .ly file. It is invoked from the command-line. +@item -o,--output=@var{file} +set output filename to @var{file}. If @var{file} is @file{-}, the output +will be printed on stdout. If not given, @var{xml-file}@file{.ly} will +be used. -Note that by @q{command-line}, we mean the command line of the -operating system. See @ref{Converting from other formats}, for -more information about this. +@item -r,--relative +convert pitches in relative mode (default). -The following options are supported by @command{musicxml2ly}: +@item -v,--verbose +be verbose. -@table @code -@item -h,--help -print usage and option summary. -@item -o,--output=@var{file} -set output filename to @var{file}. (default: print to stdout) -@item -v,--version +@item --version print version information. + +@item -z,--compressed +input file is a zip-compressed MusicXML file. @end table + @node Invoking abc2ly @section Invoking @code{abc2ly} @@ -199,7 +203,7 @@ print version information. ABC is a fairly simple ASCII based format. It is described at the ABC site: @quotation -@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/abc2mtex/@/abc@/.txt}. +@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html}. @end quotation @command{abc2ly} translates from ABC to LilyPond. It is invoked as follows: @@ -211,11 +215,15 @@ abc2ly [@var{option}]@dots{} @var{abc-file} The following options are supported by @command{abc2ly}: @table @code +@item -b,--beams=None +preserve ABC's notion of beams @item -h,--help this help @item -o,--output=@var{file} set output filename to @var{file}. -@item -v,--version +@item -s,--strict +be strict about success +@item --version print version information. @end table @@ -239,7 +247,7 @@ will cause the text following the @q{slyrics} keyword to be inserted into the current line of lyrics. -@refbugs +@knownissues The ABC standard is not very @q{standard}. For extended features (e.g., polyphonic music) different conventions exist. @@ -252,6 +260,45 @@ ABC synchronizes words and notes at the beginning of a line; @command{abc2ly} ignores the ABC beaming. +@node Invoking etf2ly +@section Invoking @command{etf2ly} + +@cindex ETF +@cindex enigma +@cindex Finale +@cindex Coda Technology + +ETF (Enigma Transport Format) is a format used by Coda Music +Technology's Finale product. @command{etf2ly} will convert part of an ETF +file to a ready-to-use LilyPond file. + +It is invoked from the command-line as follows. + +@example +etf2ly [@var{option}]@dots{} @var{etf-file} +@end example + +Note that by @q{command-line}, we mean the command line of the +operating system. See @ref{Converting from other formats}, for +more information about this. + +The following options are supported by @command{etf2ly}: + +@table @code +@item -h,--help +this help +@item -o,--output=@var{FILE} +set output filename to @var{FILE} +@item --version +version information +@end table + + +@knownissues + +The list of articulation scripts is incomplete. Empty measures +confuse @command{etf2ly}. Sequences of grace notes are ended improperly. + @node Generating LilyPond files @section Generating LilyPond files @@ -263,9 +310,9 @@ there are some external tools that also generate LilyPond files. These tools include -@itemize @bullet +@itemize @item -@uref{http://@/denemo@/.sourceforge@/.net/,Denemo}, a graphical score editor. +@uref{http://@/www@/.denemo@/.org/,Denemo}, a graphical score editor. @item @uref{http://www@/.volny@/.cz/smilauer/rumor/rumor@/.html,Rumor}, a realtime monophonic MIDI to LilyPond converter. @@ -273,7 +320,7 @@ monophonic MIDI to LilyPond converter. @uref{http://nicolas@/.sceaux@/.free@/.fr/lilypond/lyqi@/.html,lyqi}, an Emacs major mode. @item -@uref{http://@/www@/.nongnu@/.org/@/xml2ly/, xml2ly}, which imports +@uref{http://@/www@/.nongnu@/.org/@/xml2ly/,xml2ly}, which imports @uref{http://@/www@/.musicxml@/.com/xml@/.html,MusicXML} @item @uref{http://@/noteedit@/.berlios@/.de,NoteEdit} @@ -283,6 +330,13 @@ which imports @uref{http://@/www@/.musicxml@/.com/xml@/.html,MusicXML} which imports MIDI @item @uref{http://@/common-lisp@/.net/project/fomus/,FOMUS}, -a LISP library to generate music notation +a LISP library to generate music notation +@item +@uref{http://vsr.informatik.tu-chemnitz.de/staff/jan/nted/nted.xhtml}, +has experimental export for LilyPond. +@item +@uref{http://www.tuxguitar.com.ar/}, can export to LilyPond. +@item +@uref{http://musescore.org} can also export to LilyPond. @end itemize