]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'lilypond/translation' of ssh://git.sv.gnu.org/srv/git/lilypond
authorJohn Mandereau <john.mandereau@gmail.com>
Wed, 20 Jan 2010 22:23:02 +0000 (23:23 +0100)
committerJohn Mandereau <john.mandereau@gmail.com>
Wed, 20 Jan 2010 22:23:02 +0000 (23:23 +0100)
22 files changed:
Documentation/GNUmakefile
Documentation/contributor/basic-compile.itexi
Documentation/contributor/working.itexi
Documentation/extending/programming-interface.itely
Documentation/notation/spacing.itely
Documentation/usage.tely
Documentation/usage/converters.itely [deleted file]
Documentation/usage/external.itely [new file with mode: 0644]
Documentation/usage/lilypond-book.itely
Documentation/usage/running.itely
Documentation/web.texi
Documentation/web/manuals.itexi
GNUmakefile.in
ROADMAP
input/regression/hairpin-circled.ly
input/regression/paper-margins-line-width.ly
input/regression/quote-cyclic.ly
ly/property-init.ly
scm/define-grobs.scm
stepmake/stepmake/generic-targets.make
stepmake/stepmake/texinfo-targets.make
stepmake/stepmake/toplevel-targets.make

index 50f3ff672fdc780101bc8fc1dd1945d253318d53..9592e548c513145fb4adc656e0b8fe436fddc1d7 100644 (file)
@@ -56,7 +56,7 @@ TEXI_FILES_FROM_TELY = $(outdir)/internals.texi
 
 PDF_FILES = $(TEXINFO_MANUALS:%=$(outdir)/%.pdf)
 
-TOPDIR_HTML_MANUALS = 
+TOPDIR_HTML_MANUALS =
 UNSPLITTED_HTML_MANUALS =
 SPLITTED_HTML_MANUALS = $(foreach manual, $(TEXINFO_MANUALS),\
  $(if $(findstring $(manual), $(UNSPLITTED_HTML_MANUALS)),,$(manual)))
@@ -78,7 +78,7 @@ INFO_DOCS = lilypond-usage lilypond-changes lilypond-contributor lilypond-intern
  lilypond-essay lilypond-learning lilypond-notation music-glossary \
  lilypond-web lilypond-extending
 ifeq ($(out),www)
-INFO_DOCS += lilypond-snippets 
+INFO_DOCS += lilypond-snippets
 endif
 INFO_FILES = $(INFO_DOCS:%=$(outdir)/%.info)
 
@@ -109,23 +109,30 @@ default: local-txt-doc
 local-help: extra-local-help
 
 extra-local-help:
-       @echo -e "\
-  check-xrefs [ISOLANG=LL] validate Texinfo cross-references\n\
-  fix-xrefs [ISOLANG=LL]   interactively fix Texinfo cross-references (use with caution)\n\
-  info        update info pages\n\
-  xml        update Docbook xml documentation\n\
-\n\
-Translations specific targets (see TRANSLATION for details):\n\
-  new-lang ISOLANG=LL  create and initialize subdirectory \'LL' for language \'LL\n\
-(if \'LL exists, update missing file)\n\
-  po-update            update and replace PO files for documentation with msgmerged versions\n\
-  check-translation ISOLANG=LL   show changes in English docs since last translation update\n\
-  update-translation ISOLANG=LL  call $$$$EDITOR to help updating the translation\n\
-  skeleton-update ISOLANG=LL     update Texinfo skeleton files\n\
-  snippet-update ISOLANG=LL      update ly snippets in Texinfo translation according to\n\
-                              docs in English (use with caution)\n\
-\n\
-LL refers to the desired locale (most often only the ISO 639 language code).\n"
+       @echo "  check-xrefs [ISOLANG=LL] validate Texinfo cross-references"
+       @echo "  fix-xrefs [ISOLANG=LL]   interactively fix Texinfo cross-references"
+       @echo "                             (use with caution)"
+       @echo "  info                     update info pages"
+       @echo "  xml                      update Docbook xml documentation"
+       @echo
+       @echo "Translations specific targets (see TRANSLATION for details):"
+       @echo "  new-lang ISOLANG=LL           create and initialize"
+       @echo "                                  subdirectory \'LL' for language \'LL"
+       @echo "                                  (if \'LL exists, update missing file)"
+       @echo "  po-update                     update and replace PO files for"
+       @echo "                                  documentation with msgmerged versions"
+       @echo "  check-translation ISOLANG=LL  show changes in English docs since"
+       @echo "                                  last translation update"
+       @echo "  update-translation ISOLANG=LL call $$$$EDITOR to help updating"
+       @echo "                                  the translation"
+       @echo "  skeleton-update ISOLANG=LL    update Texinfo skeleton files"
+       @echo "  snippet-update ISOLANG=LL     update ly snippets in Texinfo translation"
+       @echo "                                  according to docs in English"
+       @echo "                                  (use with caution)"
+       @echo
+       @echo "  LL refers to the desired locale"
+       @echo "    (most often only the ISO 639 language code)."
+       @echo
 
 info: $(INFO_FILES)
        @echo export LILYPOND_DATADIR=$(LILYPOND_DATADIR)
index c13e16a4f0027dcd0c9f29bf823692e4cdeb79c3..17b4f313187f1d7e750b2c5e550a6653d7051f77 100644 (file)
@@ -600,3 +600,14 @@ Debian GNU/Linux
         ttf-kochi-gothic ttf-kochi-mincho \
         xfonts-bolkhov-75dpi xfonts-cronyx-100dpi xfonts-cronyx-75dpi
 @end verbatim
+
+
+@unnumberedsubsubsec Using lilypond python libraries
+
+If you want to use lilypond's python libraries (either running
+certain build scripts manually, or using them in other programs),
+set @code{PYTHONPATH} to @file{python/out} in your build
+directory, or @file{.../usr/lib/lilypond/current/python} in the
+installation directory structure.
+
+
index dbdb77cacc425526184d165e69339378a583f426..0c837b872d7c3f6fb563cc00590896235aa56602 100644 (file)
@@ -455,6 +455,36 @@ default with this command:
 git config branch.master.rebase true
 @end example
 
+If pull fails because of a message like
+
+@example
+error: Your local changes to 'Documentation/learning/tutorial.itely'
+would be overwritten by merge.  Aborting.
+@end example
+
+@noindent
+or
+
+@example
+Documentation/learning/tutorial.itely: needs update
+refusing to pull with rebase: your working tree is not up-to-date
+@end example
+
+@noindent
+it means that you have modified some files in you working tree
+without committing changes (see @ref{Commits and patches}); you
+can use the @command{git@tie{}stash} command to work around this:
+
+@example
+git stash      # save uncommitted changes
+git pull -r    # pull using rebase (translators omit "-r")
+git stash pop  # reapply previously saved changes
+@end example
+
+Note that @command{git@tie{}stash@tie{}pop} will try to apply a
+patch, and this may create a conflict.  If this happens, see
+@ref{Resolving conflicts}.
+
 FIXME: I think the next paragraph is confusing.  Perhaps prepare
 the reader for new terms `committish' and `head'?  -mp
 
index 4bae49aa4a62ba75e9dba5d2c6f710822684f43f..3806d35dc4c2352fe6330aee9b8ef10d9a8e4605 100644 (file)
@@ -894,7 +894,7 @@ can be inserted with a grob closure.  Here is a setting from
 @code{AccidentalSuggestion},
 
 @example
-(X-offset .
+`(X-offset .
   ,(ly:make-simple-closure
     `(,+
         ,(ly:make-simple-closure
index e0dff7d1472e8e1101d55cc23edb039e839710c2..73970ca7e1095adcca6dfa4acd0fe533665ee642 100644 (file)
@@ -2690,8 +2690,7 @@ there is no blank space at the bottom of the page.
 
 @example
 \paper @{
-  between-system-padding = #0.1
-  between-system-space = #0.1
+  between-system-spacing = #'((padding . 0) (space . 0.1))
   ragged-last-bottom = ##f
   ragged-bottom = ##f
 @}
index 0ce6002b62fa2a60ed69dc8ee11b6da306336a7e..9d0297b43da6a36960a2f8da399bc0e5db3eb9e5 100644 (file)
@@ -49,7 +49,7 @@ Copyright @copyright{} 1999--2009 by the authors.
 * Running lilypond::               Operation.
 * Updating files with convert-ly:: Updating input files.
 * lilypond-book::                  Integrating text and music.
-* Converting from other formats::  Converting to lilypond source format.
+* External programs::              Mixing LilyPond and other programs.
 * Suggestions for writing files::  Best practices and effective bug-fixing.
 
 Appendices
@@ -68,7 +68,7 @@ Appendices
 @include usage/running.itely
 @include usage/updating.itely
 @include usage/lilypond-book.itely
-@include usage/converters.itely
+@include usage/external.itely
 @include usage/suggestions.itely
 
 @include fdl.itexi
diff --git a/Documentation/usage/converters.itely b/Documentation/usage/converters.itely
deleted file mode 100644 (file)
index 8dab496..0000000
+++ /dev/null
@@ -1,317 +0,0 @@
-@c -*- coding: utf-8; mode: texinfo; -*-
-
-@ignore
-    Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
-
-    When revising a translation, copy the HEAD committish of the
-    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
-
-Music can be entered also by importing it from other formats.  This
-chapter documents the tools included in the distribution to do so.
-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 @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
-@rweb{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.
-* Other formats::
-@end menu
-
-
-
-@node Invoking midi2ly
-@section Invoking @command{midi2ly}
-
-@cindex MIDI
-
-@command{midi2ly} translates a Type@tie{}1 MIDI file to a LilyPond source
-file.
-
-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 converter for a
-direct format.
-
-@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
-then convert it to @file{.ly}.  However, human players are not
-rhythmically exact enough to make a MIDI to LY conversion trivial.
-When invoked with quantizing (@code{-s} and @code{-d} options)
-@command{midi2ly} tries to compensate for these timing errors, but is not
-very good at this.  It is therefore not recommended to use @command{midi2ly}
-for human-generated midi files.
-
-
-It is invoked from the command-line as follows,
-@example
-midi2ly [@var{option}]@dots{} @var{midi-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{midi2ly}.
-
-@table @code
-@item -a, --absolute-pitches
-Print absolute pitches.
-
-@item -d, --duration-quant=@var{DUR}
-Quantize note durations on @var{DUR}.
-
-@item -e, --explicit-durations
-Print explicit durations.
-
-@item -h,--help
-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
-@code{:1}.
-
-@item -o, --output=@var{file}
-Write output to @var{file}.
-
-@item -s, --start-quant=@var{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
-Be verbose.
-
-@item -V, --version
-Print version number.
-
-@item -w, --warranty
-Show warranty and copyright.
-
-@item -x, --text-lyrics
-Treat every text as a lyric.
-@end table
-
-
-@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 musicxml2ly
-@section Invoking @code{musicxml2ly}
-
-@cindex MusicXML
-
-@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,
-@example
-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.
-
-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 -a, --absolute
-convert pitches in absolute mode.
-
-@item -h,--help
-print usage and option summary.
-
-@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.
-
-@item --lxml
-use the lxml.etree Python package for XML-parsing; uses less memory and cpu time.
-
-@item --nd --no-articulation-directions
-do not convert directions (@code{^}, @code{_} or @code{-}) for
-articulations, dynamics, etc.
-
-@item --no-beaming
-do not convert beaming information, use LilyPond's automatic
-beaming instead.
-
-@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.
-
-@item -r,--relative
-convert pitches in relative mode (default).
-
-@item -v,--verbose
-be verbose.
-
-@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}
-
-@warning{This program is not supported, and may be remove from
-future versions of LilyPond.}
-
-@cindex ABC
-
-ABC is a fairly simple ASCII based format.  It is described at the ABC site:
-
-@quotation
-@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html}.
-@end quotation
-
-@command{abc2ly} translates from ABC to LilyPond.  It is invoked as follows:
-
-@example
-abc2ly [@var{option}]@dots{} @var{abc-file}
-@end example
-
-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 -s,--strict
-be strict about success
-@item --version
-print version information.
-@end table
-
-There is a rudimentary facility for adding LilyPond code to the ABC
-source file.  If you say:
-
-@example
-%%LY voices \set autoBeaming = ##f
-@end example
-
-This will cause the text following the keyword @q{voices} to be inserted
-into the current voice of the LilyPond output file.
-
-Similarly,
-
-@example
-%%LY slyrics more words
-@end example
-
-will cause the text following the @q{slyrics} keyword to be inserted
-into the current line of lyrics.
-
-
-@knownissues
-
-The ABC standard is not very @q{standard}.  For extended features
-(e.g., polyphonic music) different conventions exist.
-
-Multiple tunes in one file cannot be converted.
-
-ABC synchronizes words and notes at the beginning of a line;
-@command{abc2ly} does not.
-
-@command{abc2ly} ignores the ABC beaming.
-
-
-@node Invoking etf2ly
-@section Invoking @command{etf2ly}
-
-@warning{This program is not supported, and may be remove from
-future versions of LilyPond.}
-
-@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 Other formats
-@section Other formats
-
-@cindex External programs, generating LilyPond files
-
-LilyPond itself does not come with support for any other formats,
-but some external tools can also generate LilyPond files.  These
-are listed in @rweb{Alternate editors}.
-
diff --git a/Documentation/usage/external.itely b/Documentation/usage/external.itely
new file mode 100644 (file)
index 0000000..b6b4ae5
--- /dev/null
@@ -0,0 +1,593 @@
+@c -*- coding: utf-8; mode: texinfo; -*-
+
+@ignore
+    Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
+
+    When revising a translation, copy the HEAD committish of the
+    version that you are working on.  See TRANSLATION for details.
+@end ignore
+
+@c \version "2.12.0"
+
+@node External programs
+@chapter External programs
+
+FIXME: blah blah
+
+
+@menu
+* Point and click::
+* Text editor support::
+* Converting from other formats::
+* LilyPond output in other programs::
+* Independent includes::
+@end menu
+
+
+@node Point and click
+@section Point and click
+
+@cindex point and click
+
+Point and click lets you find notes in the input by clicking on them
+in the PDF viewer.  This makes it easier to find input that causes
+some error in the sheet music.
+
+When this functionality is active, LilyPond adds hyperlinks to the PDF
+file.  These hyperlinks are sent to the web-browser, which opens a
+text-editor with the cursor in the right place.
+
+To make this chain work, you should configure your PDF viewer to
+follow hyperlinks using the @file{lilypond-invoke-editor} script
+supplied with LilyPond.
+
+For Xpdf on UNIX, the following should be present in
+@file{xpdfrc}@footnote{On UNIX, this file is found either in
+@file{/etc/xpdfrc} or as @file{.xpdfrc} in your home directory.}
+
+@example
+urlCommand     "lilypond-invoke-editor %s"
+@end example
+
+The program @file{lilypond-invoke-editor} is a small helper
+program.  It will invoke an editor for the special @code{textedit}
+URIs, and run a web browser for others.  It tests the environment
+variable @code{EDITOR} for the following patterns,
+
+@table @code
+@item emacs
+  this will invoke
+@example
+emacsclient --no-wait +@var{line}:@var{column} @var{file}
+@end example
+@item gvim
+  this will invoke
+@example
+gvim --remote +:@var{line}:norm@var{column} @var{file}
+@end example
+
+@item nedit
+this will invoke
+@example
+  nc -noask +@var{line} @var{file}'
+@end example
+@end table
+
+The environment variable @code{LYEDITOR} is used to override this.  It
+contains the command line to start the editor, where @code{%(file)s},
+@code{%(column)s}, @code{%(line)s} is replaced with the file, column
+and line respectively.  The  setting
+
+@example
+emacsclient --no-wait +%(line)s:%(column)s %(file)s
+@end example
+
+@noindent
+for @code{LYEDITOR} is equivalent to the standard emacsclient
+invocation.
+
+
+@cindex file size, output
+
+The point and click links enlarge the output files significantly.  For
+reducing the size of PDF and PS files, point and click may be switched
+off by issuing
+
+@example
+\pointAndClickOff
+@end example
+
+@noindent
+in a @file{.ly} file.  Point and click may be explicitly enabled with
+
+@example
+\pointAndClickOn
+@end example
+
+Alternately, you may disable point and click with a command-line
+option:
+
+@example
+lilypond -dno-point-and-click file.ly
+@end example
+
+@warning{You should always turn off point and click in any LilyPond
+files to be distributed to avoid including path information about
+your computer in the .pdf file, which can pose a security risk.}
+@node Text editor support
+@section Text editor support
+
+@cindex editors
+@cindex vim
+@cindex emacs
+@cindex modes, editor
+@cindex syntax coloring
+@cindex coloring, syntax
+
+There is support for different text editors for LilyPond.
+
+@menu
+* Emacs mode::
+* Vim mode::
+* Other editors::
+@end menu
+
+@node Emacs mode
+@unnumberedsubsec Emacs mode
+
+Emacs has a @file{lilypond-mode}, which provides keyword
+autocompletion, indentation, LilyPond specific parenthesis matching
+and syntax coloring, handy compile short-cuts and reading LilyPond
+manuals using Info.  If @file{lilypond-mode} is not installed on your
+platform, see below.
+
+An Emacs mode for entering music and running LilyPond is contained in
+the source archive in the @file{elisp} directory.  Do @command{make
+install} to install it to @var{elispdir}.  The file @file{lilypond-init.el}
+should be placed to @var{load-path}@file{/site-start.d/} or appended
+to your @file{~/.emacs} or @file{~/.emacs.el}.
+
+As a user, you may want add your source path (e.g. @file{~/site-lisp/}) to
+your @var{load-path} by appending the following line (as modified) to your
+@file{~/.emacs}
+
+@c any reason we do not advise:  (push "~/site-lisp" load-path)
+@example
+(setq load-path (append (list (expand-file-name "~/site-lisp")) load-path))
+@end example
+
+
+@node Vim mode
+@unnumberedsubsec Vim mode
+
+For @uref{http://@/www@/.vim@/.org,VIM}, a @file{vimrc} is supplied,
+along with syntax coloring tools.  A Vim mode for entering music and
+running LilyPond is contained in the source archive in @code{$VIM}
+directory.
+
+The LilyPond file type is detected if the file
+@file{~/.vim/filetype.vim} has the following content
+
+@example
+if exists("did_load_filetypes")
+  finish
+endif
+augroup filetypedetect
+  au! BufNewFile,BufRead *.ly,*.ily           setf lilypond
+augroup END
+@end example
+
+Please include this path by appending the following line to your
+@file{~/.vimrc}
+
+@example
+set runtimepath+=/usr/local/share/lilypond/$@{LILYPOND_VERSION@}/vim/
+@end example
+
+@noindent
+where $@{LILYPOND_VERSION@} is your LilyPond version.  If LilyPond was not
+installed in @file{/usr/local/}, then change this path accordingly.
+The path may differ significantly. In Fedora the path leads to the
+current version of Vim instead of Lilypond:
+
+@example
+set runtimepath+=/usr/share/vim/vim72/
+@end example
+
+
+@node Other editors
+@unnumberedsubsec Other editors
+
+Other editors (both text and graphical) support LilyPond, but
+their special configuration files are not distributed with
+LilyPond.  Consult their documentation for more information.  Such
+editors are listed in @rweb{Alternate editors}.
+
+
+@node Converting from other formats
+@section Converting from other formats
+
+Music can be entered also by importing it from other formats.  This
+chapter documents the tools included in the distribution to do so.
+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 @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
+@rweb{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.
+* Other formats::
+@end menu
+
+
+
+@node Invoking midi2ly
+@subsection Invoking @command{midi2ly}
+
+@cindex MIDI
+
+@command{midi2ly} translates a Type@tie{}1 MIDI file to a LilyPond source
+file.
+
+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 converter for a
+direct format.
+
+@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
+then convert it to @file{.ly}.  However, human players are not
+rhythmically exact enough to make a MIDI to LY conversion trivial.
+When invoked with quantizing (@code{-s} and @code{-d} options)
+@command{midi2ly} tries to compensate for these timing errors, but is not
+very good at this.  It is therefore not recommended to use @command{midi2ly}
+for human-generated midi files.
+
+
+It is invoked from the command-line as follows,
+@example
+midi2ly [@var{option}]@dots{} @var{midi-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{midi2ly}.
+
+@table @code
+@item -a, --absolute-pitches
+Print absolute pitches.
+
+@item -d, --duration-quant=@var{DUR}
+Quantize note durations on @var{DUR}.
+
+@item -e, --explicit-durations
+Print explicit durations.
+
+@item -h,--help
+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
+@code{:1}.
+
+@item -o, --output=@var{file}
+Write output to @var{file}.
+
+@item -s, --start-quant=@var{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
+Be verbose.
+
+@item -V, --version
+Print version number.
+
+@item -w, --warranty
+Show warranty and copyright.
+
+@item -x, --text-lyrics
+Treat every text as a lyric.
+@end table
+
+
+@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 musicxml2ly
+@subsection Invoking @code{musicxml2ly}
+
+@cindex MusicXML
+
+@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,
+@example
+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.
+
+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 -a, --absolute
+convert pitches in absolute mode.
+
+@item -h,--help
+print usage and option summary.
+
+@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.
+
+@item --lxml
+use the lxml.etree Python package for XML-parsing; uses less memory and cpu time.
+
+@item --nd --no-articulation-directions
+do not convert directions (@code{^}, @code{_} or @code{-}) for
+articulations, dynamics, etc.
+
+@item --no-beaming
+do not convert beaming information, use LilyPond's automatic
+beaming instead.
+
+@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.
+
+@item -r,--relative
+convert pitches in relative mode (default).
+
+@item -v,--verbose
+be verbose.
+
+@item --version
+print version information.
+
+@item -z,--compressed
+input file is a zip-compressed MusicXML file.
+@end table
+
+
+@node Invoking abc2ly
+@subsection Invoking @code{abc2ly}
+
+@warning{This program is not supported, and may be remove from
+future versions of LilyPond.}
+
+@cindex ABC
+
+ABC is a fairly simple ASCII based format.  It is described at the ABC site:
+
+@quotation
+@uref{http://@/www@/.walshaw@/.plus@/.com/@/abc/@/learn@/.html}.
+@end quotation
+
+@command{abc2ly} translates from ABC to LilyPond.  It is invoked as follows:
+
+@example
+abc2ly [@var{option}]@dots{} @var{abc-file}
+@end example
+
+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 -s,--strict
+be strict about success
+@item --version
+print version information.
+@end table
+
+There is a rudimentary facility for adding LilyPond code to the ABC
+source file.  If you say:
+
+@example
+%%LY voices \set autoBeaming = ##f
+@end example
+
+This will cause the text following the keyword @q{voices} to be inserted
+into the current voice of the LilyPond output file.
+
+Similarly,
+
+@example
+%%LY slyrics more words
+@end example
+
+will cause the text following the @q{slyrics} keyword to be inserted
+into the current line of lyrics.
+
+
+@knownissues
+
+The ABC standard is not very @q{standard}.  For extended features
+(e.g., polyphonic music) different conventions exist.
+
+Multiple tunes in one file cannot be converted.
+
+ABC synchronizes words and notes at the beginning of a line;
+@command{abc2ly} does not.
+
+@command{abc2ly} ignores the ABC beaming.
+
+
+@node Invoking etf2ly
+@subsection Invoking @command{etf2ly}
+
+@warning{This program is not supported, and may be remove from
+future versions of LilyPond.}
+
+@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 Other formats
+@subsection Other formats
+
+@cindex External programs, generating LilyPond files
+
+LilyPond itself does not come with support for any other formats,
+but some external tools can also generate LilyPond files.  These
+are listed in @rweb{Alternate editors}.
+
+
+
+@node LilyPond output in other programs
+@section LilyPond output in other programs
+
+This section shows methods to integrate text and music, different than
+the automated method with @command{lilypond-book}.
+
+@menu
+* Many quotes from a large score::
+* Inserting LilyPond output into OpenOffice.org::
+* Inserting LilyPond output into other programs::
+@end menu
+
+@node Many quotes from a large score
+@unnumberedsubsec Many quotes from a large score
+
+If you need to quote many fragments from a large score, you can also use
+the clip systems feature, see @ruser{Extracting fragments of music}.
+
+
+@node Inserting LilyPond output into OpenOffice.org
+@unnumberedsubsec Inserting LilyPond output into OpenOffice.org
+
+@cindex OpenOffice.org
+
+LilyPond notation can be added to OpenOffice.org with
+@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
+
+
+@node Inserting LilyPond output into other programs
+@unnumberedsubsec Inserting LilyPond output into other programs
+
+To insert LilyPond output in other programs, use @code{lilypond}
+instead of @code{lilypond-book}.  Each example must be created
+individually and added to the document; consult the documentation for
+that program.  Most programs will be able to insert LilyPond output in
+@file{PNG}, @file{EPS}, or @file{PDF} formats.
+
+To reduce the white space around your LilyPond score, use
+the following options
+
+@example
+\paper@{
+  indent=0\mm
+  line-width=120\mm
+  oddFooterMarkup=##f
+  oddHeaderMarkup=##f
+  bookTitleMarkup = ##f
+  scoreTitleMarkup = ##f
+@}
+
+@{ c1 @}
+@end example
+
+To produce a useful @file{EPS} file, use
+
+@example
+lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts   myfile.ly
+
+@file{PNG}:
+lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png myfile.ly
+@end example
+
+
+@node Independent includes
+@section Independent @code{include}s
+
+FIXME: blah blah
+
+@menu
+* MIDI articulation::
+@end menu
+
+
+@node MIDI articulation
+@subsection MIDI articulation
+
+stub for info about Dr. Peter Chubb's @file{articulate.ly}
+
+
index d184b1705ca33d209688b3bfe20588845f8a5f5e..4e2aa4c5cdda3065cf632c015df77ea221fbdf28 100644 (file)
@@ -1107,62 +1107,8 @@ unterst__tzt werden.
 @node Alternate methods of mixing text and music
 @section Alternative methods of mixing text and music
 
-This section shows methods to integrate text and music, different than
-the automated method with @command{lilypond-book}.
+Other means of mixing text and music (without
+@command{lilypond-book}) are discussed in
+@ref{LilyPond output in other programs}.
 
-@menu
-* Many quotes from a large score::
-* Inserting LilyPond output into OpenOffice.org::
-* Inserting LilyPond output into other programs::
-@end menu
-
-@node Many quotes from a large score
-@unnumberedsubsec Many quotes from a large score
-
-If you need to quote many fragments from a large score, you can also use
-the clip systems feature, see @ruser{Extracting fragments of music}.
-
-
-@node Inserting LilyPond output into OpenOffice.org
-@unnumberedsubsec Inserting LilyPond output into OpenOffice.org
-
-@cindex OpenOffice.org
-
-LilyPond notation can be added to OpenOffice.org with
-@uref{http://@/ooolilypond@/.sourceforge@/.net@/,OOoLilyPond}.
-
-
-@node Inserting LilyPond output into other programs
-@unnumberedsubsec Inserting LilyPond output into other programs
-
-To insert LilyPond output in other programs, use @code{lilypond}
-instead of @code{lilypond-book}.  Each example must be created
-individually and added to the document; consult the documentation for
-that program.  Most programs will be able to insert LilyPond output in
-@file{PNG}, @file{EPS}, or @file{PDF} formats.
-
-To reduce the white space around your LilyPond score, use
-the following options
-
-@example
-\paper@{
-  indent=0\mm
-  line-width=120\mm
-  oddFooterMarkup=##f
-  oddHeaderMarkup=##f
-  bookTitleMarkup = ##f
-  scoreTitleMarkup = ##f
-@}
-
-@{ c1 @}
-@end example
-
-To produce a useful @file{EPS} file, use
-
-@example
-lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts   myfile.ly
-
-@file{PNG}:
-lilypond -dbackend=eps -dno-gs-load-fonts -dinclude-eps-fonts --png myfile.ly
-@end example
 
index 1f79d36536c1999500e05ec4eb9c9f0ae46ecb80..174aa6310be399d3efbec44798e703e2c436887b 100644 (file)
@@ -20,8 +20,6 @@ This chapter details the technicalities of running LilyPond.
 * Command-line usage::
 * Error messages::
 * Common errors::
-* Point and click::
-* Text editor support::
 @end menu
 
 
@@ -637,182 +635,4 @@ an input file contains a non-ASCII character and was not saved in
 UTF-8 encoding.  For details, see @ruser{Text encoding}.
 
 
-@node Point and click
-@section Point and click
-
-@cindex point and click
-
-Point and click lets you find notes in the input by clicking on them
-in the PDF viewer.  This makes it easier to find input that causes
-some error in the sheet music.
-
-When this functionality is active, LilyPond adds hyperlinks to the PDF
-file.  These hyperlinks are sent to the web-browser, which opens a
-text-editor with the cursor in the right place.
-
-To make this chain work, you should configure your PDF viewer to
-follow hyperlinks using the @file{lilypond-invoke-editor} script
-supplied with LilyPond.
-
-For Xpdf on UNIX, the following should be present in
-@file{xpdfrc}@footnote{On UNIX, this file is found either in
-@file{/etc/xpdfrc} or as @file{.xpdfrc} in your home directory.}
-
-@example
-urlCommand     "lilypond-invoke-editor %s"
-@end example
-
-The program @file{lilypond-invoke-editor} is a small helper
-program.  It will invoke an editor for the special @code{textedit}
-URIs, and run a web browser for others.  It tests the environment
-variable @code{EDITOR} for the following patterns,
-
-@table @code
-@item emacs
-  this will invoke
-@example
-emacsclient --no-wait +@var{line}:@var{column} @var{file}
-@end example
-@item gvim
-  this will invoke
-@example
-gvim --remote +:@var{line}:norm@var{column} @var{file}
-@end example
-
-@item nedit
-this will invoke
-@example
-  nc -noask +@var{line} @var{file}'
-@end example
-@end table
-
-The environment variable @code{LYEDITOR} is used to override this.  It
-contains the command line to start the editor, where @code{%(file)s},
-@code{%(column)s}, @code{%(line)s} is replaced with the file, column
-and line respectively.  The  setting
-
-@example
-emacsclient --no-wait +%(line)s:%(column)s %(file)s
-@end example
-
-@noindent
-for @code{LYEDITOR} is equivalent to the standard emacsclient
-invocation.
-
-
-@cindex file size, output
-
-The point and click links enlarge the output files significantly.  For
-reducing the size of PDF and PS files, point and click may be switched
-off by issuing
-
-@example
-\pointAndClickOff
-@end example
-
-@noindent
-in a @file{.ly} file.  Point and click may be explicitly enabled with
-
-@example
-\pointAndClickOn
-@end example
-
-Alternately, you may disable point and click with a command-line
-option:
-
-@example
-lilypond -dno-point-and-click file.ly
-@end example
-
-@warning{You should always turn off point and click in any LilyPond
-files to be distributed to avoid including path information about
-your computer in the .pdf file, which can pose a security risk.}
-@node Text editor support
-@section Text editor support
-
-@cindex editors
-@cindex vim
-@cindex emacs
-@cindex modes, editor
-@cindex syntax coloring
-@cindex coloring, syntax
-
-There is support for different text editors for LilyPond.
-
-@menu
-* Emacs mode::
-* Vim mode::
-* Other editors::
-@end menu
-
-@node Emacs mode
-@unnumberedsubsec Emacs mode
-
-Emacs has a @file{lilypond-mode}, which provides keyword
-autocompletion, indentation, LilyPond specific parenthesis matching
-and syntax coloring, handy compile short-cuts and reading LilyPond
-manuals using Info.  If @file{lilypond-mode} is not installed on your
-platform, see below.
-
-An Emacs mode for entering music and running LilyPond is contained in
-the source archive in the @file{elisp} directory.  Do @command{make
-install} to install it to @var{elispdir}.  The file @file{lilypond-init.el}
-should be placed to @var{load-path}@file{/site-start.d/} or appended
-to your @file{~/.emacs} or @file{~/.emacs.el}.
-
-As a user, you may want add your source path (e.g. @file{~/site-lisp/}) to
-your @var{load-path} by appending the following line (as modified) to your
-@file{~/.emacs}
-
-@c any reason we do not advise:  (push "~/site-lisp" load-path)
-@example
-(setq load-path (append (list (expand-file-name "~/site-lisp")) load-path))
-@end example
-
-
-@node Vim mode
-@unnumberedsubsec Vim mode
-
-For @uref{http://@/www@/.vim@/.org,VIM}, a @file{vimrc} is supplied,
-along with syntax coloring tools.  A Vim mode for entering music and
-running LilyPond is contained in the source archive in @code{$VIM}
-directory.
-
-The LilyPond file type is detected if the file
-@file{~/.vim/filetype.vim} has the following content
-
-@example
-if exists("did_load_filetypes")
-  finish
-endif
-augroup filetypedetect
-  au! BufNewFile,BufRead *.ly,*.ily           setf lilypond
-augroup END
-@end example
-
-Please include this path by appending the following line to your
-@file{~/.vimrc}
-
-@example
-set runtimepath+=/usr/local/share/lilypond/$@{LILYPOND_VERSION@}/vim/
-@end example
-
-@noindent
-where $@{LILYPOND_VERSION@} is your LilyPond version.  If LilyPond was not
-installed in @file{/usr/local/}, then change this path accordingly.
-The path may differ significantly. In Fedora the path leads to the
-current version of Vim instead of Lilypond:
-
-@example
-set runtimepath+=/usr/share/vim/vim72/
-@end example
-
-
-@node Other editors
-@unnumberedsubsec Other editors
-
-Other editors (both text and graphical) support LilyPond, but
-their special configuration files are not distributed with
-LilyPond.  Consult their documentation for more information.  Such
-editors are listed in @rweb{Alternate editors}.
 
index 7b4c04922e0505bad9a1af5724b806bd25c48889..e283a88f4b10dc2e92017cb0da84e63b79dfbcf0 100644 (file)
@@ -245,7 +245,7 @@ Distributions will want to install lilypond.info in postinstall, doing:
   the manual is split between many HTML pages.
   @*@ @ @emph{(small download for each page)}
 
-@item @docLinkBig{\name\,\base\,\split\} @minus{}
+@item @docLinkBig{\name\,\base\,\big\} @minus{}
   read this manual as one huge HTML page.
   @*@ @ @emph{(large single download, \bigsize\)}
 
index 8a0725a134eff059d3719154d025a787f25f80ff..fd88f8571054c499ef20186f96f04479e6071a8b 100644 (file)
@@ -368,12 +368,23 @@ reporting, and development.
 @divEnd
 
 @divClass{column-right-bottom}
+@subheading Read it
 
-@docLinks{Web, web,
-  @ref{Top,,,,Web},
-  @manualStableWebSplit,
-  @manualStableWebBig, 1 MB,
-  @manualStableWebPdf, 2 MB}
+@subsubheading Lastest manual
+
+@divClass{keep-bullets}
+@itemize
+@ref{Top,Web}
+@end itemize
+@divEnd
+
+@subsubheading Web manual in @versionDevel
+
+@docLinksBare{Web, web,
+  @ref{Top,Web},
+  @manualDevelWebSplit,
+  @manualDevelWebBig, 1 MB,
+  @manualDevelWebPdf, 2 MB}
 
 @divEnd
 
index ca98bf838c0f646dbb5c4de565425cb223b7db6f..ef32c0080f5b15d09fb05ac3e8d28f43f4af929f 100644 (file)
@@ -39,7 +39,7 @@ LOCALSTEPMAKE_TEMPLATES=lilypond
 include $(depth)/make/stepmake.make
 
 
-local-dist: refresh-release-files dist-toplevel-txt-files 
+local-dist: refresh-release-files dist-toplevel-txt-files
 
 all: $(outdir)/VERSION
 
@@ -156,9 +156,9 @@ build-dir-setup: $(tree-share-prefix)/lilypond-force
 
 PO_FILES = $(call src-wildcard,$(src-depth)/po/*.po)
 HELP_CATALOGS = $(PO_FILES:po/%.po=%)
-CATALOGS = $(HELP_CATALOGS:lilypond=) 
+CATALOGS = $(HELP_CATALOGS:lilypond=)
 
-$(tree-share-prefix)/lilypond-force link-tree: GNUmakefile $(outdir)/VERSION 
+$(tree-share-prefix)/lilypond-force link-tree: GNUmakefile $(outdir)/VERSION
 # Preparing LilyPond tree for build-dir exec
        cd $(top-build-dir)/$(outbase) && rm -rf bin lib share
        mkdir -p $(tree-bin)
@@ -247,18 +247,19 @@ RESULT_DIR=$(top-build-dir)/out/test-results
 
 
 test:
-       @echo -en 'For tracking crashes: use\n\n\t'
-       @echo 'grep sourcefilename `grep -L systems.texi out/lybook-db/*/*log|sed s/log/ly/g`'
+       @echo 'For tracking crashes: use'
+       @echo
+       @echo '        grep sourcefilename `grep -L systems.texi out/lybook-db/*/*log|sed s/log/ly/g`'
        @echo
        $(MAKE) -C input/regression/ out=test local-test
        $(MAKE) -C input/regression/musicxml out=test local-test
        $(MAKE) -C input/regression/abc2ly out=test local-test
 
-test-baseline: 
+test-baseline:
        @if test -d .git ; then \
                $(if $(shell git diff), echo "commit before base lining" && false,true) ; \
        fi
-       $(MAKE) 
+       $(MAKE)
        $(MAKE) test
        $(MAKE) out=test -C input/regression/ local-test-baseline
        $(MAKE) out=test -C input/regression/musicxml local-test-baseline
@@ -270,7 +271,7 @@ local-check: test
        rm -rf $(RESULT_DIR)
        mkdir -p $(RESULT_DIR)
        $(buildscript-dir)/output-distance --create-images --output-dir $(RESULT_DIR) input/regression/out-test-baseline input/regression/out-test/
-       @find input ly -name '*.ly' -print |grep -v 'out.*/' | xargs grep '\\version' -L | grep -v "standard input" |sed 's/^/**** Missing version: /g' 
+       @find input ly -name '*.ly' -print |grep -v 'out.*/' | xargs grep '\\version' -L | grep -v "standard input" |sed 's/^/**** Missing version: /g'
 
 
 test-redo:
diff --git a/ROADMAP b/ROADMAP
index 9343264c5e27d847288b5f088f68e193ae6ff8ae..68bb390021e4cd040ba8b5a6ae4bd3af1c6886d9 100644 (file)
--- a/ROADMAP
+++ b/ROADMAP
@@ -30,6 +30,11 @@ LilyPond's source files.
 |   |
 |   |
 |   |   TRANSLATED MANUALS:
+|   |     Each language's directory can contain...
+|   |       1) translated versions of:
+|   |          * top sources for manuals
+|   |          * individual chapters for each manual
+|   |       2) a texidocs/ directory for snippet translations
 |   |
 |   |-- de/              German
 |   |-- es/              Spanish
index e01f244d75415e24ed740e51a651954235bad75a..f931f6e61b9cdf2c51bfa2fd5e3ef604ff18fd80 100644 (file)
@@ -10,10 +10,12 @@ followed by a crescendo al niente should only print one circle."
 \layout { ragged-right = ##t } 
 
 \relative c'' {
-       \override Hairpin #'circled-tip = ##t
-       c1\< d\! d\> c\! e\> c\< d\! \break
-       c\< \break
-       e d\! c\> \break
-       e d\!
+  \override Hairpin #'circled-tip = ##t
+  c1\< d\! d\> c\!
+  \override Hairpin #'to-barline = ##f
+  e\> c\< d\! \break
+  c\< \break
+  e d\! c\> \break
+  e d\!
 }
 
index e38f57f48d120ecf41e791c6a813abecd41db719..87a74a866adb7bfbb30eaedff4ea6cd924c64b2b 100644 (file)
@@ -1,7 +1,7 @@
 \version "2.13.5"
 
 \header {
-  texidoc = "If only line-width is given, systems are vertically centered."
+  texidoc = "If only line-width is given, systems are horizontally centered."
 }
 
 someNotes = \relative c' { \repeat unfold 40 { c4 d e f } }
index d55017c09dbe887907d86eddf3f0b59c7f3224ab..b2fe7245de11b5b2bddab1260f0ac8e8911f9bc7 100644 (file)
@@ -1,22 +1,17 @@
+\version "2.12.0"
 
 \header {
-
-    texidoc = "Two quoted voices may refer to each other. In this
+  texidoc = "Two quoted voices may refer to each other. In this
 example, there are notes with each full-bar rest."
-         
 }
-\version "2.12.0"
 
 A = \relative c' { c4 d e f | \cueDuring #"qB" #1 { R1 } | }
-B = \relative c' { \cueDuring #"qA" #1 { R1 } | f4 e d c  | }
+B = \new Voice \relative c' { \cueDuring #"qA" #1 { R1 } | f4 e d c | }
 
 \addQuote "qA" \A
 \addQuote "qB" \B
 
-\layout { ragged-right = ##t }
-
 <<
-    \new Staff \A
-    \new Staff \B
+  \new Staff \A
+  \new Staff \B
 >>
index 355094e3a6dc1ce91a76b0bb896501b9d871d50c..788cabb96c9412019e4541c71d8d98c7e39fe6dd 100644 (file)
@@ -172,14 +172,14 @@ endincipit = \context Staff {
 
 fermataMarkup =
 #(make-music 'MultiMeasureTextEvent
-   'tweaks (list
-             ; Set the 'text based on the 'direction
-             (cons 'text (lambda (grob)
-               (if (eq? (ly:grob-property grob 'direction) DOWN)
-                (markup #:musicglyph "scripts.dfermata")
-                (markup #:musicglyph "scripts.ufermata"))))
-             (cons 'outside-staff-priority 40)))
-
+             'tweaks (list
+                      ;; Set the 'text based on the 'direction
+                      (cons 'text (lambda (grob)
+                                    (if (eq? (ly:grob-property grob 'direction) DOWN)
+                                        (markup #:musicglyph "scripts.dfermata")
+                                        (markup #:musicglyph "scripts.ufermata"))))
+                      (cons 'outside-staff-priority 40)
+                      (cons 'outside-staff-padding 0)))
 
 %% font sizes
 
index 781d3e0b0322e4964869cf621ea85b60e7abf05f..b8857206845a02e1cac6b44f252bdffc5a72c410 100644 (file)
        (direction . ,UP)
        (extra-spacing-width . (+inf.0 . -inf.0))
        (font-series . bold)
+       (outside-staff-priority . 450)
        (padding . 0.5)
        (script-priority . 200)
        (side-axis . ,Y)
index eddf25a671ab84d01fa72f0d76bc0b7aeff16efa..dcb196c4dc13e4412d1766410e90157895ba818a 100644 (file)
@@ -47,32 +47,33 @@ config:
 
 
 generic-help:
-       @echo -e "\
-Makefile for $(PACKAGE_NAME) $(TOPLEVEL_VERSION)\n\
-Usage: make ["VARIABLE=value"]... [TARGET]\n\
-\n\
-Targets specific to current directory:\n"
+       @echo "Makefile for $(PACKAGE_NAME) $(TOPLEVEL_VERSION)"
+       @echo "Usage: make ["VARIABLE=value"]... [TARGET]"
+       @echo
+       @echo "Targets specific to current directory:"
 
 help: generic-help local-help
-       @echo -e "Generic targets:\n\
-  all *       update everything except documentation with images\n\
-  clean *     remove all generated stuff in $(outdir)\n\
-  bin-clean * same as clean, except that mf/out is preserved\n\
-  default     same as the empty target\n\
-  doc *       update documentation with images in directory \`out-www'\n\
-  doc-stage-1 * update only PDF and Info documentation in directory \`out-www'\n\
-  doc-clean * clean \`out-www' directory\n\
-  exe         update all executables\n\
-  help        this help\n\
-  install *   install programs and data (prefix=$(prefix))\n\
-  lib         update all libraries\n\
-  uninstall*  uninstall programs and data\n\
-  TAGS        generate tagfiles\n\
-\n\
-\`make' may be invoked from any subdirectory.\n\
-Note that all commands marked with a star (*) recurse into subdirectories;\n\
-prepend \`local-' to restrict operation to the current directory.\n\
-Example: \`local-clean'."
+       @echo "Generic targets that recurse into subdirectories*:"
+       @echo "  all          update everything except documentation with images"
+       @echo "  clean        remove all generated stuff in $(outdir)"
+       @echo "  bin-clean    same as clean, except that mf/out is preserved"
+       @echo "  doc          update documentation with images in directory \`out-www'"
+       @echo "  doc-stage-1  update only PDF and Info documentation in directory \`out-www'"
+       @echo "  doc-clean    clean \`out-www' directory"
+       @echo "  install      install programs and data (prefix=$(prefix))"
+       @echo "  uninstall    uninstall programs and data"
+       @echo
+       @echo "  *Note: Prepend \`local-' (eg. \`local-clean') to restrict"
+       @echo "         any of the above commands to the current directory."
+       @echo
+       @echo "Other generic targets:"
+       @echo "  default      same as the empty target"
+       @echo "  exe          update all executables"
+       @echo "  help         this help"
+       @echo "  lib          update all libraries"
+       @echo "  TAGS         generate tagfiles"
+       @echo
+       @echo "\`make' may be invoked from any subdirectory."
 
 local-help:
 
index 36a2e92da5ee3273d099d15e9c31046687a6a321..df3fe8347ea143aa287625a27335bc8a8fe46f61 100644 (file)
@@ -163,8 +163,9 @@ texinfo-all-menus-update:
 local-help: local-texinfo-help
 
 local-texinfo-help:
-       @echo -e "\
-  info [out=www]  update Info documentation (use \`out=www' for having images)\n\
-  install-info [out=www]   install Info documentation (idem)\n\
-  texinfo-all-menus-update update node menus in Texinfo source files (use with caution)\n"
+       @echo "  info [out=www]           update Info documentation"
+       @echo "                             (use \`out=www' for having images)"
+       @echo "  install-info [out=www]   install Info documentation (idem)"
+       @echo "  texinfo-all-menus-update update node menus in Texinfo source files"
+       @echo "                             (use with caution)"
 
index 1c590b0447d69d009cf1cddb62091b635518963c..d07d80f0d17706a4b577da5eca6656118e9a9358 100644 (file)
@@ -56,24 +56,29 @@ dist:
        rm -rf $(distdir)/
 
 local-help:
-       @echo -e "\
-  config      rerun configure\n\
-  dist        roll tarball: $(depth)/$(outdir)/$(distname).tar.gz\n\
-  distclean   also remove configure output\n\
-  cvs-clean   also remove out directories and generated files\n\
-  maintainerclean also remove distributed generated files\n\
-  po          make new translation Portable Object database\n\
-  po-replace  do po-update and replace catalogs with msgmerged versions\n\
-  po-update   update translation Portable Object database\n\
-\n\
-  install-doc install website documentation in (webdir=$(webdir))\n\
-              and Info documentation with images\n\
-  uninstall-doc remove installed documentation with images\n\
-  info        build Info documentation with images\n\
-  install-info  install Info documentation with images\n\
-\n\
-Some more targets are available for testing changes:\n\
-  test-baseline  check  test-redo  test-clean\n\
-For more information on these targets, see Testing LilyPond\n\
-in Application Usage documentation.\n"
+       @echo "  config          rerun configure"
+       @echo "  dist            roll tarball: $(depth)/$(outdir)/$(distname).tar.gz"
+       @echo "  distclean       also remove configure output"
+       @echo "  cvs-clean       also remove out directories and generated files"
+       @echo "  maintainerclean also remove distributed generated files"
+       @echo "  po              make new translation Portable Object database"
+       @echo "  po-replace      do po-update and replace catalogs with msgmerged versions"
+       @echo "  po-update       update translation Portable Object database"
+       @echo
+       @echo "  install-doc     install website documentation in"
+       @echo "                    (webdir=$(webdir))"
+       @echo "                    and Info documentation with images"
+       @echo "  uninstall-doc   remove installed documentation with images"
+       @echo "  info            build Info documentation with images"
+       @echo "  install-info    install Info documentation with images"
+       @echo
+       @echo "Some more targets are available for testing changes:"
+       @echo "  test-baseline"
+       @echo "  check"
+       @echo "  test-redo"
+       @echo "  test-clean"
+       @echo
+       @echo "  For more information on these targets, see"
+       @echo "    \`Testing LilyPond' in the Contributor's Guide."
+       @echo