]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'master' into lilypond/translation
authorFrancisco Vila <francisco.vila@hispalinux.es>
Tue, 21 Dec 2010 17:56:12 +0000 (18:56 +0100)
committerFrancisco Vila <francisco.vila@hispalinux.es>
Tue, 21 Dec 2010 17:56:12 +0000 (18:56 +0100)
40 files changed:
.gitignore
Documentation/contributor.texi
Documentation/contributor/administration.itexi
Documentation/contributor/introduction.itexi
Documentation/contributor/issues.itexi
Documentation/contributor/quick-start.itexi [new file with mode: 0644]
Documentation/contributor/source-code.itexi
Documentation/css/lilypond-mccarty.css
Documentation/de/notation/changing-defaults.itely
Documentation/es/notation/changing-defaults.itely
Documentation/fr/essay/engraving.itely
Documentation/fr/notation/changing-defaults.itely
Documentation/included/compile.itexi
Documentation/included/helpus.itexi
Documentation/macros.itexi
Documentation/notation/changing-defaults.itely
Documentation/notation/rhythms.itely
Documentation/notation/spacing.itely
Documentation/notation/staff.itely
Documentation/notation/text.itely
Documentation/web/news-front.itexi
Documentation/web/news.itexi
VERSION
input/regression/book-label-no-segfault.ly [new file with mode: 0644]
input/regression/skiptypesetting-all-true.ly [new file with mode: 0644]
input/regression/skiptypesetting-multimeasurerest.ly [new file with mode: 0644]
input/regression/tablature-harmonic-tie.ly [new file with mode: 0644]
lily/include/paper-column-engraver.hh
lily/optimal-page-breaking.cc
lily/page-breaking.cc
lily/page-turn-page-breaking.cc
lily/paper-column-engraver.cc
po/de.po
po/el.po [new file with mode: 0644]
po/es.po
po/fr.po
python/convertrules.py
scm/page.scm
scripts/auxiliar/doc-section.sh
scripts/auxiliar/update-with-convert-ly.sh

index 2f4d094f747d5b8e3002f5d18e58d58ca0dc2867..e0fae2d1e44836bf6830edab2fa532728d32b1f5 100644 (file)
@@ -77,3 +77,4 @@ RELEASE-COMMIT
 Documentation/lilypond
 semantic.cache
 .lock-wscript
+build/
index 53f796a3e31b45254791833e07d766022facc693..a9e3bd77513126b7dc26d5c748d7eb939935decf 100644 (file)
@@ -50,6 +50,7 @@ Copyright @copyright{} 2007--2010 by the authors.
 
 @menu
 * Introduction to contributing::
+* Quick start::
 * Working with source code::
 * Compiling::
 * Documentation work::
@@ -74,6 +75,7 @@ Appendices
 @allowcodebreaks false
 
 @include contributor/introduction.itexi
+@include contributor/quick-start.itexi
 @include contributor/source-code.itexi
 @include contributor/compiling.itexi
 @include contributor/doc-work.itexi
index eac2b4f5ab1e39841c021380d782b69ca2fcce9e..15a6612c117cda8336b0123f06727b968c474786 100644 (file)
@@ -347,7 +347,7 @@ discussion.
 
 @warning{The estimated time required for "prep work", and the
 following discussion, has been added to each item.  At the moment,
-there is an estimated 30 hours of prep work and 125 hours of
+there is an estimated 30 hours of prep work and 135 hours of
 discussion.}
 
 @itemize
@@ -476,6 +476,15 @@ Should we change the "structure" / "framework" for bounties?
 
 (prep: 2 hours.  discuss: 10 hours)
 
+@item @strong{Separate branches for active development}:
+it might be good to have @emph{everybody} working on separate
+branches.  This complicates the git setup, but with sufficient
+logic in lily-git.tcl, we can probably make it transparent to
+newbies.  However, we'd need a reliable person to handle all the
+required merging and stuff.
+
+(prep: 2 hours.  discuss: 10 hours)
+
 @end itemize
 
 
@@ -779,6 +788,9 @@ about \new vs. \context.
 Let users add their own items to the parser?  comment 11 on:
 http://code.google.com/p/lilypond/issues/detail?id=1322
 
+@item
+should engravers be pluralized (note_heads_engraver) or not
+(note_head_engraver) ?
 
 @end itemize
 
@@ -819,3 +831,61 @@ discuss giving them push access.  Unsolicited requests from
 contributors for access will almost always be turned down.
 
 
+@subsubheading Creating the @strong{Lilybuntu} respin
+
+@enumerate
+
+@item Install ubuntu, reboot
+
+@item Run all updates, reboot if asked
+
+@item Enable src repos, refresh package lists
+
+@item install LP build deps:
+
+@example
+sudo apt-get build-dep lilypond
+@end example
+
+@ install git and other stray build dependencies:
+
+@example
+sudo apt-get install git-core gitk autoconf dblatex
+@end example
+
+@item TEST TO SEE WHETHER EVERYTHING WORKS NOW:
+
+@itemize
+
+@item use @code{lily-git.tcl} to grab source files
+@item go to source directory and do @code{./autogen.sh ;
+make all ; make doc}
+
+@item if all compiles, move on to iso creation...
+
+@end itemize
+
+@item Download & install "remastersys" package:
+
+@example
+@uref{http://sourceforge.net/projects/remastersys/}
+@end example
+
+@item copy @code{lily-git.tcl} script file into @code{/etc/skel/}
+
+@item modify @code{/etc/remastersys.conf} as desired
+(change .iso name, default live session username, etc)
+
+@item Remove non-essential desktop software as desired
+@item create iso:
+
+@example
+sudo remastersys dist
+@end example
+
+@item new iso is in @code{/home/remastersys/remastersys/}
+
+@item test iso by installing in VM and repeating steps above for
+getting source files and building lp and docs
+
+@end enumerate
index c36b316141e360593427158a859129bfdab4fa20..c104cee17551acb2790d8a512c9bb84a1d5e63ec 100644 (file)
@@ -11,7 +11,6 @@ help LilyPond.
 @menu
 * Help us::
 * Overview of work flow::
-* Lilybuntu::
 * Mentors::
 @end menu
 
@@ -75,9 +74,9 @@ interface is at
 
 Git is a complex and powerful tool, but tends to be confusing at
 first, particularly for users not familiar with the command line
-and/or version control systems.  Contributors who don't want to
-deal with Git directly are encouraged to use the
-@command{lily-git} graphical user interface instead.
+and/or version control systems.  We have created the
+@command{lily-git} graphical user interface to ease this
+difficulty.
 
 @emph{Compiling} (@q{building}) LilyPond allows developers to see
 how changes to the source code affect the program itself.
@@ -98,116 +97,8 @@ the developers' mailing list here:
 @uref{http://lists.gnu.org/mailman/listinfo/lilypond-devel}.
 
 @warning{Contributors on Windows or MacOS X wishing to compile
-code or documentation are strongly advised to use @ref{Lilybuntu}
-instead of trying to install all software dependencies
-themselves.}
-
-
-@node Lilybuntu
-@section Lilybuntu
-
-It is not possible to compile LilyPond on Windows, and extremely
-difficulty to compile it on MacOS X.  We have therefore made a
-@q{remix} of Ubuntu which includes all necessary dependencies to
-compile both LilyPond and the documentation.  This can be run
-inside a virtual machine without disturbing your main operating
-system.
-
-@enumerate
-@item
-Install some virtualization software.
-
-Any virtualization tool can be used, but we recommend VirtualBox:
-
-@example
-@uref{http://@/www.virtualbox.org/@/wiki/@/Downloads}
-@end example
-
-In virtualization terminology, your main operating system is the
-@qq{host}.
-
-@item
-Download the @file{lilybuntu.iso} disk image.
-
-@example
-@uref{http://@/files.lilynet.net/@/lilybuntu.iso}
-@end example
-
-@item
-Install @file{lilybuntu.iso} as the @qq{client} operating system
-on your virtualized system.
-
-@itemize
-
-@item
-The latest version of lilybuntu is based on Ubuntu 9.04; if you
-encounter any difficulties installing it, search for one of the
-many tutorials for installing Ubuntu 9.04 as a client operating
-system.
-
-@item
-When @file{lilybuntu.iso} boots, it automatically selects @qq{Try
-Ubuntu without any change to your computer}; instead of this, you
-must select @qq{Install Ubuntu}.
-
-@item
-If possible, use at least 700 MB of RAM (1GB would be better) for
-the virtual machine, and use a dynamically expanding virtual hard
-drive.  A complete compile of everything (code, docs, regression
-tests) can reach 10 GB.
-
-@item
-At the partitioning stage, do not be afraid to select @qq{use
-entire disk}, since this refers to your @emph{virtual disk}, not
-your machine's actual hard drive.
-
-@end itemize
-
-@item
-Do any extra configuration for your virtualization software.
-
-VirtualBox has extra @qq{guest additions} which can make the
-virtualization easier to use (full-screen, easy file sharing
-between host and client operating systems, shared clipboards,
-etc).
-
-@enumerate
-
-@item
-From the @code{Devices} menu of VirtualBox, select @code{Install
-Guest Additions...}.
-
-@item
-From the @code{Places} menu of Ubuntu, select
-@code{VBOXADDITIONS_}.  A file-system window will open.
-
-@item
-Double-click on the @file{autorun.sh} file, then select @qq{Run in
-Terminal}.
-
-@item
-Once the script is finished, reboot your Virtual Machine to
-complete the installation.
-
-@end enumerate
-
-If you use other virutalization software, then follow the normal
-procedures for your virtualization software with Ubuntu 9.04 as
-the client.
-
-@end enumerate
-
-Follow instructions for Linux when reading instructions about
-@ref{Working with source code}, or @ref{Compiling}.
-
-@quotation
-Advanced note: not all hardware is supported in all virtualization
-tools.  In particular, contributors have reported problems with
-USB devices.  If you would like to investigate further, then look
-for help for your virtualization tool using your normal OS as the
-@qq{host} and Ubuntu as the @qq{client}.
-
-@end quotation
+code or documentation are strongly advised to use lilybuntu, as
+discussed in @ref{Quick start}.}
 
 
 @node Mentors
index 70578c7ad846ffb83c052dcef7c94788f5a26539..4260e838ad02b9339fde2bf594cca85bb6702fb5 100644 (file)
@@ -66,6 +66,13 @@ Configure your google code account:
 
 @enumerate
 
+@item
+Wait until your gmail account is listed in:
+
+@example
+@uref{http://code.google.com/p/lilypond/people/list}
+@end example
+
 @item
 Sign in to google code by clicking in the top-right corner of:
 
@@ -73,6 +80,9 @@ Sign in to google code by clicking in the top-right corner of:
 @uref{http://code.google.com/p/lilypond/issues/list}
 @end example
 
+You cannot log if you have Google Sharing
+@uref{http://www.googlesharing.net/} enabled.
+
 @item
 Go to your @qq{Profile}, and select @qq{Settings}.
 
@@ -475,6 +485,7 @@ includes the makefiles, stepmake, python scripts, and GUB.
 @item
 Type-Scripts: problem or desired feature in the non-build-system
 scripts.  Mostly used for convert-ly, lilypond-book, etc.
+
 @item
 Type-Enhancement: a feature request for the core program.  The
 distinction between enhancement and defect isn't extremely clear;
@@ -493,37 +504,38 @@ Currently, only Critical items will block a stable release.
 @itemize
 
 @item
-Priority-Critical: lilypond segfaults, or a regression occurred
-within the last two stable versions.  (i.e. when developing 2.13,
-any regression against 2.12 or 2.10 counts)
+Priority-Critical: LilyPond segfaults, a regression against a
+previous stable version or a regression against a fix developed
+for this version.  This does not apply where the @qq{regression}
+occurred because a feature was removed deliberately - this is not
+a bug.
 
 @item
-Priority-High: highly embarrassing items, and any regression
-against a version earlier than two stable versions (i.e. when
-developing 2.13, any regression against 2.8 or earlier).  This
-level is also used for issues which produce no output and fail to
-give the user a clue about what's wrong.
+Priority-High: An issue which produces output which does not
+accurately reflect the input (e.g. where the user would expect
+an accidental, but none is shown) or which produces aesthetically
+poor output in a situation which could be expected to crop up
+frequently in real-world music.  It should not be used where the
+problem can be avoided with a simple workaround.  It can also
+be used to flag where new code in a development version is not
+functioning as it should.  This level is also used for issues
+which produce no output and fail to give the user a clue about
+what's wrong.
 
 @item
-Priority-Medium: normal priority.
+Priority-Medium: Normal priority - use this as the default.
 
 @item
-Priority-Low: less important than normal.
+Priority-Low: A minor problem which produces slightly undesirable
+output, or which will only occur in contrived examples, or which
+is very easily worked around.
 
 @item
 Priority-Postponed: no fix planned.  Generally used for things
-like Ancient notation, which nobody wants to touch.
+which nobody wants to touch.
 
 @end itemize
 
-The difference between Priority-Medium and Priority-Low is not
-well-defined, both in this policy and in practice.  The only
-answer we can give at the moment is @qq{look at existing items in
-of the same type, and try to guess whether the priority is closer
-to the Medium items or Low items}.  We're aware of the ambiguity,
-and won't complain if somebody picks a @q{wrong} value for
-Medium/Low.
-
 
 @subheading Opsys (optional)
 
@@ -574,7 +586,7 @@ Performance: might potentially be used.
 
 @end itemize
 
-If you particularly want to add an label not in the list, go
+If you particularly want to add a label not in the list, go
 ahead, but this is not recommended.
 
 
diff --git a/Documentation/contributor/quick-start.itexi b/Documentation/contributor/quick-start.itexi
new file mode 100644 (file)
index 0000000..18ef513
--- /dev/null
@@ -0,0 +1,509 @@
+@c -*- coding: utf-8; mode: texinfo; -*-
+
+@node Quick start
+@chapter Quick start
+
+Want to submit a patch for LilyPond?  Great!  This chapter is
+designed to let you do this as quickly and easily as possible.
+
+It is not possible to compile LilyPond on Windows, and extremely
+difficulty to compile it on MacOS X.  We have therefore made a
+@q{remix} of Ubuntu which includes all necessary dependencies to
+compile both LilyPond and the documentation.  This can be run
+inside a virtual machine without disturbing your main operating
+system.
+
+@advanced{experienced developers may prefer to use their own
+development environment.  It may be instructive to skim over these
+instructions, but be aware that this chapter is intended for
+helpful users who may have never created a patch before.}
+
+@menu
+* Lilybuntu::
+* Using lily-git::
+* Compiling with lilybuntu::
+* Now start work!::
+@end menu
+
+@node Lilybuntu
+@section Lilybuntu
+
+text.
+
+@menu
+* Installing lilybuntu::
+* Configuring lilybuntu in virtualbox::
+* Using lilybuntu::
+@end menu
+
+@node Installing lilybuntu
+@subsection Installing lilybuntu
+
+@enumerate
+@item
+Install some virtualization software.
+
+Any virtualization tool can be used, but we recommend VirtualBox:
+
+@example
+@uref{http://@/www.virtualbox.org/@/wiki/@/Downloads}
+@end example
+
+In virtualization terminology, your main operating system is the
+@qq{host}, while lilybuntu is the @qq{guest}.
+
+@item
+Download the @file{lilybuntu2.iso} disk image: (approximately 1
+GB)
+
+@example
+@uref{http://files.lilynet.net/lilybuntu2.iso}
+@end example
+
+@advanced{There is a md5sum available:
+@uref{http://files.lilynet.net/lilybuntu2.iso.md5}}
+
+@item
+Install @file{lilybuntu2.iso} as the @qq{guest} operating system
+on your virtualized system.
+
+@itemize
+
+@item
+If possible, use at least 700 MB of RAM (1GB would be better) for
+the virtual machine, and use @qq{dynamically expanding storage}
+for the virtual hard drive.  A complete compile of everything
+(code, docs, regression tests) can reach 10 GB.
+
+@item
+When @file{lilybuntu2.iso} boots, it shows an ISOLINUX
+@code{boot:} prompt.  Type:
+
+@example
+install
+@end example
+
+@item
+At the @qq{Prepare disk space} stage, do not be afraid to select
+@qq{Erase and use the entire disk}, since this refers to your
+@emph{virtual disk}, not your machine's actual hard drive.
+
+@item
+When prompted to remove the installation CD, go to
+@clicksequence{Devices @click{} CD/DVD Devices} and de-select
+@file{lilybuntu2.iso}.
+
+@end itemize
+
+@advanced{
+The latest version of lilybuntu is based on Ubuntu 10.04.1; if you
+encounter any difficulties installing it, search for one of the
+many tutorials for installing that particular version of Ubuntu as
+a guest operating system.
+}
+
+@item
+Do any extra configuration for your virtualization software.
+
+There are additional instructions for VirtualBox in
+@ref{Configuring lilybuntu in virtualbox}.
+
+If you use other virtualization software, then follow the normal
+procedures for your virtualization software with Ubuntu as the
+client.
+
+@advanced{not all hardware is supported in all virtualization
+tools.  In particular, some contributors have reported problems
+with USB devices.  If you would like to investigate further, then
+look for help for your virtualization tool using your normal OS as
+the @qq{host} and Ubuntu as the @qq{client}.}
+
+@end enumerate
+
+
+@node Configuring lilybuntu in virtualbox
+@subsection Configuring lilybuntu in virtualbox
+
+VirtualBox has extra @qq{guest additions} which can make the
+virtualization easier to use (full-screen, easy file sharing
+between host and guest operating systems, shared clipboards, etc).
+
+@enumerate
+
+@item
+In @emph{VirtualBox}, select @clicksequence{Devices @click{}
+Install Guest Additions...}.
+
+@item
+In @emph{Ubuntu}, select @clicksequence{Places @click{}
+VBOXADDITIONS_}.  A file-system window will open.
+
+@item
+Double-click on the @file{autorun.sh} file, then select @qq{Run in
+Terminal}, and enter your password when prompted.
+
+@item
+Once the script is finished, restart Ubuntu to complete the
+installation.
+
+@advanced{If you do any kernel upgrades, you may need to re-run
+these VBOXADDITIONS instructions.}
+@end enumerate
+
+Some other steps may be helpful:
+
+@itemize
+@item
+In the settings for the virtual machine, set the network to
+Bridged mode to allow you to access shared folders on your Windows
+host.
+
+@item
+Set up any additional features, such as @q{Shared Folders} between
+your main operating system and ubuntu.  This is distinct from the
+networked share folders in Windows.  Consult external
+documentation for this step.
+
+TODO: maybe we should just nuke this point?  is it easier to do
+networked file sharing in osx, linux, etc, thus making the
+virtualbox "shared folders" not useful?
+
+@end itemize
+
+
+@node Using lilybuntu
+@subsection Using lilybuntu
+
+If you are not familiar with Linux, it may be beneficial to read a
+couple of @qq{introduction to Ubuntu} webpages.
+
+@itemize
+@item
+One particular change from Windows and MacOS X is that most
+software should be installed with your @qq{package manager}; this
+vastly simplifies the process of installing and configuring
+software.  Go to @clicksequence{Applications @click{} Ubuntu
+Software Center}.
+
+@item
+The rest of this manual assumes that you are using the
+command-line; go to @clicksequence{Applications @click{}
+Accessories @click{} Terminal}.
+
+@item
+Pasting into a terminal is done with @code{Ctrl+Shift+v}.
+
+@item
+Some contributors have recommended: (pdf available for free)
+
+@example
+@uref{http://www.ubuntupocketguide.com/}
+@end example
+
+@end itemize
+
+
+@c if you change this node name, you'll need to change the @ref in
+@c web/ and/or included/, along with all the translations.
+@node Using lily-git
+@section Using lily-git
+
+@command{lily-git.tcl} is a graphical tool to help you access and
+share changes to the lilypond source code.
+
+@menu
+* Install and configuration of lily-git.tcl::
+* Daily use of lily-git.tcl::
+@end menu
+
+@node Install and configuration of lily-git.tcl
+@unnumberedsubsec Install and configuration of @command{lily-git.tcl}
+
+@warning{The rest of this manual assumes that you are using the
+command-line; go to @clicksequence{Applications @click{}
+Accessories @click{} Terminal}.}
+
+@enumerate
+@item
+@code{lily-git.tcl} has already been installed for you.  Simply type
+(or copy&paste):
+
+@example
+cd
+wish lily-git.tcl
+@end example
+
+@item
+Click on the @qq{Get source} button.
+
+This will create a directory called @file{lilypond-git/} within
+your home directory, and will download the source code into that
+directory (around 55Mb).  When the process is finished, the
+@qq{Command output} window will display @qq{Done}, and the button
+label will change to say @qq{Update source}.
+
+@item
+Navigate to the @file{lilypond-git/} directory to view the source
+files.
+
+@end enumerate
+
+You should now progress to @ref{Compiling with lilybuntu}.
+
+@warning{Throughout the rest of this manual, most command-line
+input should be entered from @file{~/lilypond-git/}.  This is
+referred to as the @emph{top source directory}.}
+
+
+@subsubheading Other operating systems
+
+@enumerate
+@item
+If you haven't already, download and install Git.
+
+@itemize
+
+@item
+Lilybuntu users: git has already been installed for you.
+
+@item Windows users: download the @code{.exe} file labeled
+@qq{Full installer for official Git} from:
+
+@example
+@uref{http://code.google.com/p/msysgit/downloads/list}
+@end example
+
+@item Other operating systems: either install @command{git} with
+your package manager, or download it from the @qq{Binaries}
+section of:
+
+@example
+@uref{http://git-scm.com/download}
+@end example
+
+@end itemize
+
+
+@item
+Download the @command{lily-git.tcl} script from:
+
+@c don't change the cgit link below to gitweb; gitweb uses
+@c long filenames like "scripts_auxiliar_lily-git.tcl"
+
+@example
+@uref{http://git.sv.gnu.org/cgit/lilypond.git/plain/scripts/auxiliar/lily-git.tcl}
+@end example
+
+@item
+To run the program from the command line, navigate to the
+directory containing @command{lily-git.tcl} and enter:
+
+@example
+wish lily-git.tcl
+@end example
+
+@item
+Go read the lilybuntu instructions, starting from the @qq{get
+source} step.
+
+@end enumerate
+
+@advanced{the @qq{Get source} button does not fetch the entire
+history of the git repository, so utilities like @command{gitk}
+will only be able to display the most recent additions.  As you
+continue to work with @command{lily-git.tcl}, the @qq{Update
+source} button will take any new additions and add it to whatever
+is currently in your repository's history.}
+
+
+@node Daily use of lily-git.tcl
+@unnumberedsubsec Daily use of @command{lily-git.tcl}
+
+@warning{Only work on one set of changes at once.  Do not start
+work on any new changes until your first set has been accepted.}
+
+@subsubheading 1. Update source
+
+At the beginning of each session of lilypond work, you should
+click the @qq{Update source} button to get the latest changes to
+the source code.
+
+@warning{In some rare and unfortunate circumstances, this will
+result in a @emph{merge conflict}.  If this occurs, follow the
+instructions for @qq{Abort changes}, below.  Your work will not be
+lost.}
+
+
+@subsubheading 2a. New local commit
+
+A single commit typically represents one logical set of related
+changes (such as a bug-fix), and may incorporate changes to
+multiple files at the same time.
+
+When you're finished making the changes for a commit, click the
+@qq{New local commit} button.  This will open the @qq{Git Commit
+Message} window.  The message header is required, and the message
+body is optional.
+
+After entering a commit message, click @qq{OK} to finalize the
+commit.
+
+@advanced{for more information regarding commits and commit
+messages, see @ref{Commits and patches}.}
+
+
+@subsubheading 2b. Amend previous commit
+
+You can go back and make changes to the most recent commit with
+the @qq{Amend previous commit} button.  This is useful if a
+mistake is found after you have clicked the @qq{New local commit}
+button.
+
+To amend the most recent commit, re-edit the source files as
+needed and then click the @qq{Amend previous commit} button.  The
+earlier version of the commit is not saved, but is replaced by the
+new one.
+
+@warning{This does not update the patch @strong{files}; if you
+have a patch file from an earlier version of the commit, you will
+need to make another patch set when using this feature.  The old
+patch file will not be saved, but will be replaced by the new one
+after you click on @qq{Make patch set}.}
+
+
+@subsubheading 3. Make patch set
+
+Before making a patch set from any commits, you should click the
+@qq{Update source} button to make sure the commits are based on
+the most recent remote snapshot.
+
+When you click the @qq{Make patch set} button,
+@command{lily-git.tcl} will produce patch files for any new
+commits, saving them to the current directory.  The command output
+will display the name of the new patch files near the end of the
+output:
+
+@example
+0001-CG-add-lily-git-instructions.patch
+Done.
+@end example
+
+Send patch files to the appropriate place:
+
+@itemize
+@item
+If you have a mentor, send it to them via email.
+
+@item
+New contributors should send the patch attached to an email to
+@email{frogs@@lilynet.net}.  Please add @qq{[PATCH]} to the
+subject line.
+
+@item
+Translators should send patches to
+@email{translations@@lilynet.net}.
+
+@item
+More experienced contributors should upload the patch for
+web-based review.  This requires additional software and use of
+the command-line; see @ref{Uploading a patch for review}.
+
+@end itemize
+
+
+@subsubheading The @qq{Abort changes -- Reset to origin} button
+
+@warning{Only use this if your local commit history gets
+hopelessly confused!}
+
+The button labeled @qq{Abort changes -- Reset to origin} will copy
+all changed files to a subdirectory of @file{lilypond-git/} named
+@file{aborted_edits/}, and will reset the repository to the
+current state of the remote repository (at @code{git.sv.gnu.org}).
+
+
+
+@node Compiling with lilybuntu
+@section Compiling with lilybuntu
+
+Lilybuntu is our @q{remix} of Ubuntu which contains all the
+necessary dependencies to do lilypond development; for more
+information, see @rcontrib{Lilybuntu}.
+
+@subsubheading Preparing the build
+
+To prepare the build directory, enter (or copy&paste) the below
+text.  This should take less than a minute.
+
+@example
+cd ~/lilypond-git/
+sh autogen.sh --noconfigure
+mkdir -p build/
+cd build/
+../configure
+@end example
+
+@advanced{this is called an @qq{out-of-tree} build; we heavily
+recommend this build method.}
+
+@subsubheading Building @code{lilypond}
+
+Compiling lilypond will likely take between 5 and 30 minutes,
+depending on your computer's speed and available RAM.  We
+recommend that you minimize the terminal window while it is
+building; this can have a non-negligible effect on compilation
+speed.
+
+@example
+cd ~/lilypond-git/build/
+make
+@end example
+
+You may run the compiled @code{lilypond} with:
+
+@example
+cd ~/lilypond-git/build/
+out/bin/lilypond my-file.ly
+@end example
+
+@subsubheading Building the documentation
+
+Compiling the documentation is a much more involved process, and
+will likely take 2 to 10 hours.
+
+@example
+cd ~/lilypond-git/build/
+make doc
+@end example
+
+The documentation is put in @file{out-www/offline-root/}.  You may
+view the html files by entering the below text; we recommend that
+you bookmark the resulting page:
+
+@example
+firefox ~/lilypond-git/build/out-www/offline-root/index.html
+@end example
+
+@subsubheading Other options
+
+To select different build options, or isolate certain parts of the
+build, or to use multiple CPUs while building, read the rest of
+this chapter.
+
+
+@node Now start work!
+@section Now start work!
+
+Lilybuntu users may now skip to the chapter which is aimed at
+their intended contributions:
+
+@itemize
+@item @rcontrib{Documentation work}
+@item @rcontrib{Translate the documentation}
+@item @rcontrib{Website work}
+@item @rcontrib{Regression tests}
+@item @rcontrib{Programming work}
+@end itemize
+
+
+
index 80c78edbfe136fe7fc5f2d30976832270bc7415e..65ac35e3b6b68e20aa5df9b5670c8b522c115264 100644 (file)
@@ -4,14 +4,13 @@
 @node Working with source code
 @chapter Working with source code
 
-New contributors should only read @ref{Using lily-git}.  Please
-ignore the rest of this chapter.
+@warning{New contributors should read @ref{Quick start}, and in
+particular @ref{Using lily-git}, instead of this chapter.}
 
-Advanced contributors will find the rest of this material quite
-useful, particularly if they are working on major new features.
+Advanced contributors will find this material quite useful,
+particularly if they are working on major new features.
 
 @menu
-* Using lily-git::
 * Starting with Git::
 * Basic Git procedures::
 * Advanced Git procedures::
@@ -21,205 +20,9 @@ useful, particularly if they are working on major new features.
 @end menu
 
 
-@c if you change this node name, you'll need to change the @ref in
-@c web/ and/or included/, along with all the translations.
-@node Using lily-git
-@section Using lily-git
-
-@command{lily-git.tcl} is a graphical tool to help you access and
-share changes to the lilypond source code.
-
-@menu
-* Install and configuration of lily-git.tcl::
-* Daily use of lily-git.tcl::
-@end menu
-
-@node Install and configuration of lily-git.tcl
-@unnumberedsubsec Install and configuration of @command{lily-git.tcl}
-
-@enumerate
-@item
-If you haven't already, download and install Git.
-
-@itemize
-
-@item
-Lilybuntu users: git has already been installed for you.
-
-@item Windows users: download the @code{.exe} file labeled
-@qq{Full installer for official Git} from:
-
-@example
-@uref{http://code.google.com/p/msysgit/downloads/list}
-@end example
-
-@item Other operating systems: either install @command{git} with
-your package manager, or download it from the @qq{Binaries}
-section of:
-
-@example
-@uref{http://git-scm.com/download}
-@end example
-
-@end itemize
-
-
-@item
-Download the @command{lily-git.tcl} script from:
-
-@c don't change the cgit link below to gitweb; gitweb uses
-@c long filenames like "scripts_auxiliar_lily-git.tcl"
-
-@example
-@uref{http://git.sv.gnu.org/cgit/lilypond.git/plain/scripts/auxiliar/lily-git.tcl}
-@end example
-
-@item
-To run the program from the command line, navigate to the
-directory containing @command{lily-git.tcl} and enter:
-
-@example
-wish lily-git.tcl
-@end example
-
-@item
-Click on the @qq{Get source} button.
-
-This will create a directory called @file{lilypond-git/} within
-your home directory, and will download the source code into that
-directory (around 55Mb).  When the process is finished, the
-@qq{Command output} window will display @qq{Done}, and the button
-label will change to say @qq{Update source}.
-
-@item
-Navigate to the @file{lilypond-git/} directory to view the source
-files.  You should now be able to modify the source files using
-your normal text editor.
-
-@end enumerate
-
-@quotation
-Advanced note: The @qq{Get source} button does not fetch the
-entire history of the git repository, so utilities like
-@command{gitk} will only be able to display the most recent
-additions.  As you continue to work with @command{lily-git.tcl}, the
-@qq{Update source} button will take any new additions and add it
-to whatever is currently in your repository's history.
-@end quotation
-
-
-@node Daily use of lily-git.tcl
-@unnumberedsubsec Daily use of @command{lily-git.tcl}
-
-@warning{Only work on one set of changes at once.  Do not start
-work on any new changes until your first set has been accepted.}
-
-@subsubheading 1. Update source
-
-At the beginning of each session of lilypond work, you should
-click the @qq{Update source} button to get the latest changes to
-the source code.
-
-@warning{In some rare and unfortunate circumstances, this will
-result in a @emph{merge conflict}.  If this occurs, follow the
-instructions for @qq{Abort changes}, below.  Your work will not be
-lost.}
-
-
-@subsubheading 2a. New local commit
-
-A single commit typically represents one logical set of related
-changes (such as a bug-fix), and may incorporate changes to
-multiple files at the same time.
-
-When you're finished making the changes for a commit, click the
-@qq{New local commit} button.  This will open the @qq{Git Commit
-Message} window.  The message header is required, and the message
-body is optional.
-
-After entering a commit message, click @qq{OK} to finalize the
-commit.
-
-@quotation
-Advanced note: For more information regarding commits and commit
-messages, see @ref{Commits and patches}.
-@end quotation
-
-
-@subsubheading 2b. Amend previous commit
-
-You can go back and make changes to the most recent commit with
-the @qq{Amend previous commit} button.  This is useful if a
-mistake is found after you have clicked the @qq{New local commit}
-button.
-
-To amend the most recent commit, re-edit the source files as
-needed and then click the @qq{Amend previous commit} button.  The
-earlier version of the commit is not saved, but is replaced by the
-new one.
-
-@warning{This does not update the patch @strong{files}; if you
-have a patch file from an earlier version of the commit, you will
-need to make another patch set when using this feature.  The old
-patch file will not be saved, but will be replaced by the new one
-after you click on @qq{Make patch set}.}
-
-
-@subsubheading 3. Make patch set
-
-Before making a patch set from any commits, you should click the
-@qq{Update source} button to make sure the commits are based on
-the most recent remote snapshot.
-
-When you click the @qq{Make patch set} button,
-@command{lily-git.tcl} will produce patch files for any new
-commits, saving them to the current directory.  The command output
-will display the name of the new patch files near the end of the
-output:
-
-@example
-0001-CG-add-lily-git-instructions.patch
-Done.
-@end example
-
-Send patch files to the appropriate place:
-
-@itemize
-@item
-If you have a mentor, send it to them via email.
-
-@item
-New contributors should send the patch attached to an email to
-@email{frogs@@lilynet.net}.  Please add @qq{[PATCH]} to the
-subject line.
-
-@item
-Translators should send patches to
-@email{translations@@lilynet.net}.
-
-@item
-More experienced contributors should upload the patch for
-web-based review.  This requires additional software and use of
-the command-line; see @ref{Uploading a patch for review}.
-
-@end itemize
-
-
-@subsubheading The @qq{Abort changes -- Reset to origin} button
-
-@warning{Only use this if your local commit history gets
-hopelessly confused!}
-
-The button labeled @qq{Abort changes -- Reset to origin} will copy
-all changed files to a subdirectory of @file{lilypond-git/} named
-@file{aborted_edits/}, and will reset the repository to the
-current state of the remote repository (at @code{git.sv.gnu.org}).
-
-
 @node Starting with Git
 @section Starting with Git
 
-
 Using the Git program directly (as opposed to using the
 @command{lily-git.tcl} GUI) allows you to have much greater control
 over the contributing process.  You should consider using Git if
@@ -299,7 +102,7 @@ need to access it, but it's good to know it's there.
 @warning{Throughout the rest of this manual, all command-line
 input should be entered from the top directory of the Git
 repository being discussed (eg. @file{~/lilypond-git/}).  This is
-referred to as a @emph{top source directory}.}
+referred to as the @emph{top source directory}.}
 
 Before downloading a copy of the main LilyPond repository, you
 should configure some basic settings with the
index 7bafd331016e907d119e36f6335cf2f2bd1b7fbf..3872615789c23fa5e4d26994f9552ade498743b1 100644 (file)
@@ -455,4 +455,16 @@ div#search p, div#search form {
   margin: 1em;
 }
 
+.advanced {
+  background: #eeffcc;
+  text-align: left;
+  padding: 0;
+  border: 1px solid green;
+  /* Experimental rounded corners */
+  -moz-border-radius: 10px;
+  -webkit-border-radius: 10px;
+  margin: 0.5em 0.5em 2em 3em;
+}
+
+
 
index 6217833bdec0a5814972dc43f1d68079191f1c47..77a58ec56e1501e219c1c46dc2dcc1aea5e96d23 100644 (file)
@@ -569,7 +569,7 @@ Notationskontexte (wie @code{Score} oder @code{Staff}) speichern
 nicht nur Eigenschaften, sie enthalten auch Plugins (@qq{engraver}
 genannt), die die einzelnen Notationselemente erstellen.  Ein
 @code{Voice}-Kontext enthält beispielsweise einen
-@code{Note_head_engraver}, der die Notenköpfe erstellt, und ein
+@code{Note_heads_engraver}, der die Notenköpfe erstellt, und ein
 @code{Staff}-Kontext einen @code{Key_signature_engraver}, der die
 Vorzeichen erstellt.
 
index 8fb056a5d9af6c52543ae1ec02ff1580da58ebdb..f6c560a7a94b89e72e762ccb54c5155a2e894bb7 100644 (file)
@@ -549,7 +549,7 @@ Los contextos de notación (como @code{Score} y @code{Staff}) no sólo
 almacenan propiedades, también contienen «plug-ins» o complementos
 llamados @q{grabadores} que crean elementos de notación.  Por ejemplo,
 el contexto @code{Voice} contiene un grabador
-@code{Note_head_engraver} que crea las cabezas de nota y el contexto
+@code{Note_heads_engraver} que crea las cabezas de nota y el contexto
 @code{Staff} contiene un grabador @code{Key_signature_engraver} que
 crea la indicación de compás.
 
index c7934c44f74cd8b253dba4df3012cf9e8bc6b3da..67ff73babf1d7e860056a636e5a3c7a9ccacc61b 100644 (file)
@@ -1296,7 +1296,7 @@ les lignes de portée@tie{}:
 @end lilypond
 
 @noindent
-le module @code{Clef_engraver} fournit au @code{Note_head_engraver}
+le module @code{Clef_engraver} fournit au @code{Note_heads_engraver}
 la hauteur à laquelle doit être placée chaque tête de note@tie{}:
 
 @lilypond[quote,ragged-right]
index 9657f82bd636b391aee325cdd4e625bf4c2793f0..f71d93903aff584b2100176ac2e2fe303ee4017f 100644 (file)
@@ -207,7 +207,7 @@ sous-programmes (@emph{plug-ins} pour employer le terme consacré) nommés
 @qq{graveurs} (@emph{engravers} pour reprendre le terme anglais).
 Ces sous-programmes sont chargés de créer les différents éléments de
 notation@tie{}: on trouve ainsi dans le contexte @code{Voice} un graveur
-@code{Note_head_engraver}, chargé des têtes de notes et, dans le
+@code{Note_heads_engraver}, chargé des têtes de notes et, dans le
 contexte @code{Staff}, un graveur @code{Key_signature_engraver}, chargé
 de l'armure.
 
index 5c4db5807c9698f735200158d2cbf29828e4f1fc..b2a4ec89a76d1363879a67000502e30e4664135e 100644 (file)
@@ -7,7 +7,6 @@
 @c   @n ode Compiling from source
 @c   @s ection Compiling from source
 
-
 @menu
 * Overview of compiling::
 * Requirements::
index 29a0f70bb35f6957c8b8762fb98868764d08b42a..e94c513aed0c8a0daff54458bf8021fe6029da22 100644 (file)
@@ -7,10 +7,10 @@
 
 The LilyPond development team is quite small; we really want to
 get more people involved.  Please consider helping your fellow
-LilyPond users by contributing to development!
+LilyPond users by contributing!
 
-Even working on small tasks can have a big impact: taking care
-of them let experienced developers work on advanced tasks, instead
+Even working on small tasks can have a big impact: taking care of
+them allows experienced developers work on advanced tasks, instead
 of spending time on those simple tasks.
 
 @end macro
@@ -19,6 +19,8 @@ of spending time on those simple tasks.
 @macro helpusTasks
 @subheading Simple tasks
 
+No source code or compiling required!
+
 @itemize
 @item
 Mailing list support: answer questions from fellow users.
@@ -43,18 +45,23 @@ testing new features.  Please contribute to these discussions!
 
 @end itemize
 
-@subheading Moderate tasks
+@subheading Advanced tasks
+
+These jobs generally require that you have the source code and can
+compile LilyPond.
+
+@warning{We suggest that contributors using Windows or MacOS X do
+@strong{not} attempt to set up their own development environment;
+instead, use lilybuntu as discussed in @rcontrib{Quick start}.}
 
-@warning{These jobs generally require that you have the program
-and documentation source files, but do not require a full
-development environment.  See
-@rcontrib{Working with source code}.}
+Contributors using Linux or FreeBSD may also use Lilybuntu, but if
+they prefer their own development environment, they should read
+@rcontrib{Working with source code}, and @rcontrib{Compiling}.
 
 @itemize
 @item
-Documentation: see
-@rcontrib{Documentation work}, and
-@rcontrib{Building documentation without compiling}.
+Documentation: for large changes, see
+@rcontrib{Documentation work}.
 
 @item
 Website: the website is built from the normal documentation
@@ -65,25 +72,8 @@ source.  See the info about documentation, and also
 Translations: see @rcontrib{Translating the documentation}, and
 @rcontrib{Translating the website}.
 
-@end itemize
-
-
-@subheading Complex tasks
-
-@warning{These jobs generally require that you have the source
-code and can compile LilyPond.  See
-@rcontrib{Working with source code},
-and @rcontrib{Compiling}.
-@*@*
-We suggest that new contributors using Windows or MacOS X do
-@strong{not} attempt to set up their own development environment;
-instead, see
-@rcontrib{Lilybuntu}.
-}
-
-@itemize
 @item
-Bugfixes, new features: the best way to begin is to join the
+Bugfixes or new features: the best way to begin is to join the
 Frogs, and read @rcontrib{Programming work}.
 
 @end itemize
index 8031024c3b5806dcd63fc4c1bc34bb927f941a0f..c8a8a2c2ce1804fdc1362bbb94dab4840fd9e737 100644 (file)
@@ -67,6 +67,32 @@ translations should be in macros.itexi.
 
 @end ifnothtml
 
+@ifhtml
+
+@macro advanced{TEXT}
+@html
+<div class="advanced">
+@end html
+@strong{Advanced note:} \TEXT\
+@c keep the space for proper nesting of </p>
+
+@html
+</div>
+@end html
+@end macro
+
+@end ifhtml
+
+@ifnothtml
+
+@macro advanced{TEXT}
+@quotation
+@b{Advanced note:} \TEXT\
+@end quotation
+@end macro
+
+@end ifnothtml
+
 
 @macro docMain
 @cartouche
index b05bc22c4c2555fc7c7355a5b720e34c35f3fea9..7a294693fee8f31043d3e37acb2d209d2db1f887 100644 (file)
@@ -568,7 +568,7 @@ Notation contexts (like @code{Score} and @code{Staff}) not only
 store properties,
 they also contain plug-ins called @q{engravers} that create notation
 elements.  For example, the @code{Voice} context contains a
-@code{Note_head_engraver} and the @code{Staff} context contains a
+@code{Note_heads_engraver} and the @code{Staff} context contains a
 @code{Key_signature_engraver}.
 
 For a full a description of each plug-in, see
index c8b791790fc3746205667f5f5b0cf5fc9549abf7..e463b9fcc6d25a29929fec690f481a60b225cf13 100644 (file)
@@ -1175,6 +1175,15 @@ c2 d
 e4. d8 c2
 @end lilypond
 
+Metronome marks may also be printed as a range of two numbers:
+
+@lilypond[verbatim,quote,relative=1]
+\tempo 4 = 40 ~ 46
+c4. ees8
+fis g aes c,
+b1
+@end lilypond
+
 Tempo indications with text can be used instead:
 
 @lilypond[verbatim,quote,relative=2]
index 89810f6dad17b130f1566f91d5aa28a88b2169f1..98f054555847d06c6042fe8a846adddb0b6c5708 100644 (file)
@@ -925,6 +925,11 @@ If set to false, page numbers are not printed.
 Installed Files:
 @file{ly/paper-defaults-init.ly}.
 
+@knownissues
+Odd page numbers are always on the right.  If you want the
+music to start on page 1 there must be a blank page on the back
+of the cover page so that page 1 is on the right hand side.
+
 
 @node Miscellaneous \paper variables
 @unnumberedsubsubsec Miscellaneous @code{\paper} variables
index c964305f2339c334562ced8222a5e9a42b7868f3..01861c2a1470f5be0709edb9749b0077ace8377d 100644 (file)
@@ -274,6 +274,9 @@ Internals Reference:
 @rinternals{SystemStartBracket},
 @rinternals{SystemStartSquare}.
 
+@knownissues
+@code{PianoStaff} does not, by default, accept @code{ChordNames}.
+
 
 @node Nested staff groups
 @unnumberedsubsubsec Nested staff groups
index 14ff59f636bd9d47ab4c0099b456cba79b36c78d..f7aa545f0fd0eb91ca303bb42a42465774d62c54 100644 (file)
@@ -155,8 +155,8 @@ e,\stopTextSpan
 @noindent
 The string to be printed is set through object properties.  By default
 it is printed in italic characters, but different formatting can be
-obtained using @code{\markup} blocks, as described in @ref{Formatting
-text}.
+obtained using @code{\markup} blocks, as described in
+@ref{Formatting text}.
 
 @lilypond[quote,relative=2,verbatim]
 \override TextSpanner #'(bound-details left text) =
@@ -615,8 +615,8 @@ example, there is no difference between the first and the second word.
 
 @noindent
 Some of these font families, used for specific items such as numbers
-or dynamics, do not provide all characters, as mentioned in @ref{New
-dynamic marks} and @ref{Manual repeat marks}.
+or dynamics, do not provide all characters, as mentioned in
+@ref{New dynamic marks} and @ref{Manual repeat marks}.
 
 @c \concat is actually documented in Align (it is not
 @c a font-switching command).  But we need it here. -vv
@@ -692,6 +692,12 @@ Internals Reference:
 Installed Files:
 @file{scm/define-markup-commands.scm}.
 
+@knownissues
+Using the font sizing commands @code{\teeny}, @code{\tiny},
+@code{\small}, @code{\normalsize}, @code{\large}, and
+@code{\huge} will lead to inconsistent line spacing compared to
+using @code{\fontsize}.
+
 
 @node Text alignment
 @unnumberedsubsubsec Text alignment
@@ -1184,8 +1190,8 @@ d-\markup {
 
 More generally, any available musical symbol may be included
 separately in a markup object, as demonstrated below; an exhaustive
-list of these symbols and their names can be found in @ref{The Feta
-font}.
+list of these symbols and their names can be found in
+@ref{The Feta font}.
 
 @lilypond[quote,verbatim,relative=2]
 c2
@@ -1196,8 +1202,9 @@ c16
 c2^\markup { \musicglyph #"timesig.neomensural94" }
 @end lilypond
 
-Another way of printing non-text glyphs is described in @ref{Fonts
-explained}.  This is useful for printing braces of various sizes.
+Another way of printing non-text glyphs is described in
+@ref{Fonts explained}.  This is useful for printing braces of various
+sizes.
 
 The markup mode also supports diagrams for specific
 instruments:
@@ -1416,8 +1423,8 @@ c4^smaller
 
 @noindent
 A similar syntax may be used in markup mode; however in this case it
-is preferable to use the simpler syntax explained in @ref{Selecting
-font and font size}:
+is preferable to use the simpler syntax explained in
+@ref{Selecting font and font size}:
 
 @lilypond[quote,verbatim]
 \markup {
index 7b76613af008c460f738918400b4af8b70bd2e19..295cefab4c6af5f8ccaed86071fae19c92f10e64 100644 (file)
@@ -8,41 +8,27 @@
 
 @c used for news about the upcoming release; see CG 10.2
 
-
 @newsItem
-@subsubheading LilyPond 2.13.42 released!  @emph{Dec 8, 2010}
+@subsubheading Beta test two of 2.14 -- LilyPond 2.13.43 released! @emph{Dec 14, 2010}
 
-We are happy to announce the release of LilyPond 2.13.42.  This
-release contains the usual number of bugfixes.  However, a number
-of critical issues still remain, so this release is intended for
-developers only.
+LilyPond 2.13.43 is out; this is the second beta test of the
+upcoming 2.14 stable release.  Users are invited to experiment
+with this version.  New features since 2.12.3 are listed in the
+@qq{Changes} manual on the website section about
+@ref{Development}.
 
-Please note that this is @strong{not} the second beta test.  Due
-to a number of untested changes to our build process, we cannot be
-at all confident about the quality of this release.
+There is still one Critical problem with this release: in one
+case, the vertical spacing is much too compressed.  If you decide
+to test this version, do not be surprised to discover problems;
+just send us polite @ref{Bug reports}.
 
 @newsEnd
 
 
 @newsItem
-@subsubheading LilyPond 2.13.41 released!  @emph{Dec 4, 2010}
-
-We are happy to announce the release of LilyPond 2.13.41.  This
-release contains the usual number of bugfixes.  However, a number
-of critical issues still remain, so this release is intended for
-developers only.
-
-Please note that this is @strong{not} the second beta test.  Due
-to a number of untested changes to our build process, we cannot be
-at all confident about the quality of this release.
-
-@newsEnd
-
-
-@newsItem
-@subsubheading LilyPond 2.13.40 released!  @emph{Nov 21, 2010}
+@subsubheading LilyPond 2.13.42 released!  @emph{Dec 8, 2010}
 
-We are happy to announce the release of LilyPond 2.13.40.  This
+We are happy to announce the release of LilyPond 2.13.42.  This
 release contains the usual number of bugfixes.  However, a number
 of critical issues still remain, so this release is intended for
 developers only.
@@ -54,43 +40,5 @@ at all confident about the quality of this release.
 @newsEnd
 
 
-@newsItem
-@subsubheading Beta test one of 2.14 -- LilyPond 2.13.39 released! @emph{Nov 15, 2010}
-
-LilyPond 2.13.39 is out; this is the first beta test of the
-upcoming 2.14 stable release.  Users are invited to experiment
-with this version.  New features since 2.12.3 are listed in the
-@qq{Changes} manual on the website section about
-@ref{Development}.
-
-There are still some Critical problems with this release: the
-vertical spacing is suspicious in two cases, and lilypond can
-crash with some odd input.  If you decide to test 2.13.39, do not
-be surprised to discover problems; just send us polite
-@ref{Bug reports}.
-
-@newsEnd
-
-
-
-
-@newsItem
-@subsubheading The LilyPond Report #22. @emph{Nov 3, 2010}
-
-The @emph{LilyPond Report} is back, with some surprises and exciting
-news for the whole LilyPond community!  To be found in this issue is
-an up-to-date, complete list of all LilyPond mailing lists and forums
-around the world.  Also, for the very first time our special guest
-today is LilyPond’s co-founder and core developer
-@strong{Jan Nieuwenhuizen}, who has been busy these past months --
-read on to find out what for!
-
-Come
-@uref{http://news.lilynet.net/The-LilyPond-Report-22, read
-LilyPond Report 22} now; comments and contributions are
-warmly encouraged!
-
-@newsEnd
-
 
 
index 8705dfb4160aedd143f69b9ffeebb63ade8b3cb7..8056d469200e84b409daa1162d4ca660692df372 100644 (file)
@@ -26,6 +26,74 @@ NOTE:
   * don't duplicate entries from news-front.itexi
 @end ignore
 
+@newsItem
+@subsubheading LilyPond 2.13.41 released!  @emph{Dec 4, 2010}
+
+We are happy to announce the release of LilyPond 2.13.41.  This
+release contains the usual number of bugfixes.  However, a number
+of critical issues still remain, so this release is intended for
+developers only.
+
+Please note that this is @strong{not} the second beta test.  Due
+to a number of untested changes to our build process, we cannot be
+at all confident about the quality of this release.
+
+@newsEnd
+
+
+@newsItem
+@subsubheading LilyPond 2.13.40 released!  @emph{Nov 21, 2010}
+
+We are happy to announce the release of LilyPond 2.13.40.  This
+release contains the usual number of bugfixes.  However, a number
+of critical issues still remain, so this release is intended for
+developers only.
+
+Please note that this is @strong{not} the second beta test.  Due
+to a number of untested changes to our build process, we cannot be
+at all confident about the quality of this release.
+
+@newsEnd
+
+
+@newsItem
+@subsubheading Beta test one of 2.14 -- LilyPond 2.13.39 released! @emph{Nov 15, 2010}
+
+LilyPond 2.13.39 is out; this is the first beta test of the
+upcoming 2.14 stable release.  Users are invited to experiment
+with this version.  New features since 2.12.3 are listed in the
+@qq{Changes} manual on the website section about
+@ref{Development}.
+
+There are still some Critical problems with this release: the
+vertical spacing is suspicious in two cases, and lilypond can
+crash with some odd input.  If you decide to test 2.13.39, do not
+be surprised to discover problems; just send us polite
+@ref{Bug reports}.
+
+@newsEnd
+
+
+
+
+@newsItem
+@subsubheading The LilyPond Report #22. @emph{Nov 3, 2010}
+
+The @emph{LilyPond Report} is back, with some surprises and exciting
+news for the whole LilyPond community!  To be found in this issue is
+an up-to-date, complete list of all LilyPond mailing lists and forums
+around the world.  Also, for the very first time our special guest
+today is LilyPond’s co-founder and core developer
+@strong{Jan Nieuwenhuizen}, who has been busy these past months --
+read on to find out what for!
+
+Come
+@uref{http://news.lilynet.net/The-LilyPond-Report-22, read
+LilyPond Report 22} now; comments and contributions are
+warmly encouraged!
+
+@newsEnd
+
 
 @newsItem
 @subsubheading Alpha test four of 2.14 -- LilyPond 2.13.38 released!  @emph{Oct 31, 2010}
diff --git a/VERSION b/VERSION
index 53126044eddcd5acd57ca236291aecaf30d412ca..28ea17ddba8f4f9961018aa283bce2fc04cf8081 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,7 +1,7 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=2
 MINOR_VERSION=13
-PATCH_LEVEL=43
+PATCH_LEVEL=44
 MY_PATCH_LEVEL=
 VERSION_STABLE=2.12.3
-VERSION_DEVEL=2.13.42
+VERSION_DEVEL=2.13.43
diff --git a/input/regression/book-label-no-segfault.ly b/input/regression/book-label-no-segfault.ly
new file mode 100644 (file)
index 0000000..072107f
--- /dev/null
@@ -0,0 +1,10 @@
+\version "2.13.43"
+
+\header {
+  texidoc = "
+A book(part) can contain only a label without causing a segfault.
+"
+}
+
+\book {\markup "foo"}   % necessary to produce some output
+\book { \label #'foo }
diff --git a/input/regression/skiptypesetting-all-true.ly b/input/regression/skiptypesetting-all-true.ly
new file mode 100644 (file)
index 0000000..2910884
--- /dev/null
@@ -0,0 +1,15 @@
+\version "2.13.43"
+
+\header{
+  texidoc = "
+A score with @code{skipTypesetting} set for the whole score
+will not segfault.
+"
+}
+
+
+{
+  \set Score.skipTypesetting = ##t
+  c'4
+}
+
diff --git a/input/regression/skiptypesetting-multimeasurerest.ly b/input/regression/skiptypesetting-multimeasurerest.ly
new file mode 100644 (file)
index 0000000..ce2cd62
--- /dev/null
@@ -0,0 +1,24 @@
+\version "2.13.43"
+
+\header {
+  texidoc = "
+When @code{skipTypesetting} is set during a @code{skipBars}-induced
+@code{MultiMeasureRest} spanner, no segfault occurs.
+"
+}
+
+\version "2.13.36"
+<<
+  {
+    \time 3/4
+    \set Score.skipBars = ##t
+    a4 a a
+    R2.*2
+  }
+  \\
+  {
+    \set Score.skipTypesetting = ##t
+    s2. s4
+    \set Score.skipTypesetting = ##f
+  }
+>>
diff --git a/input/regression/tablature-harmonic-tie.ly b/input/regression/tablature-harmonic-tie.ly
new file mode 100644 (file)
index 0000000..b6685bc
--- /dev/null
@@ -0,0 +1,18 @@
+\version "2.13.42"
+
+\header {
+  texidoc = "
+When a harmonic note is tied in tablature, neither the fret number
+nor the harmonic brackets for the second note appear in the tablature.
+"
+}
+
+music =  \relative c' {
+  s2.  <d\4\harmonic>4 ~ |
+  <d\4\harmonic>1  |
+}
+
+\new StaffGroup <<
+  \new Staff  { \clef "G_8" \music }
+  \new TabStaff  { \clef "moderntab" \music }
+>>
index 4150e0625eafbe4f56305fd389938998990e8018..afd28263803daeeab8904075a1adcb01de9a0e89 100644 (file)
@@ -56,6 +56,7 @@ protected:
   Paper_column *musical_column_;
   vector<Item*> items_;
   bool first_;
+  bool made_columns_;
   Moment last_moment_;
 
 public:
index e9010aec09345ef715d247a20a0a854d34bc5956..65663798b3ae2b3de61bb04c143f85853da39bc7 100644 (file)
@@ -59,10 +59,7 @@ Optimal_page_breaking::solve ()
       /* find out the ideal number of pages */
       message (_ ("Finding the ideal number of pages..."));
   
-      if (systems_per_page () > 0)
-       best = space_systems_with_fixed_number_per_page (0, first_page_num);
-      else
-       best = space_systems_on_best_pages (0, first_page_num);
+      best = space_systems_on_best_pages (0, first_page_num);
 
       page_count = best.systems_per_page_.size ();
       ideal_sys_count = best.system_count ();
index f3b1f84de3a066dcf8156465a96944c8961be50f..3272e02eefbb3471efab3be5e04a8ed28a11683f 100644 (file)
@@ -343,9 +343,8 @@ Page_breaking::systems ()
            ->get_broken_system_grobs ();
          ret = scm_cons (lines, ret);
        }
-      else
+      else if (Prob *pb = system_specs_[sys].prob_)
        {
-         Prob *pb = system_specs_[sys].prob_;
          ret = scm_cons (scm_list_1 (pb->self_scm ()), ret);
          pb->unprotect ();
        }
@@ -465,6 +464,9 @@ Page_breaking::draw_page (SCM systems, SCM configuration, int page_num, bool las
 SCM
 Page_breaking::make_pages (vector<vsize> lines_per_page, SCM systems)
 {
+  if (scm_is_null (systems))
+    return SCM_EOL;
+
   int first_page_number
     = robust_scm2int (book_->paper_->c_variable ("first-page-number"), 1);
   SCM ret = SCM_EOL;
@@ -554,6 +556,8 @@ Page_breaking::create_system_list ()
           system_specs_.push_back (System_spec (pb));
         }
     }
+  if (!system_specs_.size ())
+    system_specs_.push_back (System_spec ());
 }
 
 void
@@ -630,7 +634,7 @@ Page_breaking::find_chunks_and_breaks (Break_predicate is_break, Prob_break_pred
            }
          line_breaking_.push_back (Constrained_breaking (system_specs_[i].pscore_, line_breaker_columns));
        }
-      else
+      else if (system_specs_[i].prob_)
        {
          bool break_point = prob_is_break && prob_is_break (system_specs_[i].prob_);
          if (break_point || i == system_specs_.size () - 1)
@@ -832,7 +836,9 @@ Page_breaking::cache_line_details (vsize configuration_index)
          else
            {
              assert (div[i] == 1);
-             uncompressed_line_details_.push_back (Line_details (system_specs_[sys].prob_, book_->paper_));
+             uncompressed_line_details_.push_back (system_specs_[sys].prob_
+                                                   ? Line_details (system_specs_[sys].prob_, book_->paper_)
+                                                   : Line_details ());
            }
        }
       cached_line_details_ = compress_lines (uncompressed_line_details_);
@@ -1131,6 +1137,9 @@ Page_breaking::space_systems_on_n_or_one_more_pages (vsize configuration, vsize
 Page_spacing_result
 Page_breaking::space_systems_on_best_pages (vsize configuration, vsize first_page_num)
 {
+  if (systems_per_page_ > 0)
+    return space_systems_with_fixed_number_per_page (configuration, first_page_num);
+
   cache_line_details (configuration);
   Page_spacer ps (cached_line_details_, first_page_num, this);
 
index 9338a38bfc4a38acefaeda217c3e89f69514fb65..e57c0cbf2f2c895701d44a8e95d871723aa28901 100644 (file)
@@ -269,6 +269,9 @@ Page_turn_page_breaking::make_lines (vector<Break_node> *psoln)
 SCM
 Page_turn_page_breaking::make_pages (vector<Break_node> const &soln, SCM systems)
 {
+  if (scm_is_null (systems))
+    return SCM_EOL;
+
   vector<vsize> lines_per_page;
   for (vsize i = 0; i < soln.size (); i++)
     {
index 33690e38a80d1afba55b5ed99abe24e3d5ce9ba1..43b6abefb204869c6151a0f4e1f211eadbf661a1 100644 (file)
@@ -42,6 +42,7 @@ Paper_column_engraver::Paper_column_engraver ()
   breaks_ = 0;
   system_ = 0;
   first_ = true;
+  made_columns_ = false;
 }
 
 void
@@ -50,6 +51,14 @@ Paper_column_engraver::finalize ()
   if (! (breaks_ % 8))
     progress_indication ("[" + to_string (breaks_) + "]");
 
+  if (!made_columns_)
+    {
+      make_columns ();
+      SCM m = now_mom ().smobbed_copy ();
+      command_column_->set_property ("when", m);
+      musical_column_->set_property ("when", m);
+    }
+
   if (command_column_)
     {
       if (!scm_is_symbol (command_column_->get_property ("line-break-permission")))
@@ -199,6 +208,9 @@ Paper_column_engraver::process_music ()
 void
 Paper_column_engraver::stop_translation_timestep ()
 {
+  if (to_boolean (get_property ("skipTypesetting")))
+    return;
+
   SCM m = now_mom ().smobbed_copy ();
   command_column_->set_property ("when", m);
   musical_column_->set_property ("when", m);
@@ -264,11 +276,11 @@ Paper_column_engraver::stop_translation_timestep ()
 void
 Paper_column_engraver::start_translation_timestep ()
 {
-  /*
-    TODO: don't make columns when skipTypesetting is true.
-  */
-  if (!first_)
-    make_columns ();
+  if (!first_ && !to_boolean (get_property ("skipTypesetting")))
+    {
+      make_columns ();
+      made_columns_ = true;
+    }
 }
 
 ADD_ACKNOWLEDGER (Paper_column_engraver, item);
index 163eeb1b1812af4d5dd7c5dbb14e28b5f01bf22d..6adc95c0a00fd0b348f236d3f98b070b1e64b677 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -3,20 +3,72 @@
 # This file is distributed under the same license as the lilypond package.
 # Erwin Dieterich <bamse@gmx.de>, 1999
 # Roland Stigge <stigge@antcom.de>, 2003, 2004, 2005, 2006, 2007
-# Till Paala <till.rettig@gmx.de>, 2007, 2008, 2009
 #
+# Till Paala <till.rettig@gmx.de>, 2007, 2008, 2009, 2010.
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.13.3\n"
+"Project-Id-Version: lilypond 2.13.42\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2008-12-20 11:58+0100\n"
-"PO-Revision-Date: 2009-08-03 21:17+0300\n"
+"POT-Creation-Date: 2010-12-06 22:30+0100\n"
+"PO-Revision-Date: 2010-12-18 21:09+0200\n"
 "Last-Translator: Till Paala <till.rettig@gmx.de>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
+#: book_base.py:24
+#, python-format
+msgid "file not found: %s"
+msgstr "Datei `%s' nicht gefunden"
+
+#: book_base.py:161
+msgid "Output function not implemented"
+msgstr "Ausgabefunktion nicht implementiert"
+
+#: book_latex.py:156
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "\\begin{document} im LaTeX-Dokument kann nicht gefunden werden"
+
+#: book_snippets.py:517
+#, python-format
+msgid "deprecated ly-option used: %s=%s"
+msgstr "veraltete ly-option verwendet: %s=%s"
+
+#: book_snippets.py:519
+#, python-format
+msgid "compatibility mode translation: %s=%s"
+msgstr "Übersetzung im Kompatibilitätsmodus: %s=%s"
+
+#: book_snippets.py:522
+#, python-format
+msgid "deprecated ly-option used: %s"
+msgstr "veraltete ly-option verwendet: %s"
+
+#: book_snippets.py:524
+#, python-format
+msgid "compatibility mode translation: %s"
+msgstr "Übersetzung im Kompatibilitätsmodus: %s"
+
+#: book_snippets.py:542
+#, python-format
+msgid "ignoring unknown ly option: %s"
+msgstr "unbekannte Option ignoriert: %s"
+
+#: book_snippets.py:728
+#, python-format
+msgid "Opening filter `%s'\n"
+msgstr "Filter »%s« wird geöffnet\n"
+
+#: book_snippets.py:748
+#, python-format
+msgid "`%s' failed (%d)"
+msgstr "»%s« gescheitert (%d)"
+
+#: book_snippets.py:749
+msgid "The error log is as follows:"
+msgstr "Das Fehlerprotokoll lautet wie folgt:"
+
 #: convertrules.py:12
 #, python-format
 msgid "Not smart enough to convert %s"
@@ -31,8 +83,8 @@ msgstr "Für Details Benutzerhandbuch lesen und manuell aktualisieren."
 msgid "%s has been replaced by %s"
 msgstr "%s wurde durch %s ersetzt"
 
-#: convertrules.py:24 musicexp.py:16 convert-ly.py:50 lilypond-book.py:94
-#: warn.cc:48 input.cc:90
+#: convertrules.py:24 lilylib.py:78 musicexp.py:17 convert-ly.py:64 warn.cc:66
+#: input.cc:109
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "Warnung: %s"
@@ -50,8 +102,8 @@ msgstr "veraltet %s"
 msgid "deprecated \\textstyle, new \\key syntax"
 msgstr "verworfener \\textstyle, neue \\key Syntax"
 
-#: convertrules.py:86 convertrules.py:1906 convertrules.py:2085
-#: convertrules.py:2237 convertrules.py:2567
+#: convertrules.py:86 convertrules.py:1905 convertrules.py:2084
+#: convertrules.py:2236 convertrules.py:2566 convertrules.py:2862
 msgid "bump version for release"
 msgstr "aktuelle Version ausgeben"
 
@@ -68,7 +120,7 @@ msgid "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
 msgstr "\\repeat NUM Alternative Noten -> \\repeat FOLDSTR Alternative Noten"
 
 #: convertrules.py:216 convertrules.py:699 convertrules.py:1383
-#: convertrules.py:2379
+#: convertrules.py:2378
 #, python-format
 msgid "deprecate %s"
 msgstr "lehne %s ab"
@@ -121,8 +173,8 @@ msgstr "%s Eigenschaftsbezeichnungen"
 msgid "automaticMelismata turned on by default"
 msgstr "automaticMelismata ist standardmäßig aktiviert"
 
-#: convertrules.py:963 convertrules.py:1682 convertrules.py:1943
-#: convertrules.py:2190
+#: convertrules.py:963 convertrules.py:1682 convertrules.py:1942
+#: convertrules.py:2189
 #, python-format
 msgid "remove %s"
 msgstr "»%s« wird gelöscht"
@@ -257,7 +309,7 @@ msgstr "benutze %s"
 msgid "More Scheme function renaming"
 msgstr "benenne weitere Scheme-Funktionen um"
 
-#: convertrules.py:1925
+#: convertrules.py:1924
 msgid ""
 "Page layout has been changed, using paper size and margins.\n"
 "textheight is no longer used.\n"
@@ -265,7 +317,7 @@ msgstr ""
 "Das Seitenlayout hat sich geändert, benutzen Sie paper size (Papiergröße) und margins (Ränder).\n"
 "textheight wird nicht mehr benutzt.\n"
 
-#: convertrules.py:2011
+#: convertrules.py:2010
 msgid ""
 "\\foo -> \\foomode (for chords, notes, etc.)\n"
 "fold \\new FooContext \\foomode into \\foo."
@@ -273,7 +325,7 @@ msgstr ""
 "\\foo -> \\foomode (für Akkorde, Noten usw.)\n"
 "Komprimiere \\new FooContext \\foomode nach \\foo."
 
-#: convertrules.py:2049
+#: convertrules.py:2048
 msgid ""
 "staff size should be changed at top-level\n"
 "with\n"
@@ -287,85 +339,85 @@ msgstr ""
 "  #(set-global-staff-size <SYSTEMHÖHE-IN-PUNKTEN>)\n"
 "\n"
 
-#: convertrules.py:2069
+#: convertrules.py:2068
 msgid "regularize other identifiers"
 msgstr "normiere andere Bezeichner"
 
-#: convertrules.py:2137
+#: convertrules.py:2136
 msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
 msgstr "\\encoding: Konvertiere latin1 zu utf8. Entferne ly:point-and-click"
 
-#: convertrules.py:2150
+#: convertrules.py:2149
 msgid "LilyPond source must be UTF-8"
 msgstr "LilyPond-Quelle muss UTF-8 sein"
 
-#: convertrules.py:2153
+#: convertrules.py:2152
 msgid "Try the texstrings backend"
 msgstr "Das texstrings-Backend probieren"
 
-#: convertrules.py:2156
+#: convertrules.py:2155
 #, python-format
 msgid "Do something like: %s"
 msgstr "Folgendes versuchen: %s"
 
-#: convertrules.py:2159
+#: convertrules.py:2158
 msgid "Or save as UTF-8 in your editor"
 msgstr "Oder als UTF-8 im Editor sichern"
 
-#: convertrules.py:2213
+#: convertrules.py:2212
 msgid "warn about auto beam settings"
 msgstr "Warnung zu den Einstellungen der automatischen Balken"
 
-#: convertrules.py:2218
+#: convertrules.py:2217
 msgid "auto beam settings"
 msgstr "Einstellungen der automatischen Balken"
 
-#: convertrules.py:2220
+#: convertrules.py:2219
 msgid ""
 "\n"
 "Auto beam settings must now specify each interesting moment in a measure\n"
-"explicitely; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
+"explicitly; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
 msgstr ""
 "\n"
 "Einstellungen der automatischen Balken müssen jetzt für jede Position\n"
 "im Takt, die in Frage kommt, explizit gesetzt werden; 1/4 wird nicht mehr\n"
 "multipliziert, um auch die Positionen von 1/2 und 3/4 zu definieren.\n"
 
-#: convertrules.py:2334
+#: convertrules.py:2333
 msgid "verticalAlignmentChildCallback has been deprecated"
 msgstr "verticalAlignmentChildCallback ist veraltet"
 
-#: convertrules.py:2338
+#: convertrules.py:2337
 msgid "Remove callbacks property, deprecate XY-extent-callback."
 msgstr "Entferne callbacks-Eigenschaft, verwerfe XY-extent-callback."
 
-#: convertrules.py:2359
+#: convertrules.py:2358
 msgid "Use grob closures iso. XY-offset-callbacks."
 msgstr "Benutze grob-Schluss anstelle von XY-offset-callback."
 
-#: convertrules.py:2421
+#: convertrules.py:2420
 msgid "foobar -> foo-bar for \\paper, \\layout"
 msgstr "foobar -> foo-bar für \\paper, \\layout"
 
-#: convertrules.py:2531
+#: convertrules.py:2530
 msgid "deprecate \\tempo in \\midi"
 msgstr "verwerfe \\tempo in \\midi"
 
-#: convertrules.py:2578
+#: convertrules.py:2583
 msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
 msgstr ""
 "verwerfe cautionary-style für warndende Versetzungszeichen.\n"
 "Benutze AccidentalCautionary-Eigenschaften"
 
-#: convertrules.py:2591
+#: convertrules.py:2596
 msgid "Rename accidental glyphs, use glyph-name-alist."
 msgstr "Umbenennen der Versetzungszeichen-Glyphen, benutze glyph-name-alist."
 
-#: convertrules.py:2646
+#: convertrules.py:2651
 msgid "edge-text settings for TextSpanner."
 msgstr "edge-text (Randtext)-Einstellungen für TextSpanner."
 
-#: convertrules.py:2647
+#: convertrules.py:2652
 #, python-format
 msgid ""
 "Use\n"
@@ -376,23 +428,35 @@ msgstr ""
 "\n"
 "%s"
 
+#: convertrules.py:2685
+msgid "Use the `alignment-offsets' sub-property of\n"
+msgstr "Die Untereigenschaft `alignment-offsets' von\n"
+
 #: convertrules.py:2686
+msgid "NonMusicalPaperColumn #'line-break-system-details\n"
+msgstr "NonMusicalPaperColumn #'line-break-system-details benutzen,\n"
+
+#: convertrules.py:2687
+msgid "to set fixed distances between staves.\n"
+msgstr "um feste Abstände zwischen Systemen zu setzen.\n"
+
+#: convertrules.py:2699
 msgid "Use #'style not #'dash-fraction to select solid/dashed lines."
 msgstr "Benutze #'style anstelle von #'dash-fraction, um durchgehende/gestrichelte Linien zu benutzen."
 
-#: convertrules.py:2692
+#: convertrules.py:2705
 msgid "all settings related to dashed lines.\n"
 msgstr "alle Einstellungen zu gestrichelten Linien.\n"
 
-#: convertrules.py:2693
+#: convertrules.py:2706
 msgid "Use \\override ... #'style = #'line for solid lines and\n"
 msgstr "Benutze \\override ... #'style = #'line für durchgehende Linien und\n"
 
-#: convertrules.py:2694
+#: convertrules.py:2707
 msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
 msgstr "\t\\override ... #'style #'dashed-line für gestrichelte Linien."
 
-#: convertrules.py:2730
+#: convertrules.py:2743
 msgid ""
 "metronomeMarkFormatter uses text markup as second argument,\n"
 "fret diagram properties moved to fret-diagram-details."
@@ -400,11 +464,11 @@ msgstr ""
 "metronomeMarkFormatter benutzt Textbeschriftung as zweites Argument,\n"
 "Bund-Diagramm-Eigenschaften sind nach fret-diagram-details verschoben."
 
-#: convertrules.py:2735
+#: convertrules.py:2748
 msgid "metronomeMarkFormatter got an additional text argument.\n"
 msgstr "metronomeMarkFormatter hat ein zusätzliches Textargument bekommen.\n"
 
-#: convertrules.py:2736
+#: convertrules.py:2749
 #, python-format
 msgid ""
 "The function assigned to Score.metronomeMarkFunction now uses the signature\n"
@@ -413,34 +477,228 @@ msgstr ""
 "Die Funktion, die Score.metronomeMarkFunction zugeschrieben ist, benutzt jetzt\n"
 "die Signatur %s"
 
-#: convertrules.py:2799
+#: convertrules.py:2812
 msgid "\\put-adjacent argument order.\n"
 msgstr "\\put-adjacent Argumentreihenfolge.\n"
 
-#: convertrules.py:2800
+#: convertrules.py:2813
 msgid "Axis and direction now come before markups:\n"
 msgstr "Achse und Richtung jetzt vor die Beschriftung setzen:\n"
 
-#: convertrules.py:2801
+#: convertrules.py:2814
 msgid "\\put-adjacent axis dir markup markup."
 msgstr "\\put-adjacent Achse Richtung Beschriftung Beschriftung."
 
-#: convertrules.py:2832
+#: convertrules.py:2845
 msgid "re-definition of InnerStaffGroup.\n"
 msgstr "Neudefinition von InnerStaffGroup.\n"
 
-#: convertrules.py:2838
+#: convertrules.py:2851
 msgid "re-definition of InnerChoirStaff.\n"
 msgstr "Neudefinition von InnerChoirStaff.\n"
 
-#: convertrules.py:2851
+#: convertrules.py:2861
+msgid "Syntax changes for \\addChordShape and \\chord-shape"
+msgstr "Syntax-Änderungen für \\addChordShape und \\chord-shape"
+
+#: convertrules.py:2866
 msgid "stringTuning must be added to addChordShape call.\n"
 msgstr "stringTuning·muss zu einem·addChordShape -Aufruf hinzugefügt werden.\n"
 
-#: convertrules.py:2857
+#: convertrules.py:2872
 msgid "stringTuning must be added to chord-shape call.\n"
 msgstr "stringTuning muss zu dem·chord-shape -Aufruf hinzugefügt werden.\n"
 
+#: convertrules.py:2879
+msgid "Remove oldaddlyrics"
+msgstr "oldaddlyrics entfernen"
+
+#: convertrules.py:2883
+msgid ""
+"oldaddlyrics is no longer supported. \n"
+"         Use addlyrics or lyrsicsto instead.\n"
+msgstr ""
+"oldaddlyrics wird nicht mehr unterstützt.\n"
+"         Benutzen Sie anstatt dessen addlyrics oder lyricsto.\n"
+
+#: convertrules.py:2889
+msgid ""
+"keySignature property not reversed any more\n"
+"MIDI 47: orchestral strings -> orchestral harp"
+msgstr ""
+"keySignature-Eigenschaft ist nicht mehr umgedreht\n"
+"MIDI 47: Orchester-Streicher -> Orchester-Harfe"
+
+#: convertrules.py:2894
+msgid "The alist for Staff.keySignature is no longer in reversed order.\n"
+msgstr "Die Aliste für Staff.keySignature ist nicht mehr in umgekehrter Reihenfolge.\n"
+
+#: convertrules.py:2900
+msgid ""
+"\\bar \".\" now produces a thick barline\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Dash parameters for slurs and ties are now in dash-definition"
+msgstr ""
+"\\bar \".\" erstellt jetzt einen dicken Taktstrich\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Strichelunsparameter für Binde- und Legatobögen sind jetzt in dash-definition"
+
+#: convertrules.py:2906
+msgid "\\bar \".\" now produces a thick barline.\n"
+msgstr "\\bar  \".\" erstellt jetzt einen dicken Taktstrich.\n"
+
+#: convertrules.py:2912
+msgid "Dash parameters for slurs and ties are now in 'dash-details.\n"
+msgstr "Strichelunsparameter für Binde- und Legatobögen sind jetzt in 'dash-details.\n"
+
+#: convertrules.py:2917
+msgid ""
+"Autobeaming rules have changed.  override-auto-beam-setting and\n"
+"revert-auto-beam-setting have been eliminated.\n"
+"\\overrideBeamSettings has been added.\n"
+"beatGrouping has been eliminated.\n"
+"Different settings for vertical layout.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Explicit dynamics context definition from `Piano centered dynamics'\n"
+"template replaced by new `Dynamics' context."
+msgstr ""
+"Die automatischen Bebalkungsregeln haben sich geändert.  override-auto-beam-setting und\n"
+"revert-auto-beam-setting wurden entfernt.\n"
+"\\overrideBeamSetting wurde hinzugefügt.\n"
+"beatGrouping wurde entfernt.\n"
+"Unterschiedliche Einstellungen für das vertikale Layout.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-dhead::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Explizite Definition des Dynamikzeichenkontexts aus der `Piano centered dynamics'\n"
+"Vorlage ersetzt durch neuen `Dynamics'-Kontext."
+
+#: convertrules.py:2931
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now overriden with \\overrideBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   Automatische Bebalkungseinstellungen werden jetzt mit \\overrideBeamSettings verändert.\n"
+
+#: convertrules.py:2936
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now reverted with \\revertBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   Automatische Bebalkungseinstellungen werden jetzt mit \\revertBeamSettings rückgängig gemacht.\n"
+
+#: convertrules.py:2941
+msgid ""
+"beatGrouping. \n"
+"   beatGrouping with a specified context must now be accomplished with\n"
+"   \\overrideBeamSettings.\n"
+msgstr ""
+"beatGrouping.\n"
+"   beatGrouping mit einem angegebenen Kontext muss jetzt mit\n"
+"   \\overrideBeamSettings vorgenommen werden.\n"
+
+#: convertrules.py:2947
+msgid "alignment-offsets has been changed to alignment-distances: you must now specify the distances between staves rather than the offset of staves.\n"
+msgstr "alignment-offsets wurde in alignment-distances geändert: Man muss jetzt die Abstände zwischen Systemen angeben und nicht die Verschiebung der Systeme.\n"
+
+#: convertrules.py:2958
+msgid ""
+"Remove obsolete engravers/translators: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer and String_number_engraver.\n"
+"New vertical spacing variables."
+msgstr ""
+"Entferne obsolete Engraver/Translatoren: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer und String_number_engraver.\n"
+"Neue vertikale Abstandsvariablen."
+
+#: convertrules.py:2982
+msgid "vertical spacing has been changed; minimum-Y-extent is obsolete.\n"
+msgstr "vertikale Abstände wurden geändert; minimum-Y-extent ist obsolet.\n"
+
+#: convertrules.py:2988
+msgid "Unify fetaNumber and fetaDynamic encodings"
+msgstr "Kodierungen für fetaNumber und fetaDynamic vereinheitlichen"
+
+#: convertrules.py:2993
+msgid "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+msgstr "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+
+#: convertrules.py:3004
+msgid "\\cresc etc. are now postfix operators"
+msgstr "\\cresc usw. werden jetzt der Note nachgestellt"
+
+#: convertrules.py:3010
+msgid ""
+"Eliminate beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings and \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+msgstr ""
+"Entferne beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings und \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+
+#: convertrules.py:3028
+msgid "\\overrideBeamSettings.  Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
+msgstr "\\overrideBeamSettings.  Benutze \\set beamExceptions oder \\overrideTimeSignatureSettings.\n"
+
+#: convertrules.py:3032
+msgid "\\revertBeamSettings. Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
+msgstr "\\revertBeamSettings. Benutze \\set beamExceptions oder \\revertTimeSignatureSettings.\n"
+
+#: convertrules.py:3036
+msgid "beamSettings. Use baseMoment, beatStructure, and beamExceptions.\n"
+msgstr "beamSettings. Benutze baseMoment, beatStructure und beamExceptions.\n"
+
+#: convertrules.py:3040
+msgid "beatLength. Use baseMoment and beatStructure.\n"
+msgstr "beatLength. Benutze baseMoment und beatStructure.\n"
+
+#: convertrules.py:3044
+msgid "setbeatGrouping. Use baseMoment and beatStructure.\n"
+msgstr "setbeatGrouping. Benutze baseMoment und beatStructure.\n"
+
+#: convertrules.py:3049
+msgid ""
+"Woodwind diagrams: Move size, thickness, and graphic from argument list to properties.\n"
+"Deprecate negative dash-period for hidden lines: use #'style = #'none instead."
+msgstr ""
+"Holzbläser-Diagramme: Größe (size), Dicke (thickness) und graphic aus Argumentenliste nach Eigenschaften verschoben.\n"
+"Negatives dash-period für versteckte Linien ist veraltet: #'style = #'none anstellt dessen benutzen."
+
+#: convertrules.py:3054
+msgid "woodwind-diagrams.  Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
+msgstr "woodwind-diagrams.  size, thickness und graphic in Eigenschaften verschoben.  Argument darf nur die Liste der Schlüssel sein.\n"
+
+#: convertrules.py:3062
+msgid ""
+"Rename vertical spacing variables.\n"
+"Add fretboard-table argument to savePredefinedFretboard."
+msgstr ""
+"Vertikale Abstandsvariablen umbenennen.\n"
+"fretboard-table-Argument hinzufügen, um PredefinedFretboard zu speichern."
+
+#: convertrules.py:3080
+msgid "Rename vertical spacing grob properties."
+msgstr "Vertikale Abstands-Grob-Eigenschaften umbenennen."
+
+#: convertrules.py:3096
+msgid "Remove \\paper variables head-separation and foot-separation."
+msgstr "\\paper-Variablen head-separation und foot-separation entfernen."
+
+#: convertrules.py:3101
+msgid "Adjust settings for top-system-spacing instead.\n"
+msgstr "Anstelle dessen Einstellungen für top-system-spacing anpassen.\n"
+
+#: convertrules.py:3106
+msgid "Adjust settings for last-bottom-spacing instead.\n"
+msgstr "Anstelle dessen Einstellungen für last-bottom-spacing anpassen.\n"
+
 #: fontextract.py:25
 #, python-format
 msgid "Scanning %s"
@@ -456,90 +714,85 @@ msgstr "%s ausgepackt"
 msgid "Writing fonts to %s"
 msgstr "Schreiben der Schriftarten nach %s"
 
-#: lilylib.py:91 lilylib.py:142
+#: lilylib.py:81 musicxml.py:13 convert-ly.py:67 warn.cc:72 input.cc:115
+#: input.cc:123
+#, c-format, python-format
+msgid "error: %s"
+msgstr "Fehler: %s"
+
+#: lilylib.py:124 lilylib.py:175
 #, python-format
 msgid "Invoking `%s'"
 msgstr "`%s' wird aufgerufen"
 
-#: lilylib.py:93 lilylib.py:144
+#: lilylib.py:126 lilylib.py:177
 #, python-format
 msgid "Running %s..."
 msgstr "%s wird ausgeführt..."
 
-#: lilylib.py:209
+#: lilylib.py:253
 #, python-format
 msgid "Usage: %s"
 msgstr "Aufruf: %s"
 
-#: musicexp.py:215 musicexp.py:220
+#: musicexp.py:216 musicexp.py:221
 msgid "Language does not support microtones contained in the piece"
 msgstr "Die Sprache unterstützt nicht die Mikrotöne in diesem Stück"
 
-#: musicexp.py:482
+#: musicexp.py:483
 msgid "Tuplet brackets of curved shape are not correctly implemented"
 msgstr "N-tolen-Klammern mit gekrümmten Klammern sind nicht richtig implementiert"
 
-#. TODO: Implement this using actual_type and normal_type!
-#: musicexp.py:511
-msgid "Tuplet brackets displaying both note durations are not implemented, using default"
-msgstr "N-tolen-Klammern, die beide Notendauern darstellen, sind nicht implementiert, benutze Standard"
-
-#: musicexp.py:656
+#: musicexp.py:669
 #, python-format
 msgid "unable to set the music %(music)s for the repeat %(repeat)s"
 msgstr "kann die Noten %(music)s für die Wiederholung %(repeat)s nicht setzen"
 
-#: musicexp.py:665
+#: musicexp.py:678
 msgid "encountered repeat without body"
 msgstr "Wiederholung ohne Body angetroffen"
 
 #. no self.elements!
-#: musicexp.py:835
+#: musicexp.py:848
 #, python-format
 msgid "Grace note with no following music: %s"
 msgstr "Verzierungsnoten ohne folgende Noten: %s"
 
-#: musicexp.py:997
+#: musicexp.py:1010
 #, python-format
 msgid "Invalid octave shift size found: %s. Using no shift."
 msgstr "Ungültige Oktavenversetzungsgröße gefunden: %s. Versetzung wird nicht angewendet."
 
-#: musicexp.py:1455
+#: musicexp.py:1468
 #, python-format
 msgid "Unable to convert alteration %s to a lilypond expression"
 msgstr "Kann Alteration %s nicht in einen LilyPond-Ausdruck umwandeln"
 
-#: musicxml.py:13 convert-ly.py:53 lilypond-book.py:97 warn.cc:54 input.cc:96
-#: input.cc:104
-#, c-format, python-format
-msgid "error: %s"
-msgstr "Fehler: %s"
-
 #. TODO: Handle pieces without a time signature!
-#: musicxml.py:357
+#: musicxml.py:358
 msgid "Senza-misura time signatures are not yet supported!"
 msgstr "Senza-misura-Taktarten sind noch nicht unterstützt!"
 
-#: musicxml.py:375
+#: musicxml.py:376
 msgid "Unable to interpret time signature! Falling back to 4/4."
 msgstr "Unfähig, die Taktart zu interpretieren! Benutze 4/4-Takt."
 
-#: musicxml.py:431
+#: musicxml.py:432
 #, python-format
 msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
 msgstr "Tonartalterationsoktave für eine nicht existente Alteration Nr. %s angegeben, mögliche Nummern: %s!"
 
-#: musicxml.py:519
+#: musicxml.py:520
 #, python-format
 msgid "Unable to find instrument for ID=%s\n"
 msgstr "Kann kein Instrument für ID=%s finden\n"
 
-#: abc2ly.py:1341 convert-ly.py:74 lilypond-book.py:121 midi2ly.py:845
+#: abc2ly.py:1373 convert-ly.py:87 lilypond-book.py:122 midi2ly.py:860
 #, python-format
 msgid "%s [OPTION]... FILE"
 msgstr "%s [OPTIONEN]... DATEI"
 
-#: abc2ly.py:1342
+#: abc2ly.py:1374
 #, python-format
 msgid ""
 "abc2ly converts ABC music files (see\n"
@@ -548,25 +801,25 @@ msgstr ""
 "abc2ly wandelt ABC-Musikdateien in LilyPond-Eingabe um\n"
 "(siehe auch %s).\n"
 
-#: abc2ly.py:1350 convert-ly.py:81 etf2ly.py:1190 lilypond-book.py:207
-#: midi2ly.py:881 musicxml2ly.py:2590 main.cc:156
+#: abc2ly.py:1382 convert-ly.py:94 etf2ly.py:1206 lilypond-book.py:212
+#: midi2ly.py:896 musicxml2ly.py:2683 main.cc:168
 msgid "show version number and exit"
 msgstr "Versionsnummer ausgeben und beenden"
 
-#: abc2ly.py:1354 convert-ly.py:85 etf2ly.py:1186 lilypond-book.py:138
-#: midi2ly.py:860 musicxml2ly.py:2572 main.cc:145
+#: abc2ly.py:1386 convert-ly.py:98 etf2ly.py:1202 lilypond-book.py:140
+#: midi2ly.py:875 musicxml2ly.py:2665 main.cc:157
 msgid "show this help and exit"
 msgstr "diese Hilfe anzeigen und beenden"
 
-#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
+#: abc2ly.py:1388 etf2ly.py:1207 midi2ly.py:879
 msgid "write output to FILE"
 msgstr "Ausgabe in DATEI schreiben"
 
-#: abc2ly.py:1358
+#: abc2ly.py:1390
 msgid "be strict about success"
 msgstr "bzgl. Erfolg streng sein"
 
-#: abc2ly.py:1360
+#: abc2ly.py:1392
 msgid "preserve ABC's notion of beams"
 msgstr "ABCs Prinzip der Balken beibehalten"
 
@@ -574,13 +827,13 @@ msgstr "ABCs Prinzip der Balken beibehalten"
 #. "Report bugs in English via %s",
 #. or if there is a LilyPond users list or forum in your language
 #. "Report bugs in English via %s or in YOUR_LANG via URI"
-#: abc2ly.py:1363 convert-ly.py:123 etf2ly.py:1200 lilypond-book.py:214
-#: midi2ly.py:894 musicxml2ly.py:2646 main.cc:265
+#: abc2ly.py:1395 convert-ly.py:144 etf2ly.py:1216 lilypond-book.py:234
+#: midi2ly.py:909 musicxml2ly.py:2751 main.cc:281
 #, c-format, python-format
 msgid "Report bugs via %s"
 msgstr "Melden Sie Fehler an %s"
 
-#: convert-ly.py:33
+#: convert-ly.py:44
 msgid ""
 "Update LilyPond input to newer version.  By default, update from the\n"
 "version taken from the \\version command, to the current LilyPond version."
@@ -588,82 +841,105 @@ msgstr ""
 "LilyPond-Eingabe auf neuere Version bringen. Standardmäßig wird von der\n"
 "Version vom Kommando \\version zur aktuellen LilyPond-Version gegangen."
 
-#: convert-ly.py:35 lilypond-book.py:71
+#: convert-ly.py:46 lilypond-book.py:82
 msgid "Examples:"
 msgstr "Beispiele:"
 
-#: convert-ly.py:69 etf2ly.py:1173 lilypond-book.py:117 midi2ly.py:76
+#: convert-ly.py:81 etf2ly.py:1189 lilypond-book.py:116 midi2ly.py:90
+#, python-format
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s bei"
+
+#: convert-ly.py:83 etf2ly.py:1191 lilypond-book.py:118 midi2ly.py:92
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Vertrieben unter den Bedingungen der GNU General Public License."
 
-#: convert-ly.py:70 etf2ly.py:1174 lilypond-book.py:118 midi2ly.py:77
+#: convert-ly.py:84 etf2ly.py:1192 lilypond-book.py:119 midi2ly.py:93
 msgid "It comes with NO WARRANTY."
 msgstr "Es wird OHNE GARANTIE ausgeliefert."
 
-#: convert-ly.py:89 convert-ly.py:116
+#: convert-ly.py:102 convert-ly.py:135
 msgid "VERSION"
 msgstr "VERSION"
 
-#: convert-ly.py:91
+#: convert-ly.py:104
 msgid "start from VERSION [default: \\version found in file]"
 msgstr "bei VERSION anfangen [Standard: \\version in Datei gefunden]"
 
-#: convert-ly.py:94
+#: convert-ly.py:107
 msgid "edit in place"
 msgstr "vor Ort ändern"
 
-#: convert-ly.py:98
+#: convert-ly.py:111
 msgid "do not add \\version command if missing"
 msgstr "keinen \\version-Befehl hinzufügen, falls es fehlt"
 
-#: convert-ly.py:104
+#: convert-ly.py:117
 #, python-format
 msgid "force updating \\version number to %s"
 msgstr "erzwinge Aktualisierung von \\version nach %s"
 
-#: convert-ly.py:110
+#: convert-ly.py:123
+msgid "only update \\version number if file is modified"
+msgstr "Aktualisierung von \\version nur, wenn die Datei verändert wurde"
+
+#: convert-ly.py:129
 #, python-format
 msgid "show rules [default: -f 0, -t %s]"
 msgstr "Regeln anzeigen [Standard: -f 0, -t %s]"
 
-#: convert-ly.py:115
+#: convert-ly.py:134
 #, python-format
 msgid "convert to VERSION [default: %s]"
 msgstr "zu VERSION konvertieren [Standard: %s]"
 
-#: convert-ly.py:163
+#: convert-ly.py:139 etf2ly.py:1210 lilypond-book.py:215 midi2ly.py:897
+#: main.cc:170
+msgid "show warranty and copyright"
+msgstr "Informationen zu Gewährleistung und Copyright anzeigen"
+
+#: convert-ly.py:184
 msgid "Applying conversion: "
 msgstr "Anwenden der Umwandlung: "
 
-#: convert-ly.py:176
+#: convert-ly.py:197
 msgid "Error while converting"
 msgstr "Fehler beim Umwandeln"
 
-#: convert-ly.py:178
+#: convert-ly.py:199
 msgid "Stopping at last successful rule"
 msgstr "Abbruch bei letzter erfolgreicher Regel"
 
-#: convert-ly.py:199
+#: convert-ly.py:224
 #, python-format
 msgid "Processing `%s'... "
 msgstr "»%s« wird verarbeitet..."
 
-#: convert-ly.py:289 relocate.cc:362 source-file.cc:59
-#, c-format, python-format
-msgid "cannot open file: `%s'"
-msgstr "Datei kann nicht geöffnet werden: »%s«"
+#: convert-ly.py:332
+#, python-format
+msgid "%s: Unable to open file"
+msgstr "%s: Konnte Datei nicht öffnen"
 
-#: convert-ly.py:296
+#: convert-ly.py:339
 #, python-format
-msgid "cannot determine version for `%s'.  Skipping"
-msgstr "Version für »%s« kann nicht erkannt werden. Wird übersprungen"
+msgid "%s: Unable to determine version.  Skipping"
+msgstr "Version für »%s« kann nicht erkannt werden.  Wird übersprungen"
 
-#: etf2ly.py:1179
+#: convert-ly.py:344
+#, python-format
+msgid ""
+"%s: Invalid version string `%s' \n"
+"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
+msgstr ""
+"%s: Ungültige Versionsangabe `%s' \n"
+"Gültige Versionsangaben bestehen aus drei Zahlen, durch Punkte getrennt; etwa `2.8.12'"
+
+#: etf2ly.py:1195
 #, python-format
 msgid "%s [OPTION]... ETF-FILE"
 msgstr "%s [OPTIONEN]... ETF-DATEI"
 
-#: etf2ly.py:1180
+#: etf2ly.py:1196
 msgid ""
 "Enigma Transport Format is a format used by Coda Music Technology's\n"
 "Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond file.\n"
@@ -672,398 +948,358 @@ msgstr ""
 "verwendetes Format. etf2ly wandelt eine Teilmenge von ETF in\n"
 "eine von Lilypond verwendbare Datei um.\n"
 
-#: etf2ly.py:1192 midi2ly.py:865 musicxml2ly.py:2638 main.cc:149 main.cc:154
+#: etf2ly.py:1208 midi2ly.py:880 musicxml2ly.py:2743 main.cc:161 main.cc:166
 msgid "FILE"
 msgstr "DATEI"
 
-#: etf2ly.py:1194 lilypond-book.py:210 midi2ly.py:882 main.cc:158
-msgid "show warranty and copyright"
-msgstr "Informationen zu Gewährleistung und Copyright anzeigen"
-
-#: lilypond-book.py:69
+#: lilypond-book.py:80
 msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
 msgstr "LilyPond-Schnipsel in Mischdatei (HTML, LaTeX, texinfo oder DocBook) verarbeiten"
 
-#: lilypond-book.py:76
+#: lilypond-book.py:87
 msgid "BOOK"
 msgstr "BUCH"
 
-#: lilypond-book.py:84
+#: lilypond-book.py:95
 #, python-format
 msgid "Exiting (%d)..."
 msgstr "Beenden (%d)..."
 
-#: lilypond-book.py:115
-#, python-format
-msgid "Copyright (c) %s by"
-msgstr "Copyright (c) %s bei"
-
-#: lilypond-book.py:125
+#: lilypond-book.py:127
 msgid "FILTER"
 msgstr "FILTER"
 
-#: lilypond-book.py:128
+#: lilypond-book.py:130
 msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
 msgstr "Auszüge durch FILTER [Standard: »convert-ly -n -«] leiten (Pipe)"
 
-#: lilypond-book.py:132
+#: lilypond-book.py:134
 msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
 msgstr "Ausgabeformat FORMAT (texi [Vorgabe], texi-html, latex, html, docbook) verwenden"
 
-#: lilypond-book.py:133
+#: lilypond-book.py:135
 msgid "FORMAT"
 msgstr "FORMAT"
 
-#: lilypond-book.py:140
+#: lilypond-book.py:142
 msgid "add DIR to include path"
 msgstr "VERZ zum Einfügepfad hinzufügen"
 
-#: lilypond-book.py:141 lilypond-book.py:148 lilypond-book.py:166
-#: lilypond-book.py:172 lilypond-book.py:178 lilypond-book.py:184 main.cc:148
+#: lilypond-book.py:143 lilypond-book.py:150 lilypond-book.py:163
+#: lilypond-book.py:173 lilypond-book.py:189 lilypond-book.py:195 main.cc:160
 msgid "DIR"
 msgstr "VERZ"
 
-#: lilypond-book.py:146
+#: lilypond-book.py:148
 msgid "format Texinfo output so that Info will look for images of music in DIR"
 msgstr "Formatiere Texinfo-Ausgabe so, dass Info nach Bildern und Noten im VERZ suchen kann"
 
-#: lilypond-book.py:153
-msgid "run executable PROG instead of latex"
-msgstr "benutze ausführbare Datei PROG anstelle von latex"
-
-#: lilypond-book.py:154
-msgid "PROG"
-msgstr "PROG"
-
-#: lilypond-book.py:159
+#: lilypond-book.py:155
 msgid "PAD"
 msgstr "FÜLLUNG"
 
-#: lilypond-book.py:161
+#: lilypond-book.py:157
 msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
 msgstr "verschiebe linken Rand der Noten um an den Noten auszurichten, obwohl Taktnummer ungerade ist (in mm)"
 
-#: lilypond-book.py:165
-msgid "write output to DIR"
-msgstr "Ausgabe in DATEI schreiben"
+#: lilypond-book.py:162
+msgid "write lily-XXX files to DIR, link into --output dir"
+msgstr "schreibe lily-XXX-Dateien nach VERZ, verlinke nach --output dir"
 
-#: lilypond-book.py:171
-msgid "do not fail if no lilypond output is found"
-msgstr "nicht abbrechen wenn keine lilypond-Ausgabe gefunden wird"
+#: lilypond-book.py:167
+msgid "Load the additional python PACKAGE (containing e.g. a custom output format)"
+msgstr "Zusätzliches python PACKAGE laden (enthält z. B. ein angepasstes Ausgabeformat)"
 
-#: lilypond-book.py:177
-msgid "do not fail if no PNG images are found for EPS files"
-msgstr "nicht abbrechen wenn, keine PNG-Bilder für EPS-Dateien gefunden werden"
+#: lilypond-book.py:168
+msgid "PACKAGE"
+msgstr "PACKAGE"
 
-#: lilypond-book.py:183
-msgid "write lily-XXX files to DIR, link into --output dir"
-msgstr "schreibe lily-XXX-Dateien nach VERZ, verlinke nach --output dir"
+#: lilypond-book.py:172
+msgid "write output to DIR"
+msgstr "Ausgabe in DATEI schreiben"
 
-#: lilypond-book.py:188
+#: lilypond-book.py:177
 msgid "COMMAND"
 msgstr "BEFEHL"
 
-#: lilypond-book.py:189
+#: lilypond-book.py:178
 msgid "process ly_files using COMMAND FILE..."
 msgstr "ly_files mit BEFEHL DATEI... verarbeiten"
 
-#: lilypond-book.py:196
-msgid "create PDF files for use with PDFTeX"
-msgstr "PDF-Dateien für Verwendung mit PDFTeX erzeugen"
-
-#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
-msgid "be verbose"
-msgstr "wortreich sein"
-
-#: lilypond-book.py:871
-#, python-format
-msgid "file not found: %s"
-msgstr "Datei `%s' nicht gefunden"
-
-#: lilypond-book.py:1142
-#, python-format
-msgid "deprecated ly-option used: %s=%s"
-msgstr "veraltete ly-option verwendet: %s=%s"
-
-#: lilypond-book.py:1144
-#, python-format
-msgid "compatibility mode translation: %s=%s"
-msgstr "Übersetzung im Kompatibilitätsmodus: %s=%s"
+#: lilypond-book.py:182
+msgid "Compile snippets in safe mode"
+msgstr "Schnipsel im sicheren Modus kompilieren"
 
-#: lilypond-book.py:1147
-#, python-format
-msgid "deprecated ly-option used: %s"
-msgstr "veraltete ly-option verwendet: %s"
+#: lilypond-book.py:188
+msgid "do not fail if no lilypond output is found"
+msgstr "nicht abbrechen wenn keine lilypond-Ausgabe gefunden wird"
 
-#: lilypond-book.py:1149
-#, python-format
-msgid "compatibility mode translation: %s"
-msgstr "Übersetzung im Kompatibilitätsmodus: %s"
+#: lilypond-book.py:194
+msgid "do not fail if no PNG images are found for EPS files"
+msgstr "nicht abbrechen wenn, keine PNG-Bilder für EPS-Dateien gefunden werden"
 
-#: lilypond-book.py:1167
-#, python-format
-msgid "ignoring unknown ly option: %s"
-msgstr "unbekannte Option ignoriert: %s"
+#: lilypond-book.py:200
+msgid "write snippet output files with the same base name as their source file"
+msgstr "schreibe Schnipsel-Ausgabedatei mit der gleichen Basis-Bezeichnung wie die Quelldatei"
 
-#: lilypond-book.py:1604
-#, python-format
-msgid "Opening filter `%s'"
-msgstr "Filter »%s« wird geöffnet"
+#: lilypond-book.py:204 midi2ly.py:890 musicxml2ly.py:2688 main.cc:169
+msgid "be verbose"
+msgstr "wortreich sein"
 
-#: lilypond-book.py:1621
-#, python-format
-msgid "`%s' failed (%d)"
-msgstr "»%s« gescheitert (%d)"
+#: lilypond-book.py:220
+msgid ""
+"run executable PROG instead of latex, or in\n"
+"case --pdf option is set instead of pdflatex"
+msgstr ""
+"Führe die Datei PROG anstelle von latex aus, oder\n"
+"im Falle dass die Option --pdf gesetzt ist, anstelle von pdflatex"
 
-#: lilypond-book.py:1622
-msgid "The error log is as follows:"
-msgstr "Das Fehlerprotokoll lautet wie folgt:"
+#: lilypond-book.py:222
+msgid "PROG"
+msgstr "PROG"
 
-#: lilypond-book.py:1684
-msgid "cannot find \\begin{document} in LaTeX document"
-msgstr "\\begin{document} im LaTeX-Dokument kann nicht gefunden werden"
+#: lilypond-book.py:228
+msgid "create PDF files for use with PDFTeX"
+msgstr "PDF-Dateien für Verwendung mit PDFTeX erzeugen"
 
-#: lilypond-book.py:1784
+#: lilypond-book.py:419
 msgid "Writing snippets..."
 msgstr "Auszüge werden geschrieben..."
 
-#: lilypond-book.py:1790
+#: lilypond-book.py:425
 msgid "Processing..."
 msgstr "Verarbeiten..."
 
-#: lilypond-book.py:1796
+#: lilypond-book.py:431
 msgid "All snippets are up to date..."
 msgstr "Alle Auszüge sind auf dem neuesten Stand..."
 
-#: lilypond-book.py:1830
+#: lilypond-book.py:452
 #, python-format
 msgid "cannot determine format for: %s"
 msgstr "Format für %s kann nicht ermittelt werden"
 
-#: lilypond-book.py:1841
+#: lilypond-book.py:461
 #, python-format
 msgid "%s is up to date."
 msgstr "%s ist aktuell."
 
-#: lilypond-book.py:1855
+#: lilypond-book.py:475
 #, python-format
 msgid "Writing `%s'..."
 msgstr "»%s« wird geschrieben..."
 
-#: lilypond-book.py:1913
+#: lilypond-book.py:537
 msgid "Output would overwrite input file; use --output."
 msgstr "Ausgabe würde Eingabedatei überschreiben; verwenden Sie --output."
 
-#: lilypond-book.py:1917
+#: lilypond-book.py:541
 #, python-format
 msgid "Reading %s..."
 msgstr "%s lesen..."
 
-#: lilypond-book.py:1937
+#: lilypond-book.py:549
 msgid "Dissecting..."
 msgstr "Zerlegen..."
 
-#: lilypond-book.py:1953
+#: lilypond-book.py:561
 #, python-format
 msgid "Compiling %s..."
 msgstr "%s kompilieren..."
 
-#: lilypond-book.py:1962
+#: lilypond-book.py:570
 #, python-format
 msgid "Processing include: %s"
 msgstr "Einfügung wird verarbeitet: %s"
 
-#: lilypond-book.py:1974
+#: lilypond-book.py:582
 #, python-format
 msgid "Removing `%s'"
 msgstr "»%s« wird gelöscht"
 
-#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
+#: midi2ly.py:99
 msgid "warning: "
 msgstr "Warnung: "
 
-#: midi2ly.py:87 midi2ly.py:907
+#: midi2ly.py:102 midi2ly.py:922
 msgid "error: "
 msgstr "Fehler: "
 
-#: midi2ly.py:88
+#: midi2ly.py:103
 msgid "Exiting... "
 msgstr "Beenden... "
 
-#: midi2ly.py:833
+#: midi2ly.py:848
 #, python-format
 msgid "%s output to `%s'..."
 msgstr "%s nach »%s« ausgeben..."
 
-#: midi2ly.py:846
+#: midi2ly.py:861
 #, python-format
 msgid "Convert %s to LilyPond input.\n"
 msgstr "%s in LilyPond-Quelltext umwandeln.\n"
 
-#: midi2ly.py:851
+#: midi2ly.py:866
 msgid "print absolute pitches"
 msgstr "Absolute Tonhöhen ausgeben"
 
-#: midi2ly.py:853 midi2ly.py:868
+#: midi2ly.py:868 midi2ly.py:883
 msgid "DUR"
 msgstr "DAUER"
 
-#: midi2ly.py:854
+#: midi2ly.py:869
 msgid "quantise note durations on DUR"
 msgstr "Notenlängen auf DAUER quantisieren"
 
-#: midi2ly.py:857
+#: midi2ly.py:872
 msgid "print explicit durations"
 msgstr "Explizite Notenlängen ausgeben"
 
-#: midi2ly.py:861
+#: midi2ly.py:876
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "Tonart setzen: VORZ=+Kreuze|-B's; MOLL=1"
 
-#: midi2ly.py:862
+#: midi2ly.py:877
 msgid "ALT[:MINOR]"
 msgstr "VORZ[:MOLL]"
 
-#: midi2ly.py:867
+#: midi2ly.py:882
 msgid "quantise note starts on DUR"
 msgstr "Notenanfänge auf DAUER quantisieren"
 
-#: midi2ly.py:870
+#: midi2ly.py:885
 msgid "DUR*NUM/DEN"
 msgstr "DAUER*ZÄHLER/NENNER"
 
 # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
-#: midi2ly.py:873
+#: midi2ly.py:888
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "Wertaufteilungsdauern DAUER*ZÄHLER/NENNER erlauben"
 
-#: midi2ly.py:885
+#: midi2ly.py:900
 msgid "treat every text as a lyric"
 msgstr "Jeden Text als Liedtext behandeln"
 
-#: midi2ly.py:888
+#: midi2ly.py:903
 msgid "Examples"
 msgstr "Beispiele"
 
-#: midi2ly.py:908
+#: midi2ly.py:923
 msgid "no files specified on command line."
 msgstr "Keine Dateien auf der Kommandozeile angegeben."
 
-#: musicxml2ly.py:343
-msgid "Encountered file created by Dolet 3.4 for Sibelius, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
-msgstr "Die Datei wurde von Dolet 3.4 für SIbelius erstellt und enthält falsche Balkeninformation. Alle Balkeninformation in der MusicXML-Datei wird ignoriert"
-
-#: musicxml2ly.py:346
-msgid "Encountered file created by Noteworthy Composer's nwc2xml, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
-msgstr "Die Datei wurde von Noteworthy·Composer's·nwc2xml erstellt und enthält falsche Balkeninformation. Alle Balkeninformation in der MusicXML-Datei wird ignoriert"
+#: musicxml2ly.py:324
+#, python-format
+msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgstr "Die Datei wurde von %s erstellt und enthält falsche Balkeninformation. Alle Balkeninformation in der MusicXML-Datei wird ignoriert"
 
-#: musicxml2ly.py:362 musicxml2ly.py:364
+#: musicxml2ly.py:340 musicxml2ly.py:342
 #, python-format
 msgid "Unprocessed PartGroupInfo %s encountered"
 msgstr "Unverarbeitetes PartGroupInfo %s angetroffen"
 
-#: musicxml2ly.py:594
+#: musicxml2ly.py:595
 #, python-format
 msgid "Encountered note at %s without type and duration (=%s)"
 msgstr "Note bei %s ohne Art und Dauer angetroffen (=%s)"
 
-#: musicxml2ly.py:613
+#: musicxml2ly.py:615
 #, python-format
 msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
 msgstr "Rationale Dauer mit Nenner %s angetroffen, kann nicht in lilypond-Dauer umgewandelt werden"
 
-#: musicxml2ly.py:868
+#: musicxml2ly.py:864
 msgid "Unable to extract key signature!"
 msgstr "Kann die Tonart nicht extrahieren!"
 
-#: musicxml2ly.py:895
+#: musicxml2ly.py:891
 #, python-format
 msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
 msgstr "unbekannter Modus %s, 'major' (Dur) oder 'minor' (Moll) oder eine Kirchentonart wird erwartet"
 
-#: musicxml2ly.py:968
+#: musicxml2ly.py:1029
 #, python-format
 msgid "Encountered unprocessed marker %s\n"
 msgstr "Unverarbeiteter Marker %s angetroffen\n"
 
-#: musicxml2ly.py:1062
+#: musicxml2ly.py:1123
 #, python-format
 msgid "unknown span event %s"
 msgstr "Unbekannte Spannerklasse »%s«"
 
-#: musicxml2ly.py:1072
+#: musicxml2ly.py:1133
 #, python-format
 msgid "unknown span type %s for %s"
 msgstr "Unbekannter Spannertyp %s für %s"
 
-#: musicxml2ly.py:1498
+#: musicxml2ly.py:1553
 msgid "Unknown metronome mark, ignoring"
 msgstr "Unbekanntes Metronom-Zeichen, wird ignoriert"
 
 #. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1503
+#: musicxml2ly.py:1558
 msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
 msgstr "Metronommakern mit komplexen Beziehungen (<metronome-note> in MusicXML) sind noch nicht implementiert."
 
-#: musicxml2ly.py:1703
+#: musicxml2ly.py:1760
 #, python-format
 msgid "Unable to convert chord type %s to lilypond."
 msgstr "Kann Akkordtyp %s nicht nach lilypond umwandeln"
 
-#: musicxml2ly.py:1849
+#: musicxml2ly.py:1909
 #, python-format
 msgid "drum %s type unknown, please add to instrument_drumtype_dict"
 msgstr "Schlagzeug %s Typ unbekannt, bitte zum instrument_drumtype_dict hinzufügen"
 
-#: musicxml2ly.py:1853
+#: musicxml2ly.py:1913
 msgid "cannot find suitable event"
 msgstr "passendes Ereignis kann nicht gefunden werden"
 
-#: musicxml2ly.py:1994
+#: musicxml2ly.py:2061
 #, python-format
 msgid "Negative skip %s (from position %s to %s)"
 msgstr "Negativer Sprung (skip) %s (von Position %s bis %s)"
 
-#: musicxml2ly.py:2134
+#: musicxml2ly.py:2202
 #, python-format
 msgid "Negative skip found: from %s to %s, difference is %s"
 msgstr "Negativer Sprung (skip) gefunden: von %s bis %s, Differenz ist %s"
 
-#: musicxml2ly.py:2205
+#: musicxml2ly.py:2283
 #, python-format
 msgid "unexpected %s; expected %s or %s or %s"
 msgstr "unerwartetes %s; %s oder %s oder %s erwartet"
 
-#: musicxml2ly.py:2311
+#: musicxml2ly.py:2389
 msgid "Encountered closing slur, but no slur is open"
 msgstr "Auf schließenden Legatobogen gestoßen, aber es wurde kein Bogen begonnen"
 
-#: musicxml2ly.py:2314
+#: musicxml2ly.py:2392
 msgid "Cannot have two simultaneous (closing) slurs"
 msgstr "Zwei gleichzeitige (schließende) Legatobögen sind nicht möglich"
 
-#: musicxml2ly.py:2324
+#: musicxml2ly.py:2401
 msgid "Cannot have a slur inside another slur"
 msgstr "Ein Legatobogen innerhalb eines anderen Legatobogens ist nicht möglich"
 
-#: musicxml2ly.py:2327
+#: musicxml2ly.py:2404
 msgid "Cannot have two simultaneous slurs"
 msgstr "Zwei gleichzeitige Legatobögen sind nicht möglich"
 
-#: musicxml2ly.py:2455
+#: musicxml2ly.py:2538
 #, python-format
 msgid "cannot simultaneously have more than one mode: %s"
 msgstr "Kann nicht gleichzeitig mehr als einen Modus haben: %s"
 
-#: musicxml2ly.py:2553
+#: musicxml2ly.py:2646
 msgid "Converting to LilyPond expressions..."
 msgstr "In LilyPond-Ausdrücke umwandeln..."
 
-#: musicxml2ly.py:2564
+#: musicxml2ly.py:2657
 msgid "musicxml2ly [OPTION]... FILE.xml"
 msgstr "musicxml2ly [Optionen]... DATEI.xml"
 
-#: musicxml2ly.py:2566
+#: musicxml2ly.py:2659
 msgid ""
 "Convert MusicXML from FILE.xml to LilyPond input.\n"
 "If the given filename is -, musicxml2ly reads from the command line.\n"
@@ -1071,7 +1307,7 @@ msgstr ""
 "Wandle MusicXML-Datei von DAT.xml nach LilyPond-Eingabe um.\n"
 "Wenn der angegebene Dateiname - ist, list musicxml2ly von der Kommandozeile.\n"
 
-#: musicxml2ly.py:2576
+#: musicxml2ly.py:2669
 msgid ""
 "Copyright (c) 2005--2010 by\n"
 "    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
@@ -1083,206 +1319,223 @@ msgstr ""
 "····Jan·Nieuwenhuizen·<janneke@gnu.org>·and\n"
 "····Reinhold·Kainhofer·<reinhold@kainhofer.com>\n"
 
-#: musicxml2ly.py:2601
+#: musicxml2ly.py:2694
 msgid "use lxml.etree; uses less memory and cpu time"
 msgstr "lxml.etree verwenden; benötigt weniger Speicher und Prozessorzeit"
 
-#: musicxml2ly.py:2607
+#: musicxml2ly.py:2700
 msgid "input file is a zip-compressed MusicXML file"
 msgstr "Eingabedatei ist eine zip-komprimierte MusicXML-Datei"
 
-#: musicxml2ly.py:2613
+#: musicxml2ly.py:2706
 msgid "convert pitches in relative mode (default)"
 msgstr "Tonhöhen im relativen Modus konvertieren (Standard)"
 
-#: musicxml2ly.py:2618
+#: musicxml2ly.py:2711
 msgid "convert pitches in absolute mode"
 msgstr "Tonhöhen im absoluten Modus konvertieren"
 
-#: musicxml2ly.py:2621
+#: musicxml2ly.py:2714
 msgid "LANG"
 msgstr "SPRA"
 
-#: musicxml2ly.py:2623
-msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
-msgstr "benutze eine andere Sprach-Datei 'SPRA.ly' und entsprechende Notenbezeichnungen, etwa 'deutsch' für deutsch.ly"
+#: musicxml2ly.py:2716
+msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
+msgstr "benutzte SPRA für Notenbezeichnugen, z. B. 'deutsch' für deutsche Notenbezeichnungen"
 
-#: musicxml2ly.py:2629
+#: musicxml2ly.py:2722
 msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
 msgstr "Richtungen (^, _ oder -) for Artikulationen, Dynamik usw. nicht konvertieren"
 
-#: musicxml2ly.py:2635
+#: musicxml2ly.py:2728
+msgid "do not convert exact vertical positions of rests"
+msgstr "zusätzliche vertikale Positionen von Pausen nicht konvertieren"
+
+#: musicxml2ly.py:2734
+msgid "do not convert the exact page layout and breaks"
+msgstr "nicht das exakte Seitenlayout und Umbrüche konvertieren"
+
+#: musicxml2ly.py:2740
 msgid "do not convert beaming information, use lilypond's automatic beaming instead"
 msgstr "Balkeninformation nicht konvertieren, benutze die automatischen Balken von lilypond statt dessen"
 
-#: musicxml2ly.py:2643
+#: musicxml2ly.py:2748
 msgid "set output filename to FILE, stdout if -"
 msgstr "Ausgabedateiname auf DATEI setzen, stout if -"
 
-#: musicxml2ly.py:2726
+#: musicxml2ly.py:2831
 #, python-format
 msgid "unknown part in part-list: %s"
 msgstr "unbekannte Stimme in part-list (Stimmen-Liste): %s"
 
-#: musicxml2ly.py:2788
+#: musicxml2ly.py:2893
 msgid "Input is compressed, extracting raw MusicXML data from stdin"
 msgstr "Eingabedatei %s ist komprimiert, entpacke die MusicXML-Daten von stdin"
 
-#: musicxml2ly.py:2791
+#: musicxml2ly.py:2896
 #, python-format
 msgid "Input file %s is compressed, extracting raw MusicXML data"
 msgstr "Eingabedatei %s ist komprimiert, entpacke die MusicXML-Daten"
 
-#: musicxml2ly.py:2821
+#: musicxml2ly.py:2926
 msgid "Reading MusicXML from Standard input ..."
 msgstr "MusicXML von standard input lesen..."
 
-#: musicxml2ly.py:2823
+#: musicxml2ly.py:2928
 #, python-format
 msgid "Reading MusicXML from %s ..."
 msgstr "MusicXML aus %s lesen..."
 
-#: musicxml2ly.py:2856
+#: musicxml2ly.py:2961
 #, python-format
 msgid "Output to `%s'"
 msgstr "Ausgabe nach »%s«"
 
-#: musicxml2ly.py:2922
+#: musicxml2ly.py:3028
 #, python-format
 msgid "Unable to find input file %s"
 msgstr "Eingabedatei kann nicht gefunden werden %s"
 
-#: getopt-long.cc:140
+#: website_post.py:115
+msgid "English"
+msgstr "Englisch"
+
+#: website_post.py:118
+msgid "Other languages"
+msgstr "Andere Sprachen"
+
+#: getopt-long.cc:153
 #, c-format
 msgid "option `%s' requires an argument"
 msgstr "Option »%s« benötigt ein Argument"
 
-#: getopt-long.cc:144
+#: getopt-long.cc:157
 #, c-format
 msgid "option `%s' does not allow an argument"
 msgstr "Option »%s« erlaubt kein Argument"
 
-#: getopt-long.cc:148
+#: getopt-long.cc:161
 #, c-format
 msgid "unrecognized option: `%s'"
 msgstr "unerkannte Option: »%s«"
 
-#: getopt-long.cc:154
+#: getopt-long.cc:167
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
 msgstr "ungültiges Argument »%s« für Option »%s«"
 
-#: warn.cc:68 grob.cc:566 input.cc:82
+#: warn.cc:59
+#, c-format
+msgid "success: %s"
+msgstr "Erfolg: %s"
+
+#: warn.cc:86 grob.cc:617 input.cc:97
 #, c-format
 msgid "programming error: %s"
 msgstr "Programmierfehler: %s"
 
-#: warn.cc:69 input.cc:83
+#: warn.cc:87 input.cc:98
 msgid "continuing, cross fingers"
 msgstr "Fortsetzung, die Daumen drücken"
 
-#: accidental-engraver.cc:298
+#: accidental-engraver.cc:180
 #, c-format
 msgid "accidental typesetting list must begin with context-name: %s"
 msgstr "Versetzungszeichensatzliste muss mit Kontextnamen beginnen: %s"
 
-#: accidental-engraver.cc:328
+#: accidental-engraver.cc:210
 #, c-format
 msgid "procedure or context-name expected for accidental rule, found %s"
 msgstr "Prozedur oder Kontextname für Versetzungszeichenregel erwartet, %s gefunden"
 
-#: accidental.cc:187
+#: accidental.cc:200
 #, c-format
 msgid "Could not find glyph-name for alteration %s"
 msgstr "Glyph-Name für Versetzungszeichen %s konnte nicht gefunden werden"
 
-#: accidental.cc:202
+#: accidental.cc:215
 msgid "natural alteration glyph not found"
 msgstr "Auflösungszeichen konnte nicht gefunden werden"
 
-#: align-interface.cc:305
-msgid "tried to get a translation for something that is no child of mine"
-msgstr "Versuch, eine Übersetzung für etwas zu finden, das nicht mein Kind ist"
-
-#: all-font-metrics.cc:143
+#: all-font-metrics.cc:156
 #, c-format
 msgid "cannot find font: `%s'"
 msgstr "Schriftart kann nicht gefunden werden: »%s«"
 
-#: apply-context-iterator.cc:31
+#: apply-context-iterator.cc:42
 msgid "\\applycontext argument is not a procedure"
 msgstr "Argument für \\applycontext ist keine Prozedur"
 
-#: auto-change-iterator.cc:63 change-iterator.cc:61
+#: auto-change-iterator.cc:74 change-iterator.cc:72
 #, c-format
 msgid "cannot change, already in translator: %s"
 msgstr "kann nicht geändert werden, bereits im Übersetzer: %s"
 
-#: axis-group-engraver.cc:78
+#: axis-group-engraver.cc:94
 msgid "Axis_group_engraver: vertical group already has a parent"
 msgstr "Axis_group_engraver: vertikale Gruppe hat bereits einen Vater"
 
-#: axis-group-engraver.cc:79
+#: axis-group-engraver.cc:95
 msgid "are there two Axis_group_engravers?"
 msgstr "gibt es zwei Axis_group_engravers?"
 
-#: axis-group-engraver.cc:80
+#: axis-group-engraver.cc:96
 msgid "removing this vertical group"
 msgstr "Entfernen dieser vertikalen Gruppe"
 
-#: axis-group-interface.cc:532
+#: axis-group-interface.cc:611
 msgid "an outside-staff object should have a direction, defaulting to up"
 msgstr "Ein Objekt außerhalb der Notenzeile sollte eine Richtung haben, Vorgabe ist »nach oben«"
 
-#: bar-check-iterator.cc:73
+#: bar-check-iterator.cc:84
 #, c-format
 msgid "barcheck failed at: %s"
 msgstr "Taktüberprüfung gescheitert bei: %s"
 
-#: beam-engraver.cc:126
+#: beam-engraver.cc:147
 msgid "already have a beam"
 msgstr "Balken bereits vorhanden"
 
-#: beam-engraver.cc:202
+#: beam-engraver.cc:230
 msgid "unterminated beam"
 msgstr "unbegrenzter Balken"
 
-#: beam-engraver.cc:244 chord-tremolo-engraver.cc:138
+#: beam-engraver.cc:266 chord-tremolo-engraver.cc:150
 msgid "stem must have Rhythmic structure"
 msgstr "Notenhals muss rhythmische Struktur aufweisen"
 
-#: beam-engraver.cc:252
+#: beam-engraver.cc:274
 msgid "stem does not fit in beam"
 msgstr "Notenhals passt nicht in Balken"
 
-#: beam-engraver.cc:253
+#: beam-engraver.cc:275
 msgid "beam was started here"
 msgstr "Balken wurde hier begonnen"
 
-#: beam-quanting.cc:307
+#: beam-quanting.cc:314
 msgid "no feasible beam position"
 msgstr "Keine praktikable Balkenposition"
 
-#: beam.cc:160
+#: beam.cc:171
 msgid "removing beam with no stems"
 msgstr "Balken ohne Notenhälse wird entfernt"
 
-#: beam.cc:1078
+#: beam.cc:1116
 msgid "no viable initial configuration found: may not find good beam slope"
 msgstr "Keine funktionsfähige Anfangskonfiguration gefunden: Es kann evtl. keine optimale Balkenneigung gefunden werden"
 
-#: break-alignment-interface.cc:195
+#: break-alignment-interface.cc:206
 #, c-format
 msgid "No spacing entry from %s to `%s'"
 msgstr "Kein Abstandeintrag von %s nach »%s«"
 
-#: change-iterator.cc:23
+#: change-iterator.cc:34
 #, c-format
 msgid "cannot change `%s' to `%s'"
 msgstr "»%s« kann nicht in »%s« geändert werden"
 
 #. FIXME: constant error message.
-#: change-iterator.cc:82
+#: change-iterator.cc:93
 msgid "cannot find context to switch to"
 msgstr "es kann kein Kontext zum Umschalten gefunden werden"
 
@@ -1291,13 +1544,13 @@ msgstr "es kann kein Kontext zum Umschalten gefunden werden"
 #.
 #. last->translator_id_string () = get_change
 #. ()->change_to_id_string ();
-#: change-iterator.cc:91
+#: change-iterator.cc:102
 #, c-format
 msgid "not changing to same context type: %s"
 msgstr "kein Umschalten zum gleichen Kontexttypen: %s"
 
 #. FIXME: uncomprehensable message
-#: change-iterator.cc:95
+#: change-iterator.cc:106
 msgid "none of these in my family"
 msgstr "keiner davon befindet sich in meiner Familie"
 
@@ -1305,199 +1558,196 @@ msgstr "keiner davon befindet sich in meiner Familie"
 msgid "No tremolo to end"
 msgstr "Kein Tremolo zu beenden"
 
-#: chord-tremolo-engraver.cc:110
+#: chord-tremolo-engraver.cc:109
 msgid "unterminated chord tremolo"
 msgstr "unbegrenztes Akkord-Tremolo"
 
-#: chord-tremolo-iterator.cc:35
-#, c-format
-msgid "expect 2 elements for chord tremolo, found %d"
-msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
-
-#: clef.cc:54
+#: clef.cc:65
 #, c-format
 msgid "clef `%s' not found"
 msgstr "Schlüssel »%s« nicht gefunden"
 
-#: cluster.cc:110
+#: cluster.cc:120
 #, c-format
 msgid "unknown cluster style `%s'"
 msgstr "unbekannter Clusterstil: »%s«"
 
-#: cluster.cc:147
+#: cluster.cc:157
 msgid "junking empty cluster"
 msgstr "Leeres Cluster wird verworfen"
 
-#: coherent-ligature-engraver.cc:100
+#: coherent-ligature-engraver.cc:111
 #, c-format
 msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
 msgstr "Coherent_ligature_engraver: setze »spacing-increment=0.01«: ptr=%ul"
 
 #. if we get to here, just put everything on one line
-#: constrained-breaking.cc:176 constrained-breaking.cc:193
+#: constrained-breaking.cc:189 constrained-breaking.cc:207
 msgid "cannot find line breaking that satisfies constraints"
 msgstr "es kann kein Zeilenumbruch gefunden werden, der die Bedingungen erfüllen"
 
-#: context-def.cc:130
-#, c-format
-msgid "program has no such type: `%s'"
-msgstr "Das Programm hat keinen solchen Typen: »%s«"
-
-#: context-property.cc:32
+#: context-property.cc:42
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "Symbol-Argumente für \\override und \\revert benötigt"
 
-#: context.cc:139
+#: context.cc:149
 #, c-format
 msgid "cannot find or create new `%s'"
 msgstr "ein neues »%s« kann weder gefunden noch erzeugt werden"
 
-#: context.cc:197
+#: context.cc:207
 #, c-format
 msgid "cannot find or create `%s' called `%s'"
 msgstr "»%s« (»%s« genannt) kann weder gefunden noch erzeugt werden"
 
-#: context.cc:259
+#: context.cc:269
 #, c-format
 msgid "Invalid CreateContext event: Cannot create %s context"
 msgstr "Ungültiges CreateContext-Ereignis: Kontext %s kann nicht erzeugt werden"
 
-#: context.cc:390
+#: context.cc:400
 #, c-format
 msgid "cannot find or create: `%s'"
 msgstr "»%s« kann weder gefunden noch erzeugt werden"
 
-#: custos.cc:77
+#: custos.cc:88
 #, c-format
 msgid "custos `%s' not found"
 msgstr "Custos »%s« nicht gefunden"
 
-#: dispatcher.cc:71
+#: dispatcher.cc:82
 msgid "Event class should be a symbol"
 msgstr "Ereignisklasse sollte ein Symbol sein"
 
-#: dispatcher.cc:78
+#: dispatcher.cc:89
 #, c-format
 msgid "Unknown event class %s"
 msgstr "Unbekannte Ereignisklasse »%s«"
 
-#: dots.cc:37
+#: dots.cc:48
 #, c-format
 msgid "dot `%s' not found"
 msgstr "Punkt »%s« nicht gefunden"
 
-#: dynamic-engraver.cc:186
+#: dynamic-engraver.cc:197
 msgid "cannot find start of (de)crescendo"
 msgstr "Anfang des (De-) Crescendos kann nicht gefunden werden"
 
-#: dynamic-engraver.cc:195
+#: dynamic-engraver.cc:206
 msgid "already have a decrescendo"
 msgstr "Decrescendo bereits vorhanden"
 
-#: dynamic-engraver.cc:197
+#: dynamic-engraver.cc:208
 msgid "already have a crescendo"
 msgstr "Crescendo bereits vorhanden"
 
-#: dynamic-engraver.cc:200
+#: dynamic-engraver.cc:211
 msgid "cresc starts here"
 msgstr "Crescendo beginnt hier"
 
-#: dynamic-engraver.cc:328
+#: dynamic-engraver.cc:339
 msgid "unterminated (de)crescendo"
 msgstr "unbegrenztes (De-) Crescendo"
 
-#: extender-engraver.cc:142 extender-engraver.cc:151
+#: episema-engraver.cc:75
+msgid "already have an episema"
+msgstr "Episema bereits vorhanden"
+
+#: episema-engraver.cc:88
+msgid "cannot find start of episema"
+msgstr "Anfang des Episema kann nicht gefunden werden"
+
+#: episema-engraver.cc:137
+msgid "unterminated episema"
+msgstr "unbegrenztes Episema"
+
+#: extender-engraver.cc:170 extender-engraver.cc:179
 msgid "unterminated extender"
 msgstr "unbegrenzter Textunterstrich"
 
-#: font-config-scheme.cc:140 font-config.cc:57
+#: font-config-scheme.cc:152 font-config.cc:55
 #, c-format
 msgid "failed adding font directory: %s"
 msgstr "Schriftartverzeichnis konnte nicht hinzugefügt werden: %s"
 
-#: font-config-scheme.cc:142 font-config.cc:59
+#: font-config-scheme.cc:154 font-config.cc:57
 #, c-format
 msgid "adding font directory: %s"
 msgstr "Schriftartverzeichnis wird hinzugefügt: %s"
 
-#: font-config-scheme.cc:156
+#: font-config-scheme.cc:168
 #, c-format
 msgid "failed adding font file: %s"
 msgstr "Schriftartdatei konnte nicht hinzugefügt werden: %s"
 
-#: font-config-scheme.cc:158
+#: font-config-scheme.cc:170
 #, c-format
 msgid "adding font file: %s"
 msgstr "Schriftartdatei wird hinzugefügt: %s"
 
-#: font-config.cc:28
+#: font-config.cc:40
 msgid "Initializing FontConfig..."
 msgstr "FontConfig wird initialisiert..."
 
-#: font-config.cc:44
-#, c-format
-msgid "Rebuilding FontConfig cache %s, this may take a while..."
-msgstr "FontConfig-Cache %s wird erneuert. Dies kann eine Weile dauern..."
+#: font-config.cc:61
+msgid "Building font database..."
+msgstr "Schriftartendatenbank erstellen..."
 
-#: font-config.cc:63
-msgid "Building font database."
-msgstr "Schriftartendatenbank aufbauen..."
-
-#: general-scheme.cc:202
+#: general-scheme.cc:305
 msgid "infinity or NaN encountered while converting Real number"
 msgstr "Unendlichkeit oder NaN bei Umwandlung einer Realen Zahl gefunden"
 
-#: general-scheme.cc:203
+#: general-scheme.cc:306
 msgid "setting to zero"
 msgstr "auf Null gesetzt"
 
-#: general-scheme.cc:422 output-ps.scm:63
+#: general-scheme.cc:542 output-ps.scm:48
 msgid "Found infinity or nan in output. Substituting 0.0"
 msgstr "Unendlich oder NaN in Ausgabe gefunden. Wird durch 0.0 ersetzt"
 
-#: glissando-engraver.cc:94
+#: glissando-engraver.cc:105
 msgid "unterminated glissando"
 msgstr "unbegrenztes Glissando."
 
-#: global-context-scheme.cc:85 global-context-scheme.cc:103
+#: global-context-scheme.cc:96 global-context-scheme.cc:114
 msgid "no music found in score"
 msgstr "keine Musik in der Partitur gefunden"
 
-#: global-context-scheme.cc:93
+#: global-context-scheme.cc:104
 msgid "Interpreting music... "
 msgstr "Interpretation der Musik..."
 
-#: global-context-scheme.cc:116
+#: global-context-scheme.cc:127
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "verstrichene Zeit: %.2f Sekunden"
 
-#: gregorian-ligature-engraver.cc:59
+#: gregorian-ligature-engraver.cc:70
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s ignoriert"
 
-#: gregorian-ligature-engraver.cc:64
+#: gregorian-ligature-engraver.cc:75
 #, c-format
 msgid "implied \\%s added"
 msgstr "implizites \\%s hinzugefügt"
 
 #. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:213
+#: gregorian-ligature-engraver.cc:224
 msgid "cannot apply `\\~' on first head of ligature"
 msgstr "»\\~« kann nicht auf erste Note der Ligatur angewendet werden"
 
 #. (pitch == prev_pitch)
-#: gregorian-ligature-engraver.cc:225
+#: gregorian-ligature-engraver.cc:236
 msgid "cannot apply `\\~' on heads with identical pitch"
 msgstr "»\\~« kann nicht auf Noten mit gleicher Tonhöhe angewendet werden"
 
-#: grob-interface.cc:57
+#: grob-interface.cc:68
 #, c-format
 msgid "Unknown interface `%s'"
 msgstr "Unbekannte Schnittstelle »%s«"
 
-#: grob-interface.cc:68
+#: grob-interface.cc:79
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "Grob »%s« hat keine Schnittstelle für Eigenschaft »%s«"
@@ -1512,7 +1762,7 @@ msgstr "%d: %s"
 msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)"
 msgstr "Zyklische Abhängigkeit: Laufende Verarbeitung für #'%s (%s) gefunden"
 
-#: grob.cc:251
+#: grob.cc:286
 msgid "Infinity or NaN encountered"
 msgstr "Unendlichkeit oder NaN angetroffen"
 
@@ -1520,148 +1770,147 @@ msgstr "Unendlichkeit oder NaN angetroffen"
 msgid "decrescendo too small"
 msgstr "Decrescendo zu kurz"
 
-#: horizontal-bracket-engraver.cc:68
+#: horizontal-bracket-engraver.cc:78
 msgid "do not have that many brackets"
 msgstr "so viele Klammern gibt es nicht"
 
-#: horizontal-bracket-engraver.cc:77
+#: horizontal-bracket-engraver.cc:87
 msgid "conflicting note group events"
 msgstr "in Konflikt stehende Notengruppenereignisse"
 
-#: hyphen-engraver.cc:93
+#: hyphen-engraver.cc:104
 msgid "removing unterminated hyphen"
 msgstr "unbegrenzter Bindestrich wird entfernt"
 
-#: hyphen-engraver.cc:107
+#: hyphen-engraver.cc:118
 msgid "unterminated hyphen; removing"
 msgstr "unbegrenzter Bindestrich; entfernt"
 
-#: includable-lexer.cc:53 lily-guile.cc:76 lily-parser-scheme.cc:110
+#: includable-lexer.cc:71 lily-guile.cc:87 lily-parser-scheme.cc:109
 #, c-format
 msgid "cannot find file: `%s'"
 msgstr "Datei »%s« kann nicht gefunden werden"
 
-#: includable-lexer.cc:55 lily-parser-scheme.cc:101
+#: includable-lexer.cc:73 lily-parser-scheme.cc:100
 #, c-format
 msgid "(search path: `%s')"
 msgstr "(Suchpfad: »%s«)"
 
-#: input.cc:112 source-file.cc:173 source-file.cc:188
+#: input.cc:131 source-file.cc:179 source-file.cc:194
 msgid "position unknown"
 msgstr "Position unbekannt"
 
-#: key-signature-interface.cc:74
+#: key-signature-interface.cc:78
 #, c-format
 msgid "No glyph found for alteration: %s"
 msgstr "Kein Glyph für Vorzeichen gefunden: %s"
 
-#: key-signature-interface.cc:84
+#: key-signature-interface.cc:88
 msgid "alteration not found"
 msgstr "Alterierung nicht gefunden"
 
-#: ligature-bracket-engraver.cc:62 ligature-engraver.cc:93
+#: ligature-bracket-engraver.cc:73 ligature-engraver.cc:104
 msgid "cannot find start of ligature"
 msgstr "Anfang der Ligatur kann nicht gefunden werden"
 
-#: ligature-bracket-engraver.cc:75 ligature-engraver.cc:120
+#: ligature-bracket-engraver.cc:86 ligature-engraver.cc:131
 msgid "already have a ligature"
 msgstr "habe bereits eine Ligatur"
 
-#: ligature-engraver.cc:98
+#: ligature-engraver.cc:109
 msgid "no right bound"
 msgstr "keine rechte Begrenzung"
 
-#: ligature-engraver.cc:129
+#: ligature-engraver.cc:140
 msgid "no left bound"
 msgstr "keine linke Begrenzung"
 
-#: ligature-engraver.cc:173
+#: ligature-engraver.cc:185
 msgid "unterminated ligature"
 msgstr "unbegrenzte Ligatur"
 
-#: ligature-engraver.cc:202
+#: ligature-engraver.cc:214
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "Pause wird ignoriert: Ligatur darf keine Pause enthalten"
 
-#: ligature-engraver.cc:203
+#: ligature-engraver.cc:215
 msgid "ligature was started here"
 msgstr "Ligatur wurde hier begonnen"
 
-#: lily-guile.cc:78
+#: lily-guile.cc:89
 #, c-format
 msgid "(load path: `%s')"
 msgstr "(Lade-Pfad: `%s')"
 
-#: lily-guile.cc:428
+#: lily-guile.cc:439
 #, c-format
 msgid "cannot find property type-check for `%s' (%s)."
 msgstr "Eigenschafts-Typprüfung für »%s« (%s) kann nicht gefunden werden."
 
-#: lily-guile.cc:431
+#: lily-guile.cc:442
 msgid "perhaps a typing error?"
 msgstr "vielleicht ein Tippfehler?"
 
-#: lily-guile.cc:438
+#: lily-guile.cc:449
 msgid "doing assignment anyway"
 msgstr "Zuweisung wird trotzdem durchgeführt"
 
-#: lily-guile.cc:450
+#: lily-guile.cc:461
 #, c-format
 msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr "Typprüfung für »%s« gescheitert; Wert »%s« muss vom Typ »%s« sein"
 
-#: lily-lexer.cc:252
+#: lily-lexer.cc:264
 msgid "include files are not allowed in safe mode"
 msgstr "eingefügte Dateien sind im abgesicherten Modus nicht erlaubt"
 
-#: lily-lexer.cc:271
+#: lily-lexer.cc:291
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "Bezeichnername ist ein Schlüsselwort: »%s«"
 
-#: lily-lexer.cc:286
+#: lily-lexer.cc:312
 #, c-format
 msgid "error at EOF: %s"
 msgstr "Fehler am Dateiende (EOF): %s"
 
-#: lily-parser-scheme.cc:30
-#, c-format
-msgid "deprecated function called: %s"
-msgstr "veraltete Funktion aufgerufen: %s"
-
-#: lily-parser-scheme.cc:83
+#: lily-parser-scheme.cc:82
 #, c-format
 msgid "Changing working directory to: `%s'"
 msgstr "Aktuelles Verzeichnis wird zu »%s« geändert"
 
-#: lily-parser-scheme.cc:100
+#: lily-parser-scheme.cc:99
 #, c-format
 msgid "cannot find init file: `%s'"
 msgstr "Init-Datei kann nicht gefunden werden: »%s«"
 
-#: lily-parser-scheme.cc:119
+#: lily-parser-scheme.cc:118
 #, c-format
 msgid "Processing `%s'"
 msgstr "»%s« wird verarbeitet"
 
-#: lily-parser.cc:95
+#: lily-parser-scheme.cc:204
+msgid "ly:parser-parse-string is only valid with a new parser.  Use ly:parser-include-string instead."
+msgstr "ly:parser-parse-string ist nur mit einem neuen Parser gültig.  Anstelle dessen ly:parser-include-string benutzen."
+
+#: lily-parser.cc:106
 msgid "Parsing..."
 msgstr "Analysieren..."
 
-#: lily-parser.cc:123
+#: lily-parser.cc:134
 msgid "braces do not match"
 msgstr "Klammern passen nicht zueinander"
 
-#: lyric-combine-music-iterator.cc:329
+#: lyric-combine-music-iterator.cc:337
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "Stimme kann nicht gefunden werden: »%s«"
 
-#: lyric-engraver.cc:162
+#: lyric-engraver.cc:175
 msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
 msgstr "Textsilbe hat keine Note. \\lyricsto oder associatedVoice verwenden."
 
-#: main.cc:97
+#: main.cc:109
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -1674,7 +1923,7 @@ msgstr ""
 "Bedingungen weitergeben. Rufen Sie »%s --warranty« für weitere\n"
 "Informationen auf.\n"
 
-#: main.cc:103
+#: main.cc:115
 msgid ""
 "    This program is free software; you can redistribute it and/or\n"
 "modify it under the terms of the GNU General Public License version 2\n"
@@ -1705,11 +1954,11 @@ msgstr ""
 "Sie bitte an die Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 
-#: main.cc:134
+#: main.cc:146
 msgid "SYM[=VAL]"
 msgstr "SYM[=WERT]"
 
-#: main.cc:135
+#: main.cc:147
 msgid ""
 "set Scheme option SYM to VAL (default: #t).\n"
 "Use -dhelp for help."
@@ -1717,59 +1966,59 @@ msgstr ""
 "Scheme-Option SYM auf WERT setzen (Vorgabe: #t).\n"
 "-dhelp für Hilfe verwenden."
 
-#: main.cc:138
+#: main.cc:150
 msgid "EXPR"
 msgstr "AUSD"
 
-#: main.cc:138
+#: main.cc:150
 msgid "evaluate scheme code"
 msgstr "Scheme-Code auswerten"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:141
+#: main.cc:153
 msgid "FORMATs"
 msgstr "FORMATe"
 
-#: main.cc:141
+#: main.cc:153
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr "dump FORMAT,... Auch als separate Optionen:"
 
-#: main.cc:142
+#: main.cc:154
 msgid "generate PDF (default)"
 msgstr "PDF erzeugen (Standard)"
 
-#: main.cc:143
+#: main.cc:155
 msgid "generate PNG"
 msgstr "PNG erzeugen"
 
-#: main.cc:144
+#: main.cc:156
 msgid "generate PostScript"
 msgstr "PostScript erzeugen"
 
-#: main.cc:146
+#: main.cc:158
 msgid "FIELD"
 msgstr "FELD"
 
-#: main.cc:146
+#: main.cc:158
 msgid ""
 "dump header field FIELD to file\n"
 "named BASENAME.FIELD"
 msgstr "Header-Feld FELD in Datei BASISNAME.FELD schreiben"
 
-#: main.cc:148
+#: main.cc:160
 msgid "add DIR to search path"
 msgstr "VERZ zum Suchpfad hinzufügen"
 
-#: main.cc:149
+#: main.cc:161
 msgid "use FILE as init file"
 msgstr "DATEI als Anfangsdatei verwenden"
 
-#: main.cc:151
+#: main.cc:163
 msgid "USER, GROUP, JAIL, DIR"
 msgstr "BENUTZER,GRUPPE,KERKER,VERZ"
 
-#: main.cc:151
+#: main.cc:163
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
@@ -1777,15 +2026,16 @@ msgstr ""
 "chroot in KERKER, wird BENUTZER:GRUPPE\n"
 "und cd in VERZ"
 
-#: main.cc:154
+#: main.cc:166
 msgid "write output to FILE (suffix will be added)"
 msgstr "Ausgabe in DATEI schreiben (Endung wird hinzugefügt)"
 
-#: main.cc:155
+#: main.cc:167
 msgid "relocate using directory of lilypond program"
 msgstr "wiederfinden mit Hilfe des Lilypond-Programmverzeichnisses"
 
-#: main.cc:221
+#. Do not update the copyright years here, run `make grand-replace'
+#: main.cc:238
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1795,115 +2045,112 @@ msgstr ""
 "%s und anderen."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:249
+#: main.cc:265
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Aufruf: %s [OPTION]... DATEI..."
 
-#: main.cc:251
-#, c-format
+#: main.cc:267
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Musiksatz und/oder MIDI aus DATEI erzeugen."
 
-#: main.cc:253
-#, c-format
+#: main.cc:269
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond erzeugt ansprechenden Notensatz."
 
-#: main.cc:255
+#: main.cc:271
 #, c-format
 msgid "For more information, see %s"
 msgstr "Für weitere Informationen siehe %s"
 
-#: main.cc:257
-#, c-format
+#: main.cc:273
 msgid "Options:"
 msgstr "Optionen:"
 
-#: main.cc:311
+#: main.cc:327
 #, c-format
 msgid "expected %d arguments with jail, found: %u"
 msgstr "%d Argumente mit Kerker erwartet, %u gefunden"
 
-#: main.cc:325
+#: main.cc:341
 #, c-format
 msgid "no such user: %s"
 msgstr "kein solcher Benutzer: %s"
 
-#: main.cc:327
+#: main.cc:343
 #, c-format
 msgid "cannot get user id from user name: %s: %s"
 msgstr "Benutzer-ID von Benutzername kann nicht gefunden werden: %s: %s"
 
-#: main.cc:342
+#: main.cc:358
 #, c-format
 msgid "no such group: %s"
 msgstr "keine solche Gruppe: %s"
 
-#: main.cc:344
+#: main.cc:360
 #, c-format
 msgid "cannot get group id from group name: %s: %s"
 msgstr "Gruppen-ID kann nicht von Gruppenname ermittelt werden: %s: %s"
 
-#: main.cc:352
+#: main.cc:368
 #, c-format
 msgid "cannot chroot to: %s: %s"
 msgstr "kein chroot möglich nach: %s: %s"
 
-#: main.cc:359
+#: main.cc:375
 #, c-format
 msgid "cannot change group id to: %d: %s"
 msgstr "Gruppen-ID kann nicht geändert werden in: %d: %s"
 
-#: main.cc:365
+#: main.cc:381
 #, c-format
 msgid "cannot change user id to: %d: %s"
 msgstr "Benutzer-ID kann nicht geändert werden in: %d: %s"
 
-#: main.cc:371
+#: main.cc:387
 #, c-format
 msgid "cannot change working directory to: %s: %s"
 msgstr "aktuelles Verzeichnis kann nicht geändert werden in: %s: %s"
 
-#: main.cc:611
+#: main.cc:628
 #, c-format
 msgid "exception caught: %s"
 msgstr "Ausnahme gefangen: %s"
 
 #. FIXME: constant error message.
-#: mark-engraver.cc:129
+#: mark-engraver.cc:157
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark muss Ganzzahlwert haben"
 
-#: mark-engraver.cc:135
+#: mark-engraver.cc:163
 msgid "mark label must be a markup object"
 msgstr "Marke muss ein Textbeschriftungsobjekt sein"
 
-#: mensural-ligature-engraver.cc:85
+#: mensural-ligature-engraver.cc:96
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "Ligatur mit weniger als 2 Notenköpfen -> überspringen"
 
-#: mensural-ligature-engraver.cc:112
+#: mensural-ligature-engraver.cc:123
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "Tonhöhe des Ligaturelements kann nicht ermittelt werden -> überspringen"
 
-#: mensural-ligature-engraver.cc:126
+#: mensural-ligature-engraver.cc:137
 msgid "single note ligature - skipping"
 msgstr "Ligatur mit einer einzelnen Note -> überspringen"
 
-#: mensural-ligature-engraver.cc:138
+#: mensural-ligature-engraver.cc:149
 msgid "prime interval within ligature -> skipping"
 msgstr "Prime in der Ligatur -> überspringen"
 
-#: mensural-ligature-engraver.cc:150
+#: mensural-ligature-engraver.cc:161
 msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
 msgstr "Mensuralligatur: Dauer weder Mx, L, B noch S -> überspringen"
 
-#: mensural-ligature-engraver.cc:198
+#: mensural-ligature-engraver.cc:209
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "Semibrevis muss von einem weiteren gefolgt werden -> überspringen"
 
-#: mensural-ligature-engraver.cc:209
+#: mensural-ligature-engraver.cc:220
 msgid ""
 "semibreves can only appear at the beginning of a ligature,\n"
 "and there may be only zero or two of them"
@@ -1911,7 +2158,7 @@ msgstr ""
 "Semibrevis kann nur am Anfang einer Ligatur auftreten,\n"
 "und es können nur null oder zwei davon auftreten"
 
-#: mensural-ligature-engraver.cc:236
+#: mensural-ligature-engraver.cc:247
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
@@ -1923,56 +2170,60 @@ msgstr ""
 "muss die vorletzte Note eine weitere sein,\n"
 "oder die Ligatur muss LB oder SSB sein"
 
-#: mensural-ligature-engraver.cc:356
+#: mensural-ligature-engraver.cc:367
 msgid "unexpected case fall-through"
 msgstr "unerwarteter case-Ausgang"
 
-#: mensural-ligature.cc:141
+#: mensural-ligature.cc:152
 msgid "Mensural_ligature: unexpected case fall-through"
 msgstr "Mensural_ligature: unerwarteter case-Ausgang"
 
-#: mensural-ligature.cc:192
+#: mensural-ligature.cc:203
 msgid "Mensural_ligature: (join_right == 0)"
 msgstr "Mensural_ligature: (join_right == 0)"
 
-#: midi-item.cc:81
+#: midi-item.cc:92
 #, c-format
 msgid "no such MIDI instrument: `%s'"
 msgstr "kein MIDI-Instrument: `%s'"
 
-#: midi-stream.cc:28
+#: midi-stream.cc:39
 #, c-format
 msgid "cannot open for write: %s: %s"
 msgstr "Es kann nicht zum Schreiben geöffnet werden: %s: %s"
 
-#: midi-stream.cc:44
+#: midi-stream.cc:55
 #, c-format
 msgid "cannot write to file: `%s'"
 msgstr "Es kann nicht in Datei geschrieben werden: »%s«"
 
-#: minimal-page-breaking.cc:38 paper-score.cc:105
+#: minimal-page-breaking.cc:40 paper-score.cc:122
 msgid "Calculating line breaks..."
 msgstr "Zeilenumbrüche werden berechnet..."
 
-#: minimal-page-breaking.cc:42 layout-page-layout.scm:463
+#: minimal-page-breaking.cc:44
 msgid "Calculating page breaks..."
 msgstr "Zeilenumbrüche werden berechnet..."
 
-#: music-iterator.cc:171
+#: music-iterator.cc:182
 msgid "Sending non-event to context"
 msgstr "Nicht-Ereignis wird an Kontext gesendet"
 
-#: music.cc:140
+#: music.cc:151
 #, c-format
 msgid "octave check failed; expected \"%s\", found: \"%s\""
 msgstr "Oktavenüberprüfung gescheitert; »%s« erwartet, »%s« gefunden"
 
-#: music.cc:203
+#: music.cc:219
+msgid "(normalized pitch)"
+msgstr "(normalisierte Tonhöhe)"
+
+#: music.cc:223
 #, c-format
-msgid "transposition by %s makes alteration larger than double"
-msgstr "Transponieren um %s erzeugt Vorzeichen größer als ein doppeltes"
+msgid "Transposing %s by %s makes alteration larger than double"
+msgstr "Transponieren von %s um %s erzeugt mehr als ein Doppel-Vorzeichen"
 
-#: new-dynamic-engraver.cc:129
+#: new-dynamic-engraver.cc:142
 #, c-format
 msgid ""
 "unknown crescendo style: %s\n"
@@ -1981,134 +2232,182 @@ msgstr ""
 "unbekannter crescendo-Stil: %s\n"
 "wird als spitze Klammer gesetzt."
 
-#: new-fingering-engraver.cc:96
+#: new-dynamic-engraver.cc:200
+#, c-format
+msgid "unterminated %s"
+msgstr "unbegrenzt: »%s«"
+
+#: new-fingering-engraver.cc:106
 msgid "cannot add text scripts to individual note heads"
 msgstr "es kann kein Text zu einzelnen Notenköpfen hinzugefügt werden"
 
-#: new-fingering-engraver.cc:239
+#: new-fingering-engraver.cc:250
 msgid "no placement found for fingerings"
 msgstr "Keine Platzierung für Fingersatz gefunden"
 
-#: new-fingering-engraver.cc:240
+#: new-fingering-engraver.cc:251
 msgid "placing below"
 msgstr "Platzierung darunter"
 
-#: note-collision.cc:484
+#: note-collision.cc:497
 msgid "ignoring too many clashing note columns"
 msgstr "zu viele kollidierende Notenspalten werden ignoriert"
 
-#: note-column.cc:124
+#: note-column.cc:135
 msgid "cannot have note heads and rests together on a stem"
 msgstr "Notenköpfe und Pausen können nicht zusammen an einem Hals auftreten"
 
-#: note-head.cc:63
+#: note-head.cc:76
 #, c-format
 msgid "none of note heads `%s' or `%s' found"
 msgstr "Keinen der Notenköpfe »%s« und »%s« gefunden"
 
-#: note-heads-engraver.cc:64
+#: note-heads-engraver.cc:76
 msgid "NoteEvent without pitch"
 msgstr "NoteEvent ohne Tonhöhe"
 
-#: open-type-font.cc:33
+#: open-type-font.cc:44
 #, c-format
 msgid "cannot allocate %lu bytes"
 msgstr "es können keine %lu Bytes angefordert werden"
 
-#: open-type-font.cc:37
+#: open-type-font.cc:48
 #, c-format
 msgid "cannot load font table: %s"
 msgstr "Schriftarttabelle kann nicht geladen werden: %s"
 
-#: open-type-font.cc:42
+#: open-type-font.cc:53
 #, c-format
 msgid "Free type error: %s"
 msgstr "Freetype-Fehler: %s"
 
-#: open-type-font.cc:100
+#: open-type-font.cc:111
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "nicht unterstütztes Schriftartformat: %s"
 
-#: open-type-font.cc:102
+#: open-type-font.cc:113
 #, c-format
 msgid "error reading font file %s: %s"
 msgstr "Fehler beim Lesen der Schriftartdatei: %s: %s"
 
-#: open-type-font.cc:177
+#: open-type-font.cc:188
 #, c-format
 msgid "FT_Get_Glyph_Name () Freetype error: %s"
 msgstr "FT_Get_Glyph_Name() Freetype-Fehler: %s"
 
-#: open-type-font.cc:302 pango-font.cc:167
+#: open-type-font.cc:250
+msgid "Invalid index for character"
+msgstr "Ungültiger Index für Zeichen"
+
+#: open-type-font.cc:319 pango-font.cc:187
 #, c-format
 msgid "FT_Get_Glyph_Name () error: %s"
 msgstr "FT_Get_Glyph_Name() Fehler: %s"
 
 #. find out the ideal number of pages
-#: optimal-page-breaking.cc:56
+#: optimal-page-breaking.cc:60
 msgid "Finding the ideal number of pages..."
 msgstr "Ideale Seitenanzahl wird gefunden..."
 
-#: optimal-page-breaking.cc:78
+#: optimal-page-breaking.cc:87
 msgid "Fitting music on 1 page..."
 msgstr "Musik wird auf eine Seite angepasst..."
 
-#: optimal-page-breaking.cc:80
+#: optimal-page-breaking.cc:89
 #, c-format
 msgid "Fitting music on %d pages..."
 msgstr "Musik wird auf %d Seiten angepasst..."
 
-#: optimal-page-breaking.cc:82
+#: optimal-page-breaking.cc:91
 #, c-format
 msgid "Fitting music on %d or %d pages..."
 msgstr "Musik wird auf %d oder %d Seiten angepasst..."
 
-#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
-#: paper-score.cc:146
+#: optimal-page-breaking.cc:101 optimal-page-breaking.cc:155
+#, c-format
+msgid "trying %d systems"
+msgstr "versuche %d Systeme"
+
+#: optimal-page-breaking.cc:120 optimal-page-breaking.cc:183
+#, c-format
+msgid "best score for this sys-count: %f"
+msgstr "bester Score für dieses sys-count: %f"
+
+#: optimal-page-breaking.cc:190 page-turn-page-breaking.cc:248
+#: paper-score.cc:163
 msgid "Drawing systems..."
 msgstr "Systeme erstellen..."
 
-#: page-turn-page-breaking.cc:146
+#: output-def.cc:235
+msgid "margins do not fit with line-width, setting default values"
+msgstr "Ränder passen nicht zur Zeilenbreite, setze Standardwerte"
+
+#: output-def.cc:242
+msgid "systems run off the page due to improper paper settings, setting default values"
+msgstr "Systeme befinden sich außerhalb der Seite wegen falschen paper-Einstellungen, setze Standardwerte ein"
+
+#: page-breaking.cc:194
+msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
+msgstr "ignoriere min-systems-per-page und max-systems-per-page weil systems-per-page definiert wurde"
+
+#: page-breaking.cc:199
+msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
+msgstr "min-systems-per-page ist größer als max-systems-per-page, beide Werte werden ignoriert"
+
+#: page-layout-problem.cc:315
+#, c-format
+msgid "couldn't fit music on page: overflow is %f"
+msgstr "Noten passen nicht auf die Seite: Überhang ist %f"
+
+#: page-layout-problem.cc:317
+msgid "compressing music to fit"
+msgstr "Noten werden komprimiert um zu passen"
+
+#: page-layout-problem.cc:733
+msgid "staff-affinities should only decrease"
+msgstr "staff-affinities sollten nur abnehmen"
+
+#: page-turn-page-breaking.cc:168
 #, c-format
 msgid "page-turn-page-breaking: breaking from %d to %d"
 msgstr "Seitenwechsel-Seitenumbruch: Umbruch von %d zu %d"
 
-#: page-turn-page-breaking.cc:195
+#: page-turn-page-breaking.cc:217
 msgid "cannot fit the first page turn onto a single page.  Consider setting first-page-number to an even number."
 msgstr "Erster Seitenwechsel kann nicht auf einzelne Seite gelegt werden. In Betracht zu ziehen wäre das Setzen von first-page-number auf gerade Zahl."
 
-#: page-turn-page-breaking.cc:208
+#: page-turn-page-breaking.cc:230
 #, c-format
 msgid "Calculating page and line breaks (%d possible page breaks)..."
 msgstr "Seiten- und Zeilenumbrüche werden berechnet (%d mögliche Seitenumbrüche)..."
 
-#: page-turn-page-breaking.cc:275
+#: page-turn-page-breaking.cc:297
 #, c-format
 msgid "break starting at page %d"
 msgstr "Umbruch beginnt auf Seite %d"
 
-#: page-turn-page-breaking.cc:276
+#: page-turn-page-breaking.cc:298
 #, c-format
 msgid "\tdemerits: %f"
 msgstr "Optimale Bewertung: %f"
 
-#: page-turn-page-breaking.cc:277
+#: page-turn-page-breaking.cc:299
 #, c-format
 msgid "\tsystem count: %d"
 msgstr "\tSystemanzahl: %d"
 
-#: page-turn-page-breaking.cc:278
+#: page-turn-page-breaking.cc:300
 #, c-format
 msgid "\tpage count: %d"
 msgstr "\tSeitenanzahl: %d"
 
-#: page-turn-page-breaking.cc:279
+#: page-turn-page-breaking.cc:301
 #, c-format
 msgid "\tprevious break: %d"
 msgstr "\tvorheriger Umbruch: %d"
 
-#: pango-font.cc:184
+#: pango-font.cc:204
 #, c-format
 msgid ""
 "Glyph has no name, but font supports glyph naming.\n"
@@ -2117,138 +2416,152 @@ msgstr ""
 "Glyph hat keinen Namen, aber Zeichensatz unterstützt Glyphnamen.\n"
 "Glyph U+%0X wird übersprungen, Datei %s"
 
-#: pango-font.cc:229
+#: pango-font.cc:241
 #, c-format
 msgid "no PostScript font name for font `%s'"
 msgstr "Kein PostScript-Schriftartname für Schriftart: »%s«"
 
-#: pango-font.cc:277
+#: pango-font.cc:290
 msgid "FreeType face has no PostScript font name"
 msgstr "FreeType-Schriftart hat keinen PostScript-Schriftartnamen"
 
-#: paper-column-engraver.cc:221
+#: paper-book.cc:214
+#, c-format
+msgid "program option -dprint-pages not supported by backend `%s'"
+msgstr "Programmoption -dprint-pages nicht von Backend »%s« unterstützt"
+
+#: paper-book.cc:233
+#, c-format
+msgid "program option -dpreview not supported by backend `%s'"
+msgstr "Programmoption -dpreview nicht von »%s« unterstützt"
+
+#: paper-column-engraver.cc:233
 msgid "forced break was overridden by some other event, should you be using bar checks?"
 msgstr "erzwungener Umbruch war durch anderes Ereignis aufgehoben, sollten Taktüberprüfungen vorgenommen werden?"
 
-#: paper-outputter-scheme.cc:30
+#: paper-outputter-scheme.cc:41
 #, c-format
 msgid "Layout output to `%s'..."
 msgstr "Layout nach »%s« ausgeben..."
 
-#: paper-score.cc:118
+#: paper-score.cc:135
 #, c-format
 msgid "Element count %d (spanners %d) "
 msgstr "Elementanzahl: %d (Klammern: %d)"
 
-#: paper-score.cc:122
+#: paper-score.cc:139
 msgid "Preprocessing graphical objects..."
 msgstr "Vorverarbeitung der grafischen Elemente..."
 
-#: parse-scm.cc:93
+#: parse-scm.cc:101
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck"
 
-#: percent-repeat-engraver.cc:202
+#: partial-iterator.cc:45
+msgid "trying to use \\partial after the start of a piece"
+msgstr "versuche, \\partial nach dem Beginn eines Stückes einzusetzen"
+
+#: percent-repeat-engraver.cc:213
 msgid "unterminated percent repeat"
 msgstr "unbegrenzte Prozentwiederholung"
 
-#: performance.cc:43
+#: performance.cc:54
 msgid "Track..."
 msgstr "Spur..."
 
-#: performance.cc:72
+#: performance.cc:83
 msgid "MIDI channel wrapped around"
 msgstr "MIDI-Kanal zurückgesprungen"
 
-#: performance.cc:73
+#: performance.cc:84
 msgid "remapping modulo 16"
 msgstr "modulo 16 neu zuordnen"
 
-#: performance.cc:100
+#: performance.cc:111
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "MIDI-Ausgabe nach »%s«..."
 
-#: phrasing-slur-engraver.cc:146
+#: phrasing-slur-engraver.cc:157
 msgid "unterminated phrasing slur"
 msgstr "nicht beendeter Phrasierungsbogen"
 
-#: piano-pedal-engraver.cc:287
+#: piano-pedal-engraver.cc:298
 #, c-format
 msgid "expect 3 strings for piano pedals, found: %ld"
 msgstr "3 Textketten für Piano-Pedal erwartet, %ld gefunden"
 
-#: piano-pedal-engraver.cc:302 piano-pedal-engraver.cc:313
-#: piano-pedal-performer.cc:93
+#: piano-pedal-engraver.cc:313 piano-pedal-engraver.cc:324
+#: piano-pedal-performer.cc:104
 #, c-format
 msgid "cannot find start of piano pedal: `%s'"
 msgstr "es kann kein Anfang für Piano-Pedal gefunden werden: »%s«"
 
-#: piano-pedal-engraver.cc:348
+#: piano-pedal-engraver.cc:359
 #, c-format
 msgid "cannot find start of piano pedal bracket: `%s'"
 msgstr "es kann kein Anfang für Piano-Pedal-Klammer gefunden werden: »%s«"
 
-#: program-option-scheme.cc:215
+#: program-option-scheme.cc:237
 #, c-format
 msgid "no such internal option: %s"
 msgstr "keine solche interne Option: %s"
 
-#: property-iterator.cc:74
+#: property-iterator.cc:85
 #, c-format
 msgid "not a grob name, `%s'"
 msgstr "Kein Name für grafische Objekte (grob): »%s«"
 
-#: relative-octave-check.cc:38
+#: relative-octave-check.cc:49
 msgid "Failed octave check, got: "
 msgstr "Oktavprüfung gescheitert, Rückgabe: "
 
-#: relocate.cc:44
+#: relocate.cc:54
 #, c-format
 msgid "Setting %s to %s"
 msgstr "%s wird auf %s gesetzt"
 
-#: relocate.cc:64
+#: relocate.cc:74
 #, c-format
 msgid "no such file: %s for %s"
 msgstr "keine solche Datei: %s für %s"
 
-#: relocate.cc:74 relocate.cc:92
+#: relocate.cc:84 relocate.cc:102
 #, c-format
 msgid "no such directory: %s for %s"
 msgstr "kein solches Verzeichnis: %s für %s"
 
-#: relocate.cc:84
+#: relocate.cc:94
 #, c-format
 msgid "%s=%s (prepend)\n"
 msgstr "%s=%s (voranstellen)\n"
 
-#: relocate.cc:114
+#: relocate.cc:124
 #, c-format
 msgid "not relocating, no %s/ or current/ found under %s"
 msgstr "keine Verlagerung, kein %s/ oder current/ unter %s gefunden"
 
-#: relocate.cc:125
+#: relocate.cc:135
 #, c-format
 msgid "Relocation: compile datadir=%s, new datadir=%s"
 msgstr "Verlagerung: Kompilier-Datenverzeichnis=%s, neues Datenverzeichnis=%s"
 
-#: relocate.cc:138
+#: relocate.cc:148
 #, c-format
 msgid "Relocation: framework_prefix=%s"
 msgstr "Verlagerung: framework_prefix=%s"
 
-#: relocate.cc:179
+#: relocate.cc:189
 #, c-format
 msgid "Relocation: is absolute: argv0=%s"
 msgstr "Verlagerung: ist absolut: argv0=%s"
 
-#: relocate.cc:186
+#: relocate.cc:196
 #, c-format
 msgid "Relocation: from cwd: argv0=%s"
 msgstr "Verlagerung: von cwd: argv0=%s"
 
-#: relocate.cc:195
+#: relocate.cc:205
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
@@ -2257,155 +2570,164 @@ msgstr ""
 "Verlagerung: von PATH=%s\n"
 "argv0=%s"
 
-#: relocate.cc:229
+#: relocate.cc:239
 msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
 msgstr "LILYPONDPREFIX is veraltet, stattdessen LILYPOND_DATADIR verwenden"
 
-#: relocate.cc:356
+#: relocate.cc:366
 #, c-format
 msgid "Relocation file: %s"
 msgstr "Verlagerungsdatei: %s"
 
-#: relocate.cc:392
+#: relocate.cc:372 source-file.cc:65
+#, c-format
+msgid "cannot open file: `%s'"
+msgstr "Datei kann nicht geöffnet werden: »%s«"
+
+#: relocate.cc:402
 #, c-format
 msgid "Unknown relocation command %s"
 msgstr "Unbekannter Verlagerungsbefehl %s"
 
-#: rest-collision.cc:145
+#: rest-collision-engraver.cc:70
+msgid "rhythmic head is not part of a rhythmic column"
+msgstr "der rhythmische Kopf gehört nicht zu einer rhythmischen Kolumne"
+
+#: rest-collision.cc:146
 msgid "cannot resolve rest collision: rest direction not set"
 msgstr "Zusammenstoß von Pausen kann nicht aufgelöst werden: Richtung von Pausen nicht gesetzt"
 
-#: rest-collision.cc:159 rest-collision.cc:204
+#: rest-collision.cc:160 rest-collision.cc:205
 msgid "too many colliding rests"
 msgstr "zu viele kollidierende Pausen"
 
-#: rest.cc:148
+#: rest.cc:159
 #, c-format
 msgid "rest `%s' not found"
 msgstr "Pause »%s« nicht gefunden"
 
-#: score-engraver.cc:67
+#: score-engraver.cc:78
 #, c-format
 msgid "cannot find `%s'"
 msgstr "»%s« kann nicht gefunden werden"
 
-#: score-engraver.cc:69
+#: score-engraver.cc:80
 msgid "Music font has not been installed properly."
 msgstr "Musik-Schriftart wurde nicht ordnungsgemäß installiert."
 
-#: score-engraver.cc:71
+#: score-engraver.cc:82
 #, c-format
 msgid "Search path `%s'"
 msgstr "Suchpfad »%s«"
 
-#: score-engraver.cc:73
+#: score-engraver.cc:84
 msgid "Aborting"
 msgstr "Abbruch"
 
-#: score.cc:167
+#: score.cc:178
 msgid "already have music in score"
 msgstr "es sind bereits Noten in der Partitur"
 
-#: score.cc:168
+#: score.cc:179
 msgid "this is the previous music"
 msgstr "Dies sind die vorhergehenden Noten"
 
-#: score.cc:173
+#: score.cc:184
 msgid "errors found, ignoring music expression"
 msgstr "Fehler gefunden, musikalischer Ausdruck wird ignoriert"
 
 #. FIXME:
-#: script-engraver.cc:102
-msgid "do not know how to interpret articulation: "
-msgstr "Interpretation für Artikulation unbekannt: "
+#: script-engraver.cc:113
+msgid "do not know how to interpret articulation:"
+msgstr "Interpretation für Artikulation unbekannt:"
 
-#: script-engraver.cc:103
-msgid "scheme encoding: "
-msgstr "Scheme-Kodierung: "
+#: script-engraver.cc:114
+msgid " scheme encoding: "
+msgstr " Scheme-Kodierung: "
 
-#: slur-engraver.cc:82
+#: slur-engraver.cc:93
 #, c-format
 msgid "direction of %s invalid: %d"
 msgstr "Richtung von %s ungültig: %d"
 
-#: slur-engraver.cc:151
+#: slur-engraver.cc:162
 msgid "unterminated slur"
 msgstr "unbegrenzter Legatobogen"
 
-#: slur-engraver.cc:163
+#: slur-engraver.cc:174
 msgid "cannot end slur"
 msgstr "Legatobogen kann nicht beendet werden"
 
-#: slur.cc:359
+#: slur.cc:369
 #, c-format
 msgid "Ignoring grob for slur: %s. avoid-slur not set?"
 msgstr "Grob für Legatobogen wird ignoriert: %s. avoid-slur nicht gesetzt?"
 
-#: source-file.cc:79
+#: source-file.cc:85
 #, c-format
 msgid "expected to read %d characters, got %d"
 msgstr "%d Zeichen erwartet, %d erhalten"
 
-#: spaceable-grob.cc:83
+#: spaceable-grob.cc:94
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "Kein (dynamischer) Abstand zwischen Spalte %d und Nachfolger"
 
-#: staff-symbol-engraver.cc:62
-msgid "staff-span event has no direction"
-msgstr "Systemabstandsereignis hat keine Richtung"
-
-#: stem-engraver.cc:92
+#: stem-engraver.cc:103
 msgid "tremolo duration is too long"
 msgstr "Tremolodauer ist zu lang"
 
 #. FIXME:
-#: stem-engraver.cc:129
+#: stem-engraver.cc:140
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "Notenkopf wird zu inkompatiblem Hals (Typ = %d) hinzugefügt"
 
-#: stem-engraver.cc:131
+#: stem-engraver.cc:142
 msgid "maybe input should specify polyphonic voices"
 msgstr "vielleicht sollte die Eingabe mehrere Stimmen erstellen"
 
-#: stem.cc:105
+#: stem.cc:116
 msgid "weird stem size, check for narrow beams"
 msgstr "Eigenartige Notenhalslänge; auf enge Balken überprüfen"
 
-#: stem.cc:623
+#: stem.cc:642
 #, c-format
 msgid "flag `%s' not found"
 msgstr "Fähnchen »%s« nicht gefunden"
 
-#: stem.cc:639
+#: stem.cc:658
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "Fähnchenstrich »%s« nicht gefunden"
 
-#: system.cc:178
+#: system.cc:197
 #, c-format
-msgid "Element count %d."
-msgstr "Elementanzahl: %d."
+msgid "Element count %d"
+msgstr "Elementanzahl %d."
 
-#: system.cc:270
+#: system.cc:289
 #, c-format
 msgid "Grob count %d"
 msgstr "Anzahl der grafischen Objekte (grob): %d"
 
-#: text-spanner-engraver.cc:62
+#: text-spanner-engraver.cc:73
 msgid "cannot find start of text spanner"
 msgstr "Anfang der Textklammer kann nicht gefunden werden"
 
-#: text-spanner-engraver.cc:75
+#: text-spanner-engraver.cc:86
 msgid "already have a text spanner"
 msgstr "Textklammer bereits vorhanden"
 
-#: text-spanner-engraver.cc:121
+#: text-spanner-engraver.cc:132
 msgid "unterminated text spanner"
 msgstr "unbegrenzte Textklammer"
 
-#: tie-engraver.cc:262
+#: tie-engraver.cc:116
+msgid "unterminated tie"
+msgstr "unbegrenzter Bindebogen"
+
+#: tie-engraver.cc:312
 msgid "lonely tie"
 msgstr "einsamer Bindebogen"
 
@@ -2414,353 +2736,381 @@ msgstr "einsamer Bindebogen"
 #.
 #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
 #.
-#: time-signature-engraver.cc:64
+#: time-signature-engraver.cc:75
 #, c-format
 msgid "strange time signature found: %d/%d"
 msgstr "seltsame Taktart gefunden: %d/%d"
 
 #. If there is no such symbol, we default to the numbered style.
 #. (Here really with a warning!)
-#: time-signature.cc:83
+#: time-signature.cc:94
 #, c-format
 msgid "time signature symbol `%s' not found; reverting to numbered style"
 msgstr "Taktart-Symbol »%s« nicht gefunden; wird in nummerierten Stil umgewandelt"
 
-#: translator-ctors.cc:53
+#: translator-ctors.cc:65
 #, c-format
 msgid "unknown translator: `%s'"
 msgstr "unbekannter Übersetzer: »%s«"
 
-#: translator-group-ctors.cc:29
+#: translator-group-ctors.cc:40
 #, c-format
 msgid "fatal error. Couldn't find type: %s"
 msgstr "schwerwiegender Fehler. Typ konnte nicht gefunden werden: %s"
 
-#: translator-group.cc:146
+#: translator-group.cc:188
 #, c-format
 msgid "cannot find: `%s'"
 msgstr "»%s« kann nicht gefunden werden"
 
-#: translator.cc:347
+#: translator.cc:359
 #, c-format
 msgid "Two simultaneous %s events, junking this one"
 msgstr "Zwei gleichzeitige %s-Ereignisse, dieses wird verworfen"
 
-#: translator.cc:348
+#: translator.cc:360
 #, c-format
 msgid "Previous %s event here"
 msgstr "Vorheriges %s-Ereignis hier"
 
-#: trill-spanner-engraver.cc:85
-msgid "cannot find start of trill spanner"
-msgstr "Anfang der Trillerklammer kann nicht gefunden werden"
+#: ttf.cc:481 ttf.cc:530
+#, c-format
+msgid "font index %d too large for font `%s', using index 0"
+msgstr "Font-Intex %d zu groß für Font »%s«, benutze Index 0"
 
-#: trill-spanner-engraver.cc:98
-msgid "already have a trill spanner"
-msgstr "Trillerklammer bereits aktiv"
+#: ttf.cc:513 ttf.cc:565
+msgid "font index must be non-negative, using index 0"
+msgstr "font-index muss nicht-negativ sein, benutze Index 0"
 
-#: tuplet-engraver.cc:96
+#: tuplet-engraver.cc:107
 msgid "No tuplet to end"
 msgstr "Keine rhythmische Gruppe zu beenden"
 
-#: vaticana-ligature-engraver.cc:389
+#: vaticana-ligature-engraver.cc:400
 #, c-format
-msgid "ignored prefix (es) `%s' of this head according to restrictions of the selected ligature style"
-msgstr "Vorzeichen (es) »%s« dieses Kopfes gemäß den Einschränkungen des ausgewählten Ligaturstils ignoriert"
+msgid "ignored prefix(es) `%s' of this head according to restrictions of the selected ligature style"
+msgstr "Präfix(e) »%s« dieses Kopfes gemäß den Einschränkungen des ausgewählten Ligaturstils ignoriert"
 
-#: vaticana-ligature-engraver.cc:718
+#: vaticana-ligature-engraver.cc:736
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
 msgstr "Vaticana_ligature_engraver: setzen »spacing-increment = %f«: ptr=%ul"
 
-#: vaticana-ligature.cc:84
+#: vaticana-ligature.cc:95
 msgid "flexa-height undefined; assuming 0"
 msgstr "flexa-Höhe nicht definiert: 0 angenommen"
 
-#: vaticana-ligature.cc:89
+#: vaticana-ligature.cc:100
 msgid "ascending vaticana style flexa"
 msgstr "aufsteigender Vaticana-Stil flexa"
 
-#: vaticana-ligature.cc:177
+#: vaticana-ligature.cc:188
 msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: nichts zusammengefügt (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:100
+#: volta-engraver.cc:111
 msgid "cannot end volta spanner"
 msgstr "Volta-Klammer kann nicht beendet werden"
 
-#: volta-engraver.cc:110
+#: volta-engraver.cc:121
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "Wiederholungsklammer bereits vorhanden, wird vorzeitig beendet"
 
-#: volta-engraver.cc:114
+#: volta-engraver.cc:125
 msgid "also already have an ended spanner"
 msgstr "endende Textklammer auch bereits vorhanden"
 
-#: volta-engraver.cc:115
+#: volta-engraver.cc:126
 msgid "giving up"
 msgstr "aufgeben"
 
-#: parser.yy:804
+#: parser.yy:816
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "\\paper kann nicht in \\source verwendet werden; stattdessen \\layout verwenden"
 
-#: parser.yy:828
+#: parser.yy:840
 msgid "need \\paper for paper block"
 msgstr "Für Papier-Block wird \\paper benötigt"
 
-#: parser.yy:1299
+#: parser.yy:1365
+msgid "only \\consists takes non-string argument."
+msgstr "nur \\consists versteht ein Nicht-Zeichenketten-Argument"
+
+#: parser.yy:1378
 msgid "Grob name should be alphanumeric"
 msgstr "Grob-Name sollte alphanumerisch sein"
 
-#: parser.yy:1597
+#: parser.yy:1687
 msgid "second argument must be pitch list"
 msgstr "zweites Argument muss eine Tonhöhenliste sein"
 
-#: parser.yy:1624 parser.yy:1629 parser.yy:2101
+#: parser.yy:1714 parser.yy:1719 parser.yy:2192
 msgid "have to be in Lyric mode for lyrics"
 msgstr "muss in Liedtextmodus sein um Liedtext setzen zu können"
 
-#: parser.yy:1726
+#: parser.yy:1816
 msgid "expecting string as script definition"
 msgstr "Zeichenkette als Skriptdefinition erwartet"
 
-#: parser.yy:1881 parser.yy:1931
+#: parser.yy:1971 parser.yy:2022
 #, c-format
 msgid "not a duration: %d"
 msgstr "keine gültige Dauer: %d"
 
-#: parser.yy:2055
+#: parser.yy:2146
 msgid "have to be in Note mode for notes"
 msgstr "Muss im Notenmodus sein für Noten"
 
-#: parser.yy:2116
+#: parser.yy:2207
 msgid "have to be in Chord mode for chords"
 msgstr "Muss im Akkordmodus sein für Akkorde"
 
-#: lexer.ll:179
+#: lexer.ll:190
 msgid "stray UTF-8 BOM encountered"
 msgstr "verirrtes UTF-8 BOM gefunden"
 
-#: lexer.ll:183
+#: lexer.ll:194
 msgid "Skipping UTF-8 BOM"
 msgstr "UTF-8 BOM wird übersprungen"
 
-#: lexer.ll:238
+#: lexer.ll:249
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "Eingabe in »%s« umbenannt"
 
-#: lexer.ll:255
+#: lexer.ll:266
 msgid "quoted string expected after \\version"
 msgstr "zitierte Zeichenkette hinter \\version erwartet"
 
-#: lexer.ll:259
+#: lexer.ll:270
 msgid "quoted string expected after \\sourcefilename"
 msgstr "zitierte Zeichenkette hinter \\sourcefilename erwartet"
 
-#: lexer.ll:263
+#: lexer.ll:274
 msgid "integer expected after \\sourcefileline"
 msgstr "Ganzzahl hinter \\sourcefilename erwartet"
 
-#: lexer.ll:276
+#: lexer.ll:287
 msgid "EOF found inside a comment"
 msgstr "EOF innerhalb eines Kommentares gefunden"
 
-#: lexer.ll:291
+#: lexer.ll:302
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput ist außerhalb von Init-Dateien nicht erlaubt"
 
-#: lexer.ll:315
+#: lexer.ll:326
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "falscher oder ungültiger Bezeichner: »%s«"
 
 #. backup rule
-#: lexer.ll:324
+#: lexer.ll:335
 msgid "end quote missing"
 msgstr "schließendes Anführungszeichen fehlt"
 
-#: lexer.ll:469
+#: lexer.ll:485
 msgid "Brace found at end of lyric.  Did you forget a space?"
 msgstr "Klammer am Ende von Liedtext gefunden. Haben Sie ein Leerzeichen vergessen?"
 
-#: lexer.ll:584
+#: lexer.ll:595
 msgid "Brace found at end of markup.  Did you forget a space?"
 msgstr "Klammer am Ende des Auszugs gefunden. Haben Sie ein Leerzeichen vergessen?"
 
-#: lexer.ll:688
+#: lexer.ll:699
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "Ungültiges Zeichen: »%c«"
 
-#: lexer.ll:803
+#: lexer.ll:814 lexer.ll:815
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "Ungültige Fluchtsequenz: »\\%s«"
 
-#: lexer.ll:910
+#: lexer.ll:924 lexer.ll:925
 #, c-format
 msgid "file too old: %s (oldest supported: %s)"
 msgstr "Datei zu alt: %s (älteste unterstützte: %s)"
 
-#: lexer.ll:911
+#: lexer.ll:925 lexer.ll:926
 msgid "consider updating the input with the convert-ly script"
 msgstr "Erwägen Sie die Aktualisierung der Eingabe mit dem Skript convert-ly"
 
-#: lexer.ll:917
+#: lexer.ll:931 lexer.ll:932
 #, c-format
 msgid "program too old: %s (file requires: %s)"
 msgstr "Programm zu alt: %s (Datei erfordert: %s)"
 
-#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
+#: backend-library.scm:35 ps-to-png.scm:66
 #, scheme-format
 msgid "Invoking `~a'..."
 msgstr "»~s« wird aufgerufen..."
 
-#: backend-library.scm:28
+#: backend-library.scm:45
 #, scheme-format
 msgid "`~a' failed (~a)"
 msgstr "»~a« gescheitert (~a)"
 
-#: backend-library.scm:116
+#: backend-library.scm:130
 #, scheme-format
 msgid "Converting to `~a'..."
 msgstr "Konvertierung nach »~a«..."
 
 #. Do not try to guess the name of the png file,
 #. GS produces PNG files like BASE-page%d.png.
-#: backend-library.scm:128
+#: backend-library.scm:140
 #, scheme-format
 msgid "Converting to ~a..."
 msgstr "Konvertierung nach ~a..."
 
-#: backend-library.scm:166
+#: backend-library.scm:178
 #, scheme-format
 msgid "Writing header field `~a' to `~a'..."
 msgstr "Kopfzeile »~a« wird nach »~a« geschrieben"
 
-#: define-context-properties.scm:20 define-grob-properties.scm:10
-#: define-music-properties.scm:10
+#: backend-library.scm:228
+#, scheme-format
+msgid "missing stencil expression `~S'"
+msgstr "fehlender Stencil-Ausdruck »~S«"
+
+#: chord-entry.scm:50
+#, scheme-format
+msgid "Spurious garbage following chord: ~A"
+msgstr "Anscheinend sinnloser Text nach Akkord: ~A"
+
+#: define-context-properties.scm:31 define-grob-properties.scm:21
+#: define-music-properties.scm:21
 #, scheme-format
 msgid "symbol ~S redefined"
 msgstr "Symbol ~S redefiniert"
 
-#: define-event-classes.scm:119
+#: define-event-classes.scm:78
+msgid "All classes must be the last in their matrilineal line."
+msgstr "Alle Klassen müssen die letzten in ihrer matrilinearen Linie sein"
+
+#: define-event-classes.scm:82
+msgid "All classes must have a well-defined pedigree in the existing class hierarchy."
+msgstr "Alle Klassen müssen gut-definierte Abstammungen in der existierenden Klassenhierarchie haben."
+
+#: define-event-classes.scm:148
 #, scheme-format
 msgid "event class ~A seems to be unused"
 msgstr "Ereignisklasse ~A scheint ungenutzt zu sein"
 
 #. should be programming-error
-#: define-event-classes.scm:125
+#: define-event-classes.scm:154
 #, scheme-format
 msgid "translator listens to nonexisting event class ~A"
 msgstr "Übersetzer hört auf fehlende Ereignisklasse ~A"
 
-#: define-markup-commands.scm:569
+#: define-markup-commands.scm:803
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr "keine Systeme in \\score-Markup gefunden, hat es einen \\layout-Block?"
 
-#: define-markup-commands.scm:2387
+#: define-markup-commands.scm:2571
 #, scheme-format
 msgid "Cannot find glyph ~a"
 msgstr "Kann kein Zeichen ~a finden"
 
-#: define-markup-commands.scm:2696
+#: define-markup-commands.scm:2831
+#, scheme-format
+msgid "no brace found for point size ~S "
+msgstr "Keine Klammer in Größe ~S pt gefunden"
+
+#: define-markup-commands.scm:2832
+#, scheme-format
+msgid "defaulting to ~S pt"
+msgstr "Setze Standard ~S pt"
+
+#: define-markup-commands.scm:2985
 #, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr "keine gültige Dauer: ~a"
 
-#: define-music-types.scm:670
+#: define-music-types.scm:725
 #, scheme-format
 msgid "symbol expected: ~S"
 msgstr "Symbol erwartet: ~S"
 
-#: define-music-types.scm:673
+#: define-music-types.scm:728
 #, scheme-format
 msgid "cannot find music object: ~S"
 msgstr "Musikobjekt kann nicht gefunden werden: ~S"
 
-#: define-music-types.scm:692
+#: define-music-types.scm:747
 #, scheme-format
 msgid "unknown repeat type `~S'"
 msgstr "unbekannter Wiederholungstyp »~S«"
 
-#: define-music-types.scm:693
+#: define-music-types.scm:748
 msgid "See define-music-types.scm for supported repeats"
 msgstr "Siehe define-music-types.scm für unterstützte Wiederholungen"
 
-#: document-backend.scm:99
+#: document-backend.scm:132
 #, scheme-format
 msgid "pair expected in doc ~s"
 msgstr "Paar erwartet in doc ~s"
 
-#: document-backend.scm:154
+#: document-backend.scm:189
 #, scheme-format
 msgid "cannot find interface for property: ~S"
 msgstr "Schnittstelle für Eigenschaft ~S kann nicht gefunden werden"
 
-#: document-backend.scm:164
+#: document-backend.scm:199
 #, scheme-format
 msgid "unknown Grob interface: ~S"
 msgstr "Unbekannte Grob-Schnittstelle: ~S"
 
-#: documentation-lib.scm:49
+#: documentation-lib.scm:59
 #, scheme-format
 msgid "Processing ~S..."
 msgstr "~S wird verarbeitet..."
 
-#: documentation-lib.scm:165
+#: documentation-lib.scm:176
 #, scheme-format
 msgid "Writing ~S..."
 msgstr "~S wird geschrieben..."
 
-#: documentation-lib.scm:187
+#: documentation-lib.scm:198
 #, scheme-format
 msgid "cannot find description for property ~S (~S)"
 msgstr "Beschreibung für Eigenschaft ~S (~S) kann nicht gefunden werden"
 
-#: flag-styles.scm:145
+#: flag-styles.scm:142
 #, scheme-format
 msgid "flag stroke `~a' or `~a' not found"
 msgstr "Fähnchenstrich »~a«·or·»~a« nicht gefunden"
 
-#: framework-eps.scm:90
+#: framework-eps.scm:108
 #, scheme-format
 msgid "Writing ~a..."
 msgstr "~a wird geschrieben..."
 
-#: framework-ps.scm:277
+#: framework-ps.scm:250
 #, scheme-format
 msgid "cannot embed ~S=~S"
 msgstr "~S=~S kann nicht eingebettet werden"
 
-#: framework-ps.scm:330
+#: framework-ps.scm:291
 #, scheme-format
 msgid "cannot extract file matching ~a from ~a"
 msgstr "Eine zu ~a passende Datei kann nicht aus ~a gewonnen werden"
 
-#: framework-ps.scm:347
+#: framework-ps.scm:309
 #, scheme-format
 msgid "do not know how to embed ~S=~S"
 msgstr "Unbekannte Einbettung ~S=~S"
 
-#: framework-ps.scm:378
+#: framework-ps.scm:334
 #, scheme-format
 msgid "do not know how to embed font ~s ~s ~s"
 msgstr "Unbekannte Schriftsatzeinbettung ~s ~s ~s"
 
-#: framework-ps.scm:748
-#, scheme-format
-msgid "cannot convert <stdout> to ~S"
-msgstr "<stdout> kann nicht in ~S konvertiert werden"
-
-#: framework-ps.scm:771
+#: framework-ps.scm:639
 msgid ""
 "\n"
-"The PostScript backend does not support the system-by-system \n"
-"output. For that, use the EPS backend instead,\n"
+"The PostScript backend does not support the\n"
+"system-by-system output.  For that, use the EPS backend instead,\n"
 "\n"
 "  lilypond -dbackend=eps FILE\n"
 "\n"
@@ -2772,7 +3122,7 @@ msgid ""
 "  %% ****************************************************************\n"
 msgstr ""
 "\n"
-"Das PostScript-Backend unterstützt keine System-weise Ausgabe. Dafür sollte\n"
+"Das PostScript-Backend unterstützt keine System-weise Ausgabe.  Dafür sollte\n"
 "das EPS-Backend verwendet werden,\n"
 "\n"
 "  lilypond -dbackend=eps <Datei>\n"
@@ -2784,57 +3134,76 @@ msgstr ""
 "  %% ****************************************************************\n"
 "\n"
 "entfernt werden\n"
-"\n"
 
-#: graphviz.scm:53
+#: framework-svg.scm:84
+#, scheme-format
+msgid "Updating font into: ~a"
+msgstr "Schriftart wird nach ~a aktualisiert"
+
+#: graphviz.scm:64
 #, scheme-format
 msgid "Writing graph `~a'..."
-msgstr "Graph ~a wird geschrieben..."
+msgstr "Graph »~a« wird geschrieben..."
 
-#: layout-beam.scm:29
+#: layout-beam.scm:38
 #, scheme-format
 msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
 msgstr "Fehler bei Balkenzuschnitt. (~S,~S) erwartet, ~S gefunden."
 
-#: layout-beam.scm:43
+#: layout-beam.scm:52
 #, scheme-format
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Fehler bei Balkenzuschnitt. ~S 0 erwartet, ~S gefunden."
 
-#: layout-page-layout.scm:126
-msgid "Can't fit systems on page -- ignoring between-system-padding"
-msgstr "Systeme passen nicht auf Seite -- Zwischen-System-Abstand wird ignoriert"
+#: lily-library.scm:747
+msgid ""
+"Find the index between @var{start} and @var{end} (an integer)\n"
+"which will produce the closest match to @var{target-val} when\n"
+"applied to function @var{getter}."
+msgstr ""
 
-#: lily-library.scm:602
+#: lily-library.scm:821
 #, scheme-format
 msgid "unknown unit: ~S"
 msgstr "unbekannte Einheit: ~S"
 
-#: lily-library.scm:636
+#: lily-library.scm:847 lily-library.scm:856
+msgid "warning:"
+msgstr "Warnung:"
+
+#: lily-library.scm:849
 #, scheme-format
 msgid "no \\version statement found, please add~afor future compatibility"
 msgstr "keine \\version-Anweisung gefunden, ~a für zukünftige Kompatibilität hinzufügen"
 
-#: lily-library.scm:644
+#: lily-library.scm:857
 msgid "old relative compatibility not used"
 msgstr "alte relative Kompatibilität nicht verwendet"
 
-#: lily.scm:179
+#: lily.scm:282
 #, scheme-format
 msgid "cannot find: ~A"
 msgstr "~A kann nicht gefunden werden"
 
-#: lily.scm:228
+#: lily.scm:342
 #, scheme-format
 msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr "falscher Typ für Argument ~a; ~a erwartet, ~s gefunden"
 
-#: lily.scm:625
+#: lily.scm:704
+msgid "Compilation successfully completed"
+msgstr "Kompilation erfolgreich beendet"
+
+#: lily.scm:705
+msgid "Compilation completed with warnings or errors"
+msgstr "Kompilation mit Warnungen bzw. Fehlermeldungen beendet"
+
+#: lily.scm:767
 #, scheme-format
 msgid "job ~a terminated with signal: ~a"
 msgstr "Auftrag ~a mit Signal ~a beendet"
 
-#: lily.scm:628
+#: lily.scm:770
 #, scheme-format
 msgid ""
 "logfile ~a (exit ~a):\n"
@@ -2843,129 +3212,205 @@ msgstr ""
 "Logdatei ~a (Ende ~a):\n"
 "~a"
 
-#: lily.scm:653 lily.scm:751
+#: lily.scm:792 lily.scm:870
 #, scheme-format
 msgid "failed files: ~S"
 msgstr "gescheiterte Dateien: ~S"
 
-#: lily.scm:741
+#: lily.scm:861
 #, scheme-format
 msgid "Redirecting output to ~a..."
 msgstr "Ausgabeumleitung nach ~a..."
 
-#: ly-syntax-constructors.scm:40
+#: lily.scm:880
+#, scheme-format
+msgid "Invoking `~a'...\n"
+msgstr "»~a« wird aufgerufen...\n"
+
+#: ly-syntax-constructors.scm:51
 msgid "Music head function must return Music object"
 msgstr "Musikkopf-Funktion muss Musikobjekt zurückliefern."
 
-#: ly-syntax-constructors.scm:154
+#: ly-syntax-constructors.scm:176
 #, scheme-format
 msgid "Invalid property operation ~a"
 msgstr "Ungültige Eigenschaftsoperation ~a"
 
-#: markup.scm:204
+#: markup.scm:223
 #, scheme-format
 msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
 msgstr "Falsche Anzahl an Argumenten: ~A erwartet, ~A gefunden: ~S"
 
-#: markup.scm:210
+#: markup.scm:229
 #, scheme-format
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Ungültiges Argument an Position ~A. ~A erwartet, ~S gefunden."
 
-#: markup.scm:274
+#: markup.scm:292
 #, scheme-format
 msgid "Not a markup command: ~A"
 msgstr "Kein Textbeschriftungsbefehl: ~A"
 
-#: music-functions.scm:228
+#: music-functions.scm:265
 msgid "More alternatives than repeats.  Junking excess alternatives"
 msgstr "mehr Alternativen als Wiederholungen. Überschüssige Alternativen werden verworfen"
 
-#: music-functions.scm:240
+#: music-functions.scm:294
 #, scheme-format
 msgid "invalid tremolo repeat count: ~a"
 msgstr "ungültige Tremolo-Wiederholung: ~a"
 
-#: music-functions.scm:248
-#, scheme-format
-msgid "expecting 2 elements for chord tremolo, found ~a"
-msgstr "2 Elemente für Akkord-Tremolo erwartet, ~a gefunden"
-
-#: music-functions.scm:575
+#: music-functions.scm:601
 #, scheme-format
 msgid "music expected: ~S"
 msgstr "Musik erwartet: ~S"
 
 #. FIXME: uncomprehensable message
-#: music-functions.scm:625
+#: music-functions.scm:649
 #, scheme-format
 msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
 msgstr "Taktüberprüfung gescheitert. bei ~a erwartet, stattdessen bei ~a"
 
-#: music-functions.scm:793
+#: music-functions.scm:828
 #, scheme-format
 msgid "cannot find quoted music: `~S'"
 msgstr "zitierte Musik »~S« kann nicht gefunden werden"
 
-#: music-functions.scm:1198
+#: music-functions.scm:964
+msgid "Add @var{octave-shift} to the octave of @var{pitch}."
+msgstr "Füge @var{octave-shift} zur Oktave von @var{pitch} hinzu."
+
+#: music-functions.scm:1019
+#, scheme-format
+msgid "Unknown octaveness type: ~S "
+msgstr "Unbekannter Oktaven-Typ: »~S«"
+
+#: music-functions.scm:1020
+msgid "Defaulting to 'any-octave."
+msgstr "Setze Standard 'any-octave"
+
+#: music-functions.scm:1355
 #, scheme-format
 msgid "unknown accidental style: ~S"
 msgstr "unbekannter Versetzungszeichenstil: ~S"
 
-#: output-ps.scm:294
-msgid "utf-8-string encountered in PS backend"
-msgstr "UTF-8-Zeichenkette in PostScript-Backend gefunden"
+#: output-ps.scm:289 output-svg.scm:550
+#, scheme-format
+msgid "unknown line-cap-style: ~S"
+msgstr "unbekannter line-cap-style: ~S"
+
+#: output-ps.scm:294 output-svg.scm:556
+#, scheme-format
+msgid "unknown line-join-style: ~S"
+msgstr "unbekannter line-join-style: ~S"
 
-#: output-svg.scm:45
+#: output-svg.scm:47
 #, scheme-format
 msgid "undefined: ~S"
 msgstr "nicht definiert: ~S"
 
-#: output-svg.scm:135
+#: output-svg.scm:151
 #, scheme-format
 msgid "cannot decypher Pango description: ~a"
 msgstr "Pango-Beschreibung kann nicht entschlüsselt werden: ~a"
 
-#: paper.scm:104
+#: output-svg.scm:231
+msgid "Glyph must have a unicode value"
+msgstr "Das Zeichen muss einen Unicode-Wert haben"
+
+#: output-svg.scm:283 output-svg.scm:293
+#, scheme-format
+msgid "cannot find SVG font ~S"
+msgstr "SVG-Schriftart ~S kann nicht gefunden werden"
+
+#: paper.scm:115
 msgid "set-global-staff-size: not in toplevel scope"
 msgstr "set-global-staff-size: Nicht auf höchster Ebene im Gültigkeitsbereich"
 
-#: paper.scm:244
+#: paper.scm:296
 #, scheme-format
 msgid "This is not a \\layout {} object, ~S"
 msgstr "Dies ist kein \\layout {} Objekt, ~S"
 
-#: paper.scm:256
+#: paper.scm:308
 #, scheme-format
 msgid "Unknown paper size: ~a"
 msgstr "Unbekannte Papiergröße: ~a"
 
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
-#: paper.scm:271
+#: paper.scm:323
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "#(set-paper-size ..) muss innerhalb von \\paper { ... } verwendet werden"
 
-#: parser-clef.scm:129
+#: parser-clef.scm:140
 #, scheme-format
 msgid "unknown clef type `~a'"
 msgstr "unbekannter Notenschlüsseltyp »~a«"
 
-#: parser-clef.scm:130
+#: parser-clef.scm:141
 #, scheme-format
 msgid "supported clefs: ~a"
 msgstr "unterstützte Notenschlüssel: ~a"
 
-#: ps-to-png.scm:64
+#: ps-to-png.scm:72
 #, scheme-format
 msgid "~a exited with status: ~S"
 msgstr "~a mit Rückgabewert ~S beendet"
 
-#: to-xml.scm:180
+#: to-xml.scm:191
 #, scheme-format
 msgid "assertion failed: ~S"
 msgstr "Behauptung gescheitert: ~S"
 
+#~ msgid "Tuplet brackets displaying both note durations are not implemented, using default"
+#~ msgstr "N-tolen-Klammern, die beide Notendauern darstellen, sind nicht implementiert, benutze Standard"
+
+#~ msgid "run executable PROG instead of latex"
+#~ msgstr "benutze ausführbare Datei PROG anstelle von latex"
+
+#~ msgid "Encountered file created by Noteworthy Composer's nwc2xml, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+#~ msgstr "Die Datei wurde von Noteworthy·Composer's·nwc2xml erstellt und enthält falsche Balkeninformation. Alle Balkeninformation in der MusicXML-Datei wird ignoriert"
+
+#~ msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
+#~ msgstr "benutze eine andere Sprach-Datei 'SPRA.ly' und entsprechende Notenbezeichnungen, etwa 'deutsch' für deutsch.ly"
+
+#~ msgid "tried to get a translation for something that is no child of mine"
+#~ msgstr "Versuch, eine Übersetzung für etwas zu finden, das nicht mein Kind ist"
+
+#~ msgid "expect 2 elements for chord tremolo, found %d"
+#~ msgstr "2 Elemente für Akkord-Tremolo erwartet, %d gefunden"
+
+#~ msgid "program has no such type: `%s'"
+#~ msgstr "Das Programm hat keinen solchen Typen: »%s«"
+
+#~ msgid "Rebuilding FontConfig cache %s, this may take a while..."
+#~ msgstr "FontConfig-Cache %s wird erneuert. Dies kann eine Weile dauern..."
+
+#~ msgid "deprecated function called: %s"
+#~ msgstr "veraltete Funktion aufgerufen: %s"
+
+#~ msgid "staff-span event has no direction"
+#~ msgstr "Systemabstandsereignis hat keine Richtung"
+
+#~ msgid "cannot find start of trill spanner"
+#~ msgstr "Anfang der Trillerklammer kann nicht gefunden werden"
+
+#~ msgid "already have a trill spanner"
+#~ msgstr "Trillerklammer bereits aktiv"
+
+#~ msgid "cannot convert <stdout> to ~S"
+#~ msgstr "<stdout> kann nicht in ~S konvertiert werden"
+
+#~ msgid "Can't fit systems on page -- ignoring between-system-padding"
+#~ msgstr "Systeme passen nicht auf Seite -- Zwischen-System-Abstand wird ignoriert"
+
+#~ msgid "expecting 2 elements for chord tremolo, found ~a"
+#~ msgstr "2 Elemente für Akkord-Tremolo erwartet, ~a gefunden"
+
+#~ msgid "utf-8-string encountered in PS backend"
+#~ msgstr "UTF-8-Zeichenkette in PostScript-Backend gefunden"
+
 #~ msgid "requested time signature, but time sig is unknown"
 #~ msgstr "Taktangabe angefragt, aber Taktart ist unbekannt"
 
@@ -3344,9 +3789,6 @@ msgstr "Behauptung gescheitert: ~S"
 #~ "Schema-Option setzen, für Hilfe\n"
 #~ "                                       -e '(ly:option-usage)'"
 
-#~ msgid "run in safe mode"
-#~ msgstr "im sicheren Modus laufen lassen"
-
 #~ msgid "can't handle a percent repeat of length: %s"
 #~ msgstr "Prozentwiederholung der Länge %s kann nicht behandelt werden"
 
@@ -3735,9 +4177,6 @@ msgstr "Behauptung gescheitert: ~S"
 #~ msgid "#<spring smob d= %f>"
 #~ msgstr "#<spring smob d= %f>"
 
-#~ msgid "\\apply takes function argument"
-#~ msgstr "\\apply benötigt Funktionsargument"
-
 #~ msgid " 1998--2003"
 #~ msgstr "1998--2003"
 
diff --git a/po/el.po b/po/el.po
new file mode 100644 (file)
index 0000000..0674f63
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,3413 @@
+# Greek translation for lilypond.
+# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009, 2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the lilypond package.
+# Michael Kotsarinis <mk73628@gmail.com>, 2010
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lilypond-2.13.42\n"
+"Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
+"POT-Creation-Date: 2010-12-06 22:30+0100\n"
+"PO-Revision-Date: 2010-12-13 22:22+0200\n"
+"Last-Translator: Michael Kotsarinis <mk73628@gmail.com>\n"
+"Language-Team: Greek <team@lists.gnome.gr>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Language: \n"
+"Plural-Forms: plurals=2; plural=(n!=1)\n"
+"X-Poedit-Language: Greek\n"
+"X-Poedit-Country: GREECE\n"
+
+#: book_base.py:24
+#, python-format
+msgid "file not found: %s"
+msgstr "δεν βρέθηκε το αρχείο: %s"
+
+#: book_base.py:161
+msgid "Output function not implemented"
+msgstr "Δεν έχει υλοποιηθεί η λειτουργία εξόδου"
+
+#: book_latex.py:156
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "αδυναμία εύρεσης \\begin{document} σε έγγραφο LaTeX"
+
+#: book_snippets.py:517
+#, python-format
+msgid "deprecated ly-option used: %s=%s"
+msgstr "χρησιμοποιήθηκε παρωχημένη ly-option: %s=%s"
+
+#: book_snippets.py:519
+#, python-format
+msgid "compatibility mode translation: %s=%s"
+msgstr "μετάφραση σε κατάσταση συμβατότητας: %s=%s"
+
+#: book_snippets.py:522
+#, python-format
+msgid "deprecated ly-option used: %s"
+msgstr "χρησιμοποιήθηκε παρωχημένη ly-option: %s"
+
+#: book_snippets.py:524
+#, python-format
+msgid "compatibility mode translation: %s"
+msgstr "μετάφραση σε κατάσταση συμβατότητας: %s"
+
+#: book_snippets.py:542
+#, python-format
+msgid "ignoring unknown ly option: %s"
+msgstr "αγνόηση άγνωστης επιλογής ly: %s"
+
+#: book_snippets.py:728
+#, python-format
+msgid "Opening filter `%s'\n"
+msgstr "Άνοιγμα φίλτρου `%s'\n"
+
+#: book_snippets.py:748
+#, python-format
+msgid "`%s' failed (%d)"
+msgstr "`%s' απέτυχε (%d)"
+
+#: book_snippets.py:749
+msgid "The error log is as follows:"
+msgstr "Η καταγραφή σφάλματος έχει ως ακολούθως:"
+
+#: convertrules.py:12
+#, python-format
+msgid "Not smart enough to convert %s"
+msgstr "Όχι αρκετά έξυπνο για μετατροπή %s"
+
+#: convertrules.py:13
+msgid "Please refer to the manual for details, and update manually."
+msgstr "Παρακαλώ, δείτε το εγχειρίδιο για λεπτομέρειες και ενημερώστε χειροκίνητα."
+
+#: convertrules.py:14
+#, python-format
+msgid "%s has been replaced by %s"
+msgstr "%s αντικαταστάθηκε από %s"
+
+#: convertrules.py:24 lilylib.py:78 musicexp.py:17 convert-ly.py:64 warn.cc:66
+#: input.cc:109
+#, c-format, python-format
+msgid "warning: %s"
+msgstr "προειδοποίηση: %s"
+
+#: convertrules.py:49 convertrules.py:99
+msgid "\\header { key = concat + with + operator }"
+msgstr "\\header { key = concat + with + operator }"
+
+#: convertrules.py:58
+#, python-format
+msgid "deprecated %s"
+msgstr "παρωχημένο %s"
+
+#: convertrules.py:70
+msgid "deprecated \\textstyle, new \\key syntax"
+msgstr "παρωχημένο \\textstyle, νέο \\key syntax"
+
+#: convertrules.py:86 convertrules.py:1905 convertrules.py:2084
+#: convertrules.py:2236 convertrules.py:2566 convertrules.py:2862
+msgid "bump version for release"
+msgstr "επόμενος αριθμός έκδοσης για κυκλοφορία"
+
+#: convertrules.py:103
+msgid "new \\header format"
+msgstr "νέα μορφή \\header"
+
+#: convertrules.py:132
+msgid "\\translator syntax"
+msgstr "συντακτικό \\translator"
+
+#: convertrules.py:184
+msgid "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
+msgstr "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
+
+#: convertrules.py:216 convertrules.py:699 convertrules.py:1383
+#: convertrules.py:2378
+#, python-format
+msgid "deprecate %s"
+msgstr "%s να γίνει παρωχημένο"
+
+#: convertrules.py:290
+#, python-format
+msgid "deprecate %s "
+msgstr "%s να γίνει παρωχημένο"
+
+#: convertrules.py:319
+msgid "new \\notenames format"
+msgstr "νέο μορφή  \\notenames"
+
+#: convertrules.py:337
+msgid "new tremolo format"
+msgstr "νέα μορφή τρέμολο"
+
+#: convertrules.py:342
+msgid "Staff_margin_engraver deprecated, use Instrument_name_engraver"
+msgstr "Staff_margin_engraver παρωχημένος, χρησιμοποιήστε το Instrument_name_engraver"
+
+#: convertrules.py:395
+msgid "change property definiton case (eg. onevoice -> oneVoice)"
+msgstr "αλλαγή σε κεφαλαίο του ορισμού ιδιότητας (πχ onevoice -> oneVoice)"
+
+#: convertrules.py:457
+msgid "new \\textscript markup text"
+msgstr "νέο κείμενο επισήμανσης \\textscript"
+
+#: convertrules.py:530
+#, python-format
+msgid "identifier names: %s"
+msgstr "ονόματα ταυτοποιητή: %s"
+
+#: convertrules.py:569
+msgid "point-and-click argument changed to procedure."
+msgstr "το όρισμα κατάδειξη και κλικ άλλαξε σε διαδικασία."
+
+#: convertrules.py:611
+msgid "semicolons removed"
+msgstr "αφαιρέθηκαν τα ερωτηματικά (;)"
+
+#. 40 ?
+#: convertrules.py:654
+#, python-format
+msgid "%s property names"
+msgstr "ονόματα ιδιότητας %s"
+
+#: convertrules.py:724
+msgid "automaticMelismata turned on by default"
+msgstr "automaticMelismata ενεργοποιημένο ως προεπιλογή"
+
+#: convertrules.py:963 convertrules.py:1682 convertrules.py:1942
+#: convertrules.py:2189
+#, python-format
+msgid "remove %s"
+msgstr "αφαίρεση %s"
+
+#: convertrules.py:1001 convertrules.py:1005
+msgid "cluster syntax"
+msgstr "συντακτικό συστοιχίας"
+
+#: convertrules.py:1014
+msgid "new Pedal style syntax"
+msgstr "νέο συντακτικό για στυλ Πεντάλ"
+
+#: convertrules.py:1273
+msgid ""
+"New relative mode,\n"
+"Postfix articulations, new text markup syntax, new chord syntax."
+msgstr ""
+"Νέα σχετική κατάσταση,\n"
+"αρθρώσεις Postfix, νέο συντακτικό για επισήμανση κειμένου, νέο συντακτικό συγχορδίας."
+
+#: convertrules.py:1286
+msgid "Remove - before articulation"
+msgstr "Αφαίρεση - πριν την άρθρωση"
+
+#: convertrules.py:1324
+#, python-format
+msgid "%s misspelling"
+msgstr "%s λάθος γραφής"
+
+#: convertrules.py:1346
+msgid "Swap < > and << >>"
+msgstr "Αντικατάσταση < > και << >>"
+
+#: convertrules.py:1349
+msgid "attempting automatic \\figures conversion.  Check results!"
+msgstr "προσπάθεια αυτόματης μετατροπής \\figures. Ελέγξτε το αποτέλεσμα!"
+
+#: convertrules.py:1400
+msgid "Use Scheme code to construct arbitrary note events."
+msgstr "Χρησιμοποιήστε τον κώδικα Σχήματος για να δομήσετε αυθαίρετα γεγονότα με νότες."
+
+#: convertrules.py:1407
+msgid ""
+"use symbolic constants for alterations,\n"
+"remove \\outputproperty, move ly:verbose into ly:get-option"
+msgstr ""
+"χρησιμοποιήστε συμβολικές σταθερές για παραλλαγές,\n"
+"αφαιρέστε το \\outputproperty, μετακινήστε το ly:verbose στο ly:get-option"
+
+#: convertrules.py:1432
+#, python-format
+msgid ""
+"\\outputproperty found,\n"
+"Please hand-edit, using\n"
+"\n"
+"  \\applyoutput #(outputproperty-compatibility %s '%s <GROB PROPERTY VALUE>)\n"
+"\n"
+"as a substitution text."
+msgstr ""
+"βρέθηκε \\outputproperty,\n"
+"Παρακαλώ διορθώστε με το χέρι, με χρήση\n"
+"\n"
+"  \\applyoutput #(outputproperty-compatibility %s '%s <GROB PROPERTY VALUE>)\n"
+"\n"
+"ως κειμένου υποκατάστασης."
+
+#: convertrules.py:1446
+msgid ""
+"The alteration field of Scheme pitches was multiplied by 2\n"
+"to support quarter tone accidentals.  You must update the following constructs manually:\n"
+"\n"
+"* calls of ly:make-pitch and ly:pitch-alteration\n"
+"* keySignature settings made with \\property\n"
+msgstr ""
+"Το πεδίο αλλοίωσης των οξυτήτων Scheme πολλαπλασιάστηκε επί 2\n"
+"για να υποστηρίξει αλλοιώσεις τετάρτων του τόνου. Πρέπει να ενημερώσετε τις ακόλουθες δομές με το χέρι:\n"
+"\n"
+"* κλήσεις των ly:make-pitch και ly:pitch-alteration\n"
+"* ρυθμίσεις keySignature που έγιναν με \\property\n"
+
+#: convertrules.py:1493
+msgid "removal of automaticMelismata; use melismaBusyProperties instead."
+msgstr "αφαίρεση του automaticMelismata, χρησιμοποιήστε το melismaBusyProperties στη θέση του."
+
+#: convertrules.py:1600
+msgid "\\partcombine syntax change to \\newpartcombine"
+msgstr "το συντακτικό \\partcombine αλλάζει σε \\newpartcombine"
+
+#: convertrules.py:1628
+msgid ""
+"Drum notation changes, Removing \\chordmodifiers, \\notenames.\n"
+"Harmonic notes. Thread context removed. Lyrics context removed."
+msgstr ""
+"Αλλαγές σημειογραφίας τυμπάνου, Αφαίρεση  \\chordmodifiers, \\notenames.\n"
+"Αρμονικές νότες. Αφαιρέθηκε το περιεχόμενο νήματος. Αφαιρέθηκε το περιεχόμενο στίχων."
+
+#: convertrules.py:1632
+msgid "Drums found. Enclose drum notes in \\drummode"
+msgstr "Βρέθηκαν τύμπανα. Περικλείστε τις νότες των τυμπάνων σε \\drummode"
+
+#: convertrules.py:1643 convertrules.py:1650 convertrules.py:1661
+#, python-format
+msgid ""
+"\n"
+"%s found. Check file manually!\n"
+msgstr ""
+"\n"
+" βρέθηκε %s. Ελέγξτε το αρχείο με το χέρι!\n"
+
+#: convertrules.py:1643
+msgid "Drum notation"
+msgstr "Σημειογραφία τυμπάνου"
+
+#: convertrules.py:1702
+msgid "new syntax for property settings:"
+msgstr "νέο συντακτικό για ρυθμίσεις ιδιοτήτων:"
+
+#: convertrules.py:1728
+msgid "Property setting syntax in \\translator{ }"
+msgstr "Ιδιότητα που ορίζει το συντακτικό στο \\translator{ }"
+
+#: convertrules.py:1767
+msgid "Scheme grob function renaming"
+msgstr "Μετονομασία λειτουργίας grob του Scheme"
+
+#: convertrules.py:1780
+#, python-format
+msgid "use %s"
+msgstr "χρησιμοποιήστε %s"
+
+#: convertrules.py:1797
+msgid "More Scheme function renaming"
+msgstr "Περισσότερες μετονομασίες των λειτουργιών του Scheme"
+
+#: convertrules.py:1924
+msgid ""
+"Page layout has been changed, using paper size and margins.\n"
+"textheight is no longer used.\n"
+msgstr ""
+"Η διάταξη σελίδας άλλαξε, χρήση μεγέθους χαρτιού και περιθωρίων.\n"
+"Το textheight δεν χρησιμοποιείται πλέον.\n"
+
+#: convertrules.py:2010
+msgid ""
+"\\foo -> \\foomode (for chords, notes, etc.)\n"
+"fold \\new FooContext \\foomode into \\foo."
+msgstr ""
+"\\foo -> \\foomode (για συγχορδίες, νότες κλπ.)\n"
+"αναδίπλωση \\new FooContext \\foomode σε \\foo."
+
+#: convertrules.py:2048
+msgid ""
+"staff size should be changed at top-level\n"
+"with\n"
+"\n"
+"  #(set-global-staff-size <STAFF-HEIGHT-IN-POINT>)\n"
+"\n"
+msgstr ""
+"το μέγεθος του πενταγράμμου θα πρέπει να αλλαχθεί στο κορυφαίο επίπεδο\n"
+"με\n"
+"\n"
+" #(set-global-staff-size <STAFF-HEIGHT-IN-POINT>)\n"
+"\n"
+
+#: convertrules.py:2068
+msgid "regularize other identifiers"
+msgstr "κανονικοποίηση άλλων ταυτοποιητών"
+
+#: convertrules.py:2136
+msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
+msgstr "\\encoding: έξυπνη επανακωδικοποίηση latin1..utf-8. Αφαίρεση ly:point-and-click"
+
+#: convertrules.py:2149
+msgid "LilyPond source must be UTF-8"
+msgstr "Το πηγαίο του Lilypond πρέπει να είναι σε UTF-8"
+
+#: convertrules.py:2152
+msgid "Try the texstrings backend"
+msgstr "Χρησιμοποιήστε το backend texstrings"
+
+#: convertrules.py:2155
+#, python-format
+msgid "Do something like: %s"
+msgstr "Κάντε κάτι όπως: %s"
+
+#: convertrules.py:2158
+msgid "Or save as UTF-8 in your editor"
+msgstr "Ή αποθηκεύστε ως UTF-8 στον επεξεργαστή σας"
+
+#: convertrules.py:2212
+msgid "warn about auto beam settings"
+msgstr "προειδοποίηση για ρυθμίσεις αυτόματης γραμμής ογδόου και μικρότερων αξιών"
+
+#: convertrules.py:2217
+msgid "auto beam settings"
+msgstr "ρυθμίσεις αυτόματης γραμμής ογδόου"
+
+#: convertrules.py:2219
+msgid ""
+"\n"
+"Auto beam settings must now specify each interesting moment in a measure\n"
+"explicitly; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
+msgstr ""
+"\n"
+"Οι ρυθμίσεις για αυτόματη γραμμή ογδόου (και μικρότερων) πρέπει τώρα να καθορίζουν κάθε ενδιαφέρουσα στιγμή σε ένα μέτρο\n"
+"επακριβώς. Tο 1/4 δεν πολλαπλασιάζεται πλέον για να καλύψει τις στιγμές 1/2 (στιγμή διαρκείας) και 3/4 (διπλή στιγμή διαρκείας) επίσης.\n"
+
+#: convertrules.py:2333
+msgid "verticalAlignmentChildCallback has been deprecated"
+msgstr "το verticalAlignmentChildCallback είναι πλέον παρωχημένο"
+
+#: convertrules.py:2337
+msgid "Remove callbacks property, deprecate XY-extent-callback."
+msgstr "Αφαίρεση της ιδιότητας callback, το XY-extent-callback είναι παρωχημένο."
+
+#: convertrules.py:2358
+msgid "Use grob closures iso. XY-offset-callbacks."
+msgstr "Χρησιμοποιήστε grob closures iso.  XY-offset-callbacks."
+
+#: convertrules.py:2420
+msgid "foobar -> foo-bar for \\paper, \\layout"
+msgstr "foobar -> foo-bar για \\paper, \\layout"
+
+#: convertrules.py:2530
+msgid "deprecate \\tempo in \\midi"
+msgstr "παρωχημένο \\tempo σε \\midi"
+
+#: convertrules.py:2583
+msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
+msgstr "παρωχημένο cautionary-style. Χρησιμοποιήστε ιδιότητες AccidentalCautionary"
+
+#: convertrules.py:2596
+msgid "Rename accidental glyphs, use glyph-name-alist."
+msgstr "Μετονομασία των συμβόλων για αλλοιώσεις, χρησιμοποιήστε το glyph-name-alist."
+
+#: convertrules.py:2651
+msgid "edge-text settings for TextSpanner."
+msgstr "ρυθμίσεις edge-text για TextSpanner."
+
+#: convertrules.py:2652
+#, python-format
+msgid ""
+"Use\n"
+"\n"
+"%s"
+msgstr ""
+"Χρησιμοποιήστε\n"
+"\n"
+"%s"
+
+#: convertrules.py:2685
+msgid "Use the `alignment-offsets' sub-property of\n"
+msgstr "Χρησιμοποιήστε την υπο-ιδιότητα `alignment-offsets' του\n"
+
+#: convertrules.py:2686
+msgid "NonMusicalPaperColumn #'line-break-system-details\n"
+msgstr "NonMusicalPaperColumn #'line-break-system-details\n"
+
+#: convertrules.py:2687
+msgid "to set fixed distances between staves.\n"
+msgstr "για να ορίσετε σταθερές αποστάσεις μεταξύ των πενταγράμμων.\n"
+
+#: convertrules.py:2699
+msgid "Use #'style not #'dash-fraction to select solid/dashed lines."
+msgstr "Χρησιμοποιήστε το #'style όχι το #'dash-fraction για να επιλέξετε συνεχείς ή διακεκομμένες γραμμές."
+
+#: convertrules.py:2705
+msgid "all settings related to dashed lines.\n"
+msgstr "όλες οι ρυθμίσεις που σχετίζονται με διακεκομμένες γραμμές.\n"
+
+#: convertrules.py:2706
+msgid "Use \\override ... #'style = #'line for solid lines and\n"
+msgstr "Χρησιμοποιήστε το \\override ... #'style = #'line για συνεχείς γραμμές και\n"
+
+#: convertrules.py:2707
+msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
+msgstr "\t\\override ... #'style = #'dashed-line για διακεκομμένες γραμμές."
+
+#: convertrules.py:2743
+msgid ""
+"metronomeMarkFormatter uses text markup as second argument,\n"
+"fret diagram properties moved to fret-diagram-details."
+msgstr ""
+"το metronomeMarkFormatter χρησιμοποιεί επισήμανση κειμένου ως δεύτερο όρισμα,\n"
+"οι ιδιότητες της ταμπλατούρας μετακινήθηκαν στο fret-diagram-details."
+
+#: convertrules.py:2748
+msgid "metronomeMarkFormatter got an additional text argument.\n"
+msgstr "Το metronomeMarkFormatter έλαβε ένα επιπλέον όρισμα κειμένου.\n"
+
+#: convertrules.py:2749
+#, python-format
+msgid ""
+"The function assigned to Score.metronomeMarkFunction now uses the signature\n"
+"%s"
+msgstr ""
+"Η λειτουργία που ανατέθηκε στο  Score.metronomeMarkFunction τώρα χρησιμοποιεί την υπογραφή\n"
+"%s"
+
+#: convertrules.py:2812
+msgid "\\put-adjacent argument order.\n"
+msgstr "σειρά ορισμάτων \\put-adjacent.\n"
+
+#: convertrules.py:2813
+msgid "Axis and direction now come before markups:\n"
+msgstr "Ο άξονας και η κατεύθυνση τώρα μπαίνουν πριν τις επισημάνσεις:\n"
+
+#: convertrules.py:2814
+msgid "\\put-adjacent axis dir markup markup."
+msgstr "\\put-adjacent axis dir markup markup."
+
+#: convertrules.py:2845
+msgid "re-definition of InnerStaffGroup.\n"
+msgstr "επανακαθορισμός του InnerStaffGroup.\n"
+
+#: convertrules.py:2851
+msgid "re-definition of InnerChoirStaff.\n"
+msgstr "επανακαθορισμός του InnerChoirStaff.\n"
+
+#: convertrules.py:2861
+msgid "Syntax changes for \\addChordShape and \\chord-shape"
+msgstr "Αλλαγές σύνταξης για τα \\addChordShape και \\chord-shape"
+
+#: convertrules.py:2866
+msgid "stringTuning must be added to addChordShape call.\n"
+msgstr "Πρέπει να προστίθεται το stringTuning στην κλήση addChordShape.\n"
+
+#: convertrules.py:2872
+msgid "stringTuning must be added to chord-shape call.\n"
+msgstr "Πρέπει να προστίθεται το stringTuning στην κλήση chord-shape.\n"
+
+#: convertrules.py:2879
+msgid "Remove oldaddlyrics"
+msgstr "Αφαίρεση oldaddlyrics"
+
+#: convertrules.py:2883
+msgid ""
+"oldaddlyrics is no longer supported. \n"
+"         Use addlyrics or lyrsicsto instead.\n"
+msgstr ""
+"Το oldaddlyrics δεν υποστηρίζεται πλέον. \n"
+"         Χρησιμοποιήστε το addlyrics ή το lyrsicsto στη θέση του. \n"
+
+#: convertrules.py:2889
+msgid ""
+"keySignature property not reversed any more\n"
+"MIDI 47: orchestral strings -> orchestral harp"
+msgstr ""
+"Η ιδιότητα keySignature δεν αντιστρέφεται πλέον\n"
+"MIDI 47: έγχορδα ορχήστρας -> άρπα ορχήστρας"
+
+#: convertrules.py:2894
+msgid "The alist for Staff.keySignature is no longer in reversed order.\n"
+msgstr "Η alist για το Staff.keySignature δεν είναι πλέον σε αντεστραμμένη σειρά.\n"
+
+#: convertrules.py:2900
+msgid ""
+"\\bar \".\" now produces a thick barline\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Dash parameters for slurs and ties are now in dash-definition"
+msgstr ""
+"Το \\bar \".\" τώρα παράγει χοντρή γραμμή μέτρου\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Οι παράμετροι παύλας για ενωτικά και δεσμούς βρίσκονται τώρα στο dash-definition"
+
+#: convertrules.py:2906
+msgid "\\bar \".\" now produces a thick barline.\n"
+msgstr "Το \\bar \".\" τώρα παράγει χοντρή γραμμή μέτρου.\n"
+
+#: convertrules.py:2912
+msgid "Dash parameters for slurs and ties are now in 'dash-details.\n"
+msgstr "Οι παράμετροι παύλας για ενωτικά και δεσμούς βρίσκονται τώρα στο 'dash-details.\n"
+
+#: convertrules.py:2917
+msgid ""
+"Autobeaming rules have changed.  override-auto-beam-setting and\n"
+"revert-auto-beam-setting have been eliminated.\n"
+"\\overrideBeamSettings has been added.\n"
+"beatGrouping has been eliminated.\n"
+"Different settings for vertical layout.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Explicit dynamics context definition from `Piano centered dynamics'\n"
+"template replaced by new `Dynamics' context."
+msgstr ""
+"Οι κανόνες για αυτόματες οριζόντιες γραμμές έχουν αλλάξει. Τα override-auto-beam-setting και\n"
+"revert-auto-beam-setting έχουν εξαλειφθεί.\n"
+"Προστέθηκε το \\overrideBeamSettings.\n"
+"Το beatGrouping έχει εξαλειφθεί.\n"
+"Διαφορετικές ρυθμίσεις για την κάθετη διάταξη.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Ο αυστηρός ορισμός δυναμικού περιεχομένου από το πρότυπο\n"
+"`Piano centered dynamics' αντικαταστάθηκε από νέο περιεχόμενο `Dynamics'."
+
+#: convertrules.py:2931
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now overriden with \\overrideBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   Οι ρυθμίσεις για αυτόματες οριζόντιες γραμμές τώρα παρακάμπτονται με το \\overrideBeamSettings.\n"
+
+#: convertrules.py:2936
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now reverted with \\revertBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   Οι ρυθμίσεις για αυτόματες οριζόντιες γραμμές τώρα επανέρχονται με το \\revertBeamSettings.\n"
+
+#: convertrules.py:2941
+msgid ""
+"beatGrouping. \n"
+"   beatGrouping with a specified context must now be accomplished with\n"
+"   \\overrideBeamSettings.\n"
+msgstr ""
+"beatGrouping. \n"
+"   beatGrouping με καθορισμένο περιεχόμενο πρέπει τώρα να επιτευχθεί με το\n"
+"   \\overrideBeamSettings.\n"
+
+#: convertrules.py:2947
+msgid "alignment-offsets has been changed to alignment-distances: you must now specify the distances between staves rather than the offset of staves.\n"
+msgstr "Το alignment-offsets έχει αλλάξει σε alignment-distances: πρέπει τώρα να καθορίζετε τις αποστάσεις μεταξύ των πενταγράμμων αντί για τη μετατόπισή τους.\n"
+
+#: convertrules.py:2958
+msgid ""
+"Remove obsolete engravers/translators: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer and String_number_engraver.\n"
+"New vertical spacing variables."
+msgstr ""
+"Αφαίρεση παρωχημένων χαρακτών/μεταφραστών: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer και String_number_engraver.\n"
+"Νέες μεταβλητές κάθετης απόστασης."
+
+#: convertrules.py:2982
+msgid "vertical spacing has been changed; minimum-Y-extent is obsolete.\n"
+msgstr "η κάθετη απόσταση έχει αλλάξει. Το minimum-Y-extent είναι παρωχημένο.\n"
+
+#: convertrules.py:2988
+msgid "Unify fetaNumber and fetaDynamic encodings"
+msgstr "Ενοποίηση των κωδικοποιήσεων fetaNumber και fetaDynamic"
+
+#: convertrules.py:2993
+msgid "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+msgstr "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+
+#: convertrules.py:3004
+msgid "\\cresc etc. are now postfix operators"
+msgstr "Το \\cresc κλπ είναι τώρα τελεστές εκ των υστέρων"
+
+#: convertrules.py:3010
+msgid ""
+"Eliminate beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings and \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+msgstr ""
+"Εξάλειψη των  beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings και \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+
+#: convertrules.py:3028
+msgid "\\overrideBeamSettings.  Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
+msgstr "\\overrideBeamSettings.  Χρησιμοποιήστε το \\set beamExceptions ή το \\overrideTimeSignatureSettings.\n"
+
+#: convertrules.py:3032
+msgid "\\revertBeamSettings. Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
+msgstr "\\revertBeamSettings. Χρησιμοποιήστε το \\set beamExceptions ή το \\revertTimeSignatureSettings.\n"
+
+#: convertrules.py:3036
+msgid "beamSettings. Use baseMoment, beatStructure, and beamExceptions.\n"
+msgstr "beamSettings. Χρησιμοποιήστε τα baseMoment, beatStructure και beamExceptions.\n"
+
+#: convertrules.py:3040
+msgid "beatLength. Use baseMoment and beatStructure.\n"
+msgstr "beatLength. Χρησιμοποιήστε τα baseMoment και beatStructure.\n"
+
+#: convertrules.py:3044
+msgid "setbeatGrouping. Use baseMoment and beatStructure.\n"
+msgstr "setbeatGrouping. Χρησιμοποιήστε τα baseMoment και beatStructure.\n"
+
+#: convertrules.py:3049
+msgid ""
+"Woodwind diagrams: Move size, thickness, and graphic from argument list to properties.\n"
+"Deprecate negative dash-period for hidden lines: use #'style = #'none instead."
+msgstr ""
+"Διαγράμματα ξύλινων πνευστών: Μετακίνηση μεγέθους, πάχους και γραφικών από τη λίστα ορισμάτων στις ιδιότητες.\n"
+"Το negative dash-period είναι παρωχημένο για κρυφές γραμμές: χρησιμοποιήστε το #'style = #'none στη θέση του."
+
+#: convertrules.py:3054
+msgid "woodwind-diagrams.  Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
+msgstr ""
+"woodwind-diagrams. Μετακίνηση μεγέθους, πάχους και γραφικών στις ιδιότητες.\n"
+"Το όρισμα θα πρέπει να είναι απλώς η λίστα κλειδιών.\n"
+
+#: convertrules.py:3062
+msgid ""
+"Rename vertical spacing variables.\n"
+"Add fretboard-table argument to savePredefinedFretboard."
+msgstr ""
+"Μετονομασία των μεταβλητών κάθετης διάταξης.\n"
+"Προσθήκη ορίσματος fretboard-table στο savePredefinedFretboard."
+
+#: convertrules.py:3080
+msgid "Rename vertical spacing grob properties."
+msgstr "Μετονομασία ιδιοτήτων κάθετης διάταξης του grob."
+
+#: convertrules.py:3096
+msgid "Remove \\paper variables head-separation and foot-separation."
+msgstr "Αφαίρεση των μεταβλητών head-separation και foot-separation του \\paper."
+
+#: convertrules.py:3101
+msgid "Adjust settings for top-system-spacing instead.\n"
+msgstr "Προσαρμογή ρυθμίσεων για top-system-spacing στη θέση του.\n"
+
+#: convertrules.py:3106
+msgid "Adjust settings for last-bottom-spacing instead.\n"
+msgstr "Προσαρμογή ρυθμίσεων για last-bottom-spacing στη θέση του.\n"
+
+#: fontextract.py:25
+#, python-format
+msgid "Scanning %s"
+msgstr "Σάρωση του %s"
+
+#: fontextract.py:70
+#, python-format
+msgid "Extracted %s"
+msgstr "Εξάχθηκε το %s"
+
+#: fontextract.py:85
+#, python-format
+msgid "Writing fonts to %s"
+msgstr "Εγγραφή γραμματοσειρών σε %s"
+
+#: lilylib.py:81 musicxml.py:13 convert-ly.py:67 warn.cc:72 input.cc:115
+#: input.cc:123
+#, c-format, python-format
+msgid "error: %s"
+msgstr "σφάλμα: %s"
+
+#: lilylib.py:124 lilylib.py:175
+#, python-format
+msgid "Invoking `%s'"
+msgstr "Κλήση `%s'"
+
+#: lilylib.py:126 lilylib.py:177
+#, python-format
+msgid "Running %s..."
+msgstr "Εκτέλεση %s…"
+
+#: lilylib.py:253
+#, python-format
+msgid "Usage: %s"
+msgstr "Χρήση: %s"
+
+#: musicexp.py:216 musicexp.py:221
+msgid "Language does not support microtones contained in the piece"
+msgstr "Η γλώσσα δεν υποστηρίζει τους μικροτόνους που περιέχονται στο κομμάτι"
+
+#: musicexp.py:483
+msgid "Tuplet brackets of curved shape are not correctly implemented"
+msgstr "Οι καμπύλες γραμμές για τρίηχα, πεντάηχα κλπ δεν είναι σωστά υλοποιημένες."
+
+#: musicexp.py:669
+#, python-format
+msgid "unable to set the music %(music)s for the repeat %(repeat)s"
+msgstr "αδυναμία ορισμού της μουσικής %(music)s για την επανάληψη %(repeat)s"
+
+#: musicexp.py:678
+msgid "encountered repeat without body"
+msgstr "βρέθηκε επανάληψη χωρίς σώμα"
+
+#. no self.elements!
+#: musicexp.py:848
+#, python-format
+msgid "Grace note with no following music: %s"
+msgstr "Νότα στολίδι (πχ αποτζιατούρα) χωρίς ακόλουθη μουσική: %s"
+
+#: musicexp.py:1010
+#, python-format
+msgid "Invalid octave shift size found: %s. Using no shift."
+msgstr "Βρέθηκε μη έγκυρη μετατόπιση μεγέθους οκτάβας: %s. Χρήση χωρίς μετατόπιση."
+
+#: musicexp.py:1468
+#, python-format
+msgid "Unable to convert alteration %s to a lilypond expression"
+msgstr "Αδυναμία μετατροπής αλλοίωσης %s σε έκφραση του lilypond"
+
+#. TODO: Handle pieces without a time signature!
+#: musicxml.py:358
+msgid "Senza-misura time signatures are not yet supported!"
+msgstr "Δεν υποστηρίζονται ακόμη ελεύθερα μέτρα (senza-misura)!"
+
+#: musicxml.py:376
+msgid "Unable to interpret time signature! Falling back to 4/4."
+msgstr "Αδυναμία ερμηνείας μέτρου! Επιστροφή σε 4/4."
+
+#: musicxml.py:432
+#, python-format
+msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
+msgstr "Δόθηκε οκτάβα αλλοίωσης κλειδιού για μια μη υπάρχουσα αλλοίωση αρ. %s, διαθέσιμοι αριθμοί: %s!"
+
+#: musicxml.py:520
+#, python-format
+msgid "Unable to find instrument for ID=%s\n"
+msgstr "Αδυναμία εύρεσης οργάνου για ID=%s\n"
+
+#: abc2ly.py:1373 convert-ly.py:87 lilypond-book.py:122 midi2ly.py:860
+#, python-format
+msgid "%s [OPTION]... FILE"
+msgstr "%s [OPTION]... FILE"
+
+#: abc2ly.py:1374
+#, python-format
+msgid ""
+"abc2ly converts ABC music files (see\n"
+"%s) to LilyPond input.\n"
+msgstr ""
+"Το abc2ly μετατρέπει μουσικά αρχεία ABC (δες\n"
+"%s) σε είσοδο του LilyPond.\n"
+
+#: abc2ly.py:1382 convert-ly.py:94 etf2ly.py:1206 lilypond-book.py:212
+#: midi2ly.py:896 musicxml2ly.py:2683 main.cc:168
+msgid "show version number and exit"
+msgstr "εμφάνιση αριθμού έκδοσης και έξοδος"
+
+#: abc2ly.py:1386 convert-ly.py:98 etf2ly.py:1202 lilypond-book.py:140
+#: midi2ly.py:875 musicxml2ly.py:2665 main.cc:157
+msgid "show this help and exit"
+msgstr "εμφάνιση αυτής της βοήθειας και έξοδος"
+
+#: abc2ly.py:1388 etf2ly.py:1207 midi2ly.py:879
+msgid "write output to FILE"
+msgstr "εγγραφή αποτελέσματος σε FILE"
+
+#: abc2ly.py:1390
+msgid "be strict about success"
+msgstr "αυστηρότητα για επιτυχία"
+
+#: abc2ly.py:1392
+msgid "preserve ABC's notion of beams"
+msgstr "διατήρηση του τρόπου τρίηχων κλπ του ABC"
+
+#. Translators, please translate this string as
+#. "Report bugs in English via %s",
+#. or if there is a LilyPond users list or forum in your language
+#. "Report bugs in English via %s or in YOUR_LANG via URI"
+#: abc2ly.py:1395 convert-ly.py:144 etf2ly.py:1216 lilypond-book.py:234
+#: midi2ly.py:909 musicxml2ly.py:2751 main.cc:281
+#, c-format, python-format
+msgid "Report bugs via %s"
+msgstr "Αναφορά σφαλμάτων (στα Αγγλικά) μέσω %s"
+
+#: convert-ly.py:44
+msgid ""
+"Update LilyPond input to newer version.  By default, update from the\n"
+"version taken from the \\version command, to the current LilyPond version."
+msgstr ""
+"Ενημέρωση της εισαγωγής στο LilyPond σε νεότερη έκδοση. Ως προεπιλογή, ενημέρωση από την\n"
+"έκδοση που προκύπτει από την εντολή \\version, στην τρέχουσα έκδοση του LilyPond."
+
+#: convert-ly.py:46 lilypond-book.py:82
+msgid "Examples:"
+msgstr "Παραδείγματα:"
+
+#: convert-ly.py:81 etf2ly.py:1189 lilypond-book.py:116 midi2ly.py:90
+#, python-format
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s από"
+
+#: convert-ly.py:83 etf2ly.py:1191 lilypond-book.py:118 midi2ly.py:92
+msgid "Distributed under terms of the GNU General Public License."
+msgstr "Διανέμεται υπό τους όρους της GNU Γενικής Δημόσιας Άδειας."
+
+#: convert-ly.py:84 etf2ly.py:1192 lilypond-book.py:119 midi2ly.py:93
+msgid "It comes with NO WARRANTY."
+msgstr "Παρέχεται χωρίς ΚΑΜΜΙΑ ΕΓΓΥΗΣΗ."
+
+#: convert-ly.py:102 convert-ly.py:135
+msgid "VERSION"
+msgstr "VERSION"
+
+#: convert-ly.py:104
+msgid "start from VERSION [default: \\version found in file]"
+msgstr "έναρξη από VERSION [προεπιλογή: \\version του αρχείου]"
+
+#: convert-ly.py:107
+msgid "edit in place"
+msgstr "επιτόπου επεξεργασία"
+
+#: convert-ly.py:111
+msgid "do not add \\version command if missing"
+msgstr "μην προσθέσετε την εντολή \\version αν λείπει"
+
+#: convert-ly.py:117
+#, python-format
+msgid "force updating \\version number to %s"
+msgstr "επιβολή ενημέρωσης του αριθμού \\version σε %s"
+
+#: convert-ly.py:123
+msgid "only update \\version number if file is modified"
+msgstr "ενημέρωση του αριθμού έκδοσης \\version μόνο αν το αρχείο τροποποιηθεί"
+
+#: convert-ly.py:129
+#, python-format
+msgid "show rules [default: -f 0, -t %s]"
+msgstr "εμφάνιση κανόνων [προεπιλογή: -f 0, -t %s]"
+
+#: convert-ly.py:134
+#, python-format
+msgid "convert to VERSION [default: %s]"
+msgstr "μετατροπή σε VERSION [προεπιλογή: %s]"
+
+#: convert-ly.py:139 etf2ly.py:1210 lilypond-book.py:215 midi2ly.py:897
+#: main.cc:170
+msgid "show warranty and copyright"
+msgstr "εμφάνιση εγγύησης και πνευματικών δικαιωμάτων"
+
+#: convert-ly.py:184
+msgid "Applying conversion: "
+msgstr "Εφαρμογή μετατροπής:"
+
+#: convert-ly.py:197
+msgid "Error while converting"
+msgstr "Σφάλμα κατά τη μετατροπή"
+
+#: convert-ly.py:199
+msgid "Stopping at last successful rule"
+msgstr "Τερματισμός στον τελευταίο επιτυχή κανόνα"
+
+#: convert-ly.py:224
+#, python-format
+msgid "Processing `%s'... "
+msgstr "Επεξεργασία `%s'…"
+
+#: convert-ly.py:332
+#, python-format
+msgid "%s: Unable to open file"
+msgstr "%s: Αδυναμία ανοίγματος αρχείου"
+
+#: convert-ly.py:339
+#, python-format
+msgid "%s: Unable to determine version.  Skipping"
+msgstr "%s:  Αδυναμία προσδιορισμού έκδοσης. Παράβλεψη"
+
+#: convert-ly.py:344
+#, python-format
+msgid ""
+"%s: Invalid version string `%s' \n"
+"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
+msgstr ""
+"%s: Μη έγκυρη ακολουθία έκδοσης `%s' \n"
+"Οι έγκυρες ακολουθίες έκδοσης αποτελούνται από τρεις αριθμούς, διαχωρισμένους με τελείες, π.χ. `2.8.12'"
+
+#: etf2ly.py:1195
+#, python-format
+msgid "%s [OPTION]... ETF-FILE"
+msgstr "%s [OPTION]... ETF-FILE"
+
+#: etf2ly.py:1196
+msgid ""
+"Enigma Transport Format is a format used by Coda Music Technology's\n"
+"Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond file.\n"
+msgstr ""
+"Η Enigma Transport Format είναι μια μορφή που χρησιμοποιείται από το πρόγραμμα\n"
+"Finale της Coda Music Technology. Το etf2ly μετατρέπει ένα υποσύνολο του ETF σε έτοιμο αρχείο LilyPond.\n"
+
+#: etf2ly.py:1208 midi2ly.py:880 musicxml2ly.py:2743 main.cc:161 main.cc:166
+msgid "FILE"
+msgstr "FILE"
+
+#: lilypond-book.py:80
+msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
+msgstr "Επεξεργασία κομματιών κώδικα του LilyPond σε υβριδικό έγγραφο HTML, LaTeX, texinfo ή DocBook."
+
+#: lilypond-book.py:87
+msgid "BOOK"
+msgstr "BOOK"
+
+#: lilypond-book.py:95
+#, python-format
+msgid "Exiting (%d)..."
+msgstr "Έξοδος (%d)…"
+
+#: lilypond-book.py:127
+msgid "FILTER"
+msgstr "FILTER"
+
+#: lilypond-book.py:130
+msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
+msgstr "διοχέτευση κομματιών κώδικα μέσω του FILTER [προεπιλογή: `convert-ly -n -']"
+
+#: lilypond-book.py:134
+msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
+msgstr "χρήση μορφής εξόδου FORMAT (texi [προεπιλογή], texi-html, latex, html, docbook)"
+
+#: lilypond-book.py:135
+msgid "FORMAT"
+msgstr "FORMAT"
+
+#: lilypond-book.py:142
+msgid "add DIR to include path"
+msgstr "προσθέστε DIR για να συμπεριλάβετε διαδρομή"
+
+#: lilypond-book.py:143 lilypond-book.py:150 lilypond-book.py:163
+#: lilypond-book.py:173 lilypond-book.py:189 lilypond-book.py:195 main.cc:160
+msgid "DIR"
+msgstr "DIR"
+
+#: lilypond-book.py:148
+msgid "format Texinfo output so that Info will look for images of music in DIR"
+msgstr "μορφοποίηση εξόδου Texinfo έτσι ώστε το Info θα κοιτάξει για εικόνες της μουσικής στο DIR"
+
+#: lilypond-book.py:155
+msgid "PAD"
+msgstr "PAD"
+
+#: lilypond-book.py:157
+msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
+msgstr "γέμισμα της αριστερής πλευράς της μουσικής για ευθυγράμμιση παρά τους άνισους αριθμούς μέτρων (σε mm)"
+
+#: lilypond-book.py:162
+msgid "write lily-XXX files to DIR, link into --output dir"
+msgstr "εγγραφή αρχείων lily-XXX στο DIR, σύνδεση στον --output κατάλογο"
+
+#: lilypond-book.py:167
+msgid "Load the additional python PACKAGE (containing e.g. a custom output format)"
+msgstr "Φόρτωση του πρόσθετου πακέτου python PACKAGE (που περιέχει, π.χ. μια προσαρμοσμένη μοερφή εξόδου)"
+
+#: lilypond-book.py:168
+msgid "PACKAGE"
+msgstr "PACKAGE"
+
+#: lilypond-book.py:172
+msgid "write output to DIR"
+msgstr "εγγραφή εξόδου σε DIR"
+
+#: lilypond-book.py:177
+msgid "COMMAND"
+msgstr "COMMAND"
+
+#: lilypond-book.py:178
+msgid "process ly_files using COMMAND FILE..."
+msgstr "επεξεργασία των ly_files με χρήση COMMAND FILE..."
+
+#: lilypond-book.py:182
+msgid "Compile snippets in safe mode"
+msgstr "Μεταγλώττιση των κομματιών κώδικα σε ασφαλή κατάσταση"
+
+#: lilypond-book.py:188
+msgid "do not fail if no lilypond output is found"
+msgstr "να μην αποτύχει αν δεν βρεθεί έξοδος του lilypond"
+
+#: lilypond-book.py:194
+msgid "do not fail if no PNG images are found for EPS files"
+msgstr "να μην αποτύχει αν δεν βρεθούν εικόνες PNG για τα αρχεία EPS"
+
+#: lilypond-book.py:200
+msgid "write snippet output files with the same base name as their source file"
+msgstr "εγγραφή των αρχείων εξόδου αποσπασμάτων κώδικα με το ίδιο βασικό όνομα με το αρχείο προέλευσής τους"
+
+#: lilypond-book.py:204 midi2ly.py:890 musicxml2ly.py:2688 main.cc:169
+msgid "be verbose"
+msgstr "αναλυτικά"
+
+#: lilypond-book.py:220
+msgid ""
+"run executable PROG instead of latex, or in\n"
+"case --pdf option is set instead of pdflatex"
+msgstr ""
+"να εκτελεστεί το εκτελέσιμο PROG αντί για latex ή στην\n"
+"περίπτωση που έχει δοθεί η επιλογή --pdf αντί για pdflatex"
+
+#: lilypond-book.py:222
+msgid "PROG"
+msgstr "PROG"
+
+#: lilypond-book.py:228
+msgid "create PDF files for use with PDFTeX"
+msgstr "δημιουργία αρχείων PDF για χρήση με το PDFTeX"
+
+#: lilypond-book.py:419
+msgid "Writing snippets..."
+msgstr "Εγγραφή κομματιών κώδικα…"
+
+#: lilypond-book.py:425
+msgid "Processing..."
+msgstr "Επεξεργασία…"
+
+#: lilypond-book.py:431
+msgid "All snippets are up to date..."
+msgstr "Όλα τα κομμάτια είναι ενήμερα…"
+
+#: lilypond-book.py:452
+#, python-format
+msgid "cannot determine format for: %s"
+msgstr "αδυναμία προσδιορισμού μορφής για: %s"
+
+#: lilypond-book.py:461
+#, python-format
+msgid "%s is up to date."
+msgstr "%s είναι ενήμερο."
+
+#: lilypond-book.py:475
+#, python-format
+msgid "Writing `%s'..."
+msgstr "Εγγραφή `%s'…"
+
+#: lilypond-book.py:537
+msgid "Output would overwrite input file; use --output."
+msgstr "Η έξοδος θα διέγραφε το αρχείο εισόδου, χρησιμοποιήστε --output."
+
+#: lilypond-book.py:541
+#, python-format
+msgid "Reading %s..."
+msgstr "Ανάγνωση %s..."
+
+#: lilypond-book.py:549
+msgid "Dissecting..."
+msgstr "Ανάλυση…"
+
+#: lilypond-book.py:561
+#, python-format
+msgid "Compiling %s..."
+msgstr "Μεταγλώττιση %s…"
+
+#: lilypond-book.py:570
+#, python-format
+msgid "Processing include: %s"
+msgstr "Η επεξεργασία περιλαμβάνει: %s"
+
+#: lilypond-book.py:582
+#, python-format
+msgid "Removing `%s'"
+msgstr "Αφαίρεση `%s'"
+
+#: midi2ly.py:99
+msgid "warning: "
+msgstr "προειδοποίηση:"
+
+#: midi2ly.py:102 midi2ly.py:922
+msgid "error: "
+msgstr "σφάλμα:"
+
+#: midi2ly.py:103
+msgid "Exiting... "
+msgstr "Έξοδος…"
+
+#: midi2ly.py:848
+#, python-format
+msgid "%s output to `%s'..."
+msgstr "%s έξοδος σε `%s'…"
+
+#: midi2ly.py:861
+#, python-format
+msgid "Convert %s to LilyPond input.\n"
+msgstr "Μετατροπή %s σε είσοδο του  LilyPond.\n"
+
+#: midi2ly.py:866
+msgid "print absolute pitches"
+msgstr "εμφάνιση απόλυτων τονικών υψών"
+
+#: midi2ly.py:868 midi2ly.py:883
+msgid "DUR"
+msgstr "DUR"
+
+#: midi2ly.py:869
+msgid "quantise note durations on DUR"
+msgstr "ποσοτικοποίηση των διαρκειών των νοτών στο DUR"
+
+#: midi2ly.py:872
+msgid "print explicit durations"
+msgstr "εμφάνιση ακριβών διαρκειών"
+
+#: midi2ly.py:876
+msgid "set key: ALT=+sharps|-flats; MINOR=1"
+msgstr "ορισμός κλειδιού: ALT=+διέσεις|-υφέσεις; MINOR=1"
+
+#: midi2ly.py:877
+msgid "ALT[:MINOR]"
+msgstr "ALT[:MINOR]"
+
+#: midi2ly.py:882
+msgid "quantise note starts on DUR"
+msgstr "ποσοτικοποίηση των ενάρξεων των νοτών στο DUR"
+
+#: midi2ly.py:885
+msgid "DUR*NUM/DEN"
+msgstr "DUR*NUM/DEN"
+
+#: midi2ly.py:888
+msgid "allow tuplet durations DUR*NUM/DEN"
+msgstr "να επιτρέπονται διάρκειες τρίηχων κλπ DUR*NUM/DEN"
+
+#: midi2ly.py:900
+msgid "treat every text as a lyric"
+msgstr "κάθε κείμενο να αντιμετωπίζεται ως στίχοι"
+
+#: midi2ly.py:903
+msgid "Examples"
+msgstr "Παραδείγματα"
+
+#: midi2ly.py:923
+msgid "no files specified on command line."
+msgstr "δεν ορίσθηκαν αρχεία στη γραμμή εντολών."
+
+#: musicxml2ly.py:324
+#, python-format
+msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgstr "Βρέθηκε αρχείο που δημιουργήθηκε από %s, που περιέχει λάθος πληροφορίες για τις οριζόντιες γραμμές. Όλες οι πληροφορίες για αυτές στο αρχείο MusicXML θα αγνοηθούν "
+
+#: musicxml2ly.py:340 musicxml2ly.py:342
+#, python-format
+msgid "Unprocessed PartGroupInfo %s encountered"
+msgstr "Προέκυψε ανεπεξέργαστο PartGroupInfo %s"
+
+#: musicxml2ly.py:595
+#, python-format
+msgid "Encountered note at %s without type and duration (=%s)"
+msgstr "Βρέθηκε νότα στο %s χωρίς τύπο και διάρκεια (=%s)"
+
+#: musicxml2ly.py:615
+#, python-format
+msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
+msgstr "Προέκυψε κλασματική διάρκεια με παρονομαστή %s, αδύνατη η μετατροπή σε διάρκεια του lilypond"
+
+#: musicxml2ly.py:864
+msgid "Unable to extract key signature!"
+msgstr "Μη αναμενόμενη υπογραφή κλειδιού!"
+
+#: musicxml2ly.py:891
+#, python-format
+msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
+msgstr "άγνωστος τρόπος %s, αναμένεται 'μείζονα' ή 'ελάσσονα' ή κάποιος εκκλησιαστικός τρόπος!"
+
+#: musicxml2ly.py:1029
+#, python-format
+msgid "Encountered unprocessed marker %s\n"
+msgstr "Προέκυψε ανεπεξέργαστος δείκτης %s\n"
+
+#: musicxml2ly.py:1123
+#, python-format
+msgid "unknown span event %s"
+msgstr "γεγονός άγνωστης έκτασης %s"
+
+#: musicxml2ly.py:1133
+#, python-format
+msgid "unknown span type %s for %s"
+msgstr "άγνωστος τύπος έκτασης %s για %s"
+
+#: musicxml2ly.py:1553
+msgid "Unknown metronome mark, ignoring"
+msgstr "Άγνωστο σημάδι μετρονόμου, αγνόηση"
+
+#. TODO: Implement the other (more complex) way for tempo marks!
+#: musicxml2ly.py:1558
+msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
+msgstr "Σημεία μετρονόμου με πολύπλοκες σχέσεις (<metronome-note> σε MusicXML) δεν έχουν υλοποιηθεί ακόμη."
+
+#: musicxml2ly.py:1760
+#, python-format
+msgid "Unable to convert chord type %s to lilypond."
+msgstr "Αδυναμία μετατροπής τύπου συγχορδίας %s σε lilypond."
+
+#: musicxml2ly.py:1909
+#, python-format
+msgid "drum %s type unknown, please add to instrument_drumtype_dict"
+msgstr "άγνωστος τύπος τυμπάνου %s, παρακαλώ προσθέστε στο instrument_drumtype_dict"
+
+#: musicxml2ly.py:1913
+msgid "cannot find suitable event"
+msgstr "αδυναμία εύρεσης κατάλληλου γεγονότος"
+
+#: musicxml2ly.py:2061
+#, python-format
+msgid "Negative skip %s (from position %s to %s)"
+msgstr "Αρνητική παράβλεψη %s (από τη θέση %s στην %s)"
+
+#: musicxml2ly.py:2202
+#, python-format
+msgid "Negative skip found: from %s to %s, difference is %s"
+msgstr "Βρέθηκε αρνητική παράβλεψη: από %s έως %s, η διαφορά είναι %s"
+
+#: musicxml2ly.py:2283
+#, python-format
+msgid "unexpected %s; expected %s or %s or %s"
+msgstr "μη αναμενόμενo %s. Αναμενόταν %s ή %s ή %s"
+
+#: musicxml2ly.py:2389
+msgid "Encountered closing slur, but no slur is open"
+msgstr "Βρέθηκε κλείσιμο σύνδεσης προσωδίας αλλά δεν υπάρχει άνοιγμα"
+
+#: musicxml2ly.py:2392
+msgid "Cannot have two simultaneous (closing) slurs"
+msgstr "Δεν μπορεί να υπάρχουν δύο τατυτόχρονες (που να κλείνουν) συνδέσεις προσωδιών"
+
+#: musicxml2ly.py:2401
+msgid "Cannot have a slur inside another slur"
+msgstr "Δεν μπορεί να υπάρχει σύνδεση προσωδίας μέσα σε άλλη σύνδεση"
+
+#: musicxml2ly.py:2404
+msgid "Cannot have two simultaneous slurs"
+msgstr "Δεν μπορεί να υπάρχουν δύο ταυτόχρονες συνδέσεις προσωδίας"
+
+#: musicxml2ly.py:2538
+#, python-format
+msgid "cannot simultaneously have more than one mode: %s"
+msgstr "δεν μπορεί να υπάρχουν πάνω από ένας τρόποι ταυτόχρονα: %s"
+
+#: musicxml2ly.py:2646
+msgid "Converting to LilyPond expressions..."
+msgstr "Μετατροπή σε εκφράσεις του LilyPond…"
+
+#: musicxml2ly.py:2657
+msgid "musicxml2ly [OPTION]... FILE.xml"
+msgstr "musicxml2ly [OPTION]... FILE.xml"
+
+#: musicxml2ly.py:2659
+msgid ""
+"Convert MusicXML from FILE.xml to LilyPond input.\n"
+"If the given filename is -, musicxml2ly reads from the command line.\n"
+msgstr ""
+"Μετατροπή MusicXML από FILE.xml σε είσοδο του LilyPond.\n"
+"Αν το δοθέν όνομα αρχείου είναι -, το musicxml2ly διαβάζει από τη γραμμή εντολών.\n"
+
+#: musicxml2ly.py:2669
+msgid ""
+"Copyright (c) 2005--2010 by\n"
+"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
+"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
+"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
+msgstr ""
+"Copyright (c) 2005--2010 από\n"
+"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
+"    Jan Nieuwenhuizen <janneke@gnu.org> και\n"
+"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
+
+#: musicxml2ly.py:2694
+msgid "use lxml.etree; uses less memory and cpu time"
+msgstr "χρησιμοποιήστε το lxml.etree. Χρησιμοποιεί λιγότερη μνήμη και χρόνο επεξεργαστή"
+
+#: musicxml2ly.py:2700
+msgid "input file is a zip-compressed MusicXML file"
+msgstr "το αρχείο εισαγωγής είναι ένα συμπιεσμένο με zip αρχείο MusicXML"
+
+#: musicxml2ly.py:2706
+msgid "convert pitches in relative mode (default)"
+msgstr "μετατροπή τονικών υψών σε σχετικό τρόπο (προεπιλογή)"
+
+#: musicxml2ly.py:2711
+msgid "convert pitches in absolute mode"
+msgstr "μετατροπή τονικών υψών σε απόλυτο τρόπο"
+
+#: musicxml2ly.py:2714
+msgid "LANG"
+msgstr "LANG"
+
+#: musicxml2ly.py:2716
+msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
+msgstr "χρήση του LANG για τα ονόματα των νοτών, π.χ. 'deutsch' για ονόματα στα Γερμανικά"
+
+#: musicxml2ly.py:2722
+msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
+msgstr "να μη μετατρέπονται οι οδηγίες (^, _ ή -) για άρθρωση, δυναμική κλπ."
+
+#: musicxml2ly.py:2728
+msgid "do not convert exact vertical positions of rests"
+msgstr "να μη γίνει μετατροπή των απόλυτων κάθετων θέσεων των παύσεων"
+
+#: musicxml2ly.py:2734
+msgid "do not convert the exact page layout and breaks"
+msgstr "να μη γίνει μετατροπή της ακριβούς διάταξης σελίδας και αλλαγών γραμμής"
+
+#: musicxml2ly.py:2740
+msgid "do not convert beaming information, use lilypond's automatic beaming instead"
+msgstr "να μη μετατραπούν οι πληροφορίες για οριζόντιες γραμμές, χρήση της αυτόματης διαδικασίας του lilypond"
+
+#: musicxml2ly.py:2748
+msgid "set output filename to FILE, stdout if -"
+msgstr "ορισμός αρχείου εξόδου σε FILE, stdout if -"
+
+#: musicxml2ly.py:2831
+#, python-format
+msgid "unknown part in part-list: %s"
+msgstr "άγνωστο μέρος στην part-list: %s"
+
+#: musicxml2ly.py:2893
+msgid "Input is compressed, extracting raw MusicXML data from stdin"
+msgstr "Το αρχείο εισαγωγής είναι συμπιεσμένο, εξαγωγή ακατέργαστων δεδομένων MusicXML από το stdin"
+
+#: musicxml2ly.py:2896
+#, python-format
+msgid "Input file %s is compressed, extracting raw MusicXML data"
+msgstr "Το αρχείο εισαγωγής %s είναι συμπιεσμένο, εξαγωγή ακατέργαστων δεδομένων MusicXML"
+
+#: musicxml2ly.py:2926
+msgid "Reading MusicXML from Standard input ..."
+msgstr "Ανάγνωση MusicXML από την Προκαθορισμένη είσοδο …"
+
+#: musicxml2ly.py:2928
+#, python-format
+msgid "Reading MusicXML from %s ..."
+msgstr "Ανάγνωση MusicXML από %s …"
+
+#: musicxml2ly.py:2961
+#, python-format
+msgid "Output to `%s'"
+msgstr "Έξοδος σε `%s'"
+
+#: musicxml2ly.py:3028
+#, python-format
+msgid "Unable to find input file %s"
+msgstr "Αδυναμία εύρεσης αρχείου εισόδου %s"
+
+#: website_post.py:115
+msgid "English"
+msgstr "Αγγλικά"
+
+#: website_post.py:118
+msgid "Other languages"
+msgstr "Άλλες γλώσσες"
+
+#: getopt-long.cc:153
+#, c-format
+msgid "option `%s' requires an argument"
+msgstr "η επιλογή `%s' απαιτεί ένα όρισμα"
+
+#: getopt-long.cc:157
+#, c-format
+msgid "option `%s' does not allow an argument"
+msgstr "η επιλογή `%s' δεν επιτρέπει όρισμα"
+
+#: getopt-long.cc:161
+#, c-format
+msgid "unrecognized option: `%s'"
+msgstr "μη αναγνωρίσιμη επιλογή: `%s'"
+
+#: getopt-long.cc:167
+#, c-format
+msgid "invalid argument `%s' to option `%s'"
+msgstr "μη έγκυρο όρισμα `%s' στην επιλογή `%s'"
+
+#: warn.cc:59
+#, c-format
+msgid "success: %s"
+msgstr "επιτυχία: %s"
+
+#: warn.cc:86 grob.cc:617 input.cc:97
+#, c-format
+msgid "programming error: %s"
+msgstr "σφάλμα προγράμματος: %s"
+
+#: warn.cc:87 input.cc:98
+msgid "continuing, cross fingers"
+msgstr "συνέχεια, σταυρώστε τα δάχτυλά σας"
+
+#: accidental-engraver.cc:180
+#, c-format
+msgid "accidental typesetting list must begin with context-name: %s"
+msgstr "η λίστα καθορισμού τύπου των σημείων αλλοιώσεως πρέπει να ξεκινά με context-name: %s"
+
+#: accidental-engraver.cc:210
+#, c-format
+msgid "procedure or context-name expected for accidental rule, found %s"
+msgstr "αναμενόταν διαδικασία ή context-name για τον κανόνα σημείου αλλοιώσεως, βρέθηκε %s"
+
+#: accidental.cc:200
+#, c-format
+msgid "Could not find glyph-name for alteration %s"
+msgstr "Αδυναμία εύρεσης ονόματος συμβόλου για αλλοίωση %s"
+
+#: accidental.cc:215
+msgid "natural alteration glyph not found"
+msgstr "δεν βρέθηκε σύμβολο φυσικής αλλοίωσης"
+
+#: all-font-metrics.cc:156
+#, c-format
+msgid "cannot find font: `%s'"
+msgstr "αδυναμία εύρεσης γραμματοσειράς: `%s'"
+
+#: apply-context-iterator.cc:42
+msgid "\\applycontext argument is not a procedure"
+msgstr "το όρισμα \\applycontext δεν είναι διεργασία"
+
+#: auto-change-iterator.cc:74 change-iterator.cc:72
+#, c-format
+msgid "cannot change, already in translator: %s"
+msgstr "αδυναμία αλλαγής, ήδη στο μεταφραστή: %s"
+
+#: axis-group-engraver.cc:94
+msgid "Axis_group_engraver: vertical group already has a parent"
+msgstr "Axis_group_engraver: η κάθετη ομάδα έχει ήδη γονικό"
+
+#: axis-group-engraver.cc:95
+msgid "are there two Axis_group_engravers?"
+msgstr "υπάρχουν δύο Axis_group_engravers;"
+
+#: axis-group-engraver.cc:96
+msgid "removing this vertical group"
+msgstr "αφαίρεση αυτής της κάθετης ομάδας"
+
+#: axis-group-interface.cc:611
+msgid "an outside-staff object should have a direction, defaulting to up"
+msgstr "ένα εκτός πενταγράμμου αντικείμενο θα πρέπει να έχει μια κατεύθυνση, προεπιλογή επάνω"
+
+#: bar-check-iterator.cc:84
+#, c-format
+msgid "barcheck failed at: %s"
+msgstr "έλεγχος διαστολών απέτυχε σε: %s"
+
+#: beam-engraver.cc:147
+msgid "already have a beam"
+msgstr "ήδη έχει οριζόντια γραμμή"
+
+#: beam-engraver.cc:230
+msgid "unterminated beam"
+msgstr "μη τερματισμένη γραμμή"
+
+#: beam-engraver.cc:266 chord-tremolo-engraver.cc:150
+msgid "stem must have Rhythmic structure"
+msgstr "το στέλεχος πρέπει να έχει δομή Rhythmic"
+
+#: beam-engraver.cc:274
+msgid "stem does not fit in beam"
+msgstr "το στέλεχος δεν χωράει στην οριζόντια γραμμή"
+
+#: beam-engraver.cc:275
+msgid "beam was started here"
+msgstr "η οριζόντια γραμμή ξεκίνησε εδώ"
+
+#: beam-quanting.cc:314
+msgid "no feasible beam position"
+msgstr "ανέφικτη θέση οριζόντιας γραμμής"
+
+#: beam.cc:171
+msgid "removing beam with no stems"
+msgstr "αφαίρεση οριζόντιας γραμμής χωρίς στελέχη"
+
+#: beam.cc:1116
+msgid "no viable initial configuration found: may not find good beam slope"
+msgstr "βρέθηκε ανέφικτη αρχική διαμόρφωση: μπορεί να μη βρεθεί καλή κλίση για την οριζόντια γραμμή"
+
+#: break-alignment-interface.cc:206
+#, c-format
+msgid "No spacing entry from %s to `%s'"
+msgstr "Δεν υπάρχει καταχώρηση απόστασης από %s σε `%s'"
+
+#: change-iterator.cc:34
+#, c-format
+msgid "cannot change `%s' to `%s'"
+msgstr "αδυναμία αλλαγής `%s' σε `%s'"
+
+#. FIXME: constant error message.
+#: change-iterator.cc:93
+msgid "cannot find context to switch to"
+msgstr "αδυναμία εύρεσης περιεχομένου για εναλλαγή"
+
+#. We could change the current translator's id, but that would make
+#. errors hard to catch.
+#.
+#. last->translator_id_string () = get_change
+#. ()->change_to_id_string ();
+#: change-iterator.cc:102
+#, c-format
+msgid "not changing to same context type: %s"
+msgstr "δεν αλλάζει στον ίδιο τύπο περιεχομένου: %s"
+
+#. FIXME: uncomprehensable message
+#: change-iterator.cc:106
+msgid "none of these in my family"
+msgstr "κανένα από αυτά στην οικογένειά μου"
+
+#: chord-tremolo-engraver.cc:88
+msgid "No tremolo to end"
+msgstr "Δεν υπάρχει τρέμολο για να τερματιστεί"
+
+#: chord-tremolo-engraver.cc:109
+msgid "unterminated chord tremolo"
+msgstr "μη τερματισμένο τρέμολο συγχορδίας"
+
+#: clef.cc:65
+#, c-format
+msgid "clef `%s' not found"
+msgstr "το κλειδί `%s' δεν βρέθηκε"
+
+#: cluster.cc:120
+#, c-format
+msgid "unknown cluster style `%s'"
+msgstr "άγνωστο στυλ συγχορδίας `%s'"
+
+#: cluster.cc:157
+msgid "junking empty cluster"
+msgstr "απόρριψη άδειας συγχορδίας"
+
+#: coherent-ligature-engraver.cc:111
+#, c-format
+msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
+msgstr "Coherent_ligature_engraver: καθορισμός `spacing-increment=0.01': ptr=%ul"
+
+#. if we get to here, just put everything on one line
+#: constrained-breaking.cc:189 constrained-breaking.cc:207
+msgid "cannot find line breaking that satisfies constraints"
+msgstr "αδυναμία εύρεσης αλλαγής γραμμής που να ικανοποιεί τους περιορισμούς"
+
+#: context-property.cc:42
+msgid "need symbol arguments for \\override and \\revert"
+msgstr "χρειάζονται ορίσματα συμβόλων για \\override και \\revert"
+
+#: context.cc:149
+#, c-format
+msgid "cannot find or create new `%s'"
+msgstr "αδυναμία εύρεσης ή δημιουργίας νέου `%s'"
+
+#: context.cc:207
+#, c-format
+msgid "cannot find or create `%s' called `%s'"
+msgstr "αδυναμία εύρεσης ή δημιουργίας `%s' με όνομα `%s'"
+
+#: context.cc:269
+#, c-format
+msgid "Invalid CreateContext event: Cannot create %s context"
+msgstr "Άκυρο γεγονός CreateContext: Αδυναμία δημιουργίας περιεχομένου %s"
+
+#: context.cc:400
+#, c-format
+msgid "cannot find or create: `%s'"
+msgstr "αδυναμία εύρεσης ή δημιουργίας `%s'"
+
+#: custos.cc:88
+#, c-format
+msgid "custos `%s' not found"
+msgstr "δεν βρέθηκε το custos `%s'"
+
+#: dispatcher.cc:82
+msgid "Event class should be a symbol"
+msgstr "Η κλάση του γεγονότος θα έπρεπε να είναι σύμβολο"
+
+#: dispatcher.cc:89
+#, c-format
+msgid "Unknown event class %s"
+msgstr "Άγνωστη κλάση γεγονότος %s"
+
+#: dots.cc:48
+#, c-format
+msgid "dot `%s' not found"
+msgstr "τελεία `%s' δεν βρέθηκε"
+
+#: dynamic-engraver.cc:197
+msgid "cannot find start of (de)crescendo"
+msgstr "αδυναμία εύρεσης αρχής του (ντε)κρεσέντο"
+
+#: dynamic-engraver.cc:206
+msgid "already have a decrescendo"
+msgstr "υπάρχει ήδη ντεκρεσέντο"
+
+#: dynamic-engraver.cc:208
+msgid "already have a crescendo"
+msgstr "υπάρχει ήδη κρεσέντο"
+
+#: dynamic-engraver.cc:211
+msgid "cresc starts here"
+msgstr "το κρεσέντο αρχίζει εδώ"
+
+#: dynamic-engraver.cc:339
+msgid "unterminated (de)crescendo"
+msgstr "μη τερματισμένο (ντε)κρεσέντο"
+
+#: episema-engraver.cc:75
+msgid "already have an episema"
+msgstr "ήδη έχει επίσημα"
+
+#: episema-engraver.cc:88
+msgid "cannot find start of episema"
+msgstr "αδυναμία εύρεσης αρχής επισήματος"
+
+#: episema-engraver.cc:137
+msgid "unterminated episema"
+msgstr "μη τερματισμένη επίσημα"
+
+#: extender-engraver.cc:170 extender-engraver.cc:179
+msgid "unterminated extender"
+msgstr "μη τερματισμένη επέκταση"
+
+#: font-config-scheme.cc:152 font-config.cc:55
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "αποτυχία προσθήκης καταλόγου γραμματοσειράς: %s"
+
+#: font-config-scheme.cc:154 font-config.cc:57
+#, c-format
+msgid "adding font directory: %s"
+msgstr "προσθήκη καταλόγου γραμματοσειράς: %s"
+
+#: font-config-scheme.cc:168
+#, c-format
+msgid "failed adding font file: %s"
+msgstr "αποτυχία προσθήκης αρχείου γραμματοσειράς: %s"
+
+#: font-config-scheme.cc:170
+#, c-format
+msgid "adding font file: %s"
+msgstr "προσθήκη αρχείου γραμματοσειράς: %s"
+
+#: font-config.cc:40
+msgid "Initializing FontConfig..."
+msgstr "Αρχικοποίηση FontConfig…"
+
+#: font-config.cc:61
+msgid "Building font database..."
+msgstr "Κατασκευή βάσης δεδομένων γραμματοσειρών…"
+
+#: general-scheme.cc:305
+msgid "infinity or NaN encountered while converting Real number"
+msgstr "βρέθηκε άπειρο ή αοριστία κατά τη μετατροπή πραγματικού αριθμού"
+
+#: general-scheme.cc:306
+msgid "setting to zero"
+msgstr "ορισμός σε μηδέν"
+
+#: general-scheme.cc:542 output-ps.scm:48
+msgid "Found infinity or nan in output. Substituting 0.0"
+msgstr "Βρέθηκε άπειρο ή αοριστία στο αποτέλεσμα. Αντικατάσταση από 0.0"
+
+#: glissando-engraver.cc:105
+msgid "unterminated glissando"
+msgstr "μη τερματισμένο γκλισάντο"
+
+#: global-context-scheme.cc:96 global-context-scheme.cc:114
+msgid "no music found in score"
+msgstr "δεν βρέθηκε μουσική στην παρτιτούρα"
+
+#: global-context-scheme.cc:104
+msgid "Interpreting music... "
+msgstr "Ερμηνεία μουσικής…"
+
+#: global-context-scheme.cc:127
+#, c-format
+msgid "elapsed time: %.2f seconds"
+msgstr "χρόνος που πέρασε: %.2f δευτερόλεπτα"
+
+#: gregorian-ligature-engraver.cc:70
+#, c-format
+msgid "\\%s ignored"
+msgstr "\\%s αγνοήθηκε"
+
+#: gregorian-ligature-engraver.cc:75
+#, c-format
+msgid "implied \\%s added"
+msgstr "υπονοούμενο \\%s προστέθηκε"
+
+#. ligature may not start with 2nd head of pes or flexa
+#: gregorian-ligature-engraver.cc:224
+msgid "cannot apply `\\~' on first head of ligature"
+msgstr "αδυναμία εφαρμογής `\\~' στην πρώτη κεφαλή της λιγκατούρας"
+
+#. (pitch == prev_pitch)
+#: gregorian-ligature-engraver.cc:236
+msgid "cannot apply `\\~' on heads with identical pitch"
+msgstr "αδυναμία εφαρμογής `\\~' σε κεφαλές με ταυτόσημο τονικό ύψος"
+
+#: grob-interface.cc:68
+#, c-format
+msgid "Unknown interface `%s'"
+msgstr "Άγνωστη διεπαφή `%s'"
+
+#: grob-interface.cc:79
+#, c-format
+msgid "Grob `%s' has no interface for property `%s'"
+msgstr "Το Grob `%s' δεν έχει διεπαφή για την ιδιότητα `%s'"
+
+#: grob-property.cc:34
+#, c-format
+msgid "%d: %s"
+msgstr "%d: %s"
+
+#: grob-property.cc:173
+#, c-format
+msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)"
+msgstr "κυκλική εξάρτηση: υπολογισμός σε εξέλιξη βρέθηκε για #'%s (%s)"
+
+#: grob.cc:286
+msgid "Infinity or NaN encountered"
+msgstr "Βρέθηκε άπειρο ή αοριστία"
+
+#: hairpin.cc:186
+msgid "decrescendo too small"
+msgstr "πολύ μικρό ντεκρεσέντο"
+
+#: horizontal-bracket-engraver.cc:78
+msgid "do not have that many brackets"
+msgstr "μην βάζετε τόσες πολλές αγκύλες"
+
+#: horizontal-bracket-engraver.cc:87
+msgid "conflicting note group events"
+msgstr "συγκρουόμενα γεγονότα ομάδων νοτών"
+
+#: hyphen-engraver.cc:104
+msgid "removing unterminated hyphen"
+msgstr "αφαίρεση μη τερματισμένης ένωσης"
+
+#: hyphen-engraver.cc:118
+msgid "unterminated hyphen; removing"
+msgstr "μη τερματισμένη ένωση, αφαίρεση"
+
+#: includable-lexer.cc:71 lily-guile.cc:87 lily-parser-scheme.cc:109
+#, c-format
+msgid "cannot find file: `%s'"
+msgstr "αδυναμία εύρεσης αρχείου: `%s'"
+
+#: includable-lexer.cc:73 lily-parser-scheme.cc:100
+#, c-format
+msgid "(search path: `%s')"
+msgstr "(διαδρομή αναζήτησης: `%s')"
+
+#: input.cc:131 source-file.cc:179 source-file.cc:194
+msgid "position unknown"
+msgstr "άγνωστη θέση"
+
+#: key-signature-interface.cc:78
+#, c-format
+msgid "No glyph found for alteration: %s"
+msgstr "Δεν βρέθηκε σύμβολο για την αλλοίωση: %s"
+
+#: key-signature-interface.cc:88
+msgid "alteration not found"
+msgstr "δεν βρέθηκε αλλοίωση"
+
+#: ligature-bracket-engraver.cc:73 ligature-engraver.cc:104
+msgid "cannot find start of ligature"
+msgstr "αδυναμία εύρεσης αρχής λιγκατούρας"
+
+#: ligature-bracket-engraver.cc:86 ligature-engraver.cc:131
+msgid "already have a ligature"
+msgstr "υπάρχει ήδη λιγκατούρα"
+
+#: ligature-engraver.cc:109
+msgid "no right bound"
+msgstr "δεν υπάρχει δεξί όριο"
+
+#: ligature-engraver.cc:140
+msgid "no left bound"
+msgstr "δεν υπάρχει αριστερό όριο"
+
+#: ligature-engraver.cc:185
+msgid "unterminated ligature"
+msgstr "μη τερματισμένη λιγκατούρα"
+
+#: ligature-engraver.cc:214
+msgid "ignoring rest: ligature may not contain rest"
+msgstr "αγνόηση παύσης: η λιγκατούρα δεν μπορεί να περιέχει παύση"
+
+#: ligature-engraver.cc:215
+msgid "ligature was started here"
+msgstr "η λιγκατούρα ξεκίνησε εδώ"
+
+#: lily-guile.cc:89
+#, c-format
+msgid "(load path: `%s')"
+msgstr "(διαδρομή φόρτωσης: `%s')"
+
+#: lily-guile.cc:439
+#, c-format
+msgid "cannot find property type-check for `%s' (%s)."
+msgstr "αδυναμία εύρεσης τύπου ιδιότητας - έλεγχος για `%s' (%s)."
+
+#: lily-guile.cc:442
+msgid "perhaps a typing error?"
+msgstr "ίσως τυπογραφικό σφάλμα;"
+
+#: lily-guile.cc:449
+msgid "doing assignment anyway"
+msgstr "εκτέλεση εργασίας έτσι κι αλλιώς"
+
+#: lily-guile.cc:461
+#, c-format
+msgid "type check for `%s' failed; value `%s' must be of type `%s'"
+msgstr "έλεγχος τύπου για `%s' απέτυχε. Η τιμή `%s' πρέπει να είναι τύπου `%s' "
+
+#: lily-lexer.cc:264
+msgid "include files are not allowed in safe mode"
+msgstr "δεν επιτρέπεται να συμπεριλαμβάνονται αρχεία σε κατάσταση ασφαλούς λειτουργίας"
+
+#: lily-lexer.cc:291
+#, c-format
+msgid "identifier name is a keyword: `%s'"
+msgstr "το όνομα ταυτοποιητή είναι μια λέξη κλειδί: `%s'"
+
+#: lily-lexer.cc:312
+#, c-format
+msgid "error at EOF: %s"
+msgstr "σφάλμα στο EOF: %s"
+
+#: lily-parser-scheme.cc:82
+#, c-format
+msgid "Changing working directory to: `%s'"
+msgstr "Αλλαγή καταλόγου εργασίας σε: `%s'"
+
+#: lily-parser-scheme.cc:99
+#, c-format
+msgid "cannot find init file: `%s'"
+msgstr "αδυναμία εύρεσης αρχείου init: `%s'"
+
+#: lily-parser-scheme.cc:118
+#, c-format
+msgid "Processing `%s'"
+msgstr "Επεξεργασία `%s'"
+
+#: lily-parser-scheme.cc:204
+msgid "ly:parser-parse-string is only valid with a new parser.  Use ly:parser-include-string instead."
+msgstr "το ly:parser-parse-string είναι έγκυρο μόνο με νέο αναλυτή. Χρησιμοποιήστε το ly:parser-include-string στη θέση του."
+
+#: lily-parser.cc:106
+msgid "Parsing..."
+msgstr "Ανάλυση…"
+
+#: lily-parser.cc:134
+msgid "braces do not match"
+msgstr "οι αγκύλες δεν ταιριάζουν"
+
+#: lyric-combine-music-iterator.cc:337
+#, c-format
+msgid "cannot find Voice `%s'"
+msgstr "αδυναμία εύρεσης Φωνής `%s'"
+
+#: lyric-engraver.cc:175
+msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
+msgstr "Η συλλαβή στίχου δεν έχει νότα. Χρησιμοποιήστε το \\lyricsto ή το associatedVoice."
+
+#: main.cc:109
+#, c-format
+msgid ""
+"This program is free software.  It is covered by the GNU General Public\n"
+"License and you are welcome to change it and/or distribute copies of it\n"
+"under certain conditions.  Invoke as `%s --warranty' for more\n"
+"information.\n"
+msgstr ""
+"Αυτό το πρόγραμμα είναι ελεύθερο λογισμικό. Καλύπτεται από την GNU General Public\n"
+"License και είστε ευπρόσδεκτος να το αλλάξετε και/ή να διανείμετε αντίγραφά του\n"
+"υπό ορισμένες προϋποθέσεις. Καλέστε ως `%s --warranty' για\n"
+" περισσότερες πληροφορίες.\n"
+
+#: main.cc:115
+msgid ""
+"    This program is free software; you can redistribute it and/or\n"
+"modify it under the terms of the GNU General Public License version 2\n"
+"as published by the Free Software Foundation.\n"
+"\n"
+"    This program is distributed in the hope that it will be useful,\n"
+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n"
+"General Public License for more details.\n"
+"\n"
+"    You should have received a copy of the\n"
+"GNU General Public License along with this program; if not, write to\n"
+"the Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
+"Boston, MA 02111-1307, USA.\n"
+msgstr ""
+"    Αυτό το πρόγραμμα είναι ελεύθερο λογισμικό. Μπορείτε να το αναδιανείμετε και/ή\n"
+"να το τροποποιήσετε υπό τους όρους της GNU General Public License έκδοση 2\n"
+"όπως δημοσιεύεται από το Free Software Foundation.\n"
+"\n"
+"    Αυτό το πρόγραμμα διανέμεται με την ελπίδα ότι θα είναι χρήσιμο,\n"
+"αλλά ΧΩΡΙΣ ΚΑΜΜΙΑ ΕΓΓΥΗΣΗ, χωρίς ούτε καν υπονοούμενη εγγύηση\n"
+"ΕΜΠΟΡΕΥΣΙΜΟΤΗΤΑΣ ή ΚΑΤΑΛΛΗΛΟΤΗΤΑΣ ΓΙΑ ΣΥΓΚΕΚΡΙΜΕΝΟ ΣΚΟΠΟ. Δείτε την GNU\n"
+"General Public License for more details.\n"
+"\n"
+"    Θα πρέπει να έχετε λάβει ένα αντίγραφο της\n"
+"GNU General Public License μαζί με αυτό το πρόγραμμα. Αν όχι γράψτε στο Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
+"Boston, MA 02111-1307, USA.\n"
+
+#: main.cc:146
+msgid "SYM[=VAL]"
+msgstr "SYM[=VAL]"
+
+#: main.cc:147
+msgid ""
+"set Scheme option SYM to VAL (default: #t).\n"
+"Use -dhelp for help."
+msgstr ""
+"ορισμός της επιλογής Σχήματος SYM σε VAL (default: #t).\n"
+"Χρησιμοποιήστε το -dhelp για βοήθεια."
+
+#: main.cc:150
+msgid "EXPR"
+msgstr "EXPR"
+
+#: main.cc:150
+msgid "evaluate scheme code"
+msgstr "αξιολόγηση κώδικα σχήματος"
+
+#. Bug in option parser: --output =foe is taken as an abbreviation
+#. for --output-format.
+#: main.cc:153
+msgid "FORMATs"
+msgstr "FORMATs"
+
+#: main.cc:153
+msgid "dump FORMAT,...  Also as separate options:"
+msgstr "απόρριψη FORMAT,... Επίσης ως ξεχωριστές επιλογές:"
+
+#: main.cc:154
+msgid "generate PDF (default)"
+msgstr "δημιουργία PDF (προεπιλογή)"
+
+#: main.cc:155
+msgid "generate PNG"
+msgstr "δημιουργία PNG"
+
+#: main.cc:156
+msgid "generate PostScript"
+msgstr "δημιουργία PostScript"
+
+#: main.cc:158
+msgid "FIELD"
+msgstr "FIELD"
+
+#: main.cc:158
+msgid ""
+"dump header field FIELD to file\n"
+"named BASENAME.FIELD"
+msgstr ""
+"απόθεση του πεδίου κεφαλίδας FIELD στο αρχείο\n"
+"με όνομα BASENAME.FIELD"
+
+#: main.cc:160
+msgid "add DIR to search path"
+msgstr "προσθήκη DIR στη διαδρομή αναζήτησης"
+
+#: main.cc:161
+msgid "use FILE as init file"
+msgstr "χρήση FILE ως αρχείου αρχικοποίησης"
+
+#: main.cc:163
+msgid "USER, GROUP, JAIL, DIR"
+msgstr "USER, GROUP, JAIL, DIR"
+
+#: main.cc:163
+msgid ""
+"chroot to JAIL, become USER:GROUP\n"
+"and cd into DIR"
+msgstr ""
+"chroot σε JAIL, γίνετε USER:GROUP\n"
+"και cd στο DIR"
+
+#: main.cc:166
+msgid "write output to FILE (suffix will be added)"
+msgstr "εγγραφή εξόδου στο FILE (η επέκταση θα προστεθεί)"
+
+#: main.cc:167
+msgid "relocate using directory of lilypond program"
+msgstr "επανατοποθέτηση με χρήση του καταλόγου του προγράμματος lilypond"
+
+#. Do not update the copyright years here, run `make grand-replace'
+#: main.cc:238
+#, c-format
+msgid ""
+"Copyright (c) %s by\n"
+"%s  and others."
+msgstr ""
+"Copyright (c) %s από\n"
+"%s  και άλλους."
+
+#. No version number or newline here.  It confuses help2man.
+#: main.cc:265
+#, c-format
+msgid "Usage: %s [OPTION]... FILE..."
+msgstr "Χρήση: %s [OPTION]... FILE..."
+
+#: main.cc:267
+msgid "Typeset music and/or produce MIDI from FILE."
+msgstr "Στοιχειοθέτηση μουσικής και/ή παραγωγή MIDI από FILE."
+
+#: main.cc:269
+msgid "LilyPond produces beautiful music notation."
+msgstr "Το LilyPond παράγει όμορφη μουσική σημειογραφία."
+
+#: main.cc:271
+#, c-format
+msgid "For more information, see %s"
+msgstr "Για περισσότερες πληροφορίες, δείτε %s"
+
+#: main.cc:273
+msgid "Options:"
+msgstr "Επιλογές:"
+
+#: main.cc:327
+#, c-format
+msgid "expected %d arguments with jail, found: %u"
+msgstr "αναμένονταν %d ορίσματα με το jail, βρέθηκαν: %u"
+
+#: main.cc:341
+#, c-format
+msgid "no such user: %s"
+msgstr "δεν υπάρχει τέτοιος χρήστης: %s"
+
+#: main.cc:343
+#, c-format
+msgid "cannot get user id from user name: %s: %s"
+msgstr "αδυναμία λήψης id χρήστη από το όνομα χρήστη: %s: %s"
+
+#: main.cc:358
+#, c-format
+msgid "no such group: %s"
+msgstr "δεν υπάρχει τέτοια ομάδα: %s"
+
+#: main.cc:360
+#, c-format
+msgid "cannot get group id from group name: %s: %s"
+msgstr "αδυναμία λήψης id ομάδας από το όνομα ομάδας: %s: %s"
+
+#: main.cc:368
+#, c-format
+msgid "cannot chroot to: %s: %s"
+msgstr "αδυναμία chroot σε: %s: %s"
+
+#: main.cc:375
+#, c-format
+msgid "cannot change group id to: %d: %s"
+msgstr "αδυναμία αλλαγής id ομάδας σε: %d: %s"
+
+#: main.cc:381
+#, c-format
+msgid "cannot change user id to: %d: %s"
+msgstr "αδυναμία αλλαγής id χρήστη σε: %d: %s"
+
+#: main.cc:387
+#, c-format
+msgid "cannot change working directory to: %s: %s"
+msgstr "αδυναμία αλλαγής καταλόγου εργασίας σε: %s: %s"
+
+#: main.cc:628
+#, c-format
+msgid "exception caught: %s"
+msgstr "βρέθηκε εξαίρεση: %s"
+
+#. FIXME: constant error message.
+#: mark-engraver.cc:157
+msgid "rehearsalMark must have integer value"
+msgstr "το rehearsalMark πρέπει να έχει ακέραια τιμή"
+
+#: mark-engraver.cc:163
+msgid "mark label must be a markup object"
+msgstr "η ετικέτα σήμανσης πρέπει να είναι αντικείμενο επισήμανσης"
+
+#: mensural-ligature-engraver.cc:96
+msgid "ligature with less than 2 heads -> skipping"
+msgstr "λιγκατούρα με λιγότερες από 2 κεφαλές -> παράβλεψη"
+
+#: mensural-ligature-engraver.cc:123
+msgid "cannot determine pitch of ligature primitive -> skipping"
+msgstr "αδυναμία καθορισμού νότας έναρξης λιγκατούρας -> παράβλεψη"
+
+#: mensural-ligature-engraver.cc:137
+msgid "single note ligature - skipping"
+msgstr "λιγκατούρα μονής νότας -> παράβλεψη"
+
+#: mensural-ligature-engraver.cc:149
+msgid "prime interval within ligature -> skipping"
+msgstr "περιττό διάστημα εντός λιγκατούρας -> παράβλεψη"
+
+#: mensural-ligature-engraver.cc:161
+msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
+msgstr "μετρική λιγκατούρα: διάρκεια καμία από Mx, L, B, S -> παράβλεψη"
+
+#: mensural-ligature-engraver.cc:209
+msgid "semibrevis must be followed by another one -> skipping"
+msgstr "το ολόκληρο (semibrevis - μετρικής σημειογραφίας) πρέπει να ακολουθείται από άλλο ένα -> παράβλεψη"
+
+#: mensural-ligature-engraver.cc:220
+msgid ""
+"semibreves can only appear at the beginning of a ligature,\n"
+"and there may be only zero or two of them"
+msgstr ""
+"τα ολόκληρα (semibreves - μετρικής σημειογραφίας) εμφανίζονται στην αρχή μιας λιγκατούρας,\n"
+"και μπορεί να υπάρχει μόνο κανένα ή δύο από αυτά"
+
+#: mensural-ligature-engraver.cc:247
+msgid ""
+"invalid ligatura ending:\n"
+"when the last note is a descending brevis,\n"
+"the penultimate note must be another one,\n"
+"or the ligatura must be LB or SSB"
+msgstr ""
+"μη έγκυρος τερματισμός λιγκατούρας:\n"
+"όταν η τελευταία νότα είναι ένα χαμηλότερο brevis (διπλό ολόκληρο μετρικής σημειογραφίας),\n"
+"η προτελευταία νότα πρέπει να είναι άλλο ένα,\n"
+"ή η λιγκατούρα πρέπει να είναι LB ή SSB"
+
+#: mensural-ligature-engraver.cc:367
+msgid "unexpected case fall-through"
+msgstr "μη αναμενόμενη περίπτωση κατάρρευσης"
+
+#: mensural-ligature.cc:152
+msgid "Mensural_ligature: unexpected case fall-through"
+msgstr "Mensural_ligature: μη αναμενόμενη περίπτωση"
+
+#: mensural-ligature.cc:203
+msgid "Mensural_ligature: (join_right == 0)"
+msgstr "Mensural_ligature: (join_right == 0)"
+
+#: midi-item.cc:92
+#, c-format
+msgid "no such MIDI instrument: `%s'"
+msgstr "δεν υπάρχει τέτοιο όργανο MIDI: `%s'"
+
+#: midi-stream.cc:39
+#, c-format
+msgid "cannot open for write: %s: %s"
+msgstr "αδυναμία ανοίγματος για εγγραφή: %s: %s"
+
+#: midi-stream.cc:55
+#, c-format
+msgid "cannot write to file: `%s'"
+msgstr "αδυναμία εγγραφής σε αρχείο: `%s'"
+
+#: minimal-page-breaking.cc:40 paper-score.cc:122
+msgid "Calculating line breaks..."
+msgstr "Υπολογισμός αλλαγών γραμμής…"
+
+#: minimal-page-breaking.cc:44
+msgid "Calculating page breaks..."
+msgstr "Υπολογισμός αλλαγών σελίδας…"
+
+#: music-iterator.cc:182
+msgid "Sending non-event to context"
+msgstr "Αποστολή μη-γεγονότος στο περιεχόμενο"
+
+#: music.cc:151
+#, c-format
+msgid "octave check failed; expected \"%s\", found: \"%s\""
+msgstr "έλεγχος οκτάβας απέτυχε, αναμενόταν «%s», βρέθηκε: «%s»"
+
+#: music.cc:219
+msgid "(normalized pitch)"
+msgstr "(κανονικοποιημένο τονικό ύψος)"
+
+#: music.cc:223
+#, c-format
+msgid "Transposing %s by %s makes alteration larger than double"
+msgstr "Μετάθεση του %s κατά %s κάνει την αλλοίωση μεγαλύτερη από διπλή"
+
+#: new-dynamic-engraver.cc:142
+#, c-format
+msgid ""
+"unknown crescendo style: %s\n"
+"defaulting to hairpin."
+msgstr ""
+"άγνωστο στυλ κρεσέντο: %s\n"
+"χρήση προεπιλεγμένης φουρκέτας."
+
+#: new-dynamic-engraver.cc:200
+#, c-format
+msgid "unterminated %s"
+msgstr "μη τερματισμένο/η %s"
+
+#: new-fingering-engraver.cc:106
+msgid "cannot add text scripts to individual note heads"
+msgstr "αδυναμία προσθήκης κειμένων σε μεμονωμένες κεφαλές νοτών"
+
+#: new-fingering-engraver.cc:250
+msgid "no placement found for fingerings"
+msgstr "δεν βρέθηκε τοποθέτηση για δακτυλισμούς"
+
+#: new-fingering-engraver.cc:251
+msgid "placing below"
+msgstr "τοποθέτηση κάτω"
+
+#: note-collision.cc:497
+msgid "ignoring too many clashing note columns"
+msgstr "αγνόηση υπερβολικά πολλών συγκρουόμενων στηλών με νότες"
+
+#: note-column.cc:135
+msgid "cannot have note heads and rests together on a stem"
+msgstr "δεν γίνεται να υπάρχουν κεφαλές νοτών και παύσεων μαζί σε ένα στέλεχος"
+
+#: note-head.cc:76
+#, c-format
+msgid "none of note heads `%s' or `%s' found"
+msgstr "δεν βρέθηκε καμμία από τις κεφαλές νοτών `%s' ή `%s'"
+
+#: note-heads-engraver.cc:76
+msgid "NoteEvent without pitch"
+msgstr "NoteEvent χωρίς τονικό ύψος"
+
+#: open-type-font.cc:44
+#, c-format
+msgid "cannot allocate %lu bytes"
+msgstr "αδυναμία εκχώρησης %lu bytes"
+
+#: open-type-font.cc:48
+#, c-format
+msgid "cannot load font table: %s"
+msgstr "αδυναμία φόρτωσης πίνακα γραμματοσειρών: %s"
+
+#: open-type-font.cc:53
+#, c-format
+msgid "Free type error: %s"
+msgstr "Σφάλμα ελεύθερης πληκτρολόγησης: %s"
+
+#: open-type-font.cc:111
+#, c-format
+msgid "unsupported font format: %s"
+msgstr "μη υποστηριζόμενη μορφή γραμματοσειράς: %s"
+
+#: open-type-font.cc:113
+#, c-format
+msgid "error reading font file %s: %s"
+msgstr "σφάλμα ανάγνωσης αρχείου γραμματοσειράς %s: %s"
+
+#: open-type-font.cc:188
+#, c-format
+msgid "FT_Get_Glyph_Name () Freetype error: %s"
+msgstr "FT_Get_Glyph_Name () Σφάλμα Freetype: %s"
+
+#: open-type-font.cc:250
+msgid "Invalid index for character"
+msgstr "Μη έγκυρος δείκτης για χαρακτήρας"
+
+#: open-type-font.cc:319 pango-font.cc:187
+#, c-format
+msgid "FT_Get_Glyph_Name () error: %s"
+msgstr "FT_Get_Glyph_Name () σφάλμα: %s"
+
+#. find out the ideal number of pages
+#: optimal-page-breaking.cc:60
+msgid "Finding the ideal number of pages..."
+msgstr "Εύρεση του ιδανικού αριθμού σελίδων…"
+
+#: optimal-page-breaking.cc:87
+msgid "Fitting music on 1 page..."
+msgstr "Ταίριασμα μουσικής σε 1 σελίδα…"
+
+#: optimal-page-breaking.cc:89
+#, c-format
+msgid "Fitting music on %d pages..."
+msgstr "Ταίριασμα μουσικής σε %d σελίδες…"
+
+#: optimal-page-breaking.cc:91
+#, c-format
+msgid "Fitting music on %d or %d pages..."
+msgstr "Ταίριασμα μουσικής σε %d ή %d σελίδες…"
+
+#: optimal-page-breaking.cc:101 optimal-page-breaking.cc:155
+#, c-format
+msgid "trying %d systems"
+msgstr "δοκιμή %d συστημάτων"
+
+#: optimal-page-breaking.cc:120 optimal-page-breaking.cc:183
+#, c-format
+msgid "best score for this sys-count: %f"
+msgstr "καλύτερη παρτιτούρα για αυτό το sys-count: %f"
+
+#: optimal-page-breaking.cc:190 page-turn-page-breaking.cc:248
+#: paper-score.cc:163
+msgid "Drawing systems..."
+msgstr "Σχεδιασμός συστημάτων…"
+
+#: output-def.cc:235
+msgid "margins do not fit with line-width, setting default values"
+msgstr "τα περιθώρια δεν ταιριάζουν με το line-width, χρήση των προεπιλεγμένων τιμών"
+
+#: output-def.cc:242
+msgid "systems run off the page due to improper paper settings, setting default values"
+msgstr "τα συστήματα βγαίνουν εκτός σελίδας λόγω ακατάλληλων ρυθμίσεων χαρτιού, χρήση των προεπιλεγμένων τιμών"
+
+#: page-breaking.cc:194
+msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
+msgstr "αγνοούνται τα min-systems-per-page και max-systems-per-page επειδή έχει ορισθεί το systems-per-page"
+
+#: page-breaking.cc:199
+msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
+msgstr "το min-systems-per-page είναι μεγαλύτερο από το max-systems-per-page, θα αγνοηθούν και οι δύο τιμές"
+
+#: page-layout-problem.cc:315
+#, c-format
+msgid "couldn't fit music on page: overflow is %f"
+msgstr "αδυναμία να χωρέσει η μουσική στη σελίδα: το επιπλέον είναι %f"
+
+#: page-layout-problem.cc:317
+msgid "compressing music to fit"
+msgstr "συμπίεση της μουσικής για να χωρέσει"
+
+#: page-layout-problem.cc:733
+msgid "staff-affinities should only decrease"
+msgstr "το staff-affinities θα πρέπει μόνο να μειώνεται"
+
+#: page-turn-page-breaking.cc:168
+#, c-format
+msgid "page-turn-page-breaking: breaking from %d to %d"
+msgstr "page-turn-page-breaking: αλλαγή από %d σε %d"
+
+#: page-turn-page-breaking.cc:217
+msgid "cannot fit the first page turn onto a single page.  Consider setting first-page-number to an even number."
+msgstr "αδυναμία να χωρέσει η πρώτη αλλαγή σελίδας σε μία σελίδα. Σκεφθείτε να ορίσετε το first-page-number σε ζυγό αριθμό."
+
+#: page-turn-page-breaking.cc:230
+#, c-format
+msgid "Calculating page and line breaks (%d possible page breaks)..."
+msgstr "Υπολογισμός αλλαγών σελίδας και γραμμής (%d δυνατές αλλαγές σελίδας)…"
+
+#: page-turn-page-breaking.cc:297
+#, c-format
+msgid "break starting at page %d"
+msgstr "αλλαγή που αρχίζει στη σελίδα %d"
+
+#: page-turn-page-breaking.cc:298
+#, c-format
+msgid "\tdemerits: %f"
+msgstr "\tdemerits: %f"
+
+#: page-turn-page-breaking.cc:299
+#, c-format
+msgid "\tsystem count: %d"
+msgstr "\tsystem καταμέτρηση: %d"
+
+#: page-turn-page-breaking.cc:300
+#, c-format
+msgid "\tpage count: %d"
+msgstr "\tpage καταμέτρηση: %d"
+
+#: page-turn-page-breaking.cc:301
+#, c-format
+msgid "\tprevious break: %d"
+msgstr "\tprevious αλλαγή: %d"
+
+#: pango-font.cc:204
+#, c-format
+msgid ""
+"Glyph has no name, but font supports glyph naming.\n"
+"Skipping glyph U+%0X, file %s"
+msgstr ""
+"Το σύμβολο δεν έχει όνομα αλλά η γραμματοσειρά υποστηρίζει ονόματα συμβόλων.\n"
+"Παράβλεψη συμβόλου U+%0X, αρχείο %s"
+
+#: pango-font.cc:241
+#, c-format
+msgid "no PostScript font name for font `%s'"
+msgstr "δεν υπάρχει PostScript όνομα γραμματοσειράς για τη γραμματοσειρά `%s'"
+
+#: pango-font.cc:290
+msgid "FreeType face has no PostScript font name"
+msgstr "Το FreeType face δεν έχει όνομα γραμματοσειράς PostScript"
+
+#: paper-book.cc:214
+#, c-format
+msgid "program option -dprint-pages not supported by backend `%s'"
+msgstr "η επιλογή προγράμματος -dprint-pages δεν υποστηρίζεται από το σύστημα υποστήριξης `%s'"
+
+#: paper-book.cc:233
+#, c-format
+msgid "program option -dpreview not supported by backend `%s'"
+msgstr "η επιλογή προγράμματος -dpreview δεν υποστηρίζεται από το σύστημα υποστήριξης `%s'"
+
+#: paper-column-engraver.cc:233
+msgid "forced break was overridden by some other event, should you be using bar checks?"
+msgstr "η εξαναγκασμένη αλλαγή παρακάμφθηκε από κάποιο άλλο γεγονός, μήπως θα έπρεπε να χρησιμοποιείτε ελέγχους μέτρων;"
+
+#: paper-outputter-scheme.cc:41
+#, c-format
+msgid "Layout output to `%s'..."
+msgstr "Εξαγωγή διάταξης σε `%s'…"
+
+#: paper-score.cc:135
+#, c-format
+msgid "Element count %d (spanners %d) "
+msgstr "Καταμέτρηση στοιχείων %d (αλλαγές ρυθμικής αγωγής %d) "
+
+#: paper-score.cc:139
+msgid "Preprocessing graphical objects..."
+msgstr "Προεπεξεργασία γραφικών αντικειμένων…"
+
+#: parse-scm.cc:101
+msgid "GUILE signaled an error for the expression beginning here"
+msgstr "Το GUILE επεσήμανε ένα λάθος για την έκφραση που αρχίζει εδώ"
+
+#: partial-iterator.cc:45
+msgid "trying to use \\partial after the start of a piece"
+msgstr "προσπάθεια χρήσης του \\partial μετά την αρχή ενός κομματιού"
+
+#: percent-repeat-engraver.cc:213
+msgid "unterminated percent repeat"
+msgstr "μη τερματισμένη ποσοστιαία επανάληψη"
+
+#: performance.cc:54
+msgid "Track..."
+msgstr "Κομμάτι…"
+
+#: performance.cc:83
+msgid "MIDI channel wrapped around"
+msgstr "Κανάλι MIDI περιτυλιγμένο"
+
+#: performance.cc:84
+msgid "remapping modulo 16"
+msgstr "αναχαρτογράφηση modulo 16"
+
+#: performance.cc:111
+#, c-format
+msgid "MIDI output to `%s'..."
+msgstr "Έξοδος MIDI σε `%s'…"
+
+#: phrasing-slur-engraver.cc:157
+msgid "unterminated phrasing slur"
+msgstr "μη τερματισμένο λεγκάτο φράσης"
+
+#: piano-pedal-engraver.cc:298
+#, c-format
+msgid "expect 3 strings for piano pedals, found: %ld"
+msgstr "αναμένονται 3 χορδές για πεντάλ πιάνου, βρέθηκαν: %ld"
+
+#: piano-pedal-engraver.cc:313 piano-pedal-engraver.cc:324
+#: piano-pedal-performer.cc:104
+#, c-format
+msgid "cannot find start of piano pedal: `%s'"
+msgstr "αδυναμία εύρεσης αρχής πεντάλ πιάνου: `%s'"
+
+#: piano-pedal-engraver.cc:359
+#, c-format
+msgid "cannot find start of piano pedal bracket: `%s'"
+msgstr "αδυναμία εύρεσης αγκύλης για αρχή πεντάλ πιάνου: `%s'"
+
+#: program-option-scheme.cc:237
+#, c-format
+msgid "no such internal option: %s"
+msgstr "δεν υπάρχει τέτοια εσωτερική επιλογή: %s"
+
+#: property-iterator.cc:85
+#, c-format
+msgid "not a grob name, `%s'"
+msgstr "δεν είναι όνομα grob, `%s'"
+
+#: relative-octave-check.cc:49
+msgid "Failed octave check, got: "
+msgstr "Αποτυχία ελέγχου οκτάβας, προέκυψε:"
+
+#: relocate.cc:54
+#, c-format
+msgid "Setting %s to %s"
+msgstr "Ορισμός %s σε %s"
+
+#: relocate.cc:74
+#, c-format
+msgid "no such file: %s for %s"
+msgstr "δεν υπάρχει τέτοιο αρχείο: %s για %s"
+
+#: relocate.cc:84 relocate.cc:102
+#, c-format
+msgid "no such directory: %s for %s"
+msgstr "δεν υπάρχει τέτοιος κατάλογος: %s για %s"
+
+#: relocate.cc:94
+#, c-format
+msgid "%s=%s (prepend)\n"
+msgstr "%s=%s (προηγείται)\n"
+
+#: relocate.cc:124
+#, c-format
+msgid "not relocating, no %s/ or current/ found under %s"
+msgstr "μη επανατοποθέτηση, δεν βρέθηκε  %s/ ή current/ κάτω από το %s"
+
+#: relocate.cc:135
+#, c-format
+msgid "Relocation: compile datadir=%s, new datadir=%s"
+msgstr "Επανατοποθέτηση: compile datadir=%s, νέο datadir=%s"
+
+#: relocate.cc:148
+#, c-format
+msgid "Relocation: framework_prefix=%s"
+msgstr "Επανατοποθέτηση: framework_prefix=%s"
+
+#: relocate.cc:189
+#, c-format
+msgid "Relocation: is absolute: argv0=%s"
+msgstr "Επανατοποθέτηση: είναι απόλυτο: argv0=%s"
+
+#: relocate.cc:196
+#, c-format
+msgid "Relocation: from cwd: argv0=%s"
+msgstr "Επανατοποθέτηση: από cwd: argv0=%s"
+
+#: relocate.cc:205
+#, c-format
+msgid ""
+"Relocation: from PATH=%s\n"
+"argv0=%s"
+msgstr ""
+"Επανατοποθέτηση: από PATH=%s\n"
+"argv0=%s"
+
+#: relocate.cc:239
+msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
+msgstr "Το LILYPONDPREFIX είναι παρωχημένο, χρησιμοποιήστε το LILYPOND_DATADIR"
+
+#: relocate.cc:366
+#, c-format
+msgid "Relocation file: %s"
+msgstr "Αρχείο επανατοποθέτησης: %s"
+
+#: relocate.cc:372 source-file.cc:65
+#, c-format
+msgid "cannot open file: `%s'"
+msgstr "αδυναμία ανοίγματος αρχείου: `%s'"
+
+#: relocate.cc:402
+#, c-format
+msgid "Unknown relocation command %s"
+msgstr "Άγνωστη εντολή επανατοποθέτησης %s"
+
+#: rest-collision-engraver.cc:70
+msgid "rhythmic head is not part of a rhythmic column"
+msgstr "η κεφαλή του ρυθμού δεν είναι μέρος ρυθμικής στήλης"
+
+#: rest-collision.cc:146
+msgid "cannot resolve rest collision: rest direction not set"
+msgstr "αδυναμία επίλυσης σύγκρουσης παύσεων: δεν ορίσθηκε η διεύθυνση των παύσεων"
+
+#: rest-collision.cc:160 rest-collision.cc:205
+msgid "too many colliding rests"
+msgstr "πάρα πολλές συγκρουόμενες παύσεις"
+
+#: rest.cc:159
+#, c-format
+msgid "rest `%s' not found"
+msgstr "η παύση `%s' δεν βρέθηκε"
+
+#: score-engraver.cc:78
+#, c-format
+msgid "cannot find `%s'"
+msgstr "αδυναμία εύρεσης `%s'"
+
+#: score-engraver.cc:80
+msgid "Music font has not been installed properly."
+msgstr "Η γραμματοσειρά μουσικής δεν έχει εγκατασταθεί σωστά."
+
+#: score-engraver.cc:82
+#, c-format
+msgid "Search path `%s'"
+msgstr "Αναζήτηση διαδρομής `%s'"
+
+#: score-engraver.cc:84
+msgid "Aborting"
+msgstr "Ακύρωση"
+
+#: score.cc:178
+msgid "already have music in score"
+msgstr "υπάρχει ήδη μουσική στην παρτιτούρα"
+
+#: score.cc:179
+msgid "this is the previous music"
+msgstr "αυτή είναι η προηγούμενη μουσική"
+
+#: score.cc:184
+msgid "errors found, ignoring music expression"
+msgstr "βρέθηκαν σφάλματα, θα αγνοηθεί η μουσική έκφραση"
+
+#. FIXME:
+#: script-engraver.cc:113
+msgid "do not know how to interpret articulation:"
+msgstr "δεν γνωρίζω πως να ερμηνεύσω την άρθρωση:"
+
+#: script-engraver.cc:114
+msgid " scheme encoding: "
+msgstr "κωδικοποίηση σχήματος:"
+
+#: slur-engraver.cc:93
+#, c-format
+msgid "direction of %s invalid: %d"
+msgstr "μη έγκυρη διεύθυνση του %s: %d"
+
+#: slur-engraver.cc:162
+msgid "unterminated slur"
+msgstr "μη τερματισμένο λεγκάτο"
+
+#: slur-engraver.cc:174
+msgid "cannot end slur"
+msgstr "αδυναμία τελειώματος λεγκάτο"
+
+#: slur.cc:369
+#, c-format
+msgid "Ignoring grob for slur: %s. avoid-slur not set?"
+msgstr "Αγνόηση του grob για το λεγκάτο: %s. το avoid-slur δεν ορίσθηκε;"
+
+#: source-file.cc:85
+#, c-format
+msgid "expected to read %d characters, got %d"
+msgstr "αναμένονταν ανάγνωση %d χαρακτήρων, λήφθηκαν %d"
+
+#: spaceable-grob.cc:94
+#, c-format
+msgid "No spring between column %d and next one"
+msgstr "Δεν υπάρχει μετάβαση μεταξύ της στήλης %d και της επόμενης"
+
+#: stem-engraver.cc:103
+msgid "tremolo duration is too long"
+msgstr "η διάρκεια του τρέμολο είναι πολύ μεγάλη"
+
+#. FIXME:
+#: stem-engraver.cc:140
+#, c-format
+msgid "adding note head to incompatible stem (type = %d)"
+msgstr "προσθήκη κεφαλής νότας σε μη συμβατό στέλεχος (τύπος=%d)"
+
+#: stem-engraver.cc:142
+msgid "maybe input should specify polyphonic voices"
+msgstr "ίσως η εισαγωγή θα έπρεπε να ορίζει πολυφωνικές φωνές"
+
+#: stem.cc:116
+msgid "weird stem size, check for narrow beams"
+msgstr "περίεργο μέγεθος στελέχους, έλεγχος για στενές γραμμές"
+
+#: stem.cc:642
+#, c-format
+msgid "flag `%s' not found"
+msgstr "η σημαία `%s' δεν βρέθηκε"
+
+#: stem.cc:658
+#, c-format
+msgid "flag stroke `%s' not found"
+msgstr "η σημαία του χτύπου `%s' δεν βρέθηκε"
+
+#: system.cc:197
+#, c-format
+msgid "Element count %d"
+msgstr "Καταμέτρηση στοιχείων %d"
+
+#: system.cc:289
+#, c-format
+msgid "Grob count %d"
+msgstr "Καταμέτρηση grob %d"
+
+#: text-spanner-engraver.cc:73
+msgid "cannot find start of text spanner"
+msgstr "αδυναμία εύρεσης αρχής ενδεικτικού διάρκειας"
+
+#: text-spanner-engraver.cc:86
+msgid "already have a text spanner"
+msgstr "υπάρχει ήδη ενδεικτικό διάρκειας κειμένου"
+
+#: text-spanner-engraver.cc:132
+msgid "unterminated text spanner"
+msgstr "μη τερματισμένο ενδεικτικό διάρκειας κειμένου"
+
+#: tie-engraver.cc:116
+msgid "unterminated tie"
+msgstr "μη τερματισμένη σύνδεση"
+
+#: tie-engraver.cc:312
+msgid "lonely tie"
+msgstr "μοναχική σύνδεση διαρκείας"
+
+#.
+#. Todo: should make typecheck?
+#.
+#. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
+#.
+#: time-signature-engraver.cc:75
+#, c-format
+msgid "strange time signature found: %d/%d"
+msgstr "βρέθηκε περίεργο μέτρο: %d/%d"
+
+#. If there is no such symbol, we default to the numbered style.
+#. (Here really with a warning!)
+#: time-signature.cc:94
+#, c-format
+msgid "time signature symbol `%s' not found; reverting to numbered style"
+msgstr "το σύμβολο `%s' για το ρυθμό δεν βρέθηκε, αλλαγή σε αριθμημένο στυλ"
+
+#: translator-ctors.cc:65
+#, c-format
+msgid "unknown translator: `%s'"
+msgstr "άγνωστος μεταφραστής: `%s'"
+
+#: translator-group-ctors.cc:40
+#, c-format
+msgid "fatal error. Couldn't find type: %s"
+msgstr "κρίσιμο σφάλμα. Αδυναμία εύρεσης τύπου: %s"
+
+#: translator-group.cc:188
+#, c-format
+msgid "cannot find: `%s'"
+msgstr "αδυναμία εύρεσης: `%s'"
+
+#: translator.cc:359
+#, c-format
+msgid "Two simultaneous %s events, junking this one"
+msgstr "Δύο ταυτόχρονα γεγονότα %s, απόρριψη αυτού εδώ"
+
+#: translator.cc:360
+#, c-format
+msgid "Previous %s event here"
+msgstr "Προηγούμενο γεγονός %s εδώ"
+
+#: ttf.cc:481 ttf.cc:530
+#, c-format
+msgid "font index %d too large for font `%s', using index 0"
+msgstr "ο δείκτης γραμματοσειράς %d είναι πολύ μεγάλος για τη γραμματοσειρά `%s', γίνεται χρήση του δείκτη 0"
+
+#: ttf.cc:513 ttf.cc:565
+msgid "font index must be non-negative, using index 0"
+msgstr "ο δείκτης γραμματοσειράς πρέπει να είναι μη-αρνητικός, γίνεται χρήστη του δείκτη 0"
+
+#: tuplet-engraver.cc:107
+msgid "No tuplet to end"
+msgstr "Δεν υπάρχει τρίηχο κλπ για τερματισμό"
+
+#: vaticana-ligature-engraver.cc:400
+#, c-format
+msgid "ignored prefix(es) `%s' of this head according to restrictions of the selected ligature style"
+msgstr "αγνοήθηκε το πρόσημο/α `%s' αυτής της κεφαλής σύμφωνα με περιορισμούς του επιλεγμένου στυλ λιγκατούρας"
+
+#: vaticana-ligature-engraver.cc:736
+#, c-format
+msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
+msgstr "Vaticana_ligature_engraver: ορισμός `spacing-increment = %f': ptr =%ul"
+
+#: vaticana-ligature.cc:95
+msgid "flexa-height undefined; assuming 0"
+msgstr "flexa-height μη καθορισμένο, υποθέτουμε 0"
+
+#: vaticana-ligature.cc:100
+msgid "ascending vaticana style flexa"
+msgstr "ανοδική flexa σε στυλ vaticana"
+
+#: vaticana-ligature.cc:188
+msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
+msgstr "Vaticana_ligature: μηδενική ένωση (delta_pitch == 0)"
+
+#. fixme: be more verbose.
+#: volta-engraver.cc:111
+msgid "cannot end volta spanner"
+msgstr "αδυναμία τερματισμού ενδεικτικού φοράς"
+
+#: volta-engraver.cc:121
+msgid "already have a volta spanner, ending that one prematurely"
+msgstr "υπάρχει ήδη ενδεικτικό φοράς, πρόωρος τερματισμός αυτού"
+
+#: volta-engraver.cc:125
+msgid "also already have an ended spanner"
+msgstr "επίσης υπάρχει ήδη ένα τερματισμένο ενδεικτικό διάρκειας"
+
+#: volta-engraver.cc:126
+msgid "giving up"
+msgstr "παραίτηση"
+
+#: parser.yy:816
+msgid "\\paper cannot be used in \\score, use \\layout instead"
+msgstr "το \\paper δεν μπορεί να χρησιμοποιηθεί στο \\score, χρήση του \\layout αντ' αυτού"
+
+#: parser.yy:840
+msgid "need \\paper for paper block"
+msgstr "χρειάζεται το \\paper για μπλοκ χαρτιού"
+
+#: parser.yy:1365
+msgid "only \\consists takes non-string argument."
+msgstr "μόνο το \\consists δέχεται όρισμα που δεν είναι ακολουθία."
+
+#: parser.yy:1378
+msgid "Grob name should be alphanumeric"
+msgstr "Το όνομα του Grob πρέπει να είναι αλφαριθμητικό"
+
+#: parser.yy:1687
+msgid "second argument must be pitch list"
+msgstr "το δεύτερο όρισμα πρέπει να είναι λίστα τονικών υψών"
+
+#: parser.yy:1714 parser.yy:1719 parser.yy:2192
+msgid "have to be in Lyric mode for lyrics"
+msgstr "πρέπει να είναι σε κατάσταση Στίχων για στίχους"
+
+#: parser.yy:1816
+msgid "expecting string as script definition"
+msgstr "αναμένεται αλφαριθμητικό ως ορισμός script"
+
+#: parser.yy:1971 parser.yy:2022
+#, c-format
+msgid "not a duration: %d"
+msgstr "δεν είναι διάρκεια: %d"
+
+#: parser.yy:2146
+msgid "have to be in Note mode for notes"
+msgstr "πρέπει να είναι σε κατάσταση Νοτών για νότες"
+
+#: parser.yy:2207
+msgid "have to be in Chord mode for chords"
+msgstr "πρέπει να είναι σε κατάσταση Συγχορδίας για συγχορδίες"
+
+#: lexer.ll:190
+msgid "stray UTF-8 BOM encountered"
+msgstr "βρέθηκε άσχετο UTF-8 BOM"
+
+#: lexer.ll:194
+msgid "Skipping UTF-8 BOM"
+msgstr "Παράβλεψη του UTF-8 BOM"
+
+#: lexer.ll:249
+#, c-format
+msgid "Renaming input to: `%s'"
+msgstr "Μετονομασία εισαγωγής σε: `%s'"
+
+#: lexer.ll:266
+msgid "quoted string expected after \\version"
+msgstr "αναμένεται αλφαριθμητικό σε εισαγωγικά μετά το \\version"
+
+#: lexer.ll:270
+msgid "quoted string expected after \\sourcefilename"
+msgstr "αλφαριθμητικό σε εισαγωγικά αναμενόταν μετά το \\sourcefilename"
+
+#: lexer.ll:274
+msgid "integer expected after \\sourcefileline"
+msgstr "αναμενόταν ακέραιος μετά το \\sourcefileline"
+
+#: lexer.ll:287
+msgid "EOF found inside a comment"
+msgstr "βρέθηκε EOF μέσα σε σχόλιο"
+
+#: lexer.ll:302
+msgid "\\maininput not allowed outside init files"
+msgstr "το \\maininput δεν επιτρέπεται έξω από αρχεία αρχικοποίησης"
+
+#: lexer.ll:326
+#, c-format
+msgid "wrong or undefined identifier: `%s'"
+msgstr "εσφαλμένος ή μη καθορισμένος ταυτοποιητής: `%s'"
+
+#. backup rule
+#: lexer.ll:335
+msgid "end quote missing"
+msgstr "λείπει το εισαγωγικό κλεισίματος"
+
+#: lexer.ll:485
+msgid "Brace found at end of lyric.  Did you forget a space?"
+msgstr "Βρέθηκε αγκύλη στο τέλος του στίχου. Ξεχάσατε ένα κενό διάστημα;"
+
+#: lexer.ll:595
+msgid "Brace found at end of markup.  Did you forget a space?"
+msgstr "Βρέθηκε αγκύλη στο τέλος της επισήμανσης. Ξεχάσατε ένα κενό διάστημα;"
+
+#: lexer.ll:699
+#, c-format
+msgid "invalid character: `%c'"
+msgstr "μη έγκυρος χαρακτήρας: `%c'"
+
+#: lexer.ll:814 lexer.ll:815
+#, c-format
+msgid "unknown escaped string: `\\%s'"
+msgstr "άγνωστο αλφαριθμητικό με χαρακτήρες διαφυγής: `\\%s'"
+
+#: lexer.ll:924 lexer.ll:925
+#, c-format
+msgid "file too old: %s (oldest supported: %s)"
+msgstr "πολύ παλιό αρχείο: %s (το παλιότερο υποστηριζόμενο είναι: %s)"
+
+#: lexer.ll:925 lexer.ll:926
+msgid "consider updating the input with the convert-ly script"
+msgstr "σκεφτείτε να ενημερώσετε την εισαγωγή με το script convert-ly"
+
+#: lexer.ll:931 lexer.ll:932
+#, c-format
+msgid "program too old: %s (file requires: %s)"
+msgstr "το πρόγραμμα είναι πολύ παλιό: %s (το αρχείο απαιτεί: %s)"
+
+#: backend-library.scm:35 ps-to-png.scm:66
+#, scheme-format
+msgid "Invoking `~a'..."
+msgstr "Κλήση `~a'…"
+
+#: backend-library.scm:45
+#, scheme-format
+msgid "`~a' failed (~a)"
+msgstr "`~a' απέτυχε (~a)"
+
+#: backend-library.scm:130
+#, scheme-format
+msgid "Converting to `~a'..."
+msgstr "Μετατροπή σε `~a'…"
+
+#. Do not try to guess the name of the png file,
+#. GS produces PNG files like BASE-page%d.png.
+#: backend-library.scm:140
+#, scheme-format
+msgid "Converting to ~a..."
+msgstr "Μετατροπή σε ~a…"
+
+#: backend-library.scm:178
+#, scheme-format
+msgid "Writing header field `~a' to `~a'..."
+msgstr "Εγγραφή του πεδίου κεφαλίδας `~a' σε `~a'…"
+
+#: backend-library.scm:228
+#, scheme-format
+msgid "missing stencil expression `~S'"
+msgstr "λείπει η έκφραση stencil `~S'"
+
+#: chord-entry.scm:50
+#, scheme-format
+msgid "Spurious garbage following chord: ~A"
+msgstr "Άχρηστα σκουπίδια ακολουθούν τη συγχορδία: ~A"
+
+#: define-context-properties.scm:31 define-grob-properties.scm:21
+#: define-music-properties.scm:21
+#, scheme-format
+msgid "symbol ~S redefined"
+msgstr "το σύμβολο ~S επανακαθορίσθηκε"
+
+#: define-event-classes.scm:78
+msgid "All classes must be the last in their matrilineal line."
+msgstr "Όλες οι κλάσεις πρέπει να είναι οι τελευταίες στη μητρική τους γραμμή."
+
+#: define-event-classes.scm:82
+msgid "All classes must have a well-defined pedigree in the existing class hierarchy."
+msgstr "Όλες οι κλάσεις πρέπει να έχουν καλά καθορισμένη γενεαλογία στην υπάρχουσα ιεραρχία κλάσεων."
+
+#: define-event-classes.scm:148
+#, scheme-format
+msgid "event class ~A seems to be unused"
+msgstr "η κλάση γεγονότων ~A φαίνεται να μη χρησιμοποιείται"
+
+#. should be programming-error
+#: define-event-classes.scm:154
+#, scheme-format
+msgid "translator listens to nonexisting event class ~A"
+msgstr "ο μεταφραστής ακούει στη μη υπάρχουσα κλάση γεγονότων ~A"
+
+#: define-markup-commands.scm:803
+msgid "no systems found in \\score markup, does it have a \\layout block?"
+msgstr "δεν βρέθηκαν πεντάγραμμα στην επισήμανση \\score, έχει μπλοκ \\layout;"
+
+#: define-markup-commands.scm:2571
+#, scheme-format
+msgid "Cannot find glyph ~a"
+msgstr "Αδυναμία εύρεσης συμβόλου ~a"
+
+#: define-markup-commands.scm:2831
+#, scheme-format
+msgid "no brace found for point size ~S "
+msgstr "δεν βρέθηκε αγκύλη για μέγεθος σημείου ~S"
+
+#: define-markup-commands.scm:2832
+#, scheme-format
+msgid "defaulting to ~S pt"
+msgstr "εφαρμογή προεπιλογής σε ~S pt"
+
+#: define-markup-commands.scm:2985
+#, scheme-format
+msgid "not a valid duration string: ~a"
+msgstr "μη έγκυρο αλφαριθμητικό διάρκειας: ~a"
+
+#: define-music-types.scm:725
+#, scheme-format
+msgid "symbol expected: ~S"
+msgstr "αναμενόταν σύμβολο: ~S"
+
+#: define-music-types.scm:728
+#, scheme-format
+msgid "cannot find music object: ~S"
+msgstr "αδυναμία εύρεσης μουσικού αντικειμένου: ~S"
+
+#: define-music-types.scm:747
+#, scheme-format
+msgid "unknown repeat type `~S'"
+msgstr "άγνωστος τύπος επανάληψης `~S'"
+
+#: define-music-types.scm:748
+msgid "See define-music-types.scm for supported repeats"
+msgstr "Βλέπε define-music-types.scm για υποστηριζόμενες επαναλήψεις"
+
+#: document-backend.scm:132
+#, scheme-format
+msgid "pair expected in doc ~s"
+msgstr "αναμενόταν ζευγάρι στο έγγραφο ~s"
+
+#: document-backend.scm:189
+#, scheme-format
+msgid "cannot find interface for property: ~S"
+msgstr "αδυναμία εύρεσης διεπαφής για την ιδιότητα: ~S"
+
+#: document-backend.scm:199
+#, scheme-format
+msgid "unknown Grob interface: ~S"
+msgstr "άγνωστη διεπαφή Grob: ~S"
+
+#: documentation-lib.scm:59
+#, scheme-format
+msgid "Processing ~S..."
+msgstr "Επεξεργασία ~S…"
+
+#: documentation-lib.scm:176
+#, scheme-format
+msgid "Writing ~S..."
+msgstr "Εγγραφή ~S…"
+
+#: documentation-lib.scm:198
+#, scheme-format
+msgid "cannot find description for property ~S (~S)"
+msgstr "αδυναμία εύρεσης περιγραφής για την ιδιότητα ~S (~S)"
+
+#: flag-styles.scm:142
+#, scheme-format
+msgid "flag stroke `~a' or `~a' not found"
+msgstr "η σημαία χτύπου `~a' ή `~a' δεν βρέθηκε"
+
+#: framework-eps.scm:108
+#, scheme-format
+msgid "Writing ~a..."
+msgstr "Εγγραφή ~a…"
+
+#: framework-ps.scm:250
+#, scheme-format
+msgid "cannot embed ~S=~S"
+msgstr "αδυναμία ενσωμάτωσης ~S=~S"
+
+#: framework-ps.scm:291
+#, scheme-format
+msgid "cannot extract file matching ~a from ~a"
+msgstr "αδυναμία εξαγωγής αρχείου που να ταιριάζει ~a από ~a"
+
+#: framework-ps.scm:309
+#, scheme-format
+msgid "do not know how to embed ~S=~S"
+msgstr "δεν γνωρίζω πως να ενσωματώσω ~S=~S"
+
+#: framework-ps.scm:334
+#, scheme-format
+msgid "do not know how to embed font ~s ~s ~s"
+msgstr "δεν γνωρίζω πως να ενσωματώσω τη γραμματοσειρά ~s ~s ~s"
+
+#: framework-ps.scm:639
+msgid ""
+"\n"
+"The PostScript backend does not support the\n"
+"system-by-system output.  For that, use the EPS backend instead,\n"
+"\n"
+"  lilypond -dbackend=eps FILE\n"
+"\n"
+"If have cut & pasted a lilypond fragment from a webpage, be sure\n"
+"to only remove anything before\n"
+"\n"
+"  %% ****************************************************************\n"
+"  %% Start cut-&-pastable-section\n"
+"  %% ****************************************************************\n"
+msgstr ""
+"\n"
+"Το PostScript backend δεν υποστηρίζει κατά σύστημα\n"
+"έξοδο. Για αυτό, χρησιμοποιήστε το EPS backend,\n"
+"\n"
+"  lilypond -dbackend=eps FILE\n"
+"\n"
+"Αν έχετε αποκόψει και επικολλήσει ένα τμήμα lilypond από μια ιστοσελίδα, βεβαιωθείτε\n"
+"ότι αφαιρέσατε μόνο οτιδήποτε πριν\n"
+"\n"
+"  %% ****************************************************************\n"
+"  %% Start cut-&-pastable-section\n"
+"  %% ****************************************************************\n"
+
+#: framework-svg.scm:84
+#, scheme-format
+msgid "Updating font into: ~a"
+msgstr "Ενημέρωση γραμματοσειράς σε: ~a"
+
+#: graphviz.scm:64
+#, scheme-format
+msgid "Writing graph `~a'..."
+msgstr "Εγγραφή διαγράμματος `~a'…"
+
+#: layout-beam.scm:38
+#, scheme-format
+msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
+msgstr "Σφάλμα στην ποσοτικοποίηση στελεχών. Αναμένονταν (~S,~S) βρέθηκαν ~S."
+
+#: layout-beam.scm:52
+#, scheme-format
+msgid "Error in beam quanting.  Expected ~S 0, found ~S."
+msgstr "Σφάλμα στην ποσοτικοποίηση στελεχών. Αναμένονταν ~S 0, βρέθηκαν ~S."
+
+#: lily-library.scm:747
+msgid ""
+"Find the index between @var{start} and @var{end} (an integer)\n"
+"which will produce the closest match to @var{target-val} when\n"
+"applied to function @var{getter}."
+msgstr ""
+"Εύρεση του δείκτη  μεταξύ @var{start} και @var{end} (ακέραιος)\n"
+"που θα παράγει το εγγύτερο αποτέλεσμα στο @var{target-val} όταν\n"
+"εφαρμοσθεί στη συνάρτηση @var{getter}."
+
+#: lily-library.scm:821
+#, scheme-format
+msgid "unknown unit: ~S"
+msgstr "άγνωστη μονάδα: ~S"
+
+#: lily-library.scm:847 lily-library.scm:856
+msgid "warning:"
+msgstr "προειδοποίηση:"
+
+#: lily-library.scm:849
+#, scheme-format
+msgid "no \\version statement found, please add~afor future compatibility"
+msgstr "δεν βρέθηκε δήλωση \\version, παρακαλώ προσθέστε ~a για μελλοντική συμβατότητα"
+
+#: lily-library.scm:857
+msgid "old relative compatibility not used"
+msgstr "παλιά σχετική συμβατότητα δεν χρησιμοποιήθηκε"
+
+#: lily.scm:282
+#, scheme-format
+msgid "cannot find: ~A"
+msgstr "αδυναμία εύρεσης: ~A"
+
+#: lily.scm:342
+#, scheme-format
+msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
+msgstr "εσφαλμένος τύπος για το όρισμα ~a. Αναμενόταν ~a, βρέθηκε ~s"
+
+#: lily.scm:704
+msgid "Compilation successfully completed"
+msgstr "Η μεταγλώττιση ολοκληρώθηκε επιτυχώς"
+
+#: lily.scm:705
+msgid "Compilation completed with warnings or errors"
+msgstr "Μεταγλώττιση ολοκληρώθηκε με προειδοποιήσεις ή σφάλματα"
+
+#: lily.scm:767
+#, scheme-format
+msgid "job ~a terminated with signal: ~a"
+msgstr "η εργασία ~a τερματίστηκε με σήμα: ~a"
+
+#: lily.scm:770
+#, scheme-format
+msgid ""
+"logfile ~a (exit ~a):\n"
+"~a"
+msgstr ""
+"logfile ~a (έξοδος ~a):\n"
+"~a"
+
+#: lily.scm:792 lily.scm:870
+#, scheme-format
+msgid "failed files: ~S"
+msgstr "αρχεία που απέτυχαν: ~S"
+
+#: lily.scm:861
+#, scheme-format
+msgid "Redirecting output to ~a..."
+msgstr "Επανακατεύθυνση εξόδου σε ~a…"
+
+#: lily.scm:880
+#, scheme-format
+msgid "Invoking `~a'...\n"
+msgstr "Κλήση `~a'…\n"
+
+#: ly-syntax-constructors.scm:51
+msgid "Music head function must return Music object"
+msgstr "Η λειτουργία Music head πρέπει να επιστρέφει Music object"
+
+#: ly-syntax-constructors.scm:176
+#, scheme-format
+msgid "Invalid property operation ~a"
+msgstr "Μη έγκυρη ενέργεια ιδιότητας ~a"
+
+#: markup.scm:223
+#, scheme-format
+msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
+msgstr "Λάθος αριθμός ορισμάτων. Αναμενόταν: ~A, βρέθηκαν ~A: ~S"
+
+#: markup.scm:229
+#, scheme-format
+msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
+msgstr "Μη έγκυρο όρισμα στη θέση ~A. Αναμενόταν: ~A, βρέθηκε: ~S"
+
+#: markup.scm:292
+#, scheme-format
+msgid "Not a markup command: ~A"
+msgstr "Δεν είναι εντολή επισήμανσης: ~A"
+
+#: music-functions.scm:265
+msgid "More alternatives than repeats.  Junking excess alternatives"
+msgstr "Περισσότερες εναλλαγές από επαναλήψεις. Απόρριψη επιπλέον εναλλαγών"
+
+#: music-functions.scm:294
+#, scheme-format
+msgid "invalid tremolo repeat count: ~a"
+msgstr "μη έγκυρη καταμέτρηση επαναλήψεων τρέμολο: ~a"
+
+#: music-functions.scm:601
+#, scheme-format
+msgid "music expected: ~S"
+msgstr "αναμενόταν μουσική: ~S"
+
+#. FIXME: uncomprehensable message
+#: music-functions.scm:649
+#, scheme-format
+msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
+msgstr "Αποτυχία ελέγχου μέτρων. Αναμενόταν να είναι σε ~a, αντίθετα ήταν σε ~a"
+
+#: music-functions.scm:828
+#, scheme-format
+msgid "cannot find quoted music: `~S'"
+msgstr "αδυναμία εύρεσης παρατιθέμενης μουσικής: `~S'"
+
+#: music-functions.scm:964
+msgid "Add @var{octave-shift} to the octave of @var{pitch}."
+msgstr "Προσθήκη του @var{octave-shift} στην οκτάβα του @var{pitch}."
+
+#: music-functions.scm:1019
+#, scheme-format
+msgid "Unknown octaveness type: ~S "
+msgstr "Άγνωστος τύπος οκτάβας: ~S"
+
+#: music-functions.scm:1020
+msgid "Defaulting to 'any-octave."
+msgstr "Εφαρμογή προεπιλογής 'any-octave."
+
+#: music-functions.scm:1355
+#, scheme-format
+msgid "unknown accidental style: ~S"
+msgstr "άγνωστο στυλ σημείου αλλοίωσης: ~S"
+
+#: output-ps.scm:289 output-svg.scm:550
+#, scheme-format
+msgid "unknown line-cap-style: ~S"
+msgstr "άγνωστο στυλ line-cap-style: ~S"
+
+#: output-ps.scm:294 output-svg.scm:556
+#, scheme-format
+msgid "unknown line-join-style: ~S"
+msgstr "άγνωστο στυλ line-join-style: ~S"
+
+#: output-svg.scm:47
+#, scheme-format
+msgid "undefined: ~S"
+msgstr "μη καθορισμένο: ~S"
+
+#: output-svg.scm:151
+#, scheme-format
+msgid "cannot decypher Pango description: ~a"
+msgstr "αδυναμία αποκρυπτογράφησης περιγραφής Pango: ~a"
+
+#: output-svg.scm:231
+msgid "Glyph must have a unicode value"
+msgstr "Το σύμβολο πρέπει να έχει μια τιμή unicode"
+
+#: output-svg.scm:283 output-svg.scm:293
+#, scheme-format
+msgid "cannot find SVG font ~S"
+msgstr "αδυναμία εύρεσης γραμματοσειράς SVG ~S"
+
+#: paper.scm:115
+msgid "set-global-staff-size: not in toplevel scope"
+msgstr "set-global-staff-size: όχι στο εύρος του κορυφαίου επιπέδου"
+
+#: paper.scm:296
+#, scheme-format
+msgid "This is not a \\layout {} object, ~S"
+msgstr "Αυτό δεν είναι αντικείμενο \\layout {}, ~S"
+
+#: paper.scm:308
+#, scheme-format
+msgid "Unknown paper size: ~a"
+msgstr "Άγνωστο μέγεθος χαρτιού: ~a"
+
+#. TODO: should raise (generic) exception with throw, and catch
+#. that in parse-scm.cc
+#: paper.scm:323
+msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
+msgstr "Πρέπει να χρησιμοποιηθεί το #(set-paper-size .. ) εντός του \\paper { ... }"
+
+#: parser-clef.scm:140
+#, scheme-format
+msgid "unknown clef type `~a'"
+msgstr "άγνωστος τύπος κλειδιού `~a'"
+
+#: parser-clef.scm:141
+#, scheme-format
+msgid "supported clefs: ~a"
+msgstr "υποστηριζόμενα κλειδιά: ~a"
+
+#: ps-to-png.scm:72
+#, scheme-format
+msgid "~a exited with status: ~S"
+msgstr "~a τερμάτισε με κατάσταση: ~S"
+
+#: to-xml.scm:191
+#, scheme-format
+msgid "assertion failed: ~S"
+msgstr "αποτυχία ισχυρισμού: ~S"
+
+#~ msgid "Tuplet brackets displaying both note durations are not implemented, using default"
+#~ msgstr "Γραμμές των τρίηχων κλπ που εμφανίζουν και τις διάρκεια των νοτών δεν είναι υλοποιημένες, χρήση προεπιλεγών"
+
+#~ msgid "run executable PROG instead of latex"
+#~ msgstr "εκτέλεση εκτελέσιμου PROG αντί για το latex"
+
+#~ msgid "Encountered file created by Noteworthy Composer's nwc2xml, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+#~ msgstr "Βρέθηκε αρχείο που δημιουργήθηκε από το nwc2xml του Noteworthy Composer, που περιέχει λάθος πληροφορίες για τις οριζόντιες γραμμές. Όλες οι πληροφορίες για αυτές θα αγνοηθούν στο αρχείο MusicXML"
+
+#~ msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
+#~ msgstr "χρήση αρχείου 'LANG.ly' για διαφορετική γλώσσα και αντίστοιχα ονόματα τονικών υψών, π.χ. 'deutsch' για deutsch.ly"
+
+#~ msgid "tried to get a translation for something that is no child of mine"
+#~ msgstr "προσπάθεια λήψης μετάφρασης για κάτι που δεν είναι θυγατρικό μου"
+
+#~ msgid "expect 2 elements for chord tremolo, found %d"
+#~ msgstr "αναμένονται 2 στοιχεία για τρέμολο συγχορδίας, βρέθηκε %d"
+
+#~ msgid "program has no such type: `%s'"
+#~ msgstr "το πρόγραμμα δεν έχει τέτοιο τύπο: `%s'"
+
+#~ msgid "Rebuilding FontConfig cache %s, this may take a while..."
+#~ msgstr "Επανακατασκευή της προσωρινής μνήμης FontConfig %s, αυτό μπορεί να διαρκέσει αρκετά…"
+
+#~ msgid "deprecated function called: %s"
+#~ msgstr "κλήση παρωχημένης συνάρτησης: %s"
+
+#~ msgid "staff-span event has no direction"
+#~ msgstr "το γεγονός staff-span δεν έχει διεύθυνση"
+
+#~ msgid "cannot find start of trill spanner"
+#~ msgstr "αδυναμία εύρεσης έναρξης ενωτικού τρίλλιας"
+
+#~ msgid "already have a trill spanner"
+#~ msgstr "ήδη υπάρχει ενδεικτικό διάρκειας τρίλλιας"
+
+#~ msgid "cannot convert <stdout> to ~S"
+#~ msgstr "αδυναμία μετατροπής <stdout> σε ~S"
+
+#~ msgid "Can't fit systems on page -- ignoring between-system-padding"
+#~ msgstr "Αδυναμία ταιριάσματος πενταγράμμων στη σελίδα -- θα αγνοηθεί το between-system-padding"
+
+#~ msgid "expecting 2 elements for chord tremolo, found ~a"
+#~ msgstr "αναμένονταν 2 στοιχεία για τρέμολο συγχορδίας, βρέθηκαν ~a"
+
+#~ msgid "utf-8-string encountered in PS backend"
+#~ msgstr "βρέθηκε utf-8-string στο PS backend"
index 83266abe2dad91b78dba52c33226583075e9a760..9cd40931fe21a0278ba12abde94f265ba32a5149 100644 (file)
--- a/po/es.po
+++ b/po/es.po
@@ -1,19 +1,19 @@
-# translation of lilypond-2.13.3.po to Español
+# translation of lilypond-2.13.42.po to Español
 # Spanish translation of GNU Lilypond - http://lilypond.org
-# Copyright (C) 2002, 2007, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 2002, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 #
 # This file is distributed under the same license as the lilypond package.
 #
 # Quique <quique@sindominio.net>, 2002, 2004.
 # Daniel Tonda <daniel dot tonda (at) gmail dot com>, 2006.
-# Francisco Vila <francisco.vila@hispalinux.es>, 2007, 2008, 2009.
+# Francisco Vila <francisco.vila@hispalinux.es>, 2007, 2008, 2009, 2010.
 # This file is distributed under the same license as the lilypond package.
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond-2.13.3\n"
+"Project-Id-Version: lilypond-2.13.42\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2008-12-20 11:58+0100\n"
-"PO-Revision-Date: 2009-07-28 17:20+0200\n"
+"POT-Creation-Date: 2010-12-06 22:30+0100\n"
+"PO-Revision-Date: 2010-12-13 01:12+0100\n"
 "Last-Translator: Francisco Vila <francisco.vila@hispalinux.es>\n"
 "Language-Team: Spanish <es@li.org>\n"
 "MIME-Version: 1.0\n"
@@ -22,6 +22,58 @@ msgstr ""
 "X-Generator: KBabel 1.11.4\n"
 "Plural-Forms:  nplurals=2; plural=(n != 1);\n"
 
+#: book_base.py:24
+#, python-format
+msgid "file not found: %s"
+msgstr "archivo no encontrado: %s"
+
+#: book_base.py:161
+msgid "Output function not implemented"
+msgstr "Función de salida sin implementar"
+
+#: book_latex.py:156
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "no se encuentra \\begin{document} en el documento de LaTeX"
+
+#: book_snippets.py:517
+#, python-format
+msgid "deprecated ly-option used: %s=%s"
+msgstr "se ha usado una ly-option obsoleta: %s=%s"
+
+#: book_snippets.py:519
+#, python-format
+msgid "compatibility mode translation: %s=%s"
+msgstr "traducción en modo de compatibilidad: %s=%s"
+
+#: book_snippets.py:522
+#, python-format
+msgid "deprecated ly-option used: %s"
+msgstr "se usó una ly-option obsoleta: %s"
+
+#: book_snippets.py:524
+#, python-format
+msgid "compatibility mode translation: %s"
+msgstr "traducción en modo compatible: %s"
+
+#: book_snippets.py:542
+#, python-format
+msgid "ignoring unknown ly option: %s"
+msgstr "opción ly desconocida e ignorada: %s"
+
+#: book_snippets.py:728
+#, python-format
+msgid "Opening filter `%s'\n"
+msgstr "Abriendo el filtro «%s»\n"
+
+#: book_snippets.py:748
+#, python-format
+msgid "`%s' failed (%d)"
+msgstr "«%s» ha fallado (%d)"
+
+#: book_snippets.py:749
+msgid "The error log is as follows:"
+msgstr "El registro de errores es como sigue:"
+
 #: convertrules.py:12
 #, python-format
 msgid "Not smart enough to convert %s"
@@ -36,8 +88,8 @@ msgstr "Consulte el manual para ver los detalles, y efectúe una actualización
 msgid "%s has been replaced by %s"
 msgstr "%s se ha sustituido por %s"
 
-#: convertrules.py:24 musicexp.py:16 convert-ly.py:50 lilypond-book.py:94
-#: warn.cc:48 input.cc:90
+#: convertrules.py:24 lilylib.py:78 musicexp.py:17 convert-ly.py:64 warn.cc:66
+#: input.cc:109
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "advertencia: %s"
@@ -55,8 +107,8 @@ msgstr "%s en desuso"
 msgid "deprecated \\textstyle, new \\key syntax"
 msgstr "\\textstyle en desuso, sintaxis nueva para \\key"
 
-#: convertrules.py:86 convertrules.py:1906 convertrules.py:2085
-#: convertrules.py:2237 convertrules.py:2567
+#: convertrules.py:86 convertrules.py:1905 convertrules.py:2084
+#: convertrules.py:2236 convertrules.py:2566 convertrules.py:2862
 msgid "bump version for release"
 msgstr "actualizar la versión para el lanzamiento"
 
@@ -73,7 +125,7 @@ msgid "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
 msgstr "\\repeat NÚMERO Alternativa de Música -> \\repeat FOLDSTR Alternativa de Música"
 
 #: convertrules.py:216 convertrules.py:699 convertrules.py:1383
-#: convertrules.py:2379
+#: convertrules.py:2378
 #, python-format
 msgid "deprecate %s"
 msgstr "%s en desuso"
@@ -126,8 +178,8 @@ msgstr "nombres de propiedad %s"
 msgid "automaticMelismata turned on by default"
 msgstr "automaticMelismata activado por omisión"
 
-#: convertrules.py:963 convertrules.py:1682 convertrules.py:1943
-#: convertrules.py:2190
+#: convertrules.py:963 convertrules.py:1682 convertrules.py:1942
+#: convertrules.py:2189
 #, python-format
 msgid "remove %s"
 msgstr "suprimir %s"
@@ -262,7 +314,7 @@ msgstr "utilice %s"
 msgid "More Scheme function renaming"
 msgstr "Más renombrado de funciones de Scheme"
 
-#: convertrules.py:1925
+#: convertrules.py:1924
 msgid ""
 "Page layout has been changed, using paper size and margins.\n"
 "textheight is no longer used.\n"
@@ -270,7 +322,7 @@ msgstr ""
 "La disposición de la página se ha cambiado, utilizando tamaño de página y márgenes.\n"
 "textheight ya no se utiliza.\n"
 
-#: convertrules.py:2011
+#: convertrules.py:2010
 msgid ""
 "\\foo -> \\foomode (for chords, notes, etc.)\n"
 "fold \\new FooContext \\foomode into \\foo."
@@ -278,7 +330,7 @@ msgstr ""
 "\\loquesea -> \\loqueseamode (para acordes, notas, etc.)\n"
 "plegar \\new LoqueseaContext \\loqueseamode en \\loquesea."
 
-#: convertrules.py:2049
+#: convertrules.py:2048
 msgid ""
 "staff size should be changed at top-level\n"
 "with\n"
@@ -292,82 +344,83 @@ msgstr ""
 "  #(set-global-staff-size <ALTURA-DEL-PENTAGRAMA-EN-PUNTOS>)\n"
 "\n"
 
-#: convertrules.py:2069
+#: convertrules.py:2068
 msgid "regularize other identifiers"
 msgstr "regularizar otros identificadores"
 
-#: convertrules.py:2137
+#: convertrules.py:2136
 msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
 msgstr "\\encoding: recodificación inteligente de latin1 a utf-8. Eliminación de ly:point-and-click"
 
-#: convertrules.py:2150
+#: convertrules.py:2149
 msgid "LilyPond source must be UTF-8"
 msgstr "El código de entrada de LilyPond debe ser UTF-8"
 
-#: convertrules.py:2153
+#: convertrules.py:2152
 msgid "Try the texstrings backend"
 msgstr "Pruebe con el 'backend' texstrings"
 
-#: convertrules.py:2156
+#: convertrules.py:2155
 #, python-format
 msgid "Do something like: %s"
 msgstr "Haga algo parecido a %s"
 
-#: convertrules.py:2159
+#: convertrules.py:2158
 msgid "Or save as UTF-8 in your editor"
 msgstr "O guarde como UTF-8 en su editor"
 
-#: convertrules.py:2213
+#: convertrules.py:2212
 msgid "warn about auto beam settings"
 msgstr "advertir acerca de los ajustes de barrado automático"
 
-#: convertrules.py:2218
+#: convertrules.py:2217
 msgid "auto beam settings"
 msgstr "ajustes de barrado automático"
 
-#: convertrules.py:2220
+#: convertrules.py:2219
 msgid ""
 "\n"
 "Auto beam settings must now specify each interesting moment in a measure\n"
-"explicitely; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
+"explicitly; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
 msgstr ""
 "\n"
-"Los ajustes de barrado automático ahora deben especificar cada uno de los mementos interesantes de un compás\n"
-"explícitamente; 1/4 ya no se multiplica para que cubra también los momentos 1/2 y 3/4.\n"
+"Los ajustes de barrado automático ahora deben especificar cada uno de los \n"
+"momentos interesantes de un compás explícitamente; 1/4 ya no se multiplica \n"
+"para que cubra también los momentos 1/2 y 3/4.\n"
 
-#: convertrules.py:2334
+#: convertrules.py:2333
 msgid "verticalAlignmentChildCallback has been deprecated"
 msgstr "verticalAlignmentChildCallback ha caído en desuso"
 
-#: convertrules.py:2338
+#: convertrules.py:2337
 msgid "Remove callbacks property, deprecate XY-extent-callback."
 msgstr "Eliminar la propiedad de «callbacks», despreciar XY-extent-callback."
 
-#: convertrules.py:2359
+#: convertrules.py:2358
 msgid "Use grob closures iso. XY-offset-callbacks."
 msgstr "Utilizar las cerraduras de grob iso. XY-offset-callbacks."
 
-#: convertrules.py:2421
+#: convertrules.py:2420
 msgid "foobar -> foo-bar for \\paper, \\layout"
 msgstr "fulanomengano -> fulano-mengano para \\paper, \\layout"
 
-#: convertrules.py:2531
+#: convertrules.py:2530
 msgid "deprecate \\tempo in \\midi"
 msgstr "despreciar \\tempo dentro de \\midi"
 
-#: convertrules.py:2578
+#: convertrules.py:2583
 msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
 msgstr "despreciar cautionary-style. Utilizar las propiedades AccidentalCautionary"
 
-#: convertrules.py:2591
+#: convertrules.py:2596
 msgid "Rename accidental glyphs, use glyph-name-alist."
 msgstr "Renombrar los glifos de las alteraciones accidentales, usar glyph-name-alist."
 
-#: convertrules.py:2646
+#: convertrules.py:2651
 msgid "edge-text settings for TextSpanner."
 msgstr "ajustes de edge-text para TextSpanner."
 
-#: convertrules.py:2647
+#: convertrules.py:2652
 #, python-format
 msgid ""
 "Use\n"
@@ -378,23 +431,35 @@ msgstr ""
 "\n"
 "%s"
 
+#: convertrules.py:2685
+msgid "Use the `alignment-offsets' sub-property of\n"
+msgstr "Utilice la sub-propiedad «alignment-offsets» de\n"
+
 #: convertrules.py:2686
+msgid "NonMusicalPaperColumn #'line-break-system-details\n"
+msgstr "NonMusicalPaperColumn #'line-break-system-details\n"
+
+#: convertrules.py:2687
+msgid "to set fixed distances between staves.\n"
+msgstr "para establecer distancias fijas entre pautas.\n"
+
+#: convertrules.py:2699
 msgid "Use #'style not #'dash-fraction to select solid/dashed lines."
 msgstr "Usar #'style en lugar de #'dash-fraction para elegir entre líneas continuas e intermitentes."
 
-#: convertrules.py:2692
+#: convertrules.py:2705
 msgid "all settings related to dashed lines.\n"
 msgstr "todos los ajustes relacionados con líneas intermitentes.\n"
 
-#: convertrules.py:2693
+#: convertrules.py:2706
 msgid "Use \\override ... #'style = #'line for solid lines and\n"
 msgstr "Usar \\override ... #'style = #'line para las líneas continuas y\n"
 
-#: convertrules.py:2694
+#: convertrules.py:2707
 msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
 msgstr "\t\\override ... #'style = #'dashed-line para líneas intermintentes."
 
-#: convertrules.py:2730
+#: convertrules.py:2743
 msgid ""
 "metronomeMarkFormatter uses text markup as second argument,\n"
 "fret diagram properties moved to fret-diagram-details."
@@ -402,11 +467,11 @@ msgstr ""
 "metronomeMarkFormatter utiliza marcas de texto como segundo argumento,\n"
 "propiedades de diagramas de trastes trasladadas a fret-diagram-details."
 
-#: convertrules.py:2735
+#: convertrules.py:2748
 msgid "metronomeMarkFormatter got an additional text argument.\n"
 msgstr "metronomeMarkFormatter ha tomado un argumento adicional de texto.\n"
 
-#: convertrules.py:2736
+#: convertrules.py:2749
 #, python-format
 msgid ""
 "The function assigned to Score.metronomeMarkFunction now uses the signature\n"
@@ -415,34 +480,238 @@ msgstr ""
 "La función asignada a Score.metronomeMarkFunction usa ahora la indicación\n"
 "%s"
 
-#: convertrules.py:2799
+#: convertrules.py:2812
 msgid "\\put-adjacent argument order.\n"
 msgstr "orden de argumentos de \\put-adjacent.\n"
 
-#: convertrules.py:2800
+#: convertrules.py:2813
 msgid "Axis and direction now come before markups:\n"
 msgstr "El eje y la dirección ahora van antes de los marcados:\n"
 
-#: convertrules.py:2801
+#: convertrules.py:2814
 msgid "\\put-adjacent axis dir markup markup."
 msgstr "\\put-adjacent eje dirección marcado marcado."
 
-#: convertrules.py:2832
+#: convertrules.py:2845
 msgid "re-definition of InnerStaffGroup.\n"
 msgstr "redefinición de InnerStaffGroup.\n"
 
-#: convertrules.py:2838
+#: convertrules.py:2851
 msgid "re-definition of InnerChoirStaff.\n"
 msgstr "redefinición de InnerChoirStaff.\n"
 
-#: convertrules.py:2851
+#: convertrules.py:2861
+msgid "Syntax changes for \\addChordShape and \\chord-shape"
+msgstr "Cambios sintácticos para \\addChordShape y \\chord-shape"
+
+#: convertrules.py:2866
 msgid "stringTuning must be added to addChordShape call.\n"
 msgstr "stringTuning se debe añadir a la llamada a addChordShape.\n"
 
-#: convertrules.py:2857
+#: convertrules.py:2872
 msgid "stringTuning must be added to chord-shape call.\n"
 msgstr "stringTuning se debe añadir a la llamada a chord-shape.\n"
 
+#: convertrules.py:2879
+msgid "Remove oldaddlyrics"
+msgstr "Eliminar oldaddlyrics"
+
+#: convertrules.py:2883
+msgid ""
+"oldaddlyrics is no longer supported. \n"
+"         Use addlyrics or lyrsicsto instead.\n"
+msgstr ""
+"oldaddlyrics ya no está contemplado. \n"
+"         Utilice en su lugar addlyrics o lyrsicsto.\n"
+
+#: convertrules.py:2889
+msgid ""
+"keySignature property not reversed any more\n"
+"MIDI 47: orchestral strings -> orchestral harp"
+msgstr ""
+"la propiedad keySignature ya no se revierte\n"
+"MIDI 47: orchestral strings -> orchestral harp"
+
+#: convertrules.py:2894
+msgid "The alist for Staff.keySignature is no longer in reversed order.\n"
+msgstr "La lista-A de Staff.keySignature ya no está en orden inverso.\n"
+
+#: convertrules.py:2900
+msgid ""
+"\\bar \".\" now produces a thick barline\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Dash parameters for slurs and ties are now in dash-definition"
+msgstr ""
+"\\bar \".\" ahora produce una línea divisoria gruesa\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Los parámetros de discontinuidad para las ligaduras\n"
+"de expresión y de unión ahora están en dash-definition"
+
+#: convertrules.py:2906
+msgid "\\bar \".\" now produces a thick barline.\n"
+msgstr "\\bar \".\" ahora produce una línea divisoria gruesa.\n"
+
+#: convertrules.py:2912
+msgid "Dash parameters for slurs and ties are now in 'dash-details.\n"
+msgstr ""
+"Los parámetros de discontinuidad para las ligaduras\n"
+"de expresión y de unión ahora están en 'dash-details.\n"
+
+#: convertrules.py:2917
+msgid ""
+"Autobeaming rules have changed.  override-auto-beam-setting and\n"
+"revert-auto-beam-setting have been eliminated.\n"
+"\\overrideBeamSettings has been added.\n"
+"beatGrouping has been eliminated.\n"
+"Different settings for vertical layout.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Explicit dynamics context definition from `Piano centered dynamics'\n"
+"template replaced by new `Dynamics' context."
+msgstr ""
+"Las reglas de autobarrado han cambiado..  Ahora se han\n"
+"eliminado override-auto-beam-setting y revert-auto-beam-setting.\n"
+"Se ha añadido \\overrideBeamSettings.\n"
+"Se ha eliminado beatGrouping.\n"
+"Distintos ajustes para la disposición vertical.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Se ha sustituido la definición explícita del contexto de dinámica\n"
+"`Piano centered dynamics'\n"
+"por el nuevo contexto `Dynamics'."
+
+#: convertrules.py:2931
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now overriden with \\overrideBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   Los ajustes de barrado automático se sobreescriben ahora con \\overrideBeamSettings.\n"
+
+#: convertrules.py:2936
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now reverted with \\revertBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   Los ajustes de barrado automático se revierten ahora con \\revertBeamSettings.\n"
+
+#: convertrules.py:2941
+msgid ""
+"beatGrouping. \n"
+"   beatGrouping with a specified context must now be accomplished with\n"
+"   \\overrideBeamSettings.\n"
+msgstr ""
+"beatGrouping. \n"
+"   beatGrouping con un contexto especificado se hace ahora con\n"
+"   \\overrideBeamSettings.\n"
+
+#: convertrules.py:2947
+msgid "alignment-offsets has been changed to alignment-distances: you must now specify the distances between staves rather than the offset of staves.\n"
+msgstr ""
+"alignment-offsets ha cambiado a alignment-distances:\n"
+"  ahora se deben especificar las distancias entre pautas\n"
+"  en lugar del desplazamiento de cada pauta.\n"
+
+#: convertrules.py:2958
+msgid ""
+"Remove obsolete engravers/translators: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer and String_number_engraver.\n"
+"New vertical spacing variables."
+msgstr ""
+"ELiminar grabadores o traductores obsoletos: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer and String_number_engraver.\n"
+"Nuevas variables de espaciado vertical."
+
+#: convertrules.py:2982
+msgid "vertical spacing has been changed; minimum-Y-extent is obsolete.\n"
+msgstr "El espaciado vertical ha cambiado; minimum-Y-extent está obsoleto.\n"
+
+#: convertrules.py:2988
+msgid "Unify fetaNumber and fetaDynamic encodings"
+msgstr "Unificar las codificaciones fetaNumber y fetaDynamic"
+
+#: convertrules.py:2993
+msgid "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+msgstr "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+
+#: convertrules.py:3004
+msgid "\\cresc etc. are now postfix operators"
+msgstr "\\cresc etc. ahora son operadores posfijos"
+
+#: convertrules.py:3010
+msgid ""
+"Eliminate beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings and \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+msgstr ""
+"Eliminar beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings y \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+
+#: convertrules.py:3028
+msgid "\\overrideBeamSettings.  Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
+msgstr "\\overrideBeamSettings.  Use \\set beamExceptions o \\overrideTimeSignatureSettings.\n"
+
+#: convertrules.py:3032
+msgid "\\revertBeamSettings. Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
+msgstr "\\revertBeamSettings. Use \\set beamExceptions o \\revertTimeSignatureSettings.\n"
+
+#: convertrules.py:3036
+msgid "beamSettings. Use baseMoment, beatStructure, and beamExceptions.\n"
+msgstr "beamSettings. Use baseMoment, beatStructure y beamExceptions.\n"
+
+#: convertrules.py:3040
+msgid "beatLength. Use baseMoment and beatStructure.\n"
+msgstr "beatLength. Use baseMoment y beatStructure.\n"
+
+#: convertrules.py:3044
+msgid "setbeatGrouping. Use baseMoment and beatStructure.\n"
+msgstr "setbeatGrouping. Use baseMoment y beatStructure.\n"
+
+#: convertrules.py:3049
+msgid ""
+"Woodwind diagrams: Move size, thickness, and graphic from argument list to properties.\n"
+"Deprecate negative dash-period for hidden lines: use #'style = #'none instead."
+msgstr ""
+"Diagramas de digitación para instrumentos de viento:\n"
+"Mover el tamaño, grosor y forma gráfica de la lista de argumentos a propiedades.\n"
+"Se desprecia el período de discontinuidad negativo para líneas ocultas: use #'style = #'none en su lugar."
+
+#: convertrules.py:3054
+msgid "woodwind-diagrams.  Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
+msgstr ""
+"woodwind-diagrams.  Mover el tamaño, grosor y forma gráfica de la lista de argumentos a propiedades.\n"
+"  El único argumento debe ser la lista de claves.\n"
+
+#: convertrules.py:3062
+msgid ""
+"Rename vertical spacing variables.\n"
+"Add fretboard-table argument to savePredefinedFretboard."
+msgstr ""
+"Renombrado de las variables de espaciado vertical.\n"
+"Añadir argumento de tabla de diagramas de posiciones a savePredefinedFretboard."
+
+#: convertrules.py:3080
+msgid "Rename vertical spacing grob properties."
+msgstr "Renombrado de las propiedades de grob del espaciado vertical."
+
+#: convertrules.py:3096
+msgid "Remove \\paper variables head-separation and foot-separation."
+msgstr "Eliminación de las variables de \\paper head-separation y foot-separation."
+
+#: convertrules.py:3101
+msgid "Adjust settings for top-system-spacing instead.\n"
+msgstr "Ajuste los valores para top-system-spacing en su lugar.\n"
+
+#: convertrules.py:3106
+msgid "Adjust settings for last-bottom-spacing instead.\n"
+msgstr "Ajuste los valores para last-bottom-spacing en su lugar.\n"
+
 #: fontextract.py:25
 #, python-format
 msgid "Scanning %s"
@@ -458,90 +727,85 @@ msgstr "Se ha extraído %s"
 msgid "Writing fonts to %s"
 msgstr "Escribiendo las tipografías en %s"
 
-#: lilylib.py:91 lilylib.py:142
+#: lilylib.py:81 musicxml.py:13 convert-ly.py:67 warn.cc:72 input.cc:115
+#: input.cc:123
+#, c-format, python-format
+msgid "error: %s"
+msgstr "error: %s"
+
+#: lilylib.py:124 lilylib.py:175
 #, python-format
 msgid "Invoking `%s'"
 msgstr "Invocando «%s»"
 
-#: lilylib.py:93 lilylib.py:144
+#: lilylib.py:126 lilylib.py:177
 #, python-format
 msgid "Running %s..."
 msgstr "Ejecutando %s..."
 
-#: lilylib.py:209
+#: lilylib.py:253
 #, python-format
 msgid "Usage: %s"
 msgstr "uso: %s"
 
-#: musicexp.py:215 musicexp.py:220
+#: musicexp.py:216 musicexp.py:221
 msgid "Language does not support microtones contained in the piece"
 msgstr "El lenguaje no contempla los microtonos de la pieza"
 
-#: musicexp.py:482
+#: musicexp.py:483
 msgid "Tuplet brackets of curved shape are not correctly implemented"
 msgstr "Los corchetes curvos de grupo especial no están implementados correctamente"
 
-#. TODO: Implement this using actual_type and normal_type!
-#: musicexp.py:511
-msgid "Tuplet brackets displaying both note durations are not implemented, using default"
-msgstr "Los corchetes de grupo especial que muestran las dos duraciones de nota no están implementados, se usa el predeterminado"
-
-#: musicexp.py:656
+#: musicexp.py:669
 #, python-format
 msgid "unable to set the music %(music)s for the repeat %(repeat)s"
 msgstr "no se ha podido establecer el fragmento de música %(music)s para la repetición %(repeat)s"
 
-#: musicexp.py:665
+#: musicexp.py:678
 msgid "encountered repeat without body"
 msgstr "se ha encontrado una repetición sin cuerpo"
 
 #. no self.elements!
-#: musicexp.py:835
+#: musicexp.py:848
 #, python-format
 msgid "Grace note with no following music: %s"
 msgstr "Nota de adorno sin música que le siga: %s"
 
-#: musicexp.py:997
+#: musicexp.py:1010
 #, python-format
 msgid "Invalid octave shift size found: %s. Using no shift."
 msgstr "Se ha encontrado un tamaño de desplazamiento de octava no válido: %s. No se usará ningún desplazamiento."
 
-#: musicexp.py:1455
+#: musicexp.py:1468
 #, python-format
 msgid "Unable to convert alteration %s to a lilypond expression"
 msgstr "No se pudo convertir la alteración %s a una expresión de lilypond"
 
-#: musicxml.py:13 convert-ly.py:53 lilypond-book.py:97 warn.cc:54 input.cc:96
-#: input.cc:104
-#, c-format, python-format
-msgid "error: %s"
-msgstr "error: %s"
-
 #. TODO: Handle pieces without a time signature!
-#: musicxml.py:357
+#: musicxml.py:358
 msgid "Senza-misura time signatures are not yet supported!"
 msgstr "¡Los compases senza-misura no están contemplados aún!"
 
-#: musicxml.py:375
+#: musicxml.py:376
 msgid "Unable to interpret time signature! Falling back to 4/4."
 msgstr "¡Ha sido imposible interpretar la indicación de compás! Se va a usar 4/4 como opción de retroceso."
 
-#: musicxml.py:431
+#: musicxml.py:432
 #, python-format
 msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
 msgstr "¡Se ha proporcionado una octava de alteración de tonalidad para un número de alteraciones inexistente %s, números disponibles: %s!"
 
-#: musicxml.py:519
+#: musicxml.py:520
 #, python-format
 msgid "Unable to find instrument for ID=%s\n"
 msgstr "No se ha podido encontrar el instrumento con el ID=%s\n"
 
-#: abc2ly.py:1341 convert-ly.py:74 lilypond-book.py:121 midi2ly.py:845
+#: abc2ly.py:1373 convert-ly.py:87 lilypond-book.py:122 midi2ly.py:860
 #, python-format
 msgid "%s [OPTION]... FILE"
 msgstr "%s [OPCIÓN]... ARCHIVO"
 
-#: abc2ly.py:1342
+#: abc2ly.py:1374
 #, python-format
 msgid ""
 "abc2ly converts ABC music files (see\n"
@@ -550,25 +814,25 @@ msgstr ""
 "abc2ly convierte archivos de música de ABC\n"
 "(véase %s) en código de entrada de LilyPond.\n"
 
-#: abc2ly.py:1350 convert-ly.py:81 etf2ly.py:1190 lilypond-book.py:207
-#: midi2ly.py:881 musicxml2ly.py:2590 main.cc:156
+#: abc2ly.py:1382 convert-ly.py:94 etf2ly.py:1206 lilypond-book.py:212
+#: midi2ly.py:896 musicxml2ly.py:2683 main.cc:168
 msgid "show version number and exit"
 msgstr "mostrar el número de versión y salir"
 
-#: abc2ly.py:1354 convert-ly.py:85 etf2ly.py:1186 lilypond-book.py:138
-#: midi2ly.py:860 musicxml2ly.py:2572 main.cc:145
+#: abc2ly.py:1386 convert-ly.py:98 etf2ly.py:1202 lilypond-book.py:140
+#: midi2ly.py:875 musicxml2ly.py:2665 main.cc:157
 msgid "show this help and exit"
 msgstr "mostrar esta ayuda y salir"
 
-#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
+#: abc2ly.py:1388 etf2ly.py:1207 midi2ly.py:879
 msgid "write output to FILE"
 msgstr "escribir la salida en el ARCHIVO"
 
-#: abc2ly.py:1358
+#: abc2ly.py:1390
 msgid "be strict about success"
 msgstr "ser estricto respecto al éxito"
 
-#: abc2ly.py:1360
+#: abc2ly.py:1392
 msgid "preserve ABC's notion of beams"
 msgstr "preservar la noción de las barras de ABC"
 
@@ -576,13 +840,15 @@ msgstr "preservar la noción de las barras de ABC"
 #. "Report bugs in English via %s",
 #. or if there is a LilyPond users list or forum in your language
 #. "Report bugs in English via %s or in YOUR_LANG via URI"
-#: abc2ly.py:1363 convert-ly.py:123 etf2ly.py:1200 lilypond-book.py:214
-#: midi2ly.py:894 musicxml2ly.py:2646 main.cc:265
+#: abc2ly.py:1395 convert-ly.py:144 etf2ly.py:1216 lilypond-book.py:234
+#: midi2ly.py:909 musicxml2ly.py:2751 main.cc:281
 #, c-format, python-format
 msgid "Report bugs via %s"
-msgstr "Informe de los fallos a %s"
+msgstr ""
+"Informe de los fallos en español a http://lists.gnu.org/mailman/listinfo/lilypond-es\n"
+"o en inglés a %s"
 
-#: convert-ly.py:33
+#: convert-ly.py:44
 msgid ""
 "Update LilyPond input to newer version.  By default, update from the\n"
 "version taken from the \\version command, to the current LilyPond version."
@@ -591,82 +857,105 @@ msgstr ""
 "De manera predeterminada, actualizarlo desde la versión sacada de\n"
 "la instrucción \\version, a la versión actual de LilyPond."
 
-#: convert-ly.py:35 lilypond-book.py:71
+#: convert-ly.py:46 lilypond-book.py:82
 msgid "Examples:"
 msgstr "Ejemplos:"
 
-#: convert-ly.py:69 etf2ly.py:1173 lilypond-book.py:117 midi2ly.py:76
+#: convert-ly.py:81 etf2ly.py:1189 lilypond-book.py:116 midi2ly.py:90
+#, python-format
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s por"
+
+#: convert-ly.py:83 etf2ly.py:1191 lilypond-book.py:118 midi2ly.py:92
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Distribuido bajo los términos de la Licencia Pública General de GNU."
 
-#: convert-ly.py:70 etf2ly.py:1174 lilypond-book.py:118 midi2ly.py:77
+#: convert-ly.py:84 etf2ly.py:1192 lilypond-book.py:119 midi2ly.py:93
 msgid "It comes with NO WARRANTY."
 msgstr "Se distribuye SIN NINGUNA GARANTÍA."
 
-#: convert-ly.py:89 convert-ly.py:116
+#: convert-ly.py:102 convert-ly.py:135
 msgid "VERSION"
 msgstr "VERSIÓN"
 
-#: convert-ly.py:91
+#: convert-ly.py:104
 msgid "start from VERSION [default: \\version found in file]"
 msgstr "comenzar a partir de VERSIÓN [predeterminado: \\version del archivo]"
 
-#: convert-ly.py:94
+#: convert-ly.py:107
 msgid "edit in place"
 msgstr "editar in situ"
 
-#: convert-ly.py:98
+#: convert-ly.py:111
 msgid "do not add \\version command if missing"
 msgstr "no añadir la instrucción \\version si no está presente"
 
-#: convert-ly.py:104
+#: convert-ly.py:117
 #, python-format
 msgid "force updating \\version number to %s"
 msgstr "forzar la actualización del número de  \\version a %s"
 
-#: convert-ly.py:110
+#: convert-ly.py:123
+msgid "only update \\version number if file is modified"
+msgstr "actualizar solo el número de \\version si el archivo ha sido modificado"
+
+#: convert-ly.py:129
 #, python-format
 msgid "show rules [default: -f 0, -t %s]"
 msgstr "mostrar las reglas [predeterminado: -f 0, -t %s]"
 
-#: convert-ly.py:115
+#: convert-ly.py:134
 #, python-format
 msgid "convert to VERSION [default: %s]"
 msgstr "convertir a VERSIÓN [predeterminado: %s]"
 
-#: convert-ly.py:163
+#: convert-ly.py:139 etf2ly.py:1210 lilypond-book.py:215 midi2ly.py:897
+#: main.cc:170
+msgid "show warranty and copyright"
+msgstr "mostrar los avisos de garantía y de copyright"
+
+#: convert-ly.py:184
 msgid "Applying conversion: "
 msgstr "Aplicando la conversión: "
 
-#: convert-ly.py:176
+#: convert-ly.py:197
 msgid "Error while converting"
 msgstr "Error al convertir"
 
-#: convert-ly.py:178
+#: convert-ly.py:199
 msgid "Stopping at last successful rule"
 msgstr "Detención en la última regla satisfactoria"
 
-#: convert-ly.py:199
+#: convert-ly.py:224
 #, python-format
 msgid "Processing `%s'... "
 msgstr "Procesando «%s»... "
 
-#: convert-ly.py:289 relocate.cc:362 source-file.cc:59
-#, c-format, python-format
-msgid "cannot open file: `%s'"
-msgstr "no se puede abrir el archivo: «%s»"
+#: convert-ly.py:332
+#, python-format
+msgid "%s: Unable to open file"
+msgstr "%s: No se pudo abrir el archivo"
 
-#: convert-ly.py:296
+#: convert-ly.py:339
 #, python-format
-msgid "cannot determine version for `%s'.  Skipping"
-msgstr "no se puede determinar la versión de «%s»;  se salta"
+msgid "%s: Unable to determine version.  Skipping"
+msgstr "%s: no se puede determinar la versión.  Se salta"
 
-#: etf2ly.py:1179
+#: convert-ly.py:344
+#, python-format
+msgid ""
+"%s: Invalid version string `%s' \n"
+"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
+msgstr ""
+"%s: Cadena de versión no válida `%s' \n"
+"Las cadenas de versión válidas se componen de tres números separados por puntos, p.ej. `2.8.12'"
+
+#: etf2ly.py:1195
 #, python-format
 msgid "%s [OPTION]... ETF-FILE"
 msgstr "%s [OPCIÓN]... ARCHIVO_ETF"
 
-#: etf2ly.py:1180
+#: etf2ly.py:1196
 msgid ""
 "Enigma Transport Format is a format used by Coda Music Technology's\n"
 "Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond file.\n"
@@ -675,397 +964,357 @@ msgstr ""
 "Finale de Coda Music Technology.  etf2ly convierte un subconjunto de ETF a un\n"
 "archivo de LilyPond listo para usar.\n"
 
-#: etf2ly.py:1192 midi2ly.py:865 musicxml2ly.py:2638 main.cc:149 main.cc:154
+#: etf2ly.py:1208 midi2ly.py:880 musicxml2ly.py:2743 main.cc:161 main.cc:166
 msgid "FILE"
 msgstr "ARCHIVO"
 
-#: etf2ly.py:1194 lilypond-book.py:210 midi2ly.py:882 main.cc:158
-msgid "show warranty and copyright"
-msgstr "mostrar los avisos de garantía y de copyright"
-
-#: lilypond-book.py:69
+#: lilypond-book.py:80
 msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
 msgstr "Procesar los fragmentos de LylyPond en un documento de HTML híbrido, LaTeX, texinfo o DocBook."
 
-#: lilypond-book.py:76
+#: lilypond-book.py:87
 msgid "BOOK"
 msgstr "LIBRO"
 
-#: lilypond-book.py:84
+#: lilypond-book.py:95
 #, python-format
 msgid "Exiting (%d)..."
 msgstr "Saliendo (%d)..."
 
-#: lilypond-book.py:115
-#, python-format
-msgid "Copyright (c) %s by"
-msgstr "Copyright (c) %s por"
-
-#: lilypond-book.py:125
+#: lilypond-book.py:127
 msgid "FILTER"
 msgstr "FILTRO"
 
-#: lilypond-book.py:128
+#: lilypond-book.py:130
 msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
 msgstr "redirigir fragmentos a través de FILTRO [predeterminado: `convert-ly -n -']"
 
-#: lilypond-book.py:132
+#: lilypond-book.py:134
 msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
 msgstr "usar el formato de salida FORMATO (texi [predeterminado], texi-html, latex, html, docbook)"
 
-#: lilypond-book.py:133
+#: lilypond-book.py:135
 msgid "FORMAT"
 msgstr "FORMATO"
 
-#: lilypond-book.py:140
+#: lilypond-book.py:142
 msgid "add DIR to include path"
 msgstr "añadir DIRECTORIO a la ruta de inclusión"
 
-#: lilypond-book.py:141 lilypond-book.py:148 lilypond-book.py:166
-#: lilypond-book.py:172 lilypond-book.py:178 lilypond-book.py:184 main.cc:148
+#: lilypond-book.py:143 lilypond-book.py:150 lilypond-book.py:163
+#: lilypond-book.py:173 lilypond-book.py:189 lilypond-book.py:195 main.cc:160
 msgid "DIR"
 msgstr "DIRECTORIO"
 
-#: lilypond-book.py:146
+#: lilypond-book.py:148
 msgid "format Texinfo output so that Info will look for images of music in DIR"
 msgstr "formatear la salida de Texinfo de manera que Info busque las imágenes de música en DIRECTORIO"
 
-#: lilypond-book.py:153
-msgid "run executable PROG instead of latex"
-msgstr "ejecutar el programa PROGRAMA en lugar de latex"
-
-#: lilypond-book.py:154
-msgid "PROG"
-msgstr "PROGRAMA"
-
-#: lilypond-book.py:159
+#: lilypond-book.py:155
 msgid "PAD"
 msgstr "RELLENAR"
 
-#: lilypond-book.py:161
+#: lilypond-book.py:157
 msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
 msgstr "rellenar el lado izquierdo de la música para alinear la música aunque haya un número desigual de compases (en mm)"
 
-#: lilypond-book.py:165
-msgid "write output to DIR"
-msgstr "escribir la salida en el DIRECTORIO"
+#: lilypond-book.py:162
+msgid "write lily-XXX files to DIR, link into --output dir"
+msgstr "escribir archivos lily-XXX en DIR, enlazar al directorio de --output"
 
-#: lilypond-book.py:171
-msgid "do not fail if no lilypond output is found"
-msgstr "no fracasar si no se encuentra ninguna salida de lilypond"
+#: lilypond-book.py:167
+msgid "Load the additional python PACKAGE (containing e.g. a custom output format)"
+msgstr "Cargar el PAQUETE adicional de python (que contiene p.ej. un formato de salida personalizado)"
 
-#: lilypond-book.py:177
-msgid "do not fail if no PNG images are found for EPS files"
-msgstr "no fracasar si no se encuentra ninguna imagen PNG para los archivos EPS"
+#: lilypond-book.py:168
+msgid "PACKAGE"
+msgstr "PAQUETE"
 
-#: lilypond-book.py:183
-msgid "write lily-XXX files to DIR, link into --output dir"
-msgstr "escribir archivos lily-XXX en DIR, enlazar al directorio de --output"
+#: lilypond-book.py:172
+msgid "write output to DIR"
+msgstr "escribir la salida en el DIRECTORIO"
 
-#: lilypond-book.py:188
+#: lilypond-book.py:177
 msgid "COMMAND"
 msgstr "INSTRUCCIÓN"
 
-#: lilypond-book.py:189
+#: lilypond-book.py:178
 msgid "process ly_files using COMMAND FILE..."
 msgstr "procesar ly_files utilizando INSTRUCCIÓN ARCHIVO..."
 
-#: lilypond-book.py:196
-msgid "create PDF files for use with PDFTeX"
-msgstr "crear archivos PDF para su utilización con PDFTeX"
-
-#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
-msgid "be verbose"
-msgstr "ser prolijo"
-
-#: lilypond-book.py:871
-#, python-format
-msgid "file not found: %s"
-msgstr "archivo no encontrado: %s"
-
-#: lilypond-book.py:1142
-#, python-format
-msgid "deprecated ly-option used: %s=%s"
-msgstr "se ha usado una ly-option obsoleta: %s=%s"
-
-#: lilypond-book.py:1144
-#, python-format
-msgid "compatibility mode translation: %s=%s"
-msgstr "traducción en modo de compatibilidad: %s=%s"
+#: lilypond-book.py:182
+msgid "Compile snippets in safe mode"
+msgstr "Compilar los fragmentos de código en modo seguro"
 
-#: lilypond-book.py:1147
-#, python-format
-msgid "deprecated ly-option used: %s"
-msgstr "se usó una ly-option obsoleta: %s"
+#: lilypond-book.py:188
+msgid "do not fail if no lilypond output is found"
+msgstr "no fracasar si no se encuentra ninguna salida de lilypond"
 
-#: lilypond-book.py:1149
-#, python-format
-msgid "compatibility mode translation: %s"
-msgstr "traducción en modo compatible: %s"
+#: lilypond-book.py:194
+msgid "do not fail if no PNG images are found for EPS files"
+msgstr "no fracasar si no se encuentra ninguna imagen PNG para los archivos EPS"
 
-#: lilypond-book.py:1167
-#, python-format
-msgid "ignoring unknown ly option: %s"
-msgstr "opción ly desconocida e ignorada: %s"
+#: lilypond-book.py:200
+msgid "write snippet output files with the same base name as their source file"
+msgstr "escribir los archivos de salida de los fragmentos de código con el mismo nombra de base que su archivo fuente"
 
-#: lilypond-book.py:1604
-#, python-format
-msgid "Opening filter `%s'"
-msgstr "Filtro de apertura «%s»"
+#: lilypond-book.py:204 midi2ly.py:890 musicxml2ly.py:2688 main.cc:169
+msgid "be verbose"
+msgstr "ser prolijo"
 
-#: lilypond-book.py:1621
-#, python-format
-msgid "`%s' failed (%d)"
-msgstr "«%s» ha fallado (%d)"
+#: lilypond-book.py:220
+msgid ""
+"run executable PROG instead of latex, or in\n"
+"case --pdf option is set instead of pdflatex"
+msgstr ""
+"ejecutar PROG en lugar de latex, o en caso de que\n"
+"esté seleccionada la opción --pdf, en lugar de pdflatex"
 
-#: lilypond-book.py:1622
-msgid "The error log is as follows:"
-msgstr "El registro de errores es como sigue:"
+#: lilypond-book.py:222
+msgid "PROG"
+msgstr "PROGRAMA"
 
-#: lilypond-book.py:1684
-msgid "cannot find \\begin{document} in LaTeX document"
-msgstr "no se encuentra \\begin{document} en el documento de LaTeX"
+#: lilypond-book.py:228
+msgid "create PDF files for use with PDFTeX"
+msgstr "crear archivos PDF para su utilización con PDFTeX"
 
-#: lilypond-book.py:1784
+#: lilypond-book.py:419
 msgid "Writing snippets..."
 msgstr "Escribiendo fragmentos..."
 
-#: lilypond-book.py:1790
+#: lilypond-book.py:425
 msgid "Processing..."
 msgstr "Procesando..."
 
-#: lilypond-book.py:1796
+#: lilypond-book.py:431
 msgid "All snippets are up to date..."
 msgstr "Todos los fragmentos están actualizados..."
 
-#: lilypond-book.py:1830
+#: lilypond-book.py:452
 #, python-format
 msgid "cannot determine format for: %s"
 msgstr "no se puede determinar el formato de: %s"
 
-#: lilypond-book.py:1841
+#: lilypond-book.py:461
 #, python-format
 msgid "%s is up to date."
 msgstr "%s está actualizado."
 
-#: lilypond-book.py:1855
+#: lilypond-book.py:475
 #, python-format
 msgid "Writing `%s'..."
 msgstr "Escribiendo «%s»..."
 
-#: lilypond-book.py:1913
+#: lilypond-book.py:537
 msgid "Output would overwrite input file; use --output."
 msgstr "La salida sobreescribiría el archivo de entrada; utilice --output."
 
-#: lilypond-book.py:1917
+#: lilypond-book.py:541
 #, python-format
 msgid "Reading %s..."
 msgstr "Leyendo %s..."
 
-#: lilypond-book.py:1937
+#: lilypond-book.py:549
 msgid "Dissecting..."
 msgstr "Diseccionando..."
 
-#: lilypond-book.py:1953
+#: lilypond-book.py:561
 #, python-format
 msgid "Compiling %s..."
 msgstr "Compilando %s..."
 
-#: lilypond-book.py:1962
+#: lilypond-book.py:570
 #, python-format
 msgid "Processing include: %s"
 msgstr "Procesando el archivo de inclusión: %s"
 
-#: lilypond-book.py:1974
+#: lilypond-book.py:582
 #, python-format
 msgid "Removing `%s'"
 msgstr "Suprimiendo «%s»"
 
-#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
+#: midi2ly.py:99
 msgid "warning: "
 msgstr "advertencia: "
 
-#: midi2ly.py:87 midi2ly.py:907
+#: midi2ly.py:102 midi2ly.py:922
 msgid "error: "
 msgstr "error: "
 
-#: midi2ly.py:88
+#: midi2ly.py:103
 msgid "Exiting... "
 msgstr "Saliendo... "
 
-#: midi2ly.py:833
+#: midi2ly.py:848
 #, python-format
 msgid "%s output to `%s'..."
 msgstr "salida de %s hacia «%s»..."
 
-#: midi2ly.py:846
+#: midi2ly.py:861
 #, python-format
 msgid "Convert %s to LilyPond input.\n"
 msgstr "Convertir %s a entrada de LilyPond.\n"
 
-#: midi2ly.py:851
+#: midi2ly.py:866
 msgid "print absolute pitches"
 msgstr "mostrar las alturas absolutas"
 
-#: midi2ly.py:853 midi2ly.py:868
+#: midi2ly.py:868 midi2ly.py:883
 msgid "DUR"
 msgstr "DURACIÓN"
 
-#: midi2ly.py:854
+#: midi2ly.py:869
 msgid "quantise note durations on DUR"
 msgstr "cuantizar las duraciones de las notas sobre DURACIÓN"
 
-#: midi2ly.py:857
+#: midi2ly.py:872
 msgid "print explicit durations"
 msgstr "mostrar las duraciones explícitas"
 
-#: midi2ly.py:861
+#: midi2ly.py:876
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "establecer la tonalidad: ALT=+sostenidos|-bemoles; MENOR=1"
 
-#: midi2ly.py:862
+#: midi2ly.py:877
 msgid "ALT[:MINOR]"
 msgstr "ALT[:MENOR]"
 
-#: midi2ly.py:867
+#: midi2ly.py:882
 msgid "quantise note starts on DUR"
 msgstr "cuantizar los comienzos de las notras sobre DUR"
 
-#: midi2ly.py:870
+#: midi2ly.py:885
 msgid "DUR*NUM/DEN"
 msgstr "DURACIÓN*NUMERADOR/DENOMINADOR"
 
-#: midi2ly.py:873
+#: midi2ly.py:888
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "permitir duraciones de grupos irregulares DURACIÓN*NUMERADOR/DENOMINADOR"
 
-#: midi2ly.py:885
+#: midi2ly.py:900
 msgid "treat every text as a lyric"
 msgstr "tratar todos los textos como letra"
 
-#: midi2ly.py:888
+#: midi2ly.py:903
 msgid "Examples"
 msgstr "Ejemplos"
 
-#: midi2ly.py:908
+#: midi2ly.py:923
 msgid "no files specified on command line."
 msgstr "no se ha especificado ningún archivo en la línea de órdenes."
 
-#: musicxml2ly.py:343
-msgid "Encountered file created by Dolet 3.4 for Sibelius, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
-msgstr "Se encontró un archivo creado mediante Dolet 3.4 para Sibelius que contiene información de barrados errónea. Toda la información de barrado en el archivo MusicXML se ignorará"
-
-#: musicxml2ly.py:346
-msgid "Encountered file created by Noteworthy Composer's nwc2xml, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
-msgstr "Se encontró un archivo creado mediante Noteworthy Composer's nwc2xml que contiene información de barrados errónea. Toda la información de barrado en el archivo MusicXML se ignorará"
+#: musicxml2ly.py:324
+#, python-format
+msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgstr "Se encontró un archivo creado por %s, que contiene información de barrado errónea. Toda la información de barrado del archivo MusicXML se ignorará"
 
-#: musicxml2ly.py:362 musicxml2ly.py:364
+#: musicxml2ly.py:340 musicxml2ly.py:342
 #, python-format
 msgid "Unprocessed PartGroupInfo %s encountered"
 msgstr "Se ha encontrado el PartGroupInfo sin procesar %s"
 
-#: musicxml2ly.py:594
+#: musicxml2ly.py:595
 #, python-format
 msgid "Encountered note at %s without type and duration (=%s)"
 msgstr "Se ha encontrado una nota en %s sin typo y duración (=%s)"
 
-#: musicxml2ly.py:613
+#: musicxml2ly.py:615
 #, python-format
 msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
 msgstr "Se ha encontrado una duración racional con denominador %s, no se puede convertir a duracion de lilypond"
 
-#: musicxml2ly.py:868
+#: musicxml2ly.py:864
 msgid "Unable to extract key signature!"
 msgstr "¡No se ha podido extraer la armadura de la tonalidad!"
 
-#: musicxml2ly.py:895
+#: musicxml2ly.py:891
 #, python-format
 msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
 msgstr "¡Modo %s desconocido, se esperaba «major», «minor» o un modo eclesiástico!"
 
-#: musicxml2ly.py:968
+#: musicxml2ly.py:1029
 #, python-format
 msgid "Encountered unprocessed marker %s\n"
 msgstr "Se ha encontrado el marcador sin procesar %s\n"
 
-#: musicxml2ly.py:1062
+#: musicxml2ly.py:1123
 #, python-format
 msgid "unknown span event %s"
 msgstr "evento de extensión %s desconocido"
 
-#: musicxml2ly.py:1072
+#: musicxml2ly.py:1133
 #, python-format
 msgid "unknown span type %s for %s"
 msgstr "tipo de extensión %s deconocido para %s"
 
-#: musicxml2ly.py:1498
+#: musicxml2ly.py:1553
 msgid "Unknown metronome mark, ignoring"
 msgstr "Marca de metrónomo desconocida, se ignora"
 
 #. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1503
+#: musicxml2ly.py:1558
 msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
 msgstr "Las marcas metronómicas con relaciones complejas (<metronome-note> en MusicXML) no se encuentran implementadas aún."
 
-#: musicxml2ly.py:1703
+#: musicxml2ly.py:1760
 #, python-format
 msgid "Unable to convert chord type %s to lilypond."
 msgstr "No se pudo convertir el acorde de tipo %s a lilypond."
 
-#: musicxml2ly.py:1849
+#: musicxml2ly.py:1909
 #, python-format
 msgid "drum %s type unknown, please add to instrument_drumtype_dict"
 msgstr "tipo de percusión %s desconocido, añádalo al diccionario instrument_drumtype_dict"
 
-#: musicxml2ly.py:1853
+#: musicxml2ly.py:1913
 msgid "cannot find suitable event"
 msgstr "no se encuentra un evento adecuado"
 
-#: musicxml2ly.py:1994
+#: musicxml2ly.py:2061
 #, python-format
 msgid "Negative skip %s (from position %s to %s)"
 msgstr "Desplazamiento negativo %s (desde la posición %s hasta la %s)"
 
-#: musicxml2ly.py:2134
+#: musicxml2ly.py:2202
 #, python-format
 msgid "Negative skip found: from %s to %s, difference is %s"
 msgstr "Se ha encontrado un desplazamiento negativo: desde %s hasta %s, la diferencia es %s"
 
-#: musicxml2ly.py:2205
+#: musicxml2ly.py:2283
 #, python-format
 msgid "unexpected %s; expected %s or %s or %s"
 msgstr "%s inesperado; se esperaba %s o %s o %s"
 
-#: musicxml2ly.py:2311
+#: musicxml2ly.py:2389
 msgid "Encountered closing slur, but no slur is open"
 msgstr "Se ha encontrado el cierre de una ligadura de expresión, pero no hay ninguna abierta"
 
-#: musicxml2ly.py:2314
+#: musicxml2ly.py:2392
 msgid "Cannot have two simultaneous (closing) slurs"
 msgstr "No puede haber dos ligaduras de expresión (cerrándose) simultáneas"
 
-#: musicxml2ly.py:2324
+#: musicxml2ly.py:2401
 msgid "Cannot have a slur inside another slur"
 msgstr "No puede haber una ligadura de expresión dentro de otra"
 
-#: musicxml2ly.py:2327
+#: musicxml2ly.py:2404
 msgid "Cannot have two simultaneous slurs"
 msgstr "No puede haber dos ligaduras de expresión simultáneas"
 
-#: musicxml2ly.py:2455
+#: musicxml2ly.py:2538
 #, python-format
 msgid "cannot simultaneously have more than one mode: %s"
 msgstr "no puede haber más de un modo al mismo tiempo: %s"
 
-#: musicxml2ly.py:2553
+#: musicxml2ly.py:2646
 msgid "Converting to LilyPond expressions..."
 msgstr "Conversión a expresiones de LilyPond..."
 
-#: musicxml2ly.py:2564
+#: musicxml2ly.py:2657
 msgid "musicxml2ly [OPTION]... FILE.xml"
 msgstr "musicxml2ly [OPCIÓN]... ARCHIVO.xml"
 
-#: musicxml2ly.py:2566
+#: musicxml2ly.py:2659
 msgid ""
 "Convert MusicXML from FILE.xml to LilyPond input.\n"
 "If the given filename is -, musicxml2ly reads from the command line.\n"
@@ -1073,7 +1322,7 @@ msgstr ""
 "Convertir MusicXML desde ARCHIVO.xml a entrada de LilyPond.\n"
 "SI el nombre de archivo aportado es -, musicxml2ly lee de la línea de órdenes.\n"
 
-#: musicxml2ly.py:2576
+#: musicxml2ly.py:2669
 msgid ""
 "Copyright (c) 2005--2010 by\n"
 "    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
@@ -1085,206 +1334,223 @@ msgstr ""
 "    Jan Nieuwenhuizen <janneke@gnu.org> y\n"
 "    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
 
-#: musicxml2ly.py:2601
+#: musicxml2ly.py:2694
 msgid "use lxml.etree; uses less memory and cpu time"
 msgstr "usar lxml.etree; utiliza menos memoria y tiempo de procesador"
 
-#: musicxml2ly.py:2607
+#: musicxml2ly.py:2700
 msgid "input file is a zip-compressed MusicXML file"
 msgstr "el archivo de entrada es un archivo MusicXML comprimido en zip"
 
-#: musicxml2ly.py:2613
+#: musicxml2ly.py:2706
 msgid "convert pitches in relative mode (default)"
 msgstr "convertir las notas al modo relativo (por omisión)"
 
-#: musicxml2ly.py:2618
+#: musicxml2ly.py:2711
 msgid "convert pitches in absolute mode"
 msgstr "convertir las notas al modo absoluto"
 
-#: musicxml2ly.py:2621
+#: musicxml2ly.py:2714
 msgid "LANG"
 msgstr "IDIOMA"
 
-#: musicxml2ly.py:2623
-msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
-msgstr "usar un archivo de idioma distinto 'IDIOMA.ly' y los nombres de nota correspondientes, p.ej. 'deutsch' (alemán) para deutsch.ly"
+#: musicxml2ly.py:2716
+msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
+msgstr "usar IDIOMA para los nombres de las notas, p.ej. 'espanol' para los nombres de las notas en español"
 
-#: musicxml2ly.py:2629
+#: musicxml2ly.py:2722
 msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
 msgstr "no convertir las direcciones (^, _ o -) para las articulaciones, expresiones de dinámica, etc."
 
-#: musicxml2ly.py:2635
+#: musicxml2ly.py:2728
+msgid "do not convert exact vertical positions of rests"
+msgstr "no convertir las posiciones verticales exactas de los silencios"
+
+#: musicxml2ly.py:2734
+msgid "do not convert the exact page layout and breaks"
+msgstr "no convertir la disposición y saltos de página exactos"
+
+#: musicxml2ly.py:2740
 msgid "do not convert beaming information, use lilypond's automatic beaming instead"
 msgstr "no convertir la información de barrado, en vez de ello utilizar el barrado automático de lilypond"
 
-#: musicxml2ly.py:2643
+#: musicxml2ly.py:2748
 msgid "set output filename to FILE, stdout if -"
 msgstr "establecer el nombre del archivo de salida a ARCHIVO, y a la salida estándar si es -"
 
-#: musicxml2ly.py:2726
+#: musicxml2ly.py:2831
 #, python-format
 msgid "unknown part in part-list: %s"
 msgstr "parte desconocida en la lista part-list: %s"
 
-#: musicxml2ly.py:2788
+#: musicxml2ly.py:2893
 msgid "Input is compressed, extracting raw MusicXML data from stdin"
 msgstr "El archivo de entrada está comprimido, extrayendo los datos de MusicXML en bruto a partir de la entrada estándar"
 
-#: musicxml2ly.py:2791
+#: musicxml2ly.py:2896
 #, python-format
 msgid "Input file %s is compressed, extracting raw MusicXML data"
 msgstr "El archivo de entrada %s está comprimido, extrayendo los datos de MusicXML en bruto"
 
-#: musicxml2ly.py:2821
+#: musicxml2ly.py:2926
 msgid "Reading MusicXML from Standard input ..."
 msgstr "Leyendo MusicXML desde la entrada estándar..."
 
-#: musicxml2ly.py:2823
+#: musicxml2ly.py:2928
 #, python-format
 msgid "Reading MusicXML from %s ..."
 msgstr "Leyendo MusicXML desde %s ..."
 
-#: musicxml2ly.py:2856
+#: musicxml2ly.py:2961
 #, python-format
 msgid "Output to `%s'"
 msgstr "La salida se dirige hacia `%s'"
 
-#: musicxml2ly.py:2922
+#: musicxml2ly.py:3028
 #, python-format
 msgid "Unable to find input file %s"
 msgstr "No se encuentra el archivo de entrada %s"
 
-#: getopt-long.cc:140
+#: website_post.py:115
+msgid "English"
+msgstr "Inglés"
+
+#: website_post.py:118
+msgid "Other languages"
+msgstr "Otros idiomas"
+
+#: getopt-long.cc:153
 #, c-format
 msgid "option `%s' requires an argument"
 msgstr "la opción «%s» requiere un argumento"
 
-#: getopt-long.cc:144
+#: getopt-long.cc:157
 #, c-format
 msgid "option `%s' does not allow an argument"
 msgstr "la opción «%s» no permite argumentos"
 
-#: getopt-long.cc:148
+#: getopt-long.cc:161
 #, c-format
 msgid "unrecognized option: `%s'"
 msgstr "opción no reconocida: «%s»"
 
-#: getopt-long.cc:154
+#: getopt-long.cc:167
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
 msgstr "argumento no válido «%s» para la opción «%s»"
 
-#: warn.cc:68 grob.cc:566 input.cc:82
+#: warn.cc:59
+#, c-format
+msgid "success: %s"
+msgstr "finalizado correctamente: %s"
+
+#: warn.cc:86 grob.cc:617 input.cc:97
 #, c-format
 msgid "programming error: %s"
 msgstr "error de programación: %s"
 
-#: warn.cc:69 input.cc:83
+#: warn.cc:87 input.cc:98
 msgid "continuing, cross fingers"
 msgstr "continuamos; cruce los dedos"
 
-#: accidental-engraver.cc:298
+#: accidental-engraver.cc:180
 #, c-format
 msgid "accidental typesetting list must begin with context-name: %s"
 msgstr "la lista de tippografiado de alteraciones accidentales debe comenzar con context-name: %s"
 
-#: accidental-engraver.cc:328
+#: accidental-engraver.cc:210
 #, c-format
 msgid "procedure or context-name expected for accidental rule, found %s"
 msgstr "se esperaba un procedimiento o un nombre de contexto para la regla de alteración accidental, se ha encontrado %s"
 
-#: accidental.cc:187
+#: accidental.cc:200
 #, c-format
 msgid "Could not find glyph-name for alteration %s"
 msgstr "No se ha encontrado el nombre de glifo para la alteración %s"
 
-#: accidental.cc:202
+#: accidental.cc:215
 msgid "natural alteration glyph not found"
 msgstr "no se encuentra el glifo del símbolo de becuadro"
 
-#: align-interface.cc:305
-msgid "tried to get a translation for something that is no child of mine"
-msgstr "se ha intentado obtener una traducción de algo que no es hijo mío"
-
-#: all-font-metrics.cc:143
+#: all-font-metrics.cc:156
 #, c-format
 msgid "cannot find font: `%s'"
 msgstr "no se encuentra la tipografía «%s»"
 
-#: apply-context-iterator.cc:31
+#: apply-context-iterator.cc:42
 msgid "\\applycontext argument is not a procedure"
 msgstr "el argumento de \\applycontext no es un procedimiento"
 
-#: auto-change-iterator.cc:63 change-iterator.cc:61
+#: auto-change-iterator.cc:74 change-iterator.cc:72
 #, c-format
 msgid "cannot change, already in translator: %s"
 msgstr "no se puede cambiar, ya está dentro del traductor: %s"
 
-#: axis-group-engraver.cc:78
+#: axis-group-engraver.cc:94
 msgid "Axis_group_engraver: vertical group already has a parent"
 msgstr "Axis_group_engraver: el grupo vertical ya tiene un ancestro"
 
-#: axis-group-engraver.cc:79
+#: axis-group-engraver.cc:95
 msgid "are there two Axis_group_engravers?"
 msgstr "¿hay dos Axis_group_engravers?"
 
-#: axis-group-engraver.cc:80
+#: axis-group-engraver.cc:96
 msgid "removing this vertical group"
 msgstr "se suprime este grupo vertical"
 
-#: axis-group-interface.cc:532
+#: axis-group-interface.cc:611
 msgid "an outside-staff object should have a direction, defaulting to up"
 msgstr "un objeto externo a la pauta debe tener una dirección, por omisión se establece hacia arriba"
 
-#: bar-check-iterator.cc:73
+#: bar-check-iterator.cc:84
 #, c-format
 msgid "barcheck failed at: %s"
 msgstr "la comprobación de compás ha fallado en: %s"
 
-#: beam-engraver.cc:126
+#: beam-engraver.cc:147
 msgid "already have a beam"
 msgstr "ya tiene una barra"
 
-#: beam-engraver.cc:202
+#: beam-engraver.cc:230
 msgid "unterminated beam"
 msgstr "barra sin terminar"
 
-#: beam-engraver.cc:244 chord-tremolo-engraver.cc:138
+#: beam-engraver.cc:266 chord-tremolo-engraver.cc:150
 msgid "stem must have Rhythmic structure"
 msgstr "la plica debe tener estructura rítmica"
 
-#: beam-engraver.cc:252
+#: beam-engraver.cc:274
 msgid "stem does not fit in beam"
 msgstr "la plica no cabe dentro de la barra"
 
-#: beam-engraver.cc:253
+#: beam-engraver.cc:275
 msgid "beam was started here"
 msgstr "la barra comenzó aquí"
 
-#: beam-quanting.cc:307
+#: beam-quanting.cc:314
 msgid "no feasible beam position"
 msgstr "no hay ninguna posición viable para la barra"
 
-#: beam.cc:160
+#: beam.cc:171
 msgid "removing beam with no stems"
 msgstr "se suprime la barra sin plicas"
 
-#: beam.cc:1078
+#: beam.cc:1116
 msgid "no viable initial configuration found: may not find good beam slope"
 msgstr "no se ha encontrado ninguna configuración inicial viable; puede que no se encuentre una buena inclinación de las barras"
 
-#: break-alignment-interface.cc:195
+#: break-alignment-interface.cc:206
 #, c-format
 msgid "No spacing entry from %s to `%s'"
 msgstr "no hay un elemento de espaciado desde %s hasta «%s»"
 
-#: change-iterator.cc:23
+#: change-iterator.cc:34
 #, c-format
 msgid "cannot change `%s' to `%s'"
 msgstr "no se puede cambiar de «%s» a «%s»"
 
 #. FIXME: constant error message.
-#: change-iterator.cc:82
+#: change-iterator.cc:93
 msgid "cannot find context to switch to"
 msgstr "no se encuentra el contexto al que cambiar"
 
@@ -1293,13 +1559,13 @@ msgstr "no se encuentra el contexto al que cambiar"
 #.
 #. last->translator_id_string () = get_change
 #. ()->change_to_id_string ();
-#: change-iterator.cc:91
+#: change-iterator.cc:102
 #, c-format
 msgid "not changing to same context type: %s"
 msgstr "no se cambia al mismo tipo de contexto: %s"
 
 #. FIXME: uncomprehensable message
-#: change-iterator.cc:95
+#: change-iterator.cc:106
 msgid "none of these in my family"
 msgstr "no hay ninguno de estos en mi familia"
 
@@ -1307,199 +1573,196 @@ msgstr "no hay ninguno de estos en mi familia"
 msgid "No tremolo to end"
 msgstr "No hay ningún tremolo hasta el final"
 
-#: chord-tremolo-engraver.cc:110
+#: chord-tremolo-engraver.cc:109
 msgid "unterminated chord tremolo"
 msgstr "trémolo de acorde sin terminar"
 
-#: chord-tremolo-iterator.cc:35
-#, c-format
-msgid "expect 2 elements for chord tremolo, found %d"
-msgstr "se esperaban 2 elementos para el tremolo de acorde, se han encontrado %d"
-
-#: clef.cc:54
+#: clef.cc:65
 #, c-format
 msgid "clef `%s' not found"
 msgstr "no se ha encontrado la clave  «%s»"
 
-#: cluster.cc:110
+#: cluster.cc:120
 #, c-format
 msgid "unknown cluster style `%s'"
 msgstr "estilo de cluster (racimo) «%s» desconocido"
 
-#: cluster.cc:147
+#: cluster.cc:157
 msgid "junking empty cluster"
 msgstr "se recorta el racimo (cluster) vacío"
 
-#: coherent-ligature-engraver.cc:100
+#: coherent-ligature-engraver.cc:111
 #, c-format
 msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
 msgstr "Coherent_ligature_engraver: se establece `spacing-increment=0.01': ptr=%ul"
 
 #. if we get to here, just put everything on one line
-#: constrained-breaking.cc:176 constrained-breaking.cc:193
+#: constrained-breaking.cc:189 constrained-breaking.cc:207
 msgid "cannot find line breaking that satisfies constraints"
 msgstr "no se ecnuentra un salto de línea que cumpla las restricciones"
 
-#: context-def.cc:130
-#, c-format
-msgid "program has no such type: `%s'"
-msgstr "el programa no tiene este tipo: «%s»"
-
-#: context-property.cc:32
+#: context-property.cc:42
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "se necesitan argumentos de símbolo para \\override y \\revert"
 
-#: context.cc:139
+#: context.cc:149
 #, c-format
 msgid "cannot find or create new `%s'"
 msgstr "no se encuentra o no se puede crear un «%s» nuevo"
 
-#: context.cc:197
+#: context.cc:207
 #, c-format
 msgid "cannot find or create `%s' called `%s'"
 msgstr "no se encuentra o no se puede crear «%s» llamado «%s»"
 
-#: context.cc:259
+#: context.cc:269
 #, c-format
 msgid "Invalid CreateContext event: Cannot create %s context"
 msgstr "evento CreateContext inválido: No se puede crear el contexto %s"
 
-#: context.cc:390
+#: context.cc:400
 #, c-format
 msgid "cannot find or create: `%s'"
 msgstr "no se encuentra o no se puede crear «%s»"
 
-#: custos.cc:77
+#: custos.cc:88
 #, c-format
 msgid "custos `%s' not found"
 msgstr "no se encuentran los custos «%s»"
 
-#: dispatcher.cc:71
+#: dispatcher.cc:82
 msgid "Event class should be a symbol"
 msgstr "La clase del evento debe ser un símbolo"
 
-#: dispatcher.cc:78
+#: dispatcher.cc:89
 #, c-format
 msgid "Unknown event class %s"
 msgstr "Clase de evento %s desconocida"
 
-#: dots.cc:37
+#: dots.cc:48
 #, c-format
 msgid "dot `%s' not found"
 msgstr "no se encuentra el puntillo «%s»"
 
-#: dynamic-engraver.cc:186
+#: dynamic-engraver.cc:197
 msgid "cannot find start of (de)crescendo"
 msgstr "no se encuentra el comienzo del (de)crescendo"
 
-#: dynamic-engraver.cc:195
+#: dynamic-engraver.cc:206
 msgid "already have a decrescendo"
 msgstr "ya tiene un decrescendo"
 
-#: dynamic-engraver.cc:197
+#: dynamic-engraver.cc:208
 msgid "already have a crescendo"
 msgstr "ya tiene un crescendo"
 
-#: dynamic-engraver.cc:200
+#: dynamic-engraver.cc:211
 msgid "cresc starts here"
 msgstr "el cresc comenzó aquí"
 
-#: dynamic-engraver.cc:328
+#: dynamic-engraver.cc:339
 msgid "unterminated (de)crescendo"
 msgstr "(de)crescendo sin terminar"
 
-#: extender-engraver.cc:142 extender-engraver.cc:151
+#: episema-engraver.cc:75
+msgid "already have an episema"
+msgstr "ya tiene un episema"
+
+#: episema-engraver.cc:88
+msgid "cannot find start of episema"
+msgstr "no se encuentra el comienzo del episema"
+
+#: episema-engraver.cc:137
+msgid "unterminated episema"
+msgstr "episema sin terminar"
+
+#: extender-engraver.cc:170 extender-engraver.cc:179
 msgid "unterminated extender"
 msgstr "prolongación sin terminar"
 
-#: font-config-scheme.cc:140 font-config.cc:57
+#: font-config-scheme.cc:152 font-config.cc:55
 #, c-format
 msgid "failed adding font directory: %s"
 msgstr "fallo al añadir la carpeta de tipografías: %s"
 
-#: font-config-scheme.cc:142 font-config.cc:59
+#: font-config-scheme.cc:154 font-config.cc:57
 #, c-format
 msgid "adding font directory: %s"
 msgstr "añadiendo carpeta de tipografías: %s"
 
-#: font-config-scheme.cc:156
+#: font-config-scheme.cc:168
 #, c-format
 msgid "failed adding font file: %s"
 msgstr "fallo al añadir el archivo de fuente tipográfica: %s"
 
-#: font-config-scheme.cc:158
+#: font-config-scheme.cc:170
 #, c-format
 msgid "adding font file: %s"
 msgstr "añadiendo archivo de fuente tipográfica: %s"
 
-#: font-config.cc:28
+#: font-config.cc:40
 msgid "Initializing FontConfig..."
 msgstr "Inicializando FontConfig..."
 
-#: font-config.cc:44
-#, c-format
-msgid "Rebuilding FontConfig cache %s, this may take a while..."
-msgstr "Reconstruyendo la caché de FontConfig %s, puede tardar un rato..."
+#: font-config.cc:61
+msgid "Building font database..."
+msgstr "Construyendo la base de datos de fuentes tipográficas..."
 
-#: font-config.cc:63
-msgid "Building font database."
-msgstr "Construyendo la base de datos de fuentes tipográficas."
-
-#: general-scheme.cc:202
+#: general-scheme.cc:305
 msgid "infinity or NaN encountered while converting Real number"
 msgstr "se ha encontrado infinito o NaN durante la conversión de un número Real"
 
-#: general-scheme.cc:203
+#: general-scheme.cc:306
 msgid "setting to zero"
 msgstr "estableciendo al valor cero"
 
-#: general-scheme.cc:422 output-ps.scm:63
+#: general-scheme.cc:542 output-ps.scm:48
 msgid "Found infinity or nan in output. Substituting 0.0"
 msgstr "Se ha encontrado Infinito o NaN en la salida. Se sustituye por 0.0"
 
-#: glissando-engraver.cc:94
+#: glissando-engraver.cc:105
 msgid "unterminated glissando"
 msgstr "glissando sin terminar"
 
-#: global-context-scheme.cc:85 global-context-scheme.cc:103
+#: global-context-scheme.cc:96 global-context-scheme.cc:114
 msgid "no music found in score"
 msgstr "no se ha encontrado música en la partitura"
 
-#: global-context-scheme.cc:93
+#: global-context-scheme.cc:104
 msgid "Interpreting music... "
 msgstr "Interpretando la música... "
 
-#: global-context-scheme.cc:116
+#: global-context-scheme.cc:127
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "tiempo transcurrido: %.2f segundos"
 
-#: gregorian-ligature-engraver.cc:59
+#: gregorian-ligature-engraver.cc:70
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s ignorado(s)"
 
-#: gregorian-ligature-engraver.cc:64
+#: gregorian-ligature-engraver.cc:75
 #, c-format
 msgid "implied \\%s added"
 msgstr "se ha añadido el \\%s implícito"
 
 #. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:213
+#: gregorian-ligature-engraver.cc:224
 msgid "cannot apply `\\~' on first head of ligature"
 msgstr "no se puede aplicar `\\~' sobre la primera cabeza de una ligadura"
 
 #. (pitch == prev_pitch)
-#: gregorian-ligature-engraver.cc:225
+#: gregorian-ligature-engraver.cc:236
 msgid "cannot apply `\\~' on heads with identical pitch"
 msgstr "no se puede aplicar `\\~' sobre cabezas de idéntica altura"
 
-#: grob-interface.cc:57
+#: grob-interface.cc:68
 #, c-format
 msgid "Unknown interface `%s'"
 msgstr "interfaz desconocido «%s»"
 
-#: grob-interface.cc:68
+#: grob-interface.cc:79
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "El grob «%s» no tiene interfaz para la propiedad «%s»"
@@ -1514,7 +1777,7 @@ msgstr "%d: %s"
 msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)"
 msgstr "dependencia cíclica: se ha encontrado calculation-in-progress para #'%s (%s)"
 
-#: grob.cc:251
+#: grob.cc:286
 msgid "Infinity or NaN encountered"
 msgstr "se ha encontrado Infinito o NaN"
 
@@ -1522,149 +1785,148 @@ msgstr "se ha encontrado Infinito o NaN"
 msgid "decrescendo too small"
 msgstr "decrescendo demasiado pequeño"
 
-#: horizontal-bracket-engraver.cc:68
+#: horizontal-bracket-engraver.cc:78
 msgid "do not have that many brackets"
 msgstr "no tiene tantos corchetes"
 
-#: horizontal-bracket-engraver.cc:77
+#: horizontal-bracket-engraver.cc:87
 msgid "conflicting note group events"
 msgstr "eventos de grupo de notas en conflicto"
 
-#: hyphen-engraver.cc:93
+#: hyphen-engraver.cc:104
 msgid "removing unterminated hyphen"
 msgstr "se suprime el guión separador sin terminación"
 
-#: hyphen-engraver.cc:107
+#: hyphen-engraver.cc:118
 msgid "unterminated hyphen; removing"
 msgstr "guión separador sin terminar; se suprime"
 
-#: includable-lexer.cc:53 lily-guile.cc:76 lily-parser-scheme.cc:110
+#: includable-lexer.cc:71 lily-guile.cc:87 lily-parser-scheme.cc:109
 #, c-format
 msgid "cannot find file: `%s'"
 msgstr "no se encuentra el archivo: «%s»"
 
-#: includable-lexer.cc:55 lily-parser-scheme.cc:101
+#: includable-lexer.cc:73 lily-parser-scheme.cc:100
 #, c-format
 msgid "(search path: `%s')"
 msgstr "(ruta de búsqueda: «%s»)"
 
-#: input.cc:112 source-file.cc:173 source-file.cc:188
+#: input.cc:131 source-file.cc:179 source-file.cc:194
 msgid "position unknown"
 msgstr "posición desconocida"
 
-#: key-signature-interface.cc:74
+#: key-signature-interface.cc:78
 #, c-format
 msgid "No glyph found for alteration: %s"
 msgstr "No se ha encontrado ningún glifo para la alteración: %s"
 
-#: key-signature-interface.cc:84
+#: key-signature-interface.cc:88
 msgid "alteration not found"
 msgstr "no se encuentra la alteración"
 
-#: ligature-bracket-engraver.cc:62 ligature-engraver.cc:93
+#: ligature-bracket-engraver.cc:73 ligature-engraver.cc:104
 msgid "cannot find start of ligature"
 msgstr "no se encuentra el comienzo de la ligadura"
 
-#: ligature-bracket-engraver.cc:75 ligature-engraver.cc:120
+#: ligature-bracket-engraver.cc:86 ligature-engraver.cc:131
 msgid "already have a ligature"
 msgstr "ya tiene una ligadura"
 
-#: ligature-engraver.cc:98
+#: ligature-engraver.cc:109
 msgid "no right bound"
 msgstr "no hay límite derecho"
 
-#: ligature-engraver.cc:129
+#: ligature-engraver.cc:140
 msgid "no left bound"
 msgstr "no hay límite izquierdo"
 
 # ligature...?
-#: ligature-engraver.cc:173
+#: ligature-engraver.cc:185
 msgid "unterminated ligature"
 msgstr "ligadura sin terminar"
 
-#: ligature-engraver.cc:202
+#: ligature-engraver.cc:214
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "se ignora el silencio: la ligadura no puede contener silencios"
 
-#: ligature-engraver.cc:203
+#: ligature-engraver.cc:215
 msgid "ligature was started here"
 msgstr "la ligadura comenzó aquí"
 
-#: lily-guile.cc:78
+#: lily-guile.cc:89
 #, c-format
 msgid "(load path: `%s')"
 msgstr "(ruta de carga: «%s»)"
 
-#: lily-guile.cc:428
+#: lily-guile.cc:439
 #, c-format
 msgid "cannot find property type-check for `%s' (%s)."
 msgstr "no se encuentra la comprobación de tipo de propiedad para «%s» (%s)."
 
-#: lily-guile.cc:431
+#: lily-guile.cc:442
 msgid "perhaps a typing error?"
 msgstr "¿quizá es un error de tecleo?"
 
-#: lily-guile.cc:438
+#: lily-guile.cc:449
 msgid "doing assignment anyway"
 msgstr "se hace la asignación de todas formas"
 
-#: lily-guile.cc:450
+#: lily-guile.cc:461
 #, c-format
 msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr "ha fallado la comprobación de tipo para «%s»; el valor «%s» debe ser del tipo «%s»"
 
-#: lily-lexer.cc:252
+#: lily-lexer.cc:264
 msgid "include files are not allowed in safe mode"
 msgstr "no se permiten los archivos de inclusión en el modo seguro"
 
-#: lily-lexer.cc:271
+#: lily-lexer.cc:291
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "el nombre del identificativo es una palabra clave: «%s»"
 
-#: lily-lexer.cc:286
+#: lily-lexer.cc:312
 #, c-format
 msgid "error at EOF: %s"
 msgstr "error al final del archivo (EOF): %s"
 
-#: lily-parser-scheme.cc:30
-#, c-format
-msgid "deprecated function called: %s"
-msgstr "llamada a una función obsoleta: %s"
-
-#: lily-parser-scheme.cc:83
+#: lily-parser-scheme.cc:82
 #, c-format
 msgid "Changing working directory to: `%s'"
 msgstr "Se cambia el directorio de trabajo a:  «%s»"
 
-#: lily-parser-scheme.cc:100
+#: lily-parser-scheme.cc:99
 #, c-format
 msgid "cannot find init file: `%s'"
 msgstr "no se encuentra el archivo de inicio: «%s»"
 
-#: lily-parser-scheme.cc:119
+#: lily-parser-scheme.cc:118
 #, c-format
 msgid "Processing `%s'"
 msgstr "Procesando «%s»"
 
-#: lily-parser.cc:95
+#: lily-parser-scheme.cc:204
+msgid "ly:parser-parse-string is only valid with a new parser.  Use ly:parser-include-string instead."
+msgstr "ly:parser-parse-string sólo es válido con un analizador nuevo.  Use en su lugar ly:parser-include-string."
+
+#: lily-parser.cc:106
 msgid "Parsing..."
 msgstr "Analizando..."
 
-#: lily-parser.cc:123
+#: lily-parser.cc:134
 msgid "braces do not match"
 msgstr "las llaves no concuerdan"
 
-#: lyric-combine-music-iterator.cc:329
+#: lyric-combine-music-iterator.cc:337
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "no se encuentra la Voz «%s»"
 
-#: lyric-engraver.cc:162
+#: lyric-engraver.cc:175
 msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
 msgstr "La sílaba de la letra no tiene nota. Utilice \\lyricsto o associatedVoice."
 
-#: main.cc:97
+#: main.cc:109
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -1677,7 +1939,7 @@ msgstr ""
 "él bajo ciertas condiciones. Invóquelo como `%s --warranty' para obtener\n"
 "más información.\n"
 
-#: main.cc:103
+#: main.cc:115
 msgid ""
 "    This program is free software; you can redistribute it and/or\n"
 "modify it under the terms of the GNU General Public License version 2\n"
@@ -1719,11 +1981,11 @@ msgstr ""
 "59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 
-#: main.cc:134
+#: main.cc:146
 msgid "SYM[=VAL]"
 msgstr "SÍMBOLO[=VALOR]"
 
-#: main.cc:135
+#: main.cc:147
 msgid ""
 "set Scheme option SYM to VAL (default: #t).\n"
 "Use -dhelp for help."
@@ -1731,41 +1993,41 @@ msgstr ""
 "establecer la opción de Scheme SÍMBOLO a VALOR (por omisión: #t).\n"
 "Use -dhelp para obtener ayuda."
 
-#: main.cc:138
+#: main.cc:150
 msgid "EXPR"
 msgstr "EXPRESIÓN"
 
-#: main.cc:138
+#: main.cc:150
 msgid "evaluate scheme code"
 msgstr "evaluar código de Scheme"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:141
+#: main.cc:153
 msgid "FORMATs"
 msgstr "FORMATOs"
 
-#: main.cc:141
+#: main.cc:153
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr "volcar FORMATO,...  También como opciones separadas:"
 
-#: main.cc:142
+#: main.cc:154
 msgid "generate PDF (default)"
 msgstr "generar un PDF (predeterminado)"
 
-#: main.cc:143
+#: main.cc:155
 msgid "generate PNG"
 msgstr "generar un PNG"
 
-#: main.cc:144
+#: main.cc:156
 msgid "generate PostScript"
 msgstr "generar un PostScript"
 
-#: main.cc:146
+#: main.cc:158
 msgid "FIELD"
 msgstr "CAMPO"
 
-#: main.cc:146
+#: main.cc:158
 msgid ""
 "dump header field FIELD to file\n"
 "named BASENAME.FIELD"
@@ -1773,19 +2035,19 @@ msgstr ""
 "volcar el campo de cabecera CAMPO a un archivo\n"
 "llamado NOMBRE_BASE.CAMPO"
 
-#: main.cc:148
+#: main.cc:160
 msgid "add DIR to search path"
 msgstr "añadir DIRECTORIO a la ruta de búsqueda"
 
-#: main.cc:149
+#: main.cc:161
 msgid "use FILE as init file"
 msgstr "usar ARCHIVO como archivo de inicialización"
 
-#: main.cc:151
+#: main.cc:163
 msgid "USER, GROUP, JAIL, DIR"
 msgstr "USUARIO, GRUPO, JAULA, DIRECTORIO"
 
-#: main.cc:151
+#: main.cc:163
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
@@ -1793,15 +2055,16 @@ msgstr ""
 "chroot a JAULA, convertirse en USUARIO:GRUPO\n"
 "y cd al DIRECTORIO"
 
-#: main.cc:154
+#: main.cc:166
 msgid "write output to FILE (suffix will be added)"
 msgstr "escribir la salida en el ARCHIVO (se añadirá el sufijo)"
 
-#: main.cc:155
+#: main.cc:167
 msgid "relocate using directory of lilypond program"
 msgstr "relocalizar utilizando el directorio del programa lilypond"
 
-#: main.cc:221
+#. Do not update the copyright years here, run `make grand-replace'
+#: main.cc:238
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1811,115 +2074,112 @@ msgstr ""
 "%s y otros."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:249
+#: main.cc:265
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Uso: %s [OPCIÓN]... ARCHIVO..."
 
-#: main.cc:251
-#, c-format
+#: main.cc:267
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Componer tipográficamente la música y/o producir MIDI a partir de ARCHIVO."
 
-#: main.cc:253
-#, c-format
+#: main.cc:269
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond produce una notación musical bella y hermosa."
 
-#: main.cc:255
+#: main.cc:271
 #, c-format
 msgid "For more information, see %s"
 msgstr "Para ver más información, consulte %s"
 
-#: main.cc:257
-#, c-format
+#: main.cc:273
 msgid "Options:"
 msgstr "Opciones:"
 
-#: main.cc:311
+#: main.cc:327
 #, c-format
 msgid "expected %d arguments with jail, found: %u"
 msgstr "se esperaban %d argumentos con la jaula, se han encontrado: %u"
 
-#: main.cc:325
+#: main.cc:341
 #, c-format
 msgid "no such user: %s"
 msgstr "no existe el usuario %s"
 
-#: main.cc:327
+#: main.cc:343
 #, c-format
 msgid "cannot get user id from user name: %s: %s"
 msgstr "no se puede obtener el identificador de usuario a partir del nombre: %s: %s"
 
-#: main.cc:342
+#: main.cc:358
 #, c-format
 msgid "no such group: %s"
 msgstr "no existe este grupo: %s"
 
-#: main.cc:344
+#: main.cc:360
 #, c-format
 msgid "cannot get group id from group name: %s: %s"
 msgstr "no se puede obtener el id de grupo a partir del nombre: %s: %s"
 
-#: main.cc:352
+#: main.cc:368
 #, c-format
 msgid "cannot chroot to: %s: %s"
 msgstr "no se puede hacer chroot a: %s: %s"
 
-#: main.cc:359
+#: main.cc:375
 #, c-format
 msgid "cannot change group id to: %d: %s"
 msgstr "no se puede cambiar el grupo del usuario a %d: %s"
 
-#: main.cc:365
+#: main.cc:381
 #, c-format
 msgid "cannot change user id to: %d: %s"
 msgstr "no se puede cambiar el identificador de usuario a %d: %s"
 
-#: main.cc:371
+#: main.cc:387
 #, c-format
 msgid "cannot change working directory to: %s: %s"
 msgstr "no se puede cambiar el directorio de trabajo a: %s: %s"
 
-#: main.cc:611
+#: main.cc:628
 #, c-format
 msgid "exception caught: %s"
 msgstr "se ha capturado una excepción: %s"
 
 #. FIXME: constant error message.
-#: mark-engraver.cc:129
+#: mark-engraver.cc:157
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark debe tener un valor entero"
 
-#: mark-engraver.cc:135
+#: mark-engraver.cc:163
 msgid "mark label must be a markup object"
 msgstr "la etiqueta de marcado debe ser un objeto de marcado"
 
-#: mensural-ligature-engraver.cc:85
+#: mensural-ligature-engraver.cc:96
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "ligadura con menos de dos cabezas; se salta"
 
-#: mensural-ligature-engraver.cc:112
+#: mensural-ligature-engraver.cc:123
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "no se puede determinar la altura de la primitiva de ligadura; se salta"
 
-#: mensural-ligature-engraver.cc:126
+#: mensural-ligature-engraver.cc:137
 msgid "single note ligature - skipping"
 msgstr "ligadura de una nota; se salta"
 
-#: mensural-ligature-engraver.cc:138
+#: mensural-ligature-engraver.cc:149
 msgid "prime interval within ligature -> skipping"
 msgstr "intervalo primo dentro de una ligadura; se salta"
 
-#: mensural-ligature-engraver.cc:150
+#: mensural-ligature-engraver.cc:161
 msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
 msgstr "ligadura mensural: la duración no es Mx, L, B ni S; se salta"
 
-#: mensural-ligature-engraver.cc:198
+#: mensural-ligature-engraver.cc:209
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "la semibreve debe ir seguida por otra -> se salta"
 
-#: mensural-ligature-engraver.cc:209
+#: mensural-ligature-engraver.cc:220
 msgid ""
 "semibreves can only appear at the beginning of a ligature,\n"
 "and there may be only zero or two of them"
@@ -1927,7 +2187,7 @@ msgstr ""
 "las semibreves sólo pueden aparecer al principio de una ligadura,\n"
 "y sólo puede haber dos o ninguna"
 
-#: mensural-ligature-engraver.cc:236
+#: mensural-ligature-engraver.cc:247
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
@@ -1939,56 +2199,60 @@ msgstr ""
 "la penúltima nota debe ser otra breve,\n"
 "o la ligadura debe ser LB o SSB"
 
-#: mensural-ligature-engraver.cc:356
+#: mensural-ligature-engraver.cc:367
 msgid "unexpected case fall-through"
 msgstr "opción de caso por defecto inesperada"
 
-#: mensural-ligature.cc:141
+#: mensural-ligature.cc:152
 msgid "Mensural_ligature: unexpected case fall-through"
 msgstr "Mensural_ligature (ligadura mensural): caso por defecto inesperado"
 
-#: mensural-ligature.cc:192
+#: mensural-ligature.cc:203
 msgid "Mensural_ligature: (join_right == 0)"
 msgstr "Mensural_ligature (ligadura mensural): (join_right == 0)"
 
-#: midi-item.cc:81
+#: midi-item.cc:92
 #, c-format
 msgid "no such MIDI instrument: `%s'"
 msgstr "no existe este instrumento MIDI: «%s»"
 
-#: midi-stream.cc:28
+#: midi-stream.cc:39
 #, c-format
 msgid "cannot open for write: %s: %s"
 msgstr "no se puede abrir el archivo en modo de escritura: %s: %s"
 
-#: midi-stream.cc:44
+#: midi-stream.cc:55
 #, c-format
 msgid "cannot write to file: `%s'"
 msgstr "no se puede escribir el archivo: «%s»"
 
-#: minimal-page-breaking.cc:38 paper-score.cc:105
+#: minimal-page-breaking.cc:40 paper-score.cc:122
 msgid "Calculating line breaks..."
 msgstr "Calculando los saltos de línea..."
 
-#: minimal-page-breaking.cc:42 layout-page-layout.scm:463
+#: minimal-page-breaking.cc:44
 msgid "Calculating page breaks..."
 msgstr "Calculando saltos de página..."
 
-#: music-iterator.cc:171
+#: music-iterator.cc:182
 msgid "Sending non-event to context"
 msgstr "Enviando elemento que no es un evento a un contexto"
 
-#: music.cc:140
+#: music.cc:151
 #, c-format
 msgid "octave check failed; expected \"%s\", found: \"%s\""
 msgstr "fallo en la comprobación de octava; se esperaba \"%s\", se ha encontrado: \"%s\""
 
-#: music.cc:203
+#: music.cc:219
+msgid "(normalized pitch)"
+msgstr "(altura normalizada)"
+
+#: music.cc:223
 #, c-format
-msgid "transposition by %s makes alteration larger than double"
-msgstr "la transposición de %s transforma la alteración en más que doble"
+msgid "Transposing %s by %s makes alteration larger than double"
+msgstr "La transposición de %s en %s produce una alteración más que doble"
 
-#: new-dynamic-engraver.cc:129
+#: new-dynamic-engraver.cc:142
 #, c-format
 msgid ""
 "unknown crescendo style: %s\n"
@@ -1997,134 +2261,182 @@ msgstr ""
 "estilo de crescendo desconocido: %s\n"
 "se toma regulador como predeterminado."
 
-#: new-fingering-engraver.cc:96
+#: new-dynamic-engraver.cc:200
+#, c-format
+msgid "unterminated %s"
+msgstr "%s sin terminar"
+
+#: new-fingering-engraver.cc:106
 msgid "cannot add text scripts to individual note heads"
 msgstr "no se pueden añadir guiones de texto a cabezas de nota individuales"
 
-#: new-fingering-engraver.cc:239
+#: new-fingering-engraver.cc:250
 msgid "no placement found for fingerings"
 msgstr "no se ha encontrado ninguna ubicación válida para las digitaciones"
 
-#: new-fingering-engraver.cc:240
+#: new-fingering-engraver.cc:251
 msgid "placing below"
 msgstr "se coloca debajo"
 
-#: note-collision.cc:484
+#: note-collision.cc:497
 msgid "ignoring too many clashing note columns"
 msgstr "demasiadas columnas de notas que chocan entre sí; se ignoran"
 
-#: note-column.cc:124
+#: note-column.cc:135
 msgid "cannot have note heads and rests together on a stem"
 msgstr "no se pueden tener cabezas de nota y silencios en la misma plica"
 
-#: note-head.cc:63
+#: note-head.cc:76
 #, c-format
 msgid "none of note heads `%s' or `%s' found"
 msgstr "no se encuentran las cabezas de nota «%s» ni «%s»"
 
-#: note-heads-engraver.cc:64
+#: note-heads-engraver.cc:76
 msgid "NoteEvent without pitch"
 msgstr "NoteEvent sin altura"
 
-#: open-type-font.cc:33
+#: open-type-font.cc:44
 #, c-format
 msgid "cannot allocate %lu bytes"
 msgstr "no se peuden reservar %lu bytes"
 
-#: open-type-font.cc:37
+#: open-type-font.cc:48
 #, c-format
 msgid "cannot load font table: %s"
 msgstr "no se puede cargar la tabla de tipografías: %s"
 
-#: open-type-font.cc:42
+#: open-type-font.cc:53
 #, c-format
 msgid "Free type error: %s"
 msgstr "error de FreeType: %s"
 
-#: open-type-font.cc:100
+#: open-type-font.cc:111
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "formato de tipografía %s no soportado"
 
-#: open-type-font.cc:102
+#: open-type-font.cc:113
 #, c-format
 msgid "error reading font file %s: %s"
 msgstr "error al leer la tipografía %s: %s"
 
-#: open-type-font.cc:177
+#: open-type-font.cc:188
 #, c-format
 msgid "FT_Get_Glyph_Name () Freetype error: %s"
 msgstr "error de Freetype en FT_Get_Glyph_Name (): %s"
 
-#: open-type-font.cc:302 pango-font.cc:167
+#: open-type-font.cc:250
+msgid "Invalid index for character"
+msgstr "Índice del carácter no válido"
+
+#: open-type-font.cc:319 pango-font.cc:187
 #, c-format
 msgid "FT_Get_Glyph_Name () error: %s"
 msgstr "error en FT_Get_Glyph_Name (): %s"
 
 #. find out the ideal number of pages
-#: optimal-page-breaking.cc:56
+#: optimal-page-breaking.cc:60
 msgid "Finding the ideal number of pages..."
 msgstr "Buscando el número de páginas ideal..."
 
-#: optimal-page-breaking.cc:78
+#: optimal-page-breaking.cc:87
 msgid "Fitting music on 1 page..."
 msgstr "Disponiendo la música en una página..."
 
-#: optimal-page-breaking.cc:80
+#: optimal-page-breaking.cc:89
 #, c-format
 msgid "Fitting music on %d pages..."
 msgstr "Disponiendo la música en %d páginas..."
 
-#: optimal-page-breaking.cc:82
+#: optimal-page-breaking.cc:91
 #, c-format
 msgid "Fitting music on %d or %d pages..."
 msgstr "Disponiendo la música en %d o %d páginas..."
 
-#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
-#: paper-score.cc:146
+#: optimal-page-breaking.cc:101 optimal-page-breaking.cc:155
+#, c-format
+msgid "trying %d systems"
+msgstr "probando %d sistemas"
+
+#: optimal-page-breaking.cc:120 optimal-page-breaking.cc:183
+#, c-format
+msgid "best score for this sys-count: %f"
+msgstr "mejor puntuación para este número de sistemas: %f"
+
+#: optimal-page-breaking.cc:190 page-turn-page-breaking.cc:248
+#: paper-score.cc:163
 msgid "Drawing systems..."
 msgstr "Dibujando los sistemas..."
 
-#: page-turn-page-breaking.cc:146
+#: output-def.cc:235
+msgid "margins do not fit with line-width, setting default values"
+msgstr "los márgenes no caben en este ancho de línea, fijando valores predeterminados"
+
+#: output-def.cc:242
+msgid "systems run off the page due to improper paper settings, setting default values"
+msgstr "los sistemas se salen de la página a causa de unos ajustes del papel inadecuados, fijando valores predeterminados"
+
+#: page-breaking.cc:194
+msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
+msgstr "se ignoran min-systems-per-page y max-systems-per-page debido a que se fijó systems-per-page"
+
+#: page-breaking.cc:199
+msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
+msgstr "min-systems-per-page es mayor que max-systems-per-page, se ignoran los dos valores"
+
+#: page-layout-problem.cc:315
+#, c-format
+msgid "couldn't fit music on page: overflow is %f"
+msgstr "la música no cabe en la página: el exceso es %f"
+
+#: page-layout-problem.cc:317
+msgid "compressing music to fit"
+msgstr "comprimiendo la música para que quepa"
+
+#: page-layout-problem.cc:733
+msgid "staff-affinities should only decrease"
+msgstr "staff-affinities solo debe disminuir"
+
+#: page-turn-page-breaking.cc:168
 #, c-format
 msgid "page-turn-page-breaking: breaking from %d to %d"
 msgstr "page-turn-page-breaking: saltando desde %d hasta %d"
 
-#: page-turn-page-breaking.cc:195
+#: page-turn-page-breaking.cc:217
 msgid "cannot fit the first page turn onto a single page.  Consider setting first-page-number to an even number."
 msgstr "no se puede ajustar la primera vuelta de página en una página única. Considere la posibilidad de establecer first-page-number a un número par."
 
-#: page-turn-page-breaking.cc:208
+#: page-turn-page-breaking.cc:230
 #, c-format
 msgid "Calculating page and line breaks (%d possible page breaks)..."
 msgstr "Calculando los saltos de página y de línea (%d saltos de página posibles)..."
 
-#: page-turn-page-breaking.cc:275
+#: page-turn-page-breaking.cc:297
 #, c-format
 msgid "break starting at page %d"
 msgstr "el salto comienza en la página %d"
 
-#: page-turn-page-breaking.cc:276
+#: page-turn-page-breaking.cc:298
 #, c-format
 msgid "\tdemerits: %f"
 msgstr "\tpuntuación: %f"
 
-#: page-turn-page-breaking.cc:277
+#: page-turn-page-breaking.cc:299
 #, c-format
 msgid "\tsystem count: %d"
 msgstr "número total de \tsistemas: %d"
 
-#: page-turn-page-breaking.cc:278
+#: page-turn-page-breaking.cc:300
 #, c-format
 msgid "\tpage count: %d"
 msgstr "número total de \tpáginas: %d"
 
-#: page-turn-page-breaking.cc:279
+#: page-turn-page-breaking.cc:301
 #, c-format
 msgid "\tprevious break: %d"
 msgstr "\tsalto anterior: %d"
 
-#: pango-font.cc:184
+#: pango-font.cc:204
 #, c-format
 msgid ""
 "Glyph has no name, but font supports glyph naming.\n"
@@ -2133,138 +2445,152 @@ msgstr ""
 "El glifo no tiene nombre, pero la tipografía soporta nombres de glifo.\n"
 "Se salta el glifo U+%0X, archivo %s"
 
-#: pango-font.cc:229
+#: pango-font.cc:241
 #, c-format
 msgid "no PostScript font name for font `%s'"
 msgstr "no hay un nombre de tipografía PostScript para «%s»"
 
-#: pango-font.cc:277
+#: pango-font.cc:290
 msgid "FreeType face has no PostScript font name"
 msgstr "El tipo FreeType no tiene un nombre de tipografía PostScript"
 
-#: paper-column-engraver.cc:221
+#: paper-book.cc:214
+#, c-format
+msgid "program option -dprint-pages not supported by backend `%s'"
+msgstr "la opción de programa -dprint-pages no está contemplada por el backend `%s'"
+
+#: paper-book.cc:233
+#, c-format
+msgid "program option -dpreview not supported by backend `%s'"
+msgstr "la opción de programa -dpreview no está contemplada por el backend `%s'"
+
+#: paper-column-engraver.cc:233
 msgid "forced break was overridden by some other event, should you be using bar checks?"
 msgstr "el salto forzado ha sido sobreestablecido por algún otro evento, ¿quizá deba usar comprobaciones de compás?"
 
-#: paper-outputter-scheme.cc:30
+#: paper-outputter-scheme.cc:41
 #, c-format
 msgid "Layout output to `%s'..."
 msgstr "Salida de la página hacia «%s»..."
 
-#: paper-score.cc:118
+#: paper-score.cc:135
 #, c-format
 msgid "Element count %d (spanners %d) "
 msgstr "Cantidad de elementos: %d (trazadores: %d)"
 
-#: paper-score.cc:122
+#: paper-score.cc:139
 msgid "Preprocessing graphical objects..."
 msgstr "Preprocesando los objetos gráficos..."
 
-#: parse-scm.cc:93
+#: parse-scm.cc:101
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE ha señalado un error para la expresión que comienza aquí"
 
-#: percent-repeat-engraver.cc:202
+#: partial-iterator.cc:45
+msgid "trying to use \\partial after the start of a piece"
+msgstr "intento de utilizar \\partial después del inicio de la pieza"
+
+#: percent-repeat-engraver.cc:213
 msgid "unterminated percent repeat"
 msgstr "repetición de porcentaje sin terminar"
 
-#: performance.cc:43
+#: performance.cc:54
 msgid "Track..."
 msgstr "Pista..."
 
-#: performance.cc:72
+#: performance.cc:83
 msgid "MIDI channel wrapped around"
 msgstr "ha dado la vuelta el número de canal MIDI"
 
-#: performance.cc:73
+#: performance.cc:84
 msgid "remapping modulo 16"
 msgstr "se reasigna módulo 16"
 
-#: performance.cc:100
+#: performance.cc:111
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "Salida MIDI hacia «%s»..."
 
-#: phrasing-slur-engraver.cc:146
+#: phrasing-slur-engraver.cc:157
 msgid "unterminated phrasing slur"
 msgstr "ligadura de fraseo sin terminar"
 
-#: piano-pedal-engraver.cc:287
+#: piano-pedal-engraver.cc:298
 #, c-format
 msgid "expect 3 strings for piano pedals, found: %ld"
 msgstr "se eseperaban 3 cadenas para los pedales de piano, se han encontrado: %ld"
 
-#: piano-pedal-engraver.cc:302 piano-pedal-engraver.cc:313
-#: piano-pedal-performer.cc:93
+#: piano-pedal-engraver.cc:313 piano-pedal-engraver.cc:324
+#: piano-pedal-performer.cc:104
 #, c-format
 msgid "cannot find start of piano pedal: `%s'"
 msgstr "no se encuentra el comienzo del pedal de piano «%s»"
 
-#: piano-pedal-engraver.cc:348
+#: piano-pedal-engraver.cc:359
 #, c-format
 msgid "cannot find start of piano pedal bracket: `%s'"
 msgstr "no se encuentra el comienzo del corchete de pedal de piano «%s»"
 
-#: program-option-scheme.cc:215
+#: program-option-scheme.cc:237
 #, c-format
 msgid "no such internal option: %s"
 msgstr "no existe la opción interna %s"
 
-#: property-iterator.cc:74
+#: property-iterator.cc:85
 #, c-format
 msgid "not a grob name, `%s'"
 msgstr "no es un nombre de objeto gráfico: «%s»"
 
-#: relative-octave-check.cc:38
+#: relative-octave-check.cc:49
 msgid "Failed octave check, got: "
 msgstr "La comprobación de octaba ha fallado, se ha obtenido: "
 
-#: relocate.cc:44
+#: relocate.cc:54
 #, c-format
 msgid "Setting %s to %s"
 msgstr "Se establece %s a %s"
 
-#: relocate.cc:64
+#: relocate.cc:74
 #, c-format
 msgid "no such file: %s for %s"
 msgstr "no existe el archivo: %s para %s"
 
-#: relocate.cc:74 relocate.cc:92
+#: relocate.cc:84 relocate.cc:102
 #, c-format
 msgid "no such directory: %s for %s"
 msgstr "no existe este directorio: %s para %s"
 
-#: relocate.cc:84
+#: relocate.cc:94
 #, c-format
 msgid "%s=%s (prepend)\n"
 msgstr "%s=%s (prefijar)\n"
 
-#: relocate.cc:114
+#: relocate.cc:124
 #, c-format
 msgid "not relocating, no %s/ or current/ found under %s"
 msgstr "no se relocaliza, no se ha encontrado %s/ ni current/ bajo %s"
 
-#: relocate.cc:125
+#: relocate.cc:135
 #, c-format
 msgid "Relocation: compile datadir=%s, new datadir=%s"
 msgstr "Relocalización: en la compilación datadir=%s, el nuevo datadir=%s"
 
-#: relocate.cc:138
+#: relocate.cc:148
 #, c-format
 msgid "Relocation: framework_prefix=%s"
 msgstr "Relocalización: framework_prefix=%s"
 
-#: relocate.cc:179
+#: relocate.cc:189
 #, c-format
 msgid "Relocation: is absolute: argv0=%s"
 msgstr "Relocalización: es absoluto: argv0=%s"
 
-#: relocate.cc:186
+#: relocate.cc:196
 #, c-format
 msgid "Relocation: from cwd: argv0=%s"
 msgstr "Relocalización: desde cwd: argv0=%s"
 
-#: relocate.cc:195
+#: relocate.cc:205
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
@@ -2273,155 +2599,164 @@ msgstr ""
 "Relocalización: desde PATH=%s\n"
 "argv0=%s"
 
-#: relocate.cc:229
+#: relocate.cc:239
 msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
 msgstr "LILYPONDPREFIX está obsoleto, utilice LILYPOND_DATADIR"
 
-#: relocate.cc:356
+#: relocate.cc:366
 #, c-format
 msgid "Relocation file: %s"
 msgstr "Archivo de relocalización: %s"
 
-#: relocate.cc:392
+#: relocate.cc:372 source-file.cc:65
+#, c-format
+msgid "cannot open file: `%s'"
+msgstr "no se puede abrir el archivo: «%s»"
+
+#: relocate.cc:402
 #, c-format
 msgid "Unknown relocation command %s"
 msgstr "instrucción de relocalización %s desconocida"
 
-#: rest-collision.cc:145
+#: rest-collision-engraver.cc:70
+msgid "rhythmic head is not part of a rhythmic column"
+msgstr "la cabeza rítmica no es parte de una columna rítmica"
+
+#: rest-collision.cc:146
 msgid "cannot resolve rest collision: rest direction not set"
 msgstr "no se puede resolver la colisión de los silencios: la dirección de los silencios no se ha establecido"
 
-#: rest-collision.cc:159 rest-collision.cc:204
+#: rest-collision.cc:160 rest-collision.cc:205
 msgid "too many colliding rests"
 msgstr "demasiados silencios en colisión"
 
-#: rest.cc:148
+#: rest.cc:159
 #, c-format
 msgid "rest `%s' not found"
 msgstr "no se ha encontrado el silencio «%s»"
 
-#: score-engraver.cc:67
+#: score-engraver.cc:78
 #, c-format
 msgid "cannot find `%s'"
 msgstr "No se encuentra «%s»"
 
-#: score-engraver.cc:69
+#: score-engraver.cc:80
 msgid "Music font has not been installed properly."
 msgstr "La tipografía de música no se ha instalado correctamente."
 
-#: score-engraver.cc:71
+#: score-engraver.cc:82
 #, c-format
 msgid "Search path `%s'"
 msgstr "Ruta de búsqueda «%s»"
 
-#: score-engraver.cc:73
+#: score-engraver.cc:84
 msgid "Aborting"
 msgstr "Se detiene la ejecución"
 
-#: score.cc:167
+#: score.cc:178
 msgid "already have music in score"
 msgstr "ya tiene música en la partitura"
 
-#: score.cc:168
+#: score.cc:179
 msgid "this is the previous music"
 msgstr "esta es la música precedente"
 
-#: score.cc:173
+#: score.cc:184
 msgid "errors found, ignoring music expression"
 msgstr "se han encontrado errores, se ignora la expresión musical"
 
 #. FIXME:
-#: script-engraver.cc:102
-msgid "do not know how to interpret articulation: "
-msgstr "no sabemos cómo interpretar la articulación: "
+#: script-engraver.cc:113
+msgid "do not know how to interpret articulation:"
+msgstr "no sabemos cómo interpretar la articulación:"
 
-#: script-engraver.cc:103
-msgid "scheme encoding: "
-msgstr "codificación de Scheme: "
+#: script-engraver.cc:114
+msgid " scheme encoding: "
+msgstr " codificación de Scheme: "
 
-#: slur-engraver.cc:82
+#: slur-engraver.cc:93
 #, c-format
 msgid "direction of %s invalid: %d"
 msgstr "dirección inválida de %s: %d"
 
-#: slur-engraver.cc:151
+#: slur-engraver.cc:162
 msgid "unterminated slur"
 msgstr "ligadura de expresión sin terminar"
 
-#: slur-engraver.cc:163
+#: slur-engraver.cc:174
 msgid "cannot end slur"
 msgstr "no se puede terminar la ligadura de expresión"
 
-#: slur.cc:359
+#: slur.cc:369
 #, c-format
 msgid "Ignoring grob for slur: %s. avoid-slur not set?"
 msgstr "Se ignora el objeto gráfico para la ligadura: %s. ¿No está establecido avoid-slur?"
 
-#: source-file.cc:79
+#: source-file.cc:85
 #, c-format
 msgid "expected to read %d characters, got %d"
 msgstr "se esperaba leer %d caracteres, se han obtenido %d"
 
-#: spaceable-grob.cc:83
+#: spaceable-grob.cc:94
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "No hay separación entre la columna %d y la siguiente"
 
-#: staff-symbol-engraver.cc:62
-msgid "staff-span event has no direction"
-msgstr "el evento staff-span no tiene dirección"
-
-#: stem-engraver.cc:92
+#: stem-engraver.cc:103
 msgid "tremolo duration is too long"
 msgstr "la duración del trémolo es demasiado larga"
 
 #. FIXME:
-#: stem-engraver.cc:129
+#: stem-engraver.cc:140
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "añadiendo cabeza de nota a una plica incompatible (tipo = %d)"
 
-#: stem-engraver.cc:131
+#: stem-engraver.cc:142
 msgid "maybe input should specify polyphonic voices"
 msgstr "quizá la entrada debiera especificar voces polifónicas"
 
-#: stem.cc:105
+#: stem.cc:116
 msgid "weird stem size, check for narrow beams"
 msgstr "tamaño de plica extraño, compruebe que no haya barras estrechas"
 
-#: stem.cc:623
+#: stem.cc:642
 #, c-format
 msgid "flag `%s' not found"
 msgstr "no se encuentra el indicador «%s»"
 
-#: stem.cc:639
+#: stem.cc:658
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "no se encuentra el impacto «%s» de indicador"
 
-#: system.cc:178
+#: system.cc:197
 #, c-format
-msgid "Element count %d."
-msgstr "Número total de elementos %d."
+msgid "Element count %d"
+msgstr "Número total de elementos %d"
 
-#: system.cc:270
+#: system.cc:289
 #, c-format
 msgid "Grob count %d"
 msgstr "Número de objetos gráficos: %d"
 
-#: text-spanner-engraver.cc:62
+#: text-spanner-engraver.cc:73
 msgid "cannot find start of text spanner"
 msgstr "no se encuentra el principio del trazador de texto"
 
-#: text-spanner-engraver.cc:75
+#: text-spanner-engraver.cc:86
 msgid "already have a text spanner"
 msgstr "ya hay un trazador de texto"
 
-#: text-spanner-engraver.cc:121
+#: text-spanner-engraver.cc:132
 msgid "unterminated text spanner"
 msgstr "trazador de texto sin terminar"
 
-#: tie-engraver.cc:262
+#: tie-engraver.cc:116
+msgid "unterminated tie"
+msgstr "ligadura de unión sin terminar"
+
+#: tie-engraver.cc:312
 msgid "lonely tie"
 msgstr "ligadura de unión solitaria"
 
@@ -2430,355 +2765,383 @@ msgstr "ligadura de unión solitaria"
 #.
 #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
 #.
-#: time-signature-engraver.cc:64
+#: time-signature-engraver.cc:75
 #, c-format
 msgid "strange time signature found: %d/%d"
 msgstr "se ha encontrado una indicación extraña de compás: %d/%d"
 
 #. If there is no such symbol, we default to the numbered style.
 #. (Here really with a warning!)
-#: time-signature.cc:83
+#: time-signature.cc:94
 #, c-format
 msgid "time signature symbol `%s' not found; reverting to numbered style"
 msgstr "no se encuentra el símbolo de compás «%s»; se vuelve al estilo numerado"
 
-#: translator-ctors.cc:53
+#: translator-ctors.cc:65
 #, c-format
 msgid "unknown translator: `%s'"
 msgstr "traductor desconocido: «%s»"
 
-#: translator-group-ctors.cc:29
+#: translator-group-ctors.cc:40
 #, c-format
 msgid "fatal error. Couldn't find type: %s"
 msgstr "error fatal. No se ha encontrado el tipo: %s"
 
-#: translator-group.cc:146
+#: translator-group.cc:188
 #, c-format
 msgid "cannot find: `%s'"
 msgstr "no se encuentra «%s»"
 
-#: translator.cc:347
+#: translator.cc:359
 #, c-format
 msgid "Two simultaneous %s events, junking this one"
 msgstr "Dos eventos %s simultáneos, se recorta éste"
 
-#: translator.cc:348
+#: translator.cc:360
 #, c-format
 msgid "Previous %s event here"
 msgstr "El evento %s previo está aquí"
 
-#: trill-spanner-engraver.cc:85
-msgid "cannot find start of trill spanner"
-msgstr "no se encuentra el principio del trazador de trino"
+#: ttf.cc:481 ttf.cc:530
+#, c-format
+msgid "font index %d too large for font `%s', using index 0"
+msgstr "índice de fuente tipográfica %d demasiado grande para la tipografía `%s', se usa el índice 0"
 
-#: trill-spanner-engraver.cc:98
-msgid "already have a trill spanner"
-msgstr "ya tiene un trazador de trino"
+#: ttf.cc:513 ttf.cc:565
+msgid "font index must be non-negative, using index 0"
+msgstr "el índice de la fuente tipográfica debe ser no negativo, se usa el índice 0"
 
-#: tuplet-engraver.cc:96
+#: tuplet-engraver.cc:107
 msgid "No tuplet to end"
 msgstr "no hay ningún grupo especial que terminar"
 
-#: vaticana-ligature-engraver.cc:389
+#: vaticana-ligature-engraver.cc:400
 #, c-format
-msgid "ignored prefix (es) `%s' of this head according to restrictions of the selected ligature style"
-msgstr "prefijo(s) «%s» de esta cabeza ignorado(s) de acuerdo con las restricciones del estilo de ligadura seleccionado"
+msgid "ignored prefix(es) `%s' of this head according to restrictions of the selected ligature style"
+msgstr "prefijo(s) `%s' de esta cabeza ignorado(s) de acuerdo a las restricciones del estilo de ligadura seleccionado"
 
-#: vaticana-ligature-engraver.cc:718
+#: vaticana-ligature-engraver.cc:736
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
 msgstr "Vaticana_ligature_engraver: se establece `spacing-increment = %f': ptr =%ul"
 
-#: vaticana-ligature.cc:84
+#: vaticana-ligature.cc:95
 msgid "flexa-height undefined; assuming 0"
 msgstr "la altura flexa-height no está definida; se supone que es 0"
 
-#: vaticana-ligature.cc:89
+#: vaticana-ligature.cc:100
 msgid "ascending vaticana style flexa"
 msgstr "flexa ascendente de estilo vaticana"
 
-#: vaticana-ligature.cc:177
+#: vaticana-ligature.cc:188
 msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: unión nula (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:100
+#: volta-engraver.cc:111
 msgid "cannot end volta spanner"
 msgstr "no se puede terminar el trazador de volta"
 
-#: volta-engraver.cc:110
+#: volta-engraver.cc:121
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "ya hay un trazador de volta, se acaba éste de forma prematura"
 
 # also...?
-#: volta-engraver.cc:114
+#: volta-engraver.cc:125
 msgid "also already have an ended spanner"
 msgstr "ya hay un trazador finalizado"
 
-#: volta-engraver.cc:115
+#: volta-engraver.cc:126
 msgid "giving up"
 msgstr "abandonando"
 
-#: parser.yy:804
+#: parser.yy:816
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "no se puede usar \\paper dentro de \\score, utilice \\layout en su lugar"
 
-#: parser.yy:828
+#: parser.yy:840
 msgid "need \\paper for paper block"
 msgstr "es necesario \\paper para el bloque 'paper'"
 
-#: parser.yy:1299
+#: parser.yy:1365
+msgid "only \\consists takes non-string argument."
+msgstr "solo \\consists admite un argumento no de cadena."
+
+#: parser.yy:1378
 msgid "Grob name should be alphanumeric"
 msgstr "El nombre del objeto gráfico ha de ser alfanumérico"
 
-#: parser.yy:1597
+#: parser.yy:1687
 msgid "second argument must be pitch list"
 msgstr "el segundo argumento debe ser una lista de notas"
 
-#: parser.yy:1624 parser.yy:1629 parser.yy:2101
+#: parser.yy:1714 parser.yy:1719 parser.yy:2192
 msgid "have to be in Lyric mode for lyrics"
 msgstr "para la letra se debe estar en el modo Lyric"
 
-#: parser.yy:1726
+#: parser.yy:1816
 msgid "expecting string as script definition"
 msgstr "se espera una cadena como definición del guión"
 
-#: parser.yy:1881 parser.yy:1931
+#: parser.yy:1971 parser.yy:2022
 #, c-format
 msgid "not a duration: %d"
 msgstr "no es una duración: %d"
 
-#: parser.yy:2055
+#: parser.yy:2146
 msgid "have to be in Note mode for notes"
 msgstr "para las notas se debe estar en el modo Note"
 
-#: parser.yy:2116
+#: parser.yy:2207
 msgid "have to be in Chord mode for chords"
 msgstr "para los acordes se debe estar en el modo Chord"
 
 # stray?
-#: lexer.ll:179
+#: lexer.ll:190
 msgid "stray UTF-8 BOM encountered"
 msgstr "se ha encontrado una marca BOM de UTF-8 extraña"
 
-#: lexer.ll:183
+#: lexer.ll:194
 msgid "Skipping UTF-8 BOM"
 msgstr "Se salta el BOM de UTF-8"
 
-#: lexer.ll:238
+#: lexer.ll:249
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "Renombrando la entrada a: «%s»"
 
-#: lexer.ll:255
+#: lexer.ll:266
 msgid "quoted string expected after \\version"
 msgstr "se esperaba una cadena entre comillas después de \\version"
 
-#: lexer.ll:259
+#: lexer.ll:270
 msgid "quoted string expected after \\sourcefilename"
 msgstr "se esperaba una cadena entre comillas después de \\sourcefilename"
 
-#: lexer.ll:263
+#: lexer.ll:274
 msgid "integer expected after \\sourcefileline"
 msgstr "se esperaba un entero después de \\sourcefileline"
 
-#: lexer.ll:276
+#: lexer.ll:287
 msgid "EOF found inside a comment"
 msgstr "se ha encontrado EOF (fin de archivo) dentro de un comentario"
 
-#: lexer.ll:291
+#: lexer.ll:302
 msgid "\\maininput not allowed outside init files"
 msgstr "no se permite \\maininput fuera de los archivos de inicio"
 
-#: lexer.ll:315
+#: lexer.ll:326
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "identificativo equivocado o no definido: «%s»"
 
 #. backup rule
-#: lexer.ll:324
+#: lexer.ll:335
 msgid "end quote missing"
 msgstr "faltan las comillas de cierre"
 
-#: lexer.ll:469
+#: lexer.ll:485
 msgid "Brace found at end of lyric.  Did you forget a space?"
 msgstr "Se ha encontrado una llave al final de la letra. ¿Olvidó un espacio?"
 
-#: lexer.ll:584
+#: lexer.ll:595
 msgid "Brace found at end of markup.  Did you forget a space?"
 msgstr "Se ha encontrado una llave al final del marcado, ¿Olvidó un espacio?"
 
-#: lexer.ll:688
+#: lexer.ll:699
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "carácter no válido: «%c»"
 
-#: lexer.ll:803
+#: lexer.ll:814 lexer.ll:815
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "cadena de escape desconocida: `\\%s'"
 
-#: lexer.ll:910
+#: lexer.ll:924 lexer.ll:925
 #, c-format
 msgid "file too old: %s (oldest supported: %s)"
 msgstr "archivo demasiado antiguo: %s (el más antiguo que se puede tratar es: %s)"
 
-#: lexer.ll:911
+#: lexer.ll:925 lexer.ll:926
 msgid "consider updating the input with the convert-ly script"
 msgstr "considere la actualización de la entrada mediante el guión (script) convert-ly"
 
-#: lexer.ll:917
+#: lexer.ll:931 lexer.ll:932
 #, c-format
 msgid "program too old: %s (file requires: %s)"
 msgstr "el programa es demasiado antiguo: %s (el archivo necesita: %s)"
 
-#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
+#: backend-library.scm:35 ps-to-png.scm:66
 #, scheme-format
 msgid "Invoking `~a'..."
 msgstr "Invocando «~a»..."
 
-#: backend-library.scm:28
+#: backend-library.scm:45
 #, scheme-format
 msgid "`~a' failed (~a)"
 msgstr "«~a» ha fallado (~a)"
 
-#: backend-library.scm:116
+#: backend-library.scm:130
 #, scheme-format
 msgid "Converting to `~a'..."
 msgstr "Convirtiendo en «~a»..."
 
 #. Do not try to guess the name of the png file,
 #. GS produces PNG files like BASE-page%d.png.
-#: backend-library.scm:128
+#: backend-library.scm:140
 #, scheme-format
 msgid "Converting to ~a..."
 msgstr "Convirtiendo en ~a..."
 
-#: backend-library.scm:166
+#: backend-library.scm:178
 #, scheme-format
 msgid "Writing header field `~a' to `~a'..."
 msgstr "Escribiendo el campo de encabezamiento «~a» en «~a»..."
 
-#: define-context-properties.scm:20 define-grob-properties.scm:10
-#: define-music-properties.scm:10
+#: backend-library.scm:228
+#, scheme-format
+msgid "missing stencil expression `~S'"
+msgstr "falta la expresión del sello `~S'"
+
+#: chord-entry.scm:50
+#, scheme-format
+msgid "Spurious garbage following chord: ~A"
+msgstr "Basurilla espúrea después del acorde: ~A"
+
+#: define-context-properties.scm:31 define-grob-properties.scm:21
+#: define-music-properties.scm:21
 #, scheme-format
 msgid "symbol ~S redefined"
 msgstr "redefinido el símbolo ~S"
 
-#: define-event-classes.scm:119
+#: define-event-classes.scm:78
+msgid "All classes must be the last in their matrilineal line."
+msgstr "Todas las clases deben ir al final de su línea de descendencia."
+
+#: define-event-classes.scm:82
+msgid "All classes must have a well-defined pedigree in the existing class hierarchy."
+msgstr "Todas las clases deben tener un pedigree bien definido en la jerarquía de clases existente."
+
+#: define-event-classes.scm:148
 #, scheme-format
 msgid "event class ~A seems to be unused"
 msgstr "parece que la clase de evento ~A está sin usar"
 
 #. should be programming-error
-#: define-event-classes.scm:125
+#: define-event-classes.scm:154
 #, scheme-format
 msgid "translator listens to nonexisting event class ~A"
 msgstr "el traductor está escuchando a una clase de evento ~A que no existe"
 
-#: define-markup-commands.scm:569
+#: define-markup-commands.scm:803
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr "no se ha encontrado ningún sistema en el marcado \\score, ¿tiene un bloque \\layout?"
 
-#: define-markup-commands.scm:2387
+#: define-markup-commands.scm:2571
 #, scheme-format
 msgid "Cannot find glyph ~a"
 msgstr "No se encuentra el glifo ~a"
 
-#: define-markup-commands.scm:2696
+#: define-markup-commands.scm:2831
+#, scheme-format
+msgid "no brace found for point size ~S "
+msgstr "no se ha encontrado ninguna llave para el tamaño en puntos ~S "
+
+#: define-markup-commands.scm:2832
+#, scheme-format
+msgid "defaulting to ~S pt"
+msgstr "fijando al valor predeterminado ~S pt"
+
+#: define-markup-commands.scm:2985
 #, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr "no es una cadena válida de duración: ~a"
 
-#: define-music-types.scm:670
+#: define-music-types.scm:725
 #, scheme-format
 msgid "symbol expected: ~S"
 msgstr "se esperaba un símbolo: ~S"
 
-#: define-music-types.scm:673
+#: define-music-types.scm:728
 #, scheme-format
 msgid "cannot find music object: ~S"
 msgstr "no se encuentra el objeto musical ~S"
 
-#: define-music-types.scm:692
+#: define-music-types.scm:747
 #, scheme-format
 msgid "unknown repeat type `~S'"
 msgstr "tipo de repetición «~S» desconocido"
 
-#: define-music-types.scm:693
+#: define-music-types.scm:748
 msgid "See define-music-types.scm for supported repeats"
 msgstr "Consulte el archivo define-music-types.scm para ver los tipos de repetición soportados"
 
-#: document-backend.scm:99
+#: document-backend.scm:132
 #, scheme-format
 msgid "pair expected in doc ~s"
 msgstr "se esperaba una pareja en el documento ~s"
 
-#: document-backend.scm:154
+#: document-backend.scm:189
 #, scheme-format
 msgid "cannot find interface for property: ~S"
 msgstr "no se encuentra un interface para la propiedad ~S"
 
-#: document-backend.scm:164
+#: document-backend.scm:199
 #, scheme-format
 msgid "unknown Grob interface: ~S"
 msgstr "interfaz de Objeto gráfico desconocido: ~S"
 
-#: documentation-lib.scm:49
+#: documentation-lib.scm:59
 #, scheme-format
 msgid "Processing ~S..."
 msgstr "Procesando ~S..."
 
-#: documentation-lib.scm:165
+#: documentation-lib.scm:176
 #, scheme-format
 msgid "Writing ~S..."
 msgstr "Escribiendo ~S..."
 
-#: documentation-lib.scm:187
+#: documentation-lib.scm:198
 #, scheme-format
 msgid "cannot find description for property ~S (~S)"
 msgstr "no se encuentra la descripción de la propiedad ~S (~S)"
 
-#: flag-styles.scm:145
+#: flag-styles.scm:142
 #, scheme-format
 msgid "flag stroke `~a' or `~a' not found"
 msgstr "no se encuentra el impacto `~a' o `~a' de indicador"
 
-#: framework-eps.scm:90
+#: framework-eps.scm:108
 #, scheme-format
 msgid "Writing ~a..."
 msgstr "Escribiendo «~a»..."
 
-#: framework-ps.scm:277
+#: framework-ps.scm:250
 #, scheme-format
 msgid "cannot embed ~S=~S"
 msgstr "no se puede empotrar ~S=~S"
 
-#: framework-ps.scm:330
+#: framework-ps.scm:291
 #, scheme-format
 msgid "cannot extract file matching ~a from ~a"
 msgstr "no se puede extraer la coincidencia de archivos ~a a partir de ~a"
 
-#: framework-ps.scm:347
+#: framework-ps.scm:309
 #, scheme-format
 msgid "do not know how to embed ~S=~S"
 msgstr "no sabemos cómo empotrar ~S=~S"
 
-#: framework-ps.scm:378
+#: framework-ps.scm:334
 #, scheme-format
 msgid "do not know how to embed font ~s ~s ~s"
 msgstr "no sabemos cómo empotrar la tipografía ~s ~s ~s"
 
-#: framework-ps.scm:748
-#, scheme-format
-msgid "cannot convert <stdout> to ~S"
-msgstr "no se puede convertir <stdout> a ~S"
-
-#: framework-ps.scm:771
+#: framework-ps.scm:639
 msgid ""
 "\n"
-"The PostScript backend does not support the system-by-system \n"
-"output. For that, use the EPS backend instead,\n"
+"The PostScript backend does not support the\n"
+"system-by-system output.  For that, use the EPS backend instead,\n"
 "\n"
 "  lilypond -dbackend=eps FILE\n"
 "\n"
@@ -2790,7 +3153,7 @@ msgid ""
 "  %% ****************************************************************\n"
 msgstr ""
 "\n"
-"El 'backend' de PostScript no contempla la salida de sistemas individuales.\n"
+"El 'backend' PostScript no contempla la salida de sistemas individuales.\n"
 "Para ello, use en su lugar el 'backend' EPS,\n"
 "\n"
 "  lilypond -dbackend=eps ARCHIVO\n"
@@ -2802,55 +3165,78 @@ msgstr ""
 "  %% Start cut-&-pastable-section\n"
 "  %% ****************************************************************\n"
 
-#: graphviz.scm:53
+#: framework-svg.scm:84
+#, scheme-format
+msgid "Updating font into: ~a"
+msgstr "Actualizando la fuente tipográfica en: ~a"
+
+#: graphviz.scm:64
 #, scheme-format
 msgid "Writing graph `~a'..."
 msgstr "Escribiendo el gráfico «~a»..."
 
-#: layout-beam.scm:29
+#: layout-beam.scm:38
 #, scheme-format
 msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
 msgstr "Error en la cuantización de la barra.  Se esperaba (~S,~S), se ha encontrado ~S."
 
-#: layout-beam.scm:43
+#: layout-beam.scm:52
 #, scheme-format
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Error en la cuantización de la barra.  Se esperaba ~S 0, se ha encontrado ~S."
 
-#: layout-page-layout.scm:126
-msgid "Can't fit systems on page -- ignoring between-system-padding"
-msgstr "No se pueden dar cabida a todos los sistemas en la página; se ignora between-system-padding"
+#: lily-library.scm:747
+msgid ""
+"Find the index between @var{start} and @var{end} (an integer)\n"
+"which will produce the closest match to @var{target-val} when\n"
+"applied to function @var{getter}."
+msgstr ""
+"Encontrar el índice entre @var{start} y @var{end} (entero)\n"
+"que produce la correspondencia más cercana a @var{target-val} cuando\n"
+"se aplica a la función @var{getter}."
 
-#: lily-library.scm:602
+#: lily-library.scm:821
 #, scheme-format
 msgid "unknown unit: ~S"
 msgstr "unidad desconocida: ~S "
 
-#: lily-library.scm:636
+#: lily-library.scm:847 lily-library.scm:856
+msgid "warning:"
+msgstr "advertencia:"
+
+#: lily-library.scm:849
 #, scheme-format
 msgid "no \\version statement found, please add~afor future compatibility"
 msgstr "no se ha encontrado ninguna instrucción \\version, escriba~apara disponer de compatibilidad en el futuro"
 
-#: lily-library.scm:644
+#: lily-library.scm:857
 msgid "old relative compatibility not used"
 msgstr "no se ha usado la compatibilidad con el modo relativo antiguo"
 
-#: lily.scm:179
+#: lily.scm:282
 #, scheme-format
 msgid "cannot find: ~A"
 msgstr "no se encuentra: ~A"
 
-#: lily.scm:228
+#: lily.scm:342
 #, scheme-format
 msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr "tipo equivocado para el argumento ~a.  Se esperaba ~a, se encontró ~s"
 
-#: lily.scm:625
+#: lily.scm:704
+msgid "Compilation successfully completed"
+msgstr "Compiación completada satisfactoriamente"
+
+#: lily.scm:705
+msgid "Compilation completed with warnings or errors"
+msgstr "Compilación completada con advertencias o errores"
+
+#: lily.scm:767
 #, scheme-format
 msgid "job ~a terminated with signal: ~a"
 msgstr "la tarea ~a ha terminado con la señal: ~a"
 
-#: lily.scm:628
+#: lily.scm:770
 #, scheme-format
 msgid ""
 "logfile ~a (exit ~a):\n"
@@ -2859,125 +3245,153 @@ msgstr ""
 "archivo de registro ~a (salida ~a):\n"
 "~a"
 
-#: lily.scm:653 lily.scm:751
+#: lily.scm:792 lily.scm:870
 #, scheme-format
 msgid "failed files: ~S"
 msgstr "archivos que han fallado: ~S"
 
-#: lily.scm:741
+#: lily.scm:861
 #, scheme-format
 msgid "Redirecting output to ~a..."
 msgstr "Redirigiendo la salida hacia ~a..."
 
-#: ly-syntax-constructors.scm:40
+#: lily.scm:880
+#, scheme-format
+msgid "Invoking `~a'...\n"
+msgstr "Invocando «~a»...\n"
+
+#: ly-syntax-constructors.scm:51
 msgid "Music head function must return Music object"
 msgstr "La función principal de música debe devolver un objeto musical"
 
-#: ly-syntax-constructors.scm:154
+#: ly-syntax-constructors.scm:176
 #, scheme-format
 msgid "Invalid property operation ~a"
 msgstr "Operación de propiedad ~a inválida"
 
-#: markup.scm:204
+#: markup.scm:223
 #, scheme-format
 msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
 msgstr "Número de agumentos equivocado.  Se esperaban: ~A, se han encontrado ~A: ~S"
 
-#: markup.scm:210
+#: markup.scm:229
 #, scheme-format
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Argumento inválido en la posición ~A.  Se esperaba: ~A, se ha encontrado: ~S."
 
-#: markup.scm:274
+#: markup.scm:292
 #, scheme-format
 msgid "Not a markup command: ~A"
 msgstr "No es una instrucción de marcado: ~A"
 
-#: music-functions.scm:228
+#: music-functions.scm:265
 msgid "More alternatives than repeats.  Junking excess alternatives"
 msgstr "Hay más alternativas que repeticiones.  Se recortan las alternativas excedentes"
 
-#: music-functions.scm:240
+#: music-functions.scm:294
 #, scheme-format
 msgid "invalid tremolo repeat count: ~a"
 msgstr "número de repeticiones no válido para el trémolo: ~a"
 
-#: music-functions.scm:248
-#, scheme-format
-msgid "expecting 2 elements for chord tremolo, found ~a"
-msgstr "se esperaban 2 elementos para el tremolo de acorde, se han encontrado ~a"
-
-#: music-functions.scm:575
+#: music-functions.scm:601
 #, scheme-format
 msgid "music expected: ~S"
 msgstr "se esperaba algo de música: ~S"
 
 #. FIXME: uncomprehensable message
-#: music-functions.scm:625
+#: music-functions.scm:649
 #, scheme-format
 msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
 msgstr "Ha fallado la comprobación de compás.  Se esperaba que estuviera en ~a, en lugar de en ~a"
 
-#: music-functions.scm:793
+#: music-functions.scm:828
 #, scheme-format
 msgid "cannot find quoted music: `~S'"
 msgstr "no se encuentra la música citada: «~S»"
 
-#: music-functions.scm:1198
+#: music-functions.scm:964
+msgid "Add @var{octave-shift} to the octave of @var{pitch}."
+msgstr "Añadir @var{octave-shift} a la octava de @var{pitch}."
+
+#: music-functions.scm:1019
+#, scheme-format
+msgid "Unknown octaveness type: ~S "
+msgstr "Tipo de octavación desconocido: ~S "
+
+#: music-functions.scm:1020
+msgid "Defaulting to 'any-octave."
+msgstr "Fijando al valor predeterminado 'any-octave."
+
+#: music-functions.scm:1355
 #, scheme-format
 msgid "unknown accidental style: ~S"
 msgstr "estilo de alteración ~S desconocido"
 
-#: output-ps.scm:294
-msgid "utf-8-string encountered in PS backend"
-msgstr "se ha encontrado una cadena UTF-8 en el 'backend' de PostScript"
+#: output-ps.scm:289 output-svg.scm:550
+#, scheme-format
+msgid "unknown line-cap-style: ~S"
+msgstr "estilo de extremo de línea line-cap-style desconocido: ~S"
 
-#: output-svg.scm:45
+#: output-ps.scm:294 output-svg.scm:556
+#, scheme-format
+msgid "unknown line-join-style: ~S"
+msgstr "estilo de unión de líneas line-join-style desconocido: ~S"
+
+#: output-svg.scm:47
 #, scheme-format
 msgid "undefined: ~S"
 msgstr "no definido: ~S"
 
-#: output-svg.scm:135
+#: output-svg.scm:151
 #, scheme-format
 msgid "cannot decypher Pango description: ~a"
 msgstr "no se puede descifrar la descripción de Pango: ~a"
 
-#: paper.scm:104
+#: output-svg.scm:231
+msgid "Glyph must have a unicode value"
+msgstr "El glifo debe tener un valor de Unicode"
+
+#: output-svg.scm:283 output-svg.scm:293
+#, scheme-format
+msgid "cannot find SVG font ~S"
+msgstr "no se encuentra la fuente tipográfica de SVG ~S"
+
+#: paper.scm:115
 msgid "set-global-staff-size: not in toplevel scope"
 msgstr "set-global-staff-size: no está en el ámbito de nivel más alto"
 
-#: paper.scm:244
+#: paper.scm:296
 #, scheme-format
 msgid "This is not a \\layout {} object, ~S"
 msgstr "Esto no es un objeto de \\layout {} , ~S"
 
-#: paper.scm:256
+#: paper.scm:308
 #, scheme-format
 msgid "Unknown paper size: ~a"
 msgstr "Tamaño de papel desconocido: ~a"
 
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
-#: paper.scm:271
+#: paper.scm:323
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "Debe usar #(set-paper-size .. ) dentro de \\paper { ... }"
 
-#: parser-clef.scm:129
+#: parser-clef.scm:140
 #, scheme-format
 msgid "unknown clef type `~a'"
 msgstr "tipo de clave desconocido: «~a» "
 
-#: parser-clef.scm:130
+#: parser-clef.scm:141
 #, scheme-format
 msgid "supported clefs: ~a"
 msgstr "claves soportadas: ~a"
 
-#: ps-to-png.scm:64
+#: ps-to-png.scm:72
 #, scheme-format
 msgid "~a exited with status: ~S"
 msgstr "~a salió con el estado: ~S"
 
-#: to-xml.scm:180
+#: to-xml.scm:191
 #, scheme-format
 msgid "assertion failed: ~S"
 msgstr "el aserto no se cumple: ~S"
index cc61fde4289ed117045db7134b0986ef435121fa..92259af0c0244434fc09898dc63221a0d13fac8c 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -3,14 +3,14 @@
 # French translation of GNU/lilypond - http//lilypond.org
 # Copyright © 2004 Free Software Foundation, Inc.
 # Michel Robitaille <robitail@IRO.UMontreal.CA>, 1996-2007.
-# Jean-Charles Malahieude <lilyfan@orange.fr>, 2007-2009
+# Jean-Charles Malahieude <lilyfan@orange.fr>, 2007-2010
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.13.3\n"
+"Project-Id-Version: lilypond 2.13.42\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2008-12-20 11:58+0100\n"
-"PO-Revision-Date: 2009-07-28 18:25+0200\n"
+"POT-Creation-Date: 2010-12-06 22:30+0100\n"
+"PO-Revision-Date: 2010-12-11 18:02+0100\n"
 "Last-Translator: Jean-Charles Malahieude <lilyfan@orange.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
 "MIME-Version: 1.0\n"
@@ -18,6 +18,58 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
+#: book_base.py:24
+#, python-format
+msgid "file not found: %s"
+msgstr "fichier non trouvé : %s"
+
+#: book_base.py:161
+msgid "Output function not implemented"
+msgstr "Fonction de production non implémentée."
+
+#: book_latex.py:156
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
+
+#: book_snippets.py:517
+#, python-format
+msgid "deprecated ly-option used: %s=%s"
+msgstr "option ly-option obsolète : %s=%s"
+
+#: book_snippets.py:519
+#, python-format
+msgid "compatibility mode translation: %s=%s"
+msgstr "bascule en mode de compatibilité : %s=%s"
+
+#: book_snippets.py:522
+#, python-format
+msgid "deprecated ly-option used: %s"
+msgstr "option ly-option obsolète : %s"
+
+#: book_snippets.py:524
+#, python-format
+msgid "compatibility mode translation: %s"
+msgstr "bascule en mode de compatibilité : %s"
+
+#: book_snippets.py:542
+#, python-format
+msgid "ignoring unknown ly option: %s"
+msgstr "option ly inconnue et ignorée : %s"
+
+#: book_snippets.py:728
+#, python-format
+msgid "Opening filter `%s'\n"
+msgstr "Ouverture du filtre « %s »\n"
+
+#: book_snippets.py:748
+#, python-format
+msgid "`%s' failed (%d)"
+msgstr "« %s » a échoué (%d)"
+
+#: book_snippets.py:749
+msgid "The error log is as follows:"
+msgstr "Voici le journal d'erreurs :"
+
 #: convertrules.py:12
 #, python-format
 msgid "Not smart enough to convert %s"
@@ -34,8 +86,8 @@ msgstr ""
 msgid "%s has been replaced by %s"
 msgstr "%s a été remplacé par %s"
 
-#: convertrules.py:24 musicexp.py:16 convert-ly.py:50 lilypond-book.py:94
-#: warn.cc:48 input.cc:90
+#: convertrules.py:24 lilylib.py:78 musicexp.py:17 convert-ly.py:64 warn.cc:66
+#: input.cc:109
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "Avertissement : %s"
@@ -53,8 +105,8 @@ msgstr "%s est obsolète"
 msgid "deprecated \\textstyle, new \\key syntax"
 msgstr "\\textstyle est obsolète ; utiliser désormais la syntaxe \\key"
 
-#: convertrules.py:86 convertrules.py:1906 convertrules.py:2085
-#: convertrules.py:2237 convertrules.py:2567
+#: convertrules.py:86 convertrules.py:1905 convertrules.py:2084
+#: convertrules.py:2236 convertrules.py:2566 convertrules.py:2862
 msgid "bump version for release"
 msgstr "sauter de version pour mise à jour"
 
@@ -71,7 +123,7 @@ msgid "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
 msgstr "\\repeat NUM Musique Alternative -> \\repeat FOLDSTR Musique Alternative"
 
 #: convertrules.py:216 convertrules.py:699 convertrules.py:1383
-#: convertrules.py:2379
+#: convertrules.py:2378
 #, python-format
 msgid "deprecate %s"
 msgstr "%s obsolète"
@@ -104,7 +156,7 @@ msgstr "nouvelle étiquette de texte \\textscript"
 #: convertrules.py:530
 #, python-format
 msgid "identifier names: %s"
-msgstr "Noms des identificateurs : %s"
+msgstr "Nom des identificateurs : %s"
 
 #: convertrules.py:569
 msgid "point-and-click argument changed to procedure."
@@ -118,14 +170,14 @@ msgstr "Suppression des points-virgules"
 #: convertrules.py:654
 #, python-format
 msgid "%s property names"
-msgstr "Nom des propriétés %s"
+msgstr "%s noms de propriété"
 
 #: convertrules.py:724
 msgid "automaticMelismata turned on by default"
 msgstr "automaticMelismata est activé par défaut."
 
-#: convertrules.py:963 convertrules.py:1682 convertrules.py:1943
-#: convertrules.py:2190
+#: convertrules.py:963 convertrules.py:1682 convertrules.py:1942
+#: convertrules.py:2189
 #, python-format
 msgid "remove %s"
 msgstr "Retrait de %s"
@@ -136,16 +188,15 @@ msgstr "Syntaxe de cluster"
 
 #: convertrules.py:1014
 msgid "new Pedal style syntax"
-msgstr "nouvelle syntaxe du style de Pedal"
+msgstr "Nouvelle syntaxe du style de Pedal"
 
 #: convertrules.py:1273
 msgid ""
 "New relative mode,\n"
 "Postfix articulations, new text markup syntax, new chord syntax."
 msgstr ""
-"Nouveau mode relatif,\n"
-"articulations Postfix, nouvelle syntaxe des étiquettes de texte,\n"
-"nouvelle syntaxe d'accord"
+"Nouveau mode relatif, articulations Postfix,\n"
+"nouvelle syntaxe des étiquettes de texte, nouvelle syntaxe d'accord."
 
 #: convertrules.py:1286
 msgid "Remove - before articulation"
@@ -168,15 +219,15 @@ msgstr ""
 
 #: convertrules.py:1400
 msgid "Use Scheme code to construct arbitrary note events."
-msgstr "Utiliser du code Scheme pour construire des événements note arbitraires."
+msgstr "Utilisation de code Scheme pour construire des événements note arbitraires."
 
 #: convertrules.py:1407
 msgid ""
 "use symbolic constants for alterations,\n"
 "remove \\outputproperty, move ly:verbose into ly:get-option"
 msgstr ""
-"utiliser des constantes symboliques pour les altérations,\n"
-"supprimer \\outputproperty, déplacer ly:verbose à l'intérieur de ly:get-option"
+"Utilisation de constantes symboliques pour les altérations,\n"
+"suppression de \\outputproperty, ly:verbose devient ly:get-option"
 
 #: convertrules.py:1432
 #, python-format
@@ -188,8 +239,8 @@ msgid ""
 "\n"
 "as a substitution text."
 msgstr ""
-"Un \\outputproperty a été localisé.\n"
-"Ã\89diter manuellement, en utilisant\n"
+"Un \\outputproperty a été localisé ;\n"
+"éditer manuellement, en utilisant\n"
 "\n"
 "  \\applyoutput #(outputproperty-compatibility %s '%s <GROB PROPRIÉTÉ VALEUR>)\n"
 "\n"
@@ -204,7 +255,7 @@ msgid ""
 "* keySignature settings made with \\property\n"
 msgstr ""
 "Pour pouvoir tenir compte des quarts de ton en codage Scheme, \n"
-"le nombre d'arguments d'une altération a été doublé. \n"
+"le nombre d'arguments d'une altération a été doublé.\n"
 "Les constructions suivantes doivent être adaptées manuellement :\n"
 "\n"
 "* appels à ly:make-pitch et ly:pitch-alteration\n"
@@ -212,7 +263,7 @@ msgstr ""
 
 #: convertrules.py:1493
 msgid "removal of automaticMelismata; use melismaBusyProperties instead."
-msgstr "suppression de automaticMelismata au profit de melismaBusyProperties"
+msgstr "Suppression de automaticMelismata au profit de melismaBusyProperties."
 
 #: convertrules.py:1600
 msgid "\\partcombine syntax change to \\newpartcombine"
@@ -223,8 +274,8 @@ msgid ""
 "Drum notation changes, Removing \\chordmodifiers, \\notenames.\n"
 "Harmonic notes. Thread context removed. Lyrics context removed."
 msgstr ""
-"Changements de notation pour percussions. \\chordmodifiers \\notenames supprimés.\n"
-"Notes harmoniques. Contextes Thread et Lyrics supprimés."
+"Changements de notation pour percussions. Suppression de \\chordmodifiers\n"
+"et \\notenames. Notes harmoniques. Contextes Thread et Lyrics supprimés."
 
 #: convertrules.py:1632
 msgid "Drums found. Enclose drum notes in \\drummode"
@@ -258,13 +309,13 @@ msgstr "Renommage de fonction grob Scheme"
 #: convertrules.py:1780
 #, python-format
 msgid "use %s"
-msgstr "Utilisation : %s"
+msgstr "Utilisation de %s"
 
 #: convertrules.py:1797
 msgid "More Scheme function renaming"
 msgstr "Renommage d'autres fonctions Scheme"
 
-#: convertrules.py:1925
+#: convertrules.py:1924
 msgid ""
 "Page layout has been changed, using paper size and margins.\n"
 "textheight is no longer used.\n"
@@ -272,15 +323,15 @@ msgstr ""
 "La mise en page a été modifiée, utilisant la taille du papier et les marges.\n"
 "« textheight » n'est plus utilisé.\n"
 
-#: convertrules.py:2011
+#: convertrules.py:2010
 msgid ""
 "\\foo -> \\foomode (for chords, notes, etc.)\n"
 "fold \\new FooContext \\foomode into \\foo."
 msgstr ""
-"\\foo -> \\foomode (pour accords, notes, etc.)\n"
-"incorporer « \\new FooContext \\foomode » dans \\foo."
+"\\toto -> \\totomode (pour accords, notes, etc.)\n"
+"transforme « \\new TotoContext \\totomode » en \\toto."
 
-#: convertrules.py:2049
+#: convertrules.py:2048
 msgid ""
 "staff size should be changed at top-level\n"
 "with\n"
@@ -294,123 +345,133 @@ msgstr ""
 "  #(set-global-staff-size <HAUTEUR-DE-PORTÉE-EN-POINTS>)\n"
 "\n"
 
-#: convertrules.py:2069
+#: convertrules.py:2068
 msgid "regularize other identifiers"
-msgstr "normaliser les autres identificateurs"
+msgstr "Normalisation d'autres identifiants"
 
-#: convertrules.py:2137
+#: convertrules.py:2136
 msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
-msgstr "\\encoding : smart recode latin1..utf-8. Supprimer ly:point-and-click"
+msgstr "\\encoding : recodage latin1..utf-8. Suppression de ly:point-and-click"
 
-#: convertrules.py:2150
+#: convertrules.py:2149
 msgid "LilyPond source must be UTF-8"
 msgstr "Le fichier source LilyPond doit être codé en UTF-8."
 
-#: convertrules.py:2153
+#: convertrules.py:2152
 msgid "Try the texstrings backend"
 msgstr "Essayer le moteur texstrings (texstrings backend)."
 
-#: convertrules.py:2156
+#: convertrules.py:2155
 #, python-format
 msgid "Do something like: %s"
 msgstr "Faites quelque chose comme : %s"
 
-#: convertrules.py:2159
+#: convertrules.py:2158
 msgid "Or save as UTF-8 in your editor"
-msgstr "Ou sauvegarder en format UTF-8 à l'aide de votre éditeur"
+msgstr "ou sauvegardez en format UTF-8 à l'aide de votre éditeur"
 
-#: convertrules.py:2213
+#: convertrules.py:2212
 msgid "warn about auto beam settings"
-msgstr "attention aux réglages des ligatures automatiques"
+msgstr "Avertissement au sujet des ligatures automatiques"
 
-#: convertrules.py:2218
+#: convertrules.py:2217
 msgid "auto beam settings"
-msgstr "réglages des ligatures automatiques"
+msgstr "réglage des ligatures automatiques"
 
-#: convertrules.py:2220
+#: convertrules.py:2219
 msgid ""
 "\n"
 "Auto beam settings must now specify each interesting moment in a measure\n"
-"explicitely; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
+"explicitly; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
 msgstr ""
 "\n"
-"Le réglage des ligatures automatiques doit explicitement spécifier chaque moment\n"
-"de la mesure. 1/4 ne prend désormais plus en charge 1/2 et 3/4.\n"
+"Le réglage des ligatures automatiques doit explicitement spécifier chaque\n"
+"moment de la mesure. 1/4 ne prend désormais plus en charge 1/2 et 3/4.\n"
 
-#: convertrules.py:2334
+#: convertrules.py:2333
 msgid "verticalAlignmentChildCallback has been deprecated"
 msgstr "verticalAlignmentChildCallback est désuet"
 
-#: convertrules.py:2338
+#: convertrules.py:2337
 msgid "Remove callbacks property, deprecate XY-extent-callback."
-msgstr "Supprimer les propriétés de rappel, les XY-extent-callback sont obsolètes."
+msgstr "Suppression des propriétés de rappel, les XY-extent-callback sont obsolètes."
 
-#: convertrules.py:2359
+#: convertrules.py:2358
 msgid "Use grob closures iso. XY-offset-callbacks."
-msgstr "Utiliser la clôture des grobs comme avec XY-offset-callbacks."
+msgstr "Utilisation des clôtures de grob comme avec XY-offset-callbacks."
 
-#: convertrules.py:2421
+#: convertrules.py:2420
 msgid "foobar -> foo-bar for \\paper, \\layout"
-msgstr "foobar -> foo-bar pour \\paper, \\layout"
+msgstr "foobar -> foo-bar pour \\paper et \\layout"
 
-#: convertrules.py:2531
+#: convertrules.py:2530
 msgid "deprecate \\tempo in \\midi"
 msgstr "\\tempo au sein d'une section \\midi est obsolète"
 
-#: convertrules.py:2578
+#: convertrules.py:2583
 msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
-msgstr "cautionary-style est obsolète. Utiliser les propriétés AccidentalCautionary."
+msgstr "cautionary-style est désuet. Utilisation des propriétés AccidentalCautionary."
 
-#: convertrules.py:2591
+#: convertrules.py:2596
 msgid "Rename accidental glyphs, use glyph-name-alist."
-msgstr "Pour renommer les glyphes des altérations, utiliser glyph-name-alist."
+msgstr "Renommage des glyphes d'altération, utilisation de glyph-name-alist."
 
-#: convertrules.py:2646
+#: convertrules.py:2651
 msgid "edge-text settings for TextSpanner."
 msgstr "réglages des limites de texte pour TextSpanner."
 
-#: convertrules.py:2647
+#: convertrules.py:2652
 #, python-format
 msgid ""
 "Use\n"
 "\n"
 "%s"
 msgstr ""
-"Utilisation : \n"
+"Utiliser désormais \n"
 "\n"
 "%s"
 
+#: convertrules.py:2685
+msgid "Use the `alignment-offsets' sub-property of\n"
+msgstr "Utiliser la sous-propriété `alignment-offsets' de\n"
+
 #: convertrules.py:2686
+msgid "NonMusicalPaperColumn #'line-break-system-details\n"
+msgstr "NonMusicalPaperColumn #'line-break-system-details\n"
+
+#: convertrules.py:2687
+msgid "to set fixed distances between staves.\n"
+msgstr "pour définir un espacement fixe des systèmes.\n"
+
+#: convertrules.py:2699
 msgid "Use #'style not #'dash-fraction to select solid/dashed lines."
-msgstr ""
-"Utiliser #'style  et non #'dash-fraction pour obtenir des lignes continues\n"
-"ou pointillées."
+msgstr "Pour des lignes continues ou pointillées, utilisez #'style, pas #'dash-fraction."
 
-#: convertrules.py:2692
+#: convertrules.py:2705
 msgid "all settings related to dashed lines.\n"
 msgstr "tous les réglages concernant les lignes pointillées.\n"
 
-#: convertrules.py:2693
+#: convertrules.py:2706
 msgid "Use \\override ... #'style = #'line for solid lines and\n"
 msgstr "Utiliser \\override ... #'style = #'line pour des lignes pleines, et\n"
 
-#: convertrules.py:2694
+#: convertrules.py:2707
 msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
 msgstr "\t\\override ... #'style = #'dashed-line pour des lignes pointillées."
 
-#: convertrules.py:2730
+#: convertrules.py:2743
 msgid ""
 "metronomeMarkFormatter uses text markup as second argument,\n"
 "fret diagram properties moved to fret-diagram-details."
 msgstr ""
-"le deuxième argument de metronomeMarkFormatter doit être une étiquette textuelle,\n"
+"metronomeMarkFormatter prend une étiquette en deuxième argument,\n"
 "les propriétés de tablature sont désormais dans fret-diagram-details."
 
-#: convertrules.py:2735
+#: convertrules.py:2748
 msgid "metronomeMarkFormatter got an additional text argument.\n"
 msgstr "metronomeMarkFormatter prend un argument textuel suplémentaire.\n"
 
-#: convertrules.py:2736
+#: convertrules.py:2749
 #, python-format
 msgid ""
 "The function assigned to Score.metronomeMarkFunction now uses the signature\n"
@@ -419,34 +480,248 @@ msgstr ""
 "La fonction assignée à Score.metronomeMarkFunction utilise la signature\n"
 "%s"
 
-#: convertrules.py:2799
+#: convertrules.py:2812
 msgid "\\put-adjacent argument order.\n"
 msgstr "ordre de l'argument \\put-adjacent\n"
 
-#: convertrules.py:2800
+#: convertrules.py:2813
 msgid "Axis and direction now come before markups:\n"
 msgstr "Axe et direction doivent précéder les étiquettes :\n"
 
-#: convertrules.py:2801
+#: convertrules.py:2814
 msgid "\\put-adjacent axis dir markup markup."
 msgstr "\\put-adjacent axe direction étiquette étiquette."
 
-#: convertrules.py:2832
+#: convertrules.py:2845
 msgid "re-definition of InnerStaffGroup.\n"
-msgstr "redéfinition de InnerStaffGroup.\n"
+msgstr "Redéfinition de InnerStaffGroup.\n"
 
-#: convertrules.py:2838
+#: convertrules.py:2851
 msgid "re-definition of InnerChoirStaff.\n"
-msgstr "redéfinition de InnerChoirStaff.\n"
+msgstr "Redéfinition de InnerChoirStaff.\n"
 
-#: convertrules.py:2851
+#: convertrules.py:2861
+msgid "Syntax changes for \\addChordShape and \\chord-shape"
+msgstr "Changement de syntaxe pour \\addChordShape et \\chord-shape"
+
+#: convertrules.py:2866
 msgid "stringTuning must be added to addChordShape call.\n"
-msgstr "stringTuning est requis lors de l'appel à addChordShape. \n"
+msgstr "stringTuning est requis lors de l'appel à addChordShape.\n"
 
-#: convertrules.py:2857
+#: convertrules.py:2872
 msgid "stringTuning must be added to chord-shape call.\n"
 msgstr "stringTuning est requis lors de l'appel à chord-shape.\n"
 
+#: convertrules.py:2879
+msgid "Remove oldaddlyrics"
+msgstr "Suppression de oldaddlyrics"
+
+#: convertrules.py:2883
+msgid ""
+"oldaddlyrics is no longer supported. \n"
+"         Use addlyrics or lyrsicsto instead.\n"
+msgstr ""
+"oldaddlyrics n'est désormais plus pris en charge.\n"
+"         Utilisez maintenant addlyrics ou lyricsto.\n"
+
+#: convertrules.py:2889
+msgid ""
+"keySignature property not reversed any more\n"
+"MIDI 47: orchestral strings -> orchestral harp"
+msgstr ""
+"Le propriété keySignature n'est plus inversée\n"
+"MIDI 47 : orchestral strings -> orchestral harp"
+
+#: convertrules.py:2894
+msgid "The alist for Staff.keySignature is no longer in reversed order.\n"
+msgstr "La liste associative pour Staff.keySignature n'est plus en ordre inverse.\n"
+
+#: convertrules.py:2900
+msgid ""
+"\\bar \".\" now produces a thick barline\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Dash parameters for slurs and ties are now in dash-definition"
+msgstr ""
+"\\bar \".\" produit désormais une barre épaisse.\n"
+"ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
+"Les paramètres du pointillé des liaisons sont gérés par dash-definition."
+
+#: convertrules.py:2906
+msgid "\\bar \".\" now produces a thick barline.\n"
+msgstr "\\bar \".\" produit désormais une barre épaisse.\n"
+
+#: convertrules.py:2912
+msgid "Dash parameters for slurs and ties are now in 'dash-details.\n"
+msgstr "Les paramètres du pointillé des liaisons sont gérés par `dash-details.\n"
+
+#: convertrules.py:2917
+msgid ""
+"Autobeaming rules have changed.  override-auto-beam-setting and\n"
+"revert-auto-beam-setting have been eliminated.\n"
+"\\overrideBeamSettings has been added.\n"
+"beatGrouping has been eliminated.\n"
+"Different settings for vertical layout.\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"Explicit dynamics context definition from `Piano centered dynamics'\n"
+"template replaced by new `Dynamics' context."
+msgstr ""
+"Les règles de ligature automatique ont été revues.\n"
+"override-auto-beam-setting et revert-auto-beam-setting ont disparu,\n"
+"remplacés par \\overrideBeamSettings.\n"
+"beatGrouping a disparu.\n"
+"Modification des réglages de mise en forme verticale :\n"
+"ly:system-start-text::print -> system-start-text::print\n"
+"Beam #'thickness -> Beam #'beam-thickness\n"
+"ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
+"ly:ambitus::print -> ambitus::print\n"
+"La définition du contexte de nuances explicites du canevas\n"
+"« Piano et nuances entre les portées » est remplacée par le nouveau\n"
+"contexte `Dynamics'."
+
+#: convertrules.py:2931
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now overriden with \\overrideBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   L'introduction d'une dérogation aux ligatures automatiques se fait\n"
+"désormais avec \\overrideBeamSettings.\n"
+
+#: convertrules.py:2936
+msgid ""
+"override-auto-beam-setting.\n"
+"   Autobeam settings are now reverted with \\revertBeamSettings.\n"
+msgstr ""
+"override-auto-beam-setting.\n"
+"   La suppression d'une dérogation aux ligatures automatiques se fait\n"
+"   désormais avec \\revertBeamSettings.\n"
+
+#: convertrules.py:2941
+msgid ""
+"beatGrouping. \n"
+"   beatGrouping with a specified context must now be accomplished with\n"
+"   \\overrideBeamSettings.\n"
+msgstr ""
+"beatGrouping.\n"
+"   beatGrouping dans un contexte spécifique s'accomplit désormais avec\n"
+"   \\overrideBeamSettings.\n"
+
+#: convertrules.py:2947
+msgid "alignment-offsets has been changed to alignment-distances: you must now specify the distances between staves rather than the offset of staves.\n"
+msgstr ""
+"alignment-offsets est devenu alignment-distances : il faut désormais\n"
+"spécifier la distance entre les portées au lieu de leur offset.\n"
+
+#: convertrules.py:2958
+msgid ""
+"Remove obsolete engravers/translators: Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer and String_number_engraver.\n"
+"New vertical spacing variables."
+msgstr ""
+"Suppression des graveurs/traducteurs obsolètes Note_swallow_translator,\n"
+"Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
+"Swallow_performer et String_number_engraver.\n"
+"Apparition de nouvelles variables pour l'espacement vertical."
+
+#: convertrules.py:2982
+msgid "vertical spacing has been changed; minimum-Y-extent is obsolete.\n"
+msgstr "l'espacement vertical a été revu ; minimum-Y-extent est obsolète.\n"
+
+#: convertrules.py:2988
+msgid "Unify fetaNumber and fetaDynamic encodings"
+msgstr "Uniformisation des encodages de fetaNumber et fetaDynamic."
+
+#: convertrules.py:2993
+msgid "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+msgstr "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
+
+#: convertrules.py:3004
+msgid "\\cresc etc. are now postfix operators"
+msgstr "\\cresc etc. sont désormais des opérateurs postfix"
+
+#: convertrules.py:3010
+msgid ""
+"Eliminate beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings and \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+msgstr ""
+"Élimination de beamSettings, beatLength, \\setBeatGrouping, \n"
+"\\overrideBeamSettings et \\revertBeamSettings.\n"
+"\"accordion.accEtcbase\" -> \"accordion.etcbass\""
+
+#: convertrules.py:3028
+msgid "\\overrideBeamSettings.  Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
+msgstr ""
+"\\overrideBeamSettings.\n"
+"Utiliser \\set beamExceptions ou \\overrideTimeSignatureSettings.\n"
+
+#: convertrules.py:3032
+msgid "\\revertBeamSettings. Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
+msgstr ""
+"\\revertBeamSettings.\n"
+"Utiliser \\set beamExceptions ou \\revertTimeSignatureSettings.\n"
+
+#: convertrules.py:3036
+msgid "beamSettings. Use baseMoment, beatStructure, and beamExceptions.\n"
+msgstr ""
+"beamSettings.\n"
+"Utiliser baseMoment, beatStructure et beamExceptions.\n"
+
+#: convertrules.py:3040
+msgid "beatLength. Use baseMoment and beatStructure.\n"
+msgstr ""
+"beatLength.\n"
+"Utiliser baseMoment et beatStructure.\n"
+
+#: convertrules.py:3044
+msgid "setbeatGrouping. Use baseMoment and beatStructure.\n"
+msgstr ""
+"setbeatGrouping.\n"
+"Utiliser baseMoment et beatStructure.\n"
+
+#: convertrules.py:3049
+msgid ""
+"Woodwind diagrams: Move size, thickness, and graphic from argument list to properties.\n"
+"Deprecate negative dash-period for hidden lines: use #'style = #'none instead."
+msgstr ""
+"Diagrammes pour vents : taille, épaisseur et graphique deviennent des \n"
+"propriétés.\n"
+"Dépréciation des longueurs de tiret négatives pour des lignes masquées ;\n"
+"utiliser désormais #'style = #'none"
+
+#: convertrules.py:3054
+msgid "woodwind-diagrams.  Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
+msgstr ""
+"Diagrammes pour vents (woodwind-diagrams). Taille, épaisseur et graphique\n"
+"sont des propriétés. L'argument devrait ne contenir que la liste des clés.\n"
+
+#: convertrules.py:3062
+msgid ""
+"Rename vertical spacing variables.\n"
+"Add fretboard-table argument to savePredefinedFretboard."
+msgstr ""
+"Renommage des variables d'espacement vertical.\n"
+"Ajout de l'argument fretboard-table à savePredefinedFretboard."
+
+#: convertrules.py:3080
+msgid "Rename vertical spacing grob properties."
+msgstr "Renommage des propriétés d'objet d'espacement vertical."
+
+#: convertrules.py:3096
+msgid "Remove \\paper variables head-separation and foot-separation."
+msgstr "Suppression des variables de \\paper head-separation et foot-separation."
+
+#: convertrules.py:3101
+msgid "Adjust settings for top-system-spacing instead.\n"
+msgstr "Ajustez plutôt le réglage de top-system-spacing.\n"
+
+#: convertrules.py:3106
+msgid "Adjust settings for last-bottom-spacing instead.\n"
+msgstr "Ajustez plutôt le réglage de last-bottom-spacing.\n"
+
 #: fontextract.py:25
 #, python-format
 msgid "Scanning %s"
@@ -462,92 +737,87 @@ msgstr "Extraction de %s"
 msgid "Writing fonts to %s"
 msgstr "Écriture des fontes vers %s"
 
-#: lilylib.py:91 lilylib.py:142
+#: lilylib.py:81 musicxml.py:13 convert-ly.py:67 warn.cc:72 input.cc:115
+#: input.cc:123
+#, c-format, python-format
+msgid "error: %s"
+msgstr "Erreur : %s"
+
+#: lilylib.py:124 lilylib.py:175
 #, python-format
 msgid "Invoking `%s'"
 msgstr "Appel de « %s »"
 
-#: lilylib.py:93 lilylib.py:144
+#: lilylib.py:126 lilylib.py:177
 #, python-format
 msgid "Running %s..."
 msgstr "Exécution de %s..."
 
-#: lilylib.py:209
+#: lilylib.py:253
 #, python-format
 msgid "Usage: %s"
 msgstr "Utilisation : %s"
 
-#: musicexp.py:215 musicexp.py:220
+#: musicexp.py:216 musicexp.py:221
 msgid "Language does not support microtones contained in the piece"
 msgstr "Le langage ne prend pas en charge les microintervalles de ce morceau"
 
-#: musicexp.py:482
+#: musicexp.py:483
 msgid "Tuplet brackets of curved shape are not correctly implemented"
 msgstr "La courbure des crochets de nolet n'est pas implémentée de manière optimale"
 
-#. TODO: Implement this using actual_type and normal_type!
-#: musicexp.py:511
-msgid "Tuplet brackets displaying both note durations are not implemented, using default"
-msgstr "Les crochets de nolet indiquant le deux valeurs rythmiques ne sont pas implémentés ; utilisation du style par défaut"
-
-#: musicexp.py:656
+#: musicexp.py:669
 #, python-format
 msgid "unable to set the music %(music)s for the repeat %(repeat)s"
 msgstr "impossible d'affecter le fragment %(music)s à la répétition %(repeat)s"
 
-#: musicexp.py:665
+#: musicexp.py:678
 msgid "encountered repeat without body"
-msgstr "réprise vide détectée"
+msgstr "reprise vide détectée"
 
 #. no self.elements!
-#: musicexp.py:835
+#: musicexp.py:848
 #, python-format
 msgid "Grace note with no following music: %s"
 msgstr "Apoggiature non suivie de musique :%s"
 
-#: musicexp.py:997
+#: musicexp.py:1010
 #, python-format
 msgid "Invalid octave shift size found: %s. Using no shift."
 msgstr "Décalage d'octave invalide : %s. Décalage non appliqué."
 
-#: musicexp.py:1455
+#: musicexp.py:1468
 #, python-format
 msgid "Unable to convert alteration %s to a lilypond expression"
 msgstr "Impossible de convertir l'altération %s en expression LilyPond"
 
-#: musicxml.py:13 convert-ly.py:53 lilypond-book.py:97 warn.cc:54 input.cc:96
-#: input.cc:104
-#, c-format, python-format
-msgid "error: %s"
-msgstr "Erreur : %s"
-
 #. TODO: Handle pieces without a time signature!
-#: musicxml.py:357
+#: musicxml.py:358
 msgid "Senza-misura time signatures are not yet supported!"
 msgstr "Les métriques « senza-misura » ne sont pas prises en charge."
 
-#: musicxml.py:375
+#: musicxml.py:376
 msgid "Unable to interpret time signature! Falling back to 4/4."
 msgstr "Métrique non interprétable ; retour au 4/4."
 
-#: musicxml.py:431
+#: musicxml.py:432
 #, python-format
 msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
 msgstr ""
 "Octave d'altération indiquée pour une altération numéro %s inexistante ;\n"
 "index d'altération disponibles : 1 à %s"
 
-#: musicxml.py:519
+#: musicxml.py:520
 #, python-format
 msgid "Unable to find instrument for ID=%s\n"
 msgstr "Aucun instrument ne correspond à l'ID=%s\n"
 
-#: abc2ly.py:1341 convert-ly.py:74 lilypond-book.py:121 midi2ly.py:845
+#: abc2ly.py:1373 convert-ly.py:87 lilypond-book.py:122 midi2ly.py:860
 #, python-format
 msgid "%s [OPTION]... FILE"
 msgstr "%s [OPTIONS]... FICHIER"
 
-#: abc2ly.py:1342
+#: abc2ly.py:1374
 #, python-format
 msgid ""
 "abc2ly converts ABC music files (see\n"
@@ -556,542 +826,535 @@ msgstr ""
 "abc2ly convertit les fichiers musicaux ABC (voir\n"
 "%s) au format LilyPond.\n"
 
-#: abc2ly.py:1350 convert-ly.py:81 etf2ly.py:1190 lilypond-book.py:207
-#: midi2ly.py:881 musicxml2ly.py:2590 main.cc:156
+#: abc2ly.py:1382 convert-ly.py:94 etf2ly.py:1206 lilypond-book.py:212
+#: midi2ly.py:896 musicxml2ly.py:2683 main.cc:168
 msgid "show version number and exit"
 msgstr "afficher le numéro de version et quitter"
 
-#: abc2ly.py:1354 convert-ly.py:85 etf2ly.py:1186 lilypond-book.py:138
-#: midi2ly.py:860 musicxml2ly.py:2572 main.cc:145
+#: abc2ly.py:1386 convert-ly.py:98 etf2ly.py:1202 lilypond-book.py:140
+#: midi2ly.py:875 musicxml2ly.py:2665 main.cc:157
 msgid "show this help and exit"
 msgstr "visualiser cette aide et quitter"
 
-#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
+#: abc2ly.py:1388 etf2ly.py:1207 midi2ly.py:879
 msgid "write output to FILE"
 msgstr "produire la sortie dans le FICHIER"
 
-#: abc2ly.py:1358
+#: abc2ly.py:1390
 msgid "be strict about success"
 msgstr "être strict sur la réussite"
 
-#: abc2ly.py:1360
+#: abc2ly.py:1392
 msgid "preserve ABC's notion of beams"
-msgstr "préserver la notion de lien de croches propre à ABC"
+msgstr "préserver la notion de ligature propre à ABC"
 
 #. Translators, please translate this string as
 #. "Report bugs in English via %s",
 #. or if there is a LilyPond users list or forum in your language
 #. "Report bugs in English via %s or in YOUR_LANG via URI"
-#: abc2ly.py:1363 convert-ly.py:123 etf2ly.py:1200 lilypond-book.py:214
-#: midi2ly.py:894 musicxml2ly.py:2646 main.cc:265
+#: abc2ly.py:1395 convert-ly.py:144 etf2ly.py:1216 lilypond-book.py:234
+#: midi2ly.py:909 musicxml2ly.py:2751 main.cc:281
 #, c-format, python-format
 msgid "Report bugs via %s"
 msgstr ""
-"Signaler toute anomalie à \n"
+"Signalez tout bogue, en français à\n"
+" http://lilypond-french-users.1298960.n2.nabble.com/\n"
+"ou en anglais à\n"
 "%s"
 
-#: convert-ly.py:33
+#: convert-ly.py:44
 msgid ""
 "Update LilyPond input to newer version.  By default, update from the\n"
 "version taken from the \\version command, to the current LilyPond version."
 msgstr ""
-"Mettre à jour le fichier source vers une version plus récente. \n"
+"Mettre à jour le fichier source vers une version plus récente.\n"
 "Par défaut, de la version indiquée par la commande \\version \n"
 "vers la version courante de LilyPond."
 
-#: convert-ly.py:35 lilypond-book.py:71
+#: convert-ly.py:46 lilypond-book.py:82
 msgid "Examples:"
 msgstr "Exemples :"
 
-#: convert-ly.py:69 etf2ly.py:1173 lilypond-book.py:117 midi2ly.py:76
+#: convert-ly.py:81 etf2ly.py:1189 lilypond-book.py:116 midi2ly.py:90
+#, python-format
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s détenu par"
+
+#: convert-ly.py:83 etf2ly.py:1191 lilypond-book.py:118 midi2ly.py:92
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Distribué selon les termes de la GNU General Public License."
 
-#: convert-ly.py:70 etf2ly.py:1174 lilypond-book.py:118 midi2ly.py:77
+#: convert-ly.py:84 etf2ly.py:1192 lilypond-book.py:119 midi2ly.py:93
 msgid "It comes with NO WARRANTY."
 msgstr "Le logiciel est distribué SANS GARANTIE."
 
-#: convert-ly.py:89 convert-ly.py:116
+#: convert-ly.py:102 convert-ly.py:135
 msgid "VERSION"
 msgstr "VERSION"
 
-#: convert-ly.py:91
+#: convert-ly.py:104
 msgid "start from VERSION [default: \\version found in file]"
 msgstr "partir de la VERSION [par défaut : \\version trouvée dans le fichier]"
 
-#: convert-ly.py:94
+#: convert-ly.py:107
 msgid "edit in place"
 msgstr "éditer le fichier d'origine"
 
-#: convert-ly.py:98
+#: convert-ly.py:111
 msgid "do not add \\version command if missing"
 msgstr "ne pas ajouter la commande \\version si elle est absente"
 
-#: convert-ly.py:104
+#: convert-ly.py:117
 #, python-format
 msgid "force updating \\version number to %s"
 msgstr "forcer la mise à jour de \\version à %s"
 
-#: convert-ly.py:110
+#: convert-ly.py:123
+msgid "only update \\version number if file is modified"
+msgstr "ne changer le numéro de \\version que si le fichier est modifié"
+
+#: convert-ly.py:129
 #, python-format
 msgid "show rules [default: -f 0, -t %s]"
 msgstr "afficher les règles [par défaut : -f 0, -t %s]"
 
-#: convert-ly.py:115
+#: convert-ly.py:134
 #, python-format
 msgid "convert to VERSION [default: %s]"
 msgstr "convertir jusqu'à la VERSION [par défaut : %s]"
 
-#: convert-ly.py:163
+#: convert-ly.py:139 etf2ly.py:1210 lilypond-book.py:215 midi2ly.py:897
+#: main.cc:170
+msgid "show warranty and copyright"
+msgstr "afficher les notices de garantie et du droit d'auteur"
+
+#: convert-ly.py:184
 msgid "Applying conversion: "
 msgstr "Conversion en cours : "
 
-#: convert-ly.py:176
+#: convert-ly.py:197
 msgid "Error while converting"
 msgstr "Erreur lors de la conversion"
 
-#: convert-ly.py:178
+#: convert-ly.py:199
 msgid "Stopping at last successful rule"
 msgstr "Arrêt à la dernière règle appliquée avec succès"
 
-#: convert-ly.py:199
+#: convert-ly.py:224
 #, python-format
 msgid "Processing `%s'... "
 msgstr "Traitement de « %s »..."
 
-#: convert-ly.py:289 relocate.cc:362 source-file.cc:59
-#, c-format, python-format
-msgid "cannot open file: `%s'"
-msgstr "Impossible d'ouvrir le fichier : « %s »"
+#: convert-ly.py:332
+#, python-format
+msgid "%s: Unable to open file"
+msgstr "impossible d'ouvrir le fichier « %s »"
 
-#: convert-ly.py:296
+#: convert-ly.py:339
 #, python-format
-msgid "cannot determine version for `%s'.  Skipping"
+msgid "%s: Unable to determine version.  Skipping"
 msgstr "impossible de déterminer la version  de « %s ». Au suivant !"
 
-#: etf2ly.py:1179
+#: convert-ly.py:344
+#, python-format
+msgid ""
+"%s: Invalid version string `%s' \n"
+"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
+msgstr ""
+"%s porte un numéro de version invalide : %s \n"
+"Un numéro de version valide est formé de trois nombres séparés par un point,\n"
+"comme par exemple « 2.8.12 »"
+
+#: etf2ly.py:1195
 #, python-format
 msgid "%s [OPTION]... ETF-FILE"
 msgstr "%s [OPTIONS]... FICHIER-ETF"
 
-#: etf2ly.py:1180
+#: etf2ly.py:1196
 msgid ""
 "Enigma Transport Format is a format used by Coda Music Technology's\n"
 "Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond file.\n"
 msgstr ""
 "Enigma Transport Format est utilisé par Finale, de Coda Music Technology.\n"
-"etf2ly convertit partiellement un fichier ETF en un fichier LilyPond \n"
+"etf2ly convertit partiellement un fichier ETF en un fichier LilyPond\n"
 "exploitable.\n"
 
-#: etf2ly.py:1192 midi2ly.py:865 musicxml2ly.py:2638 main.cc:149 main.cc:154
+#: etf2ly.py:1208 midi2ly.py:880 musicxml2ly.py:2743 main.cc:161 main.cc:166
 msgid "FILE"
 msgstr "FICHIER"
 
-#: etf2ly.py:1194 lilypond-book.py:210 midi2ly.py:882 main.cc:158
-msgid "show warranty and copyright"
-msgstr "afficher les notices de garantie et du droit d'auteur"
-
-#: lilypond-book.py:69
+#: lilypond-book.py:80
 msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
 msgstr ""
-"Traiter les extraits LilyPond dans un document HTML hybride, LaTeX, \n"
+"Traite les extraits LilyPond dans un document HTML hybride, LaTeX,\n"
 "texinfo ou Docbook."
 
-#: lilypond-book.py:76
+#: lilypond-book.py:87
 msgid "BOOK"
 msgstr "LIVRE"
 
-#: lilypond-book.py:84
+#: lilypond-book.py:95
 #, python-format
 msgid "Exiting (%d)..."
 msgstr "Fin d'exécution (%d)..."
 
-#: lilypond-book.py:115
-#, python-format
-msgid "Copyright (c) %s by"
-msgstr "Copyright (c) %s détenu par"
-
-#: lilypond-book.py:125
+#: lilypond-book.py:127
 msgid "FILTER"
 msgstr "FILTRE"
 
-#: lilypond-book.py:128
+#: lilypond-book.py:130
 msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
-msgstr "passer les extraits à travers le FILTRE [par défaut : `convert-ly -n -']"
+msgstr "Passe les extraits à travers le FILTRE [par défaut : `convert-ly -n -']"
 
-#: lilypond-book.py:132
+#: lilypond-book.py:134
 msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
 msgstr ""
-"utiliser le format de sortie FORMAT (texi (par défaut), texi-html, latex, \n"
-"html, docbook)"
+"Utilise le format de sortie FORMAT (texi par défaut, texi-html, latex,\n"
+"html ou docbook)"
 
-#: lilypond-book.py:133
+#: lilypond-book.py:135
 msgid "FORMAT"
 msgstr "FORMAT"
 
-#: lilypond-book.py:140
+#: lilypond-book.py:142
 msgid "add DIR to include path"
-msgstr "ajouter le RÉPERTOIRE au chemin de recherche des inclusions"
+msgstr "Ajoute le RÉP au chemin de recherche des inclusions"
 
-#: lilypond-book.py:141 lilypond-book.py:148 lilypond-book.py:166
-#: lilypond-book.py:172 lilypond-book.py:178 lilypond-book.py:184 main.cc:148
+#: lilypond-book.py:143 lilypond-book.py:150 lilypond-book.py:163
+#: lilypond-book.py:173 lilypond-book.py:189 lilypond-book.py:195 main.cc:160
 msgid "DIR"
 msgstr "RÉP"
 
-#: lilypond-book.py:146
+#: lilypond-book.py:148
 msgid "format Texinfo output so that Info will look for images of music in DIR"
-msgstr "formater la sortie Texinfo pour qu'Info cherche les images dans RÉP"
+msgstr "Formate la sortie Texinfo pour qu'Info cherche les images dans RÉP"
 
-#: lilypond-book.py:153
-msgid "run executable PROG instead of latex"
-msgstr "lancer l'exécutable PROG plutôt que latex"
-
-#: lilypond-book.py:154
-msgid "PROG"
-msgstr "PROG"
-
-#: lilypond-book.py:159
+#: lilypond-book.py:155
 msgid "PAD"
 msgstr "PAD"
 
-#: lilypond-book.py:161
+#: lilypond-book.py:157
 msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
 msgstr ""
-"Tasser la musique par la gauche pour la répartir en dépit du nombre irrégulier \n"
+"Tasse la musique par la gauche pour la répartir en dépit du nombre irrégulier\n"
 "de mesures (en mm)"
 
-#: lilypond-book.py:165
-msgid "write output to DIR"
-msgstr "produire la sortie dans le RÉPERTOIRE"
+#: lilypond-book.py:162
+msgid "write lily-XXX files to DIR, link into --output dir"
+msgstr ""
+"Écrit les fichiers lily-XXX dans RÉP et crée un lien vers le répertoire\n"
+"spécifié par --output"
 
-#: lilypond-book.py:171
-msgid "do not fail if no lilypond output is found"
-msgstr "poursuivre même s'il n'y a pas de sortie lilypond"
+#: lilypond-book.py:167
+msgid "Load the additional python PACKAGE (containing e.g. a custom output format)"
+msgstr ""
+"Charge le PAQUETAGE python supplémentaire (contenant p.ex. un format\n"
+"de sortie particulier)"
 
-#: lilypond-book.py:177
-msgid "do not fail if no PNG images are found for EPS files"
-msgstr "poursuivre même s'il n'y a pas d'image PNG pour les fichiers EPS"
+#: lilypond-book.py:168
+msgid "PACKAGE"
+msgstr "PAQUETAGE"
 
-#: lilypond-book.py:183
-msgid "write lily-XXX files to DIR, link into --output dir"
-msgstr "écrire les fichiers lily-XXX dans RÉP, et lier à --output rép"
+#: lilypond-book.py:172
+msgid "write output to DIR"
+msgstr "Produit la sortie dans RÉP"
 
-#: lilypond-book.py:188
+#: lilypond-book.py:177
 msgid "COMMAND"
 msgstr "COMMANDE"
 
-#: lilypond-book.py:189
+#: lilypond-book.py:178
 msgid "process ly_files using COMMAND FILE..."
-msgstr "Traîter ly_files en utilisant COMMANDE FICHIER..."
-
-#: lilypond-book.py:196
-msgid "create PDF files for use with PDFTeX"
-msgstr "Créer des fichiers PDF pour utilisation par PDFTeX"
-
-#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
-msgid "be verbose"
-msgstr "Passer en mode verbeux"
+msgstr "Traîte ly_files en utilisant COMMANDE FICHIER..."
 
-#: lilypond-book.py:871
-#, python-format
-msgid "file not found: %s"
-msgstr "fichier non trouvé : %s"
-
-#: lilypond-book.py:1142
-#, python-format
-msgid "deprecated ly-option used: %s=%s"
-msgstr "option ly-option obsolète : %s=%s"
-
-#: lilypond-book.py:1144
-#, python-format
-msgid "compatibility mode translation: %s=%s"
-msgstr "bascule en mode de compatibilité : %s=%s"
+#: lilypond-book.py:182
+msgid "Compile snippets in safe mode"
+msgstr "Compile des extraits en mode protégé"
 
-#: lilypond-book.py:1147
-#, python-format
-msgid "deprecated ly-option used: %s"
-msgstr "option ly-option obsolète : %s"
+#: lilypond-book.py:188
+msgid "do not fail if no lilypond output is found"
+msgstr "Désactive la mise en échec en l’absence de sortie de lilypond"
 
-#: lilypond-book.py:1149
-#, python-format
-msgid "compatibility mode translation: %s"
-msgstr "bascule en mode de compatibilité : %s"
+#: lilypond-book.py:194
+msgid "do not fail if no PNG images are found for EPS files"
+msgstr ""
+"Désactive la mise en échec en l’absence d’images PNG correspondant aux\n"
+"fichiers EPS"
 
-#: lilypond-book.py:1167
-#, python-format
-msgid "ignoring unknown ly option: %s"
-msgstr "option ly inconnue et ignorée : %s"
+#: lilypond-book.py:200
+msgid "write snippet output files with the same base name as their source file"
+msgstr ""
+"Affecte au résultat des extraits la même racine\n"
+"que celle des fichiers source"
 
-#: lilypond-book.py:1604
-#, python-format
-msgid "Opening filter `%s'"
-msgstr "Ouverture du filtre « %s »"
+#: lilypond-book.py:204 midi2ly.py:890 musicxml2ly.py:2688 main.cc:169
+msgid "be verbose"
+msgstr "Passe en mode verbeux"
 
-#: lilypond-book.py:1621
-#, python-format
-msgid "`%s' failed (%d)"
-msgstr "« %s » a échoué (%d)"
+#: lilypond-book.py:220
+msgid ""
+"run executable PROG instead of latex, or in\n"
+"case --pdf option is set instead of pdflatex"
+msgstr ""
+"Utilise l’exécutable PROG en lieu et place de latex,\n"
+"ou lorsque l'option --pdf remplace pdflatex"
 
-#: lilypond-book.py:1622
-msgid "The error log is as follows:"
-msgstr "Voici le journal d'erreurs :"
+#: lilypond-book.py:222
+msgid "PROG"
+msgstr "PROG"
 
-#: lilypond-book.py:1684
-msgid "cannot find \\begin{document} in LaTeX document"
-msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
+#: lilypond-book.py:228
+msgid "create PDF files for use with PDFTeX"
+msgstr "Crée des fichiers PDF pour utilisation par PDFTeX"
 
-#: lilypond-book.py:1784
+#: lilypond-book.py:419
 msgid "Writing snippets..."
 msgstr "Écriture des extraits..."
 
-#: lilypond-book.py:1790
+#: lilypond-book.py:425
 msgid "Processing..."
 msgstr "Traitement..."
 
-#: lilypond-book.py:1796
+#: lilypond-book.py:431
 msgid "All snippets are up to date..."
 msgstr "Tous les extraits sont à jour..."
 
-#: lilypond-book.py:1830
+#: lilypond-book.py:452
 #, python-format
 msgid "cannot determine format for: %s"
 msgstr "format indéterminé pour %s"
 
-#: lilypond-book.py:1841
+#: lilypond-book.py:461
 #, python-format
 msgid "%s is up to date."
 msgstr "%s est à jour."
 
-#: lilypond-book.py:1855
+#: lilypond-book.py:475
 #, python-format
 msgid "Writing `%s'..."
 msgstr "Écriture de « %s »..."
 
-#: lilypond-book.py:1913
+#: lilypond-book.py:537
 msgid "Output would overwrite input file; use --output."
 msgstr "La sortie va écraser le fichier d'entrée ; utiliser --output"
 
-#: lilypond-book.py:1917
+#: lilypond-book.py:541
 #, python-format
 msgid "Reading %s..."
 msgstr "Lecture en cours de %s..."
 
-#: lilypond-book.py:1937
+#: lilypond-book.py:549
 msgid "Dissecting..."
 msgstr "Dissection en cours..."
 
-#: lilypond-book.py:1953
+#: lilypond-book.py:561
 #, python-format
 msgid "Compiling %s..."
 msgstr "Compilation de %s..."
 
-#: lilypond-book.py:1962
+#: lilypond-book.py:570
 #, python-format
 msgid "Processing include: %s"
 msgstr "Traitement d'inclusion : %s"
 
-#: lilypond-book.py:1974
+#: lilypond-book.py:582
 #, python-format
 msgid "Removing `%s'"
 msgstr "Suppression de « %s »"
 
-#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
+#: midi2ly.py:99
 msgid "warning: "
 msgstr "Avertissement : "
 
-#: midi2ly.py:87 midi2ly.py:907
+#: midi2ly.py:102 midi2ly.py:922
 msgid "error: "
 msgstr "Erreur : "
 
-#: midi2ly.py:88
+#: midi2ly.py:103
 msgid "Exiting... "
 msgstr "Fin d'exécution... "
 
-#: midi2ly.py:833
+#: midi2ly.py:848
 #, python-format
 msgid "%s output to `%s'..."
 msgstr "%s reproduit dans « %s »..."
 
-#: midi2ly.py:846
+#: midi2ly.py:861
 #, python-format
 msgid "Convert %s to LilyPond input.\n"
 msgstr "Convertir %s au format source LilyPond.\n"
 
-#: midi2ly.py:851
+#: midi2ly.py:866
 msgid "print absolute pitches"
-msgstr "afficher des tons absolus"
+msgstr "Afficher des tons absolus"
 
-#: midi2ly.py:853 midi2ly.py:868
+#: midi2ly.py:868 midi2ly.py:883
 msgid "DUR"
 msgstr "DUR"
 
-#: midi2ly.py:854
+#: midi2ly.py:869
 msgid "quantise note durations on DUR"
-msgstr "quantifier les durées de note d'après DUR"
+msgstr "Quantifier les durées de note d'après DUR"
 
-#: midi2ly.py:857
+#: midi2ly.py:872
 msgid "print explicit durations"
-msgstr "écrire des durées explicites"
+msgstr "Ã\89criT des durées explicites"
 
-#: midi2ly.py:861
+#: midi2ly.py:876
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
-msgstr "définir l'armure : ALT=+dièse|-bémol; MINEUR=1"
+msgstr "Définit l'armure : ALT=+dièse|-bémol; MINEUR=1"
 
-#: midi2ly.py:862
+#: midi2ly.py:877
 msgid "ALT[:MINOR]"
 msgstr "ALT[:MINEUR]"
 
-#: midi2ly.py:867
+#: midi2ly.py:882
 msgid "quantise note starts on DUR"
-msgstr "quantifier les débuts de note sur DUR"
+msgstr "Quantifie les débuts de note sur DUR"
 
-#: midi2ly.py:870
+#: midi2ly.py:885
 msgid "DUR*NUM/DEN"
 msgstr "DUR*NUM/DEN"
 
-#: midi2ly.py:873
+#: midi2ly.py:888
 msgid "allow tuplet durations DUR*NUM/DEN"
-msgstr "permettre des n-olets de durée DUR*NUM/DEN"
+msgstr "Permet des n-olets de durée DUR*NUM/DEN"
 
-#: midi2ly.py:885
+#: midi2ly.py:900
 msgid "treat every text as a lyric"
-msgstr "traiter tout texte comme étant des paroles"
+msgstr "Traite tout texte comme étant des paroles"
 
-#: midi2ly.py:888
+#: midi2ly.py:903
 msgid "Examples"
 msgstr "Exemples"
 
-#: midi2ly.py:908
+#: midi2ly.py:923
 msgid "no files specified on command line."
 msgstr "aucun fichier spéficié sur la ligne de commande."
 
-#: musicxml2ly.py:343
-msgid "Encountered file created by Dolet 3.4 for Sibelius, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
-msgstr ""
-"Détection d'un fichier créé par Dolet 3.4 pour Sibelius et contenant des \n"
-"informations de lien erronées. Toutes les informations de ligature du fichier \n"
-"MusicXML seront ignorées"
-
-#: musicxml2ly.py:346
-msgid "Encountered file created by Noteworthy Composer's nwc2xml, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+#: musicxml2ly.py:324
+#, python-format
+msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
 msgstr ""
-"Détection d'un fichier créé par Noteworthy Composer's nwc2xml et contenant des \n"
-"informations de lien erronées. Toutes les informations de ligature du fichier \n"
-"MusicXML seront ignorées"
+"Détection d'un fichier créé par %s et contenant des informations de ligature\n"
+"erronées. Toutes les informations de ligature du fichier MusicXML seront\n"
+"ignorées."
 
-#: musicxml2ly.py:362 musicxml2ly.py:364
+#: musicxml2ly.py:340 musicxml2ly.py:342
 #, python-format
 msgid "Unprocessed PartGroupInfo %s encountered"
 msgstr "PartGroupInfo %s détecté, mais non traité"
 
-#: musicxml2ly.py:594
+#: musicxml2ly.py:595
 #, python-format
 msgid "Encountered note at %s without type and duration (=%s)"
 msgstr "Une note se trouve en %s, sans type ni durée (=%s)"
 
-#: musicxml2ly.py:613
+#: musicxml2ly.py:615
 #, python-format
 msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
 msgstr ""
-"Durée rationnelle au dénominateur de %s détectée ; \n"
+"Durée rationnelle au dénominateur de %s détectée ;\n"
 "impossible de traduire en durée LilyPond"
 
-#: musicxml2ly.py:868
+#: musicxml2ly.py:864
 msgid "Unable to extract key signature!"
 msgstr "Impossible de trouver l'armure."
 
-#: musicxml2ly.py:895
+#: musicxml2ly.py:891
 #, python-format
 msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
-msgstr "%s : mode inconnu. Devrait être « majeur », « mineur » ou « mode d'église »"
+msgstr ""
+"%s : mode inconnu.\n"
+"Devrait être « majeur », « mineur » ou « mode d'église »"
 
-#: musicxml2ly.py:968
+#: musicxml2ly.py:1029
 #, python-format
 msgid "Encountered unprocessed marker %s\n"
 msgstr "Détection d'un marqueur non traité : %s\n"
 
-#: musicxml2ly.py:1062
+#: musicxml2ly.py:1123
 #, python-format
 msgid "unknown span event %s"
 msgstr "Événement de prolongation inconnu : « %s »"
 
-#: musicxml2ly.py:1072
+#: musicxml2ly.py:1133
 #, python-format
 msgid "unknown span type %s for %s"
 msgstr "%s n'est pas un type de prolongateur reconnu pour %s"
 
-#: musicxml2ly.py:1498
+#: musicxml2ly.py:1553
 msgid "Unknown metronome mark, ignoring"
 msgstr "Indication métronomique inconnue et ignorée."
 
 #. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1503
+#: musicxml2ly.py:1558
 msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
 msgstr ""
 "Les indications métronomiques aux relations complexes (<metronome-note> pour \n"
 "MusicXML) n'ont pas encore été implémentées."
 
-#: musicxml2ly.py:1703
+#: musicxml2ly.py:1760
 #, python-format
 msgid "Unable to convert chord type %s to lilypond."
 msgstr "Impossible de convertir le type d'accord %s au format LilyPond"
 
-#: musicxml2ly.py:1849
+#: musicxml2ly.py:1909
 #, python-format
 msgid "drum %s type unknown, please add to instrument_drumtype_dict"
 msgstr ""
 "%s n'est pas un type de percussion connu. \n"
 "L'ajouter à instrument_drumtype_dict"
 
-#: musicxml2ly.py:1853
+#: musicxml2ly.py:1913
 msgid "cannot find suitable event"
 msgstr "Aucun événement correspondant"
 
-#: musicxml2ly.py:1994
+#: musicxml2ly.py:2061
 #, python-format
 msgid "Negative skip %s (from position %s to %s)"
 msgstr "Retour en arrière de %s (partant de %s et jusqu'à %s)"
 
-#: musicxml2ly.py:2134
+#: musicxml2ly.py:2202
 #, python-format
 msgid "Negative skip found: from %s to %s, difference is %s"
 msgstr "Retour en arrière, de %s à %s ; différence = %s"
 
-#: musicxml2ly.py:2205
+#: musicxml2ly.py:2283
 #, python-format
 msgid "unexpected %s; expected %s or %s or %s"
 msgstr "%s détecté, au lieu de %s, %s ou %s"
 
-#: musicxml2ly.py:2311
+#: musicxml2ly.py:2389
 msgid "Encountered closing slur, but no slur is open"
 msgstr "Terminaison d'une liaison qui n'a pas été débutée"
 
-#: musicxml2ly.py:2314
+#: musicxml2ly.py:2392
 msgid "Cannot have two simultaneous (closing) slurs"
 msgstr "deux liaisons ne peuvent se terminer simultanément"
 
-#: musicxml2ly.py:2324
+#: musicxml2ly.py:2401
 msgid "Cannot have a slur inside another slur"
 msgstr "des liaisons ne peuvent s'imbriquer"
 
-#: musicxml2ly.py:2327
+#: musicxml2ly.py:2404
 msgid "Cannot have two simultaneous slurs"
 msgstr "deux liaisons ne peuvent intervenir simultanément"
 
-#: musicxml2ly.py:2455
+#: musicxml2ly.py:2538
 #, python-format
 msgid "cannot simultaneously have more than one mode: %s"
 msgstr "SVP, un seul mode à la fois : %s"
 
-#: musicxml2ly.py:2553
+#: musicxml2ly.py:2646
 msgid "Converting to LilyPond expressions..."
 msgstr "Conversion en expressions LilyPond..."
 
-#: musicxml2ly.py:2564
+#: musicxml2ly.py:2657
 msgid "musicxml2ly [OPTION]... FILE.xml"
 msgstr "musicxml2ly [options]... FICHIER.xml"
 
-#: musicxml2ly.py:2566
+#: musicxml2ly.py:2659
 msgid ""
 "Convert MusicXML from FILE.xml to LilyPond input.\n"
 "If the given filename is -, musicxml2ly reads from the command line.\n"
@@ -1099,7 +1362,7 @@ msgstr ""
 "Convertit FICHIER.xml (MusicXML) au format LilyPond.\n"
 "Si le nom du fichier est « - », musicxml2ly lira la ligne de commande.\n"
 
-#: musicxml2ly.py:2576
+#: musicxml2ly.py:2669
 msgid ""
 "Copyright (c) 2005--2010 by\n"
 "    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
@@ -1111,224 +1374,239 @@ msgstr ""
 "    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
 "    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
 
-#: musicxml2ly.py:2601
+#: musicxml2ly.py:2694
 msgid "use lxml.etree; uses less memory and cpu time"
 msgstr ""
-"Utiliser lxml.etree pour consommer moins de mémoire \n"
+"utilise lxml.etree pour consommer moins de mémoire \n"
 "et de temps processeur."
 
-#: musicxml2ly.py:2607
+#: musicxml2ly.py:2700
 msgid "input file is a zip-compressed MusicXML file"
 msgstr "le fichier d'entrée est un fichier MusicXML compressé"
 
-#: musicxml2ly.py:2613
+#: musicxml2ly.py:2706
 msgid "convert pitches in relative mode (default)"
-msgstr "convertir les hauteurs en mode relatif (par défaut)"
+msgstr "convertit les hauteurs en mode relatif (par défaut)"
 
-#: musicxml2ly.py:2618
+#: musicxml2ly.py:2711
 msgid "convert pitches in absolute mode"
-msgstr "convertir les hauteurs en mode absolu"
+msgstr "convertit les hauteurs en mode absolu"
 
-#: musicxml2ly.py:2621
+#: musicxml2ly.py:2714
 msgid "LANG"
 msgstr "LANG"
 
-#: musicxml2ly.py:2623
-msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
-msgstr ""
-"utiliser un autre fichier linguistique « lang.ly » et ses noms de notes, \n"
-"comme « deutsch » pour deutsch.ly"
+#: musicxml2ly.py:2716
+msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
+msgstr "utilise une autre définition liguistique (LANG), p.ex. deutsch l'allemand"
 
-#: musicxml2ly.py:2629
+#: musicxml2ly.py:2722
 msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
 msgstr ""
-"ne pas convertir les emplacements (^, _ ou -) des articulations, \n"
+"ne convertit pas les emplacements (^, _ ou -) des articulations, \n"
 "nuances, etc."
 
-#: musicxml2ly.py:2635
+#: musicxml2ly.py:2728
+msgid "do not convert exact vertical positions of rests"
+msgstr "ne convertit pas le positionnement absolu des silences"
+
+#: musicxml2ly.py:2734
+msgid "do not convert the exact page layout and breaks"
+msgstr "ne convertit pas les sauts et la mise en page"
+
+#: musicxml2ly.py:2740
 msgid "do not convert beaming information, use lilypond's automatic beaming instead"
 msgstr ""
-"ne pas convertir les informations de ligature ; \n"
-"laisser LilyPond gérer les ligatures automatiques"
+"ne convertit pas les informations de ligature ; \n"
+"laisse LilyPond gérer les ligatures automatiques"
 
-#: musicxml2ly.py:2643
+#: musicxml2ly.py:2748
 msgid "set output filename to FILE, stdout if -"
-msgstr "produire la sortie dans FICHIER (stdout si -)"
+msgstr "produit la sortie dans FICHIER (stdout si -)"
 
-#: musicxml2ly.py:2726
+#: musicxml2ly.py:2831
 #, python-format
 msgid "unknown part in part-list: %s"
 msgstr "la partie %s n'est pas mentionnée dans part-list"
 
-#: musicxml2ly.py:2788
+#: musicxml2ly.py:2893
 msgid "Input is compressed, extracting raw MusicXML data from stdin"
 msgstr "Le fichier d'entrée est compressé. Extraction des données MusicXML brutes"
 
-#: musicxml2ly.py:2791
+#: musicxml2ly.py:2896
 #, python-format
 msgid "Input file %s is compressed, extracting raw MusicXML data"
 msgstr ""
-"Le fichier d'entrée (%s) est compressé. \n"
+"Le fichier d'entrée (%s) est compressé.\n"
 "Extraction des données MusicXML brutes"
 
-#: musicxml2ly.py:2821
+#: musicxml2ly.py:2926
 msgid "Reading MusicXML from Standard input ..."
 msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
 
-#: musicxml2ly.py:2823
+#: musicxml2ly.py:2928
 #, python-format
 msgid "Reading MusicXML from %s ..."
 msgstr "Lecture du fichier MusicXML %s..."
 
-#: musicxml2ly.py:2856
+#: musicxml2ly.py:2961
 #, python-format
 msgid "Output to `%s'"
 msgstr "Fichier de sortie : « %s »"
 
-#: musicxml2ly.py:2922
+#: musicxml2ly.py:3028
 #, python-format
 msgid "Unable to find input file %s"
-msgstr "impossible de trouver le fichier d'entrée : « %s »"
+msgstr "Impossible de trouver le fichier d'entrée : « %s »"
+
+#: website_post.py:115
+msgid "English"
+msgstr "Anglais"
+
+#: website_post.py:118
+msgid "Other languages"
+msgstr "Autres langues"
 
-#: getopt-long.cc:140
+#: getopt-long.cc:153
 #, c-format
 msgid "option `%s' requires an argument"
 msgstr "L'option « %s » requiert un argument"
 
-#: getopt-long.cc:144
+#: getopt-long.cc:157
 #, c-format
 msgid "option `%s' does not allow an argument"
 msgstr "L'option « %s » s'emploie sans argument"
 
-#: getopt-long.cc:148
+#: getopt-long.cc:161
 #, c-format
 msgid "unrecognized option: `%s'"
 msgstr "option non reconnue : « %s »"
 
-#: getopt-long.cc:154
+#: getopt-long.cc:167
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
 msgstr "argument « %s » invalide pour l'option « %s »"
 
-#: warn.cc:68 grob.cc:566 input.cc:82
+#: warn.cc:59
+#, c-format
+msgid "success: %s"
+msgstr "Succès de %s"
+
+#: warn.cc:86 grob.cc:617 input.cc:97
 #, c-format
 msgid "programming error: %s"
 msgstr "erreur de programmation : %s"
 
-#: warn.cc:69 input.cc:83
+#: warn.cc:87 input.cc:98
 msgid "continuing, cross fingers"
 msgstr "poursuite ; croisons les doigts."
 
-#: accidental-engraver.cc:298
+#: accidental-engraver.cc:180
 #, c-format
 msgid "accidental typesetting list must begin with context-name: %s"
 msgstr ""
 "La saisie d'une liste d'altérations accidentelles doit débuter \n"
 "par un nom de contexte : %s"
 
-#: accidental-engraver.cc:328
+#: accidental-engraver.cc:210
 #, c-format
 msgid "procedure or context-name expected for accidental rule, found %s"
 msgstr ""
 "procédure ou nom de contexte requis pour la règle d'altération accidentelle,\n"
 "%s trouvé"
 
-#: accidental.cc:187
+#: accidental.cc:200
 #, c-format
 msgid "Could not find glyph-name for alteration %s"
 msgstr "Aucun nom de glyphe ne correspond à l'altération %s"
 
-#: accidental.cc:202
+#: accidental.cc:215
 msgid "natural alteration glyph not found"
 msgstr "pas de glyphe correspondant au bécarre"
 
-#: align-interface.cc:305
-msgid "tried to get a translation for something that is no child of mine"
-msgstr "tentative de déplacement d'un élément sans relation directe"
-
-#: all-font-metrics.cc:143
+#: all-font-metrics.cc:156
 #, c-format
 msgid "cannot find font: `%s'"
 msgstr "fonte « %s » introuvable"
 
-#: apply-context-iterator.cc:31
+#: apply-context-iterator.cc:42
 msgid "\\applycontext argument is not a procedure"
 msgstr "l'argument \\applycontext n'est pas une procédure"
 
-#: auto-change-iterator.cc:63 change-iterator.cc:61
+#: auto-change-iterator.cc:74 change-iterator.cc:72
 #, c-format
 msgid "cannot change, already in translator: %s"
 msgstr "modification impossible, c'est déjà dans le traducteur : %s"
 
-#: axis-group-engraver.cc:78
+#: axis-group-engraver.cc:94
 msgid "Axis_group_engraver: vertical group already has a parent"
 msgstr "Axis_group_engraver : le groupe vertical a déjà un parent"
 
-#: axis-group-engraver.cc:79
+#: axis-group-engraver.cc:95
 msgid "are there two Axis_group_engravers?"
 msgstr "Axis_group_engraver redondant"
 
-#: axis-group-engraver.cc:80
+#: axis-group-engraver.cc:96
 msgid "removing this vertical group"
 msgstr "retrait de ce groupe vertical"
 
-#: axis-group-interface.cc:532
+#: axis-group-interface.cc:611
 msgid "an outside-staff object should have a direction, defaulting to up"
 msgstr ""
 "un objet externe à la portée devrait avoir un positionnement.\n"
 "Placé par défaut au dessus."
 
-#: bar-check-iterator.cc:73
+#: bar-check-iterator.cc:84
 #, c-format
 msgid "barcheck failed at: %s"
 msgstr "échec du contrôle de mesure (barcheck) à : %s"
 
-#: beam-engraver.cc:126
+#: beam-engraver.cc:147
 msgid "already have a beam"
 msgstr "lien déjà présent"
 
-#: beam-engraver.cc:202
+#: beam-engraver.cc:230
 msgid "unterminated beam"
 msgstr "lien non terminé"
 
-#: beam-engraver.cc:244 chord-tremolo-engraver.cc:138
+#: beam-engraver.cc:266 chord-tremolo-engraver.cc:150
 msgid "stem must have Rhythmic structure"
 msgstr "la hampe doit avoir une structure Rythmic"
 
-#: beam-engraver.cc:252
+#: beam-engraver.cc:274
 msgid "stem does not fit in beam"
 msgstr "la hampe ne s'insère pas dans le lien"
 
-#: beam-engraver.cc:253
+#: beam-engraver.cc:275
 msgid "beam was started here"
 msgstr "le lien a débuté ici"
 
-#: beam-quanting.cc:307
+#: beam-quanting.cc:314
 msgid "no feasible beam position"
 msgstr "nulle part où positionner le lien"
 
-#: beam.cc:160
+#: beam.cc:171
 msgid "removing beam with no stems"
 msgstr "suppression du lien ayant moins de deux hampes"
 
-#: beam.cc:1078
+#: beam.cc:1116
 msgid "no viable initial configuration found: may not find good beam slope"
 msgstr ""
 "pas de configuration initiale viable repérée : \n"
 "la pente du lien pourrait être inesthétique."
 
-#: break-alignment-interface.cc:195
+#: break-alignment-interface.cc:206
 #, c-format
 msgid "No spacing entry from %s to `%s'"
 msgstr "Pas d'espacement entre %s et « %s »"
 
-#: change-iterator.cc:23
+#: change-iterator.cc:34
 #, c-format
 msgid "cannot change `%s' to `%s'"
 msgstr "impossible de changer « %s » en « %s »"
 
 #. FIXME: constant error message.
-#: change-iterator.cc:82
+#: change-iterator.cc:93
 msgid "cannot find context to switch to"
 msgstr "impossible de repérer le contexte vers lequel commuter"
 
@@ -1337,13 +1615,13 @@ msgstr "impossible de repérer le contexte vers lequel commuter"
 #.
 #. last->translator_id_string () = get_change
 #. ()->change_to_id_string ();
-#: change-iterator.cc:91
+#: change-iterator.cc:102
 #, c-format
 msgid "not changing to same context type: %s"
 msgstr "pas de changement vers le même type de contexte : %s"
 
 #. FIXME: uncomprehensable message
-#: change-iterator.cc:95
+#: change-iterator.cc:106
 msgid "none of these in my family"
 msgstr "aucun de ceux-ci dans ma famille"
 
@@ -1351,201 +1629,198 @@ msgstr "aucun de ceux-ci dans ma famille"
 msgid "No tremolo to end"
 msgstr "Il n'y a aucun trémolo à terminer"
 
-#: chord-tremolo-engraver.cc:110
+#: chord-tremolo-engraver.cc:109
 msgid "unterminated chord tremolo"
 msgstr "accord en tremolo non terminé"
 
-#: chord-tremolo-iterator.cc:35
-#, c-format
-msgid "expect 2 elements for chord tremolo, found %d"
-msgstr "un accord de tremolo requiert 2 éléments, %d trouvé(s)"
-
-#: clef.cc:54
+#: clef.cc:65
 #, c-format
 msgid "clef `%s' not found"
 msgstr "clé `%s' introuvable"
 
-#: cluster.cc:110
+#: cluster.cc:120
 #, c-format
 msgid "unknown cluster style `%s'"
 msgstr "style de cluster inconnu : « %s »"
 
-#: cluster.cc:147
+#: cluster.cc:157
 msgid "junking empty cluster"
 msgstr "mise au rebut d'un cluster vide"
 
-#: coherent-ligature-engraver.cc:100
+#: coherent-ligature-engraver.cc:111
 #, c-format
 msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
 msgstr "Coherent_ligature_engraver : initialise `spacing-increment=0.01': ptr=%ul"
 
 #. if we get to here, just put everything on one line
-#: constrained-breaking.cc:176 constrained-breaking.cc:193
+#: constrained-breaking.cc:189 constrained-breaking.cc:207
 msgid "cannot find line breaking that satisfies constraints"
 msgstr "impossible de trouver un saut de ligne qui satisfasse aux contraintes"
 
-#: context-def.cc:130
-#, c-format
-msgid "program has no such type: `%s'"
-msgstr "Le programme n'a pas de tel type : « %s »"
-
-#: context-property.cc:32
+#: context-property.cc:42
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "nécessite des arguments symboliques pour \\override et \\revert"
 
-#: context.cc:139
+#: context.cc:149
 #, c-format
 msgid "cannot find or create new `%s'"
 msgstr "impossible de trouver ou créer un nouveau « %s »"
 
-#: context.cc:197
+#: context.cc:207
 #, c-format
 msgid "cannot find or create `%s' called `%s'"
 msgstr "impossible de trouver ou créer « %s » appelé « %s »"
 
-#: context.cc:259
+#: context.cc:269
 #, c-format
 msgid "Invalid CreateContext event: Cannot create %s context"
 msgstr "Événement CreateContext invalide : impossible de créer le contexte %s"
 
-#: context.cc:390
+#: context.cc:400
 #, c-format
 msgid "cannot find or create: `%s'"
 msgstr "impossible de trouver ou créer « %s »"
 
-#: custos.cc:77
+#: custos.cc:88
 #, c-format
 msgid "custos `%s' not found"
 msgstr "custode « %s » introuvable"
 
-#: dispatcher.cc:71
+#: dispatcher.cc:82
 msgid "Event class should be a symbol"
 msgstr "La classe Event devrait être un symbole"
 
-#: dispatcher.cc:78
+#: dispatcher.cc:89
 #, c-format
 msgid "Unknown event class %s"
 msgstr "Classe d'événement inconnue : « %s »"
 
-#: dots.cc:37
+#: dots.cc:48
 #, c-format
 msgid "dot `%s' not found"
 msgstr "point « %s » introuvable"
 
-#: dynamic-engraver.cc:186
+#: dynamic-engraver.cc:197
 msgid "cannot find start of (de)crescendo"
 msgstr "impossible de repérer le début du (de)crescendo"
 
-#: dynamic-engraver.cc:195
+#: dynamic-engraver.cc:206
 msgid "already have a decrescendo"
 msgstr "decrescendo déjà présent"
 
-#: dynamic-engraver.cc:197
+#: dynamic-engraver.cc:208
 msgid "already have a crescendo"
 msgstr "crescendo déjà présent"
 
-#: dynamic-engraver.cc:200
+#: dynamic-engraver.cc:211
 msgid "cresc starts here"
 msgstr "le crescendo débute ici"
 
-#: dynamic-engraver.cc:328
+#: dynamic-engraver.cc:339
 msgid "unterminated (de)crescendo"
 msgstr "(de)crescendo non terminé"
 
-#: extender-engraver.cc:142 extender-engraver.cc:151
+#: episema-engraver.cc:75
+msgid "already have an episema"
+msgstr "épisème déjà présent"
+
+#: episema-engraver.cc:88
+msgid "cannot find start of episema"
+msgstr "impossible de trouver le début de l'épisème"
+
+#: episema-engraver.cc:137
+msgid "unterminated episema"
+msgstr "émisème non terminé"
+
+#: extender-engraver.cc:170 extender-engraver.cc:179
 msgid "unterminated extender"
 msgstr "prolongation non terminée"
 
-#: font-config-scheme.cc:140 font-config.cc:57
+#: font-config-scheme.cc:152 font-config.cc:55
 #, c-format
 msgid "failed adding font directory: %s"
 msgstr "échec lors de l'ajout d'un répertoire de fontes : « %s »"
 
-#: font-config-scheme.cc:142 font-config.cc:59
+#: font-config-scheme.cc:154 font-config.cc:57
 #, c-format
 msgid "adding font directory: %s"
 msgstr "ajout d'un répertoire de fontes : « %s »"
 
-#: font-config-scheme.cc:156
+#: font-config-scheme.cc:168
 #, c-format
 msgid "failed adding font file: %s"
 msgstr "échec lors de l'ajout d'un fichier de fontes : « %s »"
 
-#: font-config-scheme.cc:158
+#: font-config-scheme.cc:170
 #, c-format
 msgid "adding font file: %s"
 msgstr "ajout d'un fichier de fontes : « %s »"
 
-#: font-config.cc:28
+#: font-config.cc:40
 msgid "Initializing FontConfig..."
 msgstr "Initialisation de FontConfig..."
 
-#: font-config.cc:44
-#, c-format
-msgid "Rebuilding FontConfig cache %s, this may take a while..."
-msgstr "Reconstitution du cache FontConfig %s. Patientez..."
+#: font-config.cc:61
+msgid "Building font database..."
+msgstr "Construction de la base de donnée des fontes..."
 
-#: font-config.cc:63
-msgid "Building font database."
-msgstr "Construction de la base de donnée des fontes."
-
-#: general-scheme.cc:202
+#: general-scheme.cc:305
 msgid "infinity or NaN encountered while converting Real number"
 msgstr "Infini ou valeur non numérique rencontré lors de la conversion d'un nombre réel"
 
-#: general-scheme.cc:203
+#: general-scheme.cc:306
 msgid "setting to zero"
 msgstr "initialisation à zéro"
 
-#: general-scheme.cc:422 output-ps.scm:63
+#: general-scheme.cc:542 output-ps.scm:48
 msgid "Found infinity or nan in output. Substituting 0.0"
 msgstr ""
 "La sortie contient l'infini ou une valeur non numérique. \n"
 "Substitution par 0.0"
 
-#: glissando-engraver.cc:94
+#: glissando-engraver.cc:105
 msgid "unterminated glissando"
 msgstr "glissando non terminé"
 
-#: global-context-scheme.cc:85 global-context-scheme.cc:103
+#: global-context-scheme.cc:96 global-context-scheme.cc:114
 msgid "no music found in score"
 msgstr "Il n'y a pas de musique dans cette partition"
 
-#: global-context-scheme.cc:93
+#: global-context-scheme.cc:104
 msgid "Interpreting music... "
 msgstr "Interprétation en cours de la musique..."
 
-#: global-context-scheme.cc:116
+#: global-context-scheme.cc:127
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "temps écoulé : %.2f secondes"
 
-#: gregorian-ligature-engraver.cc:59
+#: gregorian-ligature-engraver.cc:70
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s ignoré(e)"
 
-#: gregorian-ligature-engraver.cc:64
+#: gregorian-ligature-engraver.cc:75
 #, c-format
 msgid "implied \\%s added"
 msgstr "\\%s implicite ajouté(e)"
 
 #. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:213
+#: gregorian-ligature-engraver.cc:224
 msgid "cannot apply `\\~' on first head of ligature"
 msgstr "Impossible d'appliquer « \\~ » à la première tête de ligature"
 
 #. (pitch == prev_pitch)
-#: gregorian-ligature-engraver.cc:225
+#: gregorian-ligature-engraver.cc:236
 msgid "cannot apply `\\~' on heads with identical pitch"
 msgstr "Impossible d'appliquer « \\~ » à des têtes ayant la même hauteur"
 
-#: grob-interface.cc:57
+#: grob-interface.cc:68
 #, c-format
 msgid "Unknown interface `%s'"
 msgstr "Interface inconnue « %s »"
 
-#: grob-interface.cc:68
+#: grob-interface.cc:79
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "L'objet graphique (Grob) « %s » n'a pas d'interface pour la propriété « %s »"
@@ -1560,7 +1835,7 @@ msgstr "%d : %s"
 msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)"
 msgstr "dépendance circulaire : calculation-in-progress rencontrée pour #'%s (%s)"
 
-#: grob.cc:251
+#: grob.cc:286
 msgid "Infinity or NaN encountered"
 msgstr "infini ou valeur non numérique rencontré lors de la conversion d'un nombre réel"
 
@@ -1568,150 +1843,151 @@ msgstr "infini ou valeur non numérique rencontré lors de la conversion d'un no
 msgid "decrescendo too small"
 msgstr "decrescendo trop petit"
 
-#: horizontal-bracket-engraver.cc:68
+#: horizontal-bracket-engraver.cc:78
 msgid "do not have that many brackets"
 msgstr "n'a pas autant de crochets"
 
-#: horizontal-bracket-engraver.cc:77
+#: horizontal-bracket-engraver.cc:87
 msgid "conflicting note group events"
 msgstr "événements de groupe de notes conflictuels"
 
-#: hyphen-engraver.cc:93
+#: hyphen-engraver.cc:104
 msgid "removing unterminated hyphen"
 msgstr "retrait du trait d'union sans suite"
 
-#: hyphen-engraver.cc:107
+#: hyphen-engraver.cc:118
 msgid "unterminated hyphen; removing"
 msgstr "trait d'union sans suite ; escamoté"
 
-#: includable-lexer.cc:53 lily-guile.cc:76 lily-parser-scheme.cc:110
+#: includable-lexer.cc:71 lily-guile.cc:87 lily-parser-scheme.cc:109
 #, c-format
 msgid "cannot find file: `%s'"
 msgstr "fichier non trouvé : « %s »"
 
-#: includable-lexer.cc:55 lily-parser-scheme.cc:101
+#: includable-lexer.cc:73 lily-parser-scheme.cc:100
 #, c-format
 msgid "(search path: `%s')"
 msgstr "(chemin de recherche : « %s »)"
 
-#: input.cc:112 source-file.cc:173 source-file.cc:188
+#: input.cc:131 source-file.cc:179 source-file.cc:194
 msgid "position unknown"
 msgstr "position inconnue"
 
-#: key-signature-interface.cc:74
+#: key-signature-interface.cc:78
 #, c-format
 msgid "No glyph found for alteration: %s"
 msgstr "Pas de glyphe pour l'altération : %s"
 
-#: key-signature-interface.cc:84
+#: key-signature-interface.cc:88
 msgid "alteration not found"
 msgstr "altération non trouvée"
 
-#: ligature-bracket-engraver.cc:62 ligature-engraver.cc:93
+#: ligature-bracket-engraver.cc:73 ligature-engraver.cc:104
 msgid "cannot find start of ligature"
 msgstr "impossible de trouver le début d'une ligature"
 
-#: ligature-bracket-engraver.cc:75 ligature-engraver.cc:120
+#: ligature-bracket-engraver.cc:86 ligature-engraver.cc:131
 msgid "already have a ligature"
 msgstr "a déjà une ligature"
 
-#: ligature-engraver.cc:98
+#: ligature-engraver.cc:109
 msgid "no right bound"
 msgstr "pas de borne à droite"
 
-#: ligature-engraver.cc:129
+#: ligature-engraver.cc:140
 msgid "no left bound"
 msgstr "pas de borne à gauche"
 
-#: ligature-engraver.cc:173
+#: ligature-engraver.cc:185
 msgid "unterminated ligature"
 msgstr "ligature non terminée"
 
-#: ligature-engraver.cc:202
+#: ligature-engraver.cc:214
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "le silence est ignoré : une ligature ne peut contenir de silence"
 
-#: ligature-engraver.cc:203
+#: ligature-engraver.cc:215
 msgid "ligature was started here"
 msgstr "la ligature a débuté ici"
 
-#: lily-guile.cc:78
+#: lily-guile.cc:89
 #, c-format
 msgid "(load path: `%s')"
 msgstr "(chemin de chargement : « %s »)"
 
-#: lily-guile.cc:428
+#: lily-guile.cc:439
 #, c-format
 msgid "cannot find property type-check for `%s' (%s)."
 msgstr "vérification du type de propriété pour « %s » (%s) non trouvée"
 
-#: lily-guile.cc:431
+#: lily-guile.cc:442
 msgid "perhaps a typing error?"
 msgstr "Probable faute de frappe"
 
-#: lily-guile.cc:438
+#: lily-guile.cc:449
 msgid "doing assignment anyway"
 msgstr "affectation faite malgré tout"
 
-#: lily-guile.cc:450
+#: lily-guile.cc:461
 #, c-format
 msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr ""
 "la vérification du type de « %s » a échoué ; \n"
 "   la valeur « %s » doit être du type « %s »"
 
-#: lily-lexer.cc:252
+#: lily-lexer.cc:264
 msgid "include files are not allowed in safe mode"
 msgstr "l'inclusion de fichiers n'est pas permise en mode sans échec"
 
-#: lily-lexer.cc:271
+#: lily-lexer.cc:291
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "Le nom de l'identificateur est un mot clé : « %s »"
 
-#: lily-lexer.cc:286
+#: lily-lexer.cc:312
 #, c-format
 msgid "error at EOF: %s"
 msgstr "erreur à la fin du fichier (EOF) : %s"
 
-#: lily-parser-scheme.cc:30
-#, c-format
-msgid "deprecated function called: %s"
-msgstr "appel à une fonction obsolète : %s"
-
-#: lily-parser-scheme.cc:83
+#: lily-parser-scheme.cc:82
 #, c-format
 msgid "Changing working directory to: `%s'"
 msgstr "Modification du répertoire de travail pour : « %s »"
 
-#: lily-parser-scheme.cc:100
+#: lily-parser-scheme.cc:99
 #, c-format
 msgid "cannot find init file: `%s'"
-msgstr "impossible de trouver le fichier d'initialisation « %s »"
+msgstr "impossible de trouver le fichier d'initialisation « %s »"
 
-#: lily-parser-scheme.cc:119
+#: lily-parser-scheme.cc:118
 #, c-format
 msgid "Processing `%s'"
 msgstr "Traitement de « %s »"
 
-#: lily-parser.cc:95
+#: lily-parser-scheme.cc:204
+msgid "ly:parser-parse-string is only valid with a new parser.  Use ly:parser-include-string instead."
+msgstr ""
+"ly:parser-parse-string ne peut foncionner qu'avec un nouvel analyseur.\n"
+"Utilisez plutôt ly:parser-include-string"
+
+#: lily-parser.cc:106
 msgid "Parsing..."
 msgstr "Analyse..."
 
-#: lily-parser.cc:123
+#: lily-parser.cc:134
 msgid "braces do not match"
 msgstr "accolades non pairées"
 
-#: lyric-combine-music-iterator.cc:329
+#: lyric-combine-music-iterator.cc:337
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "impossible de repérer la voix (Voice) « %s »"
 
-#: lyric-engraver.cc:162
+#: lyric-engraver.cc:175
 msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
 msgstr "Syllabe sans note de rattachement. Utiliser \\lyricsto ou associatedVoice."
 
-#: main.cc:97
+#: main.cc:109
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -1724,7 +2000,7 @@ msgstr ""
 "sous certaines conditions.\n"
 "Invoquez « %s --warranty » pour plus d'informations.\n"
 
-#: main.cc:103
+#: main.cc:115
 msgid ""
 "    This program is free software; you can redistribute it and/or\n"
 "modify it under the terms of the GNU General Public License version 2\n"
@@ -1754,11 +2030,11 @@ msgstr ""
 " écrire à la Free Software Foundation, Inc., 59 Temple Place - Suite 330, \n"
 "Boston, MA 02111-1307, USA.\n"
 
-#: main.cc:134
+#: main.cc:146
 msgid "SYM[=VAL]"
 msgstr "SYM[=VAL]"
 
-#: main.cc:135
+#: main.cc:147
 msgid ""
 "set Scheme option SYM to VAL (default: #t).\n"
 "Use -dhelp for help."
@@ -1767,43 +2043,43 @@ msgstr ""
 "à l'option Scheme SYM.\n"
 "Utiliser -dhelp pour avoir de l'aide."
 
-#: main.cc:138
+#: main.cc:150
 msgid "EXPR"
 msgstr "EXPR"
 
-#: main.cc:138
+#: main.cc:150
 msgid "evaluate scheme code"
 msgstr "évaluation du code Scheme"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:141
+#: main.cc:153
 msgid "FORMATs"
 msgstr "FORMATs"
 
-#: main.cc:141
+#: main.cc:153
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr ""
 "produire FORMAT,...\n"
 "Aussi comme options séparées :"
 
-#: main.cc:142
+#: main.cc:154
 msgid "generate PDF (default)"
 msgstr "générer le PDF (par défaut)"
 
-#: main.cc:143
+#: main.cc:155
 msgid "generate PNG"
 msgstr "générer le PNG"
 
-#: main.cc:144
+#: main.cc:156
 msgid "generate PostScript"
 msgstr "générer le PostScript"
 
-#: main.cc:146
+#: main.cc:158
 msgid "FIELD"
 msgstr "CHAMP"
 
-#: main.cc:146
+#: main.cc:158
 msgid ""
 "dump header field FIELD to file\n"
 "named BASENAME.FIELD"
@@ -1811,21 +2087,21 @@ msgstr ""
 "écrire le champ d'en-tête CHAMP dans le\n"
 "fichier nommé BASENAME.CHAMP"
 
-#: main.cc:148
+#: main.cc:160
 msgid "add DIR to search path"
 msgstr "ajouter RÉPERTOIRE au chemin de recherche"
 
-#: main.cc:149
+#: main.cc:161
 msgid "use FILE as init file"
 msgstr ""
 "utiliser FICHIER comme\n"
 "fichier d'initialisation"
 
-#: main.cc:151
+#: main.cc:163
 msgid "USER, GROUP, JAIL, DIR"
 msgstr "USER,GROUP,CAGE,RÉP"
 
-#: main.cc:151
+#: main.cc:163
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
@@ -1833,19 +2109,20 @@ msgstr ""
 "chroot dans CAGE, devenir UTILISATEUR:GROUPE\n"
 "et cd dans RÉPERTOIRE"
 
-#: main.cc:154
+#: main.cc:166
 msgid "write output to FILE (suffix will be added)"
 msgstr ""
 "produire la sortie dans FICHIER \n"
 "(adjonction automatique du suffixe)"
 
-#: main.cc:155
+#: main.cc:167
 msgid "relocate using directory of lilypond program"
 msgstr ""
 "redétermine le chemin d'exécution\n"
 "des composants de LilyPond"
 
-#: main.cc:221
+#. Do not update the copyright years here, run `make grand-replace'
+#: main.cc:238
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1855,119 +2132,116 @@ msgstr ""
 "%s et autres."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:249
+#: main.cc:265
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
 
-#: main.cc:251
-#, c-format
+#: main.cc:267
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Composer la musique ou jouer en format MIDI à partir du FICHIER"
 
-#: main.cc:253
-#, c-format
+#: main.cc:269
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond produit une jolie notation musicale"
 
-#: main.cc:255
+#: main.cc:271
 #, c-format
 msgid "For more information, see %s"
 msgstr "Pour plus d'informations, voir %s"
 
-#: main.cc:257
-#, c-format
+#: main.cc:273
 msgid "Options:"
 msgstr "Options :"
 
-#: main.cc:311
+#: main.cc:327
 #, c-format
 msgid "expected %d arguments with jail, found: %u"
 msgstr "une cage requiert %d arguments, il y en a %u"
 
-#: main.cc:325
+#: main.cc:341
 #, c-format
 msgid "no such user: %s"
 msgstr "utilisateur inconnu : « %s »"
 
-#: main.cc:327
+#: main.cc:343
 #, c-format
 msgid "cannot get user id from user name: %s: %s"
 msgstr ""
 "impossible de repérer l'identifiant utilisateur à partir du nom d'utilisateur :\n"
 "%s : %s"
 
-#: main.cc:342
+#: main.cc:358
 #, c-format
 msgid "no such group: %s"
 msgstr "groupe inconnu : %s"
 
-#: main.cc:344
+#: main.cc:360
 #, c-format
 msgid "cannot get group id from group name: %s: %s"
 msgstr ""
 "impossible de repérer l'identifiant groupe à partir du nom de groupe :\n"
 "%s : %s "
 
-#: main.cc:352
+#: main.cc:368
 #, c-format
 msgid "cannot chroot to: %s: %s"
 msgstr "impossible de chrooter vers : %s : %s"
 
-#: main.cc:359
+#: main.cc:375
 #, c-format
 msgid "cannot change group id to: %d: %s"
 msgstr "impossible de changer l'identifiant de groupe en : %d : %s"
 
-#: main.cc:365
+#: main.cc:381
 #, c-format
 msgid "cannot change user id to: %d: %s"
 msgstr "impossible de changer l'identifiant utilisateur en : %d : %s"
 
-#: main.cc:371
+#: main.cc:387
 #, c-format
 msgid "cannot change working directory to: %s: %s"
 msgstr "impossible de changer le répertoire de travail en : %s : %s"
 
-#: main.cc:611
+#: main.cc:628
 #, c-format
 msgid "exception caught: %s"
 msgstr "exception capturée : %s"
 
 #. FIXME: constant error message.
-#: mark-engraver.cc:129
+#: mark-engraver.cc:157
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark doit être un entier"
 
-#: mark-engraver.cc:135
+#: mark-engraver.cc:163
 msgid "mark label must be a markup object"
 msgstr "les étiquettes de marque doivent être des objets de type \"markup\""
 
-#: mensural-ligature-engraver.cc:85
+#: mensural-ligature-engraver.cc:96
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "ligature avec moins de 2 tête -> escamotage"
 
-#: mensural-ligature-engraver.cc:112
+#: mensural-ligature-engraver.cc:123
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "impossible de déterminer la hauteur de la primitive de ligature -> escamotage"
 
-#: mensural-ligature-engraver.cc:126
+#: mensural-ligature-engraver.cc:137
 msgid "single note ligature - skipping"
 msgstr "ligature sur note unique -> escamotage"
 
-#: mensural-ligature-engraver.cc:138
+#: mensural-ligature-engraver.cc:149
 msgid "prime interval within ligature -> skipping"
 msgstr "intervale de prime dans la ligature -> escamotage"
 
-#: mensural-ligature-engraver.cc:150
+#: mensural-ligature-engraver.cc:161
 msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
 msgstr "ligature mensurale : aucune durée parmi Mx, L, B, S -> escamotage"
 
-#: mensural-ligature-engraver.cc:198
+#: mensural-ligature-engraver.cc:209
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "une ronde doit être suivie d'une autre -> escamotage"
 
-#: mensural-ligature-engraver.cc:209
+#: mensural-ligature-engraver.cc:220
 msgid ""
 "semibreves can only appear at the beginning of a ligature,\n"
 "and there may be only zero or two of them"
@@ -1975,7 +2249,7 @@ msgstr ""
 "les rondes ne peuvent apparaître qu'en début de ligature,\n"
 "et il ne peut y en avoir que zéro ou deux"
 
-#: mensural-ligature-engraver.cc:236
+#: mensural-ligature-engraver.cc:247
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
@@ -1987,56 +2261,60 @@ msgstr ""
 "l'avant dernière note doit en être une autre,\n"
 "sinon la ligature doit être LB ou SSB"
 
-#: mensural-ligature-engraver.cc:356
+#: mensural-ligature-engraver.cc:367
 msgid "unexpected case fall-through"
 msgstr "cas inattendu et non interprétable"
 
-#: mensural-ligature.cc:141
+#: mensural-ligature.cc:152
 msgid "Mensural_ligature: unexpected case fall-through"
 msgstr "Mensural_ligature: cas inattendu et non interprétable"
 
-#: mensural-ligature.cc:192
+#: mensural-ligature.cc:203
 msgid "Mensural_ligature: (join_right == 0)"
 msgstr "Mensural_ligature: (joint_right == 0)"
 
-#: midi-item.cc:81
+#: midi-item.cc:92
 #, c-format
 msgid "no such MIDI instrument: `%s'"
 msgstr "instrument MIDI non répertorié : « %s »"
 
-#: midi-stream.cc:28
+#: midi-stream.cc:39
 #, c-format
 msgid "cannot open for write: %s: %s"
 msgstr "impossible d'ouvrir le fichier en écriture : %s : %s"
 
-#: midi-stream.cc:44
+#: midi-stream.cc:55
 #, c-format
 msgid "cannot write to file: `%s'"
 msgstr "impossible d'écrire dans le fichier : « %s »"
 
-#: minimal-page-breaking.cc:38 paper-score.cc:105
+#: minimal-page-breaking.cc:40 paper-score.cc:122
 msgid "Calculating line breaks..."
 msgstr "Calcul des sauts de ligne..."
 
-#: minimal-page-breaking.cc:42 layout-page-layout.scm:463
+#: minimal-page-breaking.cc:44
 msgid "Calculating page breaks..."
 msgstr "Calcul des sauts de page..."
 
-#: music-iterator.cc:171
+#: music-iterator.cc:182
 msgid "Sending non-event to context"
 msgstr "Envoi d'un non-événement au contexte"
 
-#: music.cc:140
+#: music.cc:151
 #, c-format
 msgid "octave check failed; expected \"%s\", found: \"%s\""
 msgstr "Échec de vérification d'octave. Aurait dû être \"%s\", \"%s\" obtenu"
 
-#: music.cc:203
+#: music.cc:219
+msgid "(normalized pitch)"
+msgstr "(hauteur normalisée)"
+
+#: music.cc:223
 #, c-format
-msgid "transposition by %s makes alteration larger than double"
-msgstr "La transposition de %s crée des altérations supérieures aux doubles"
+msgid "Transposing %s by %s makes alteration larger than double"
+msgstr "La transposition de %s à %s crée des altérations supérieures aux doubles"
 
-#: new-dynamic-engraver.cc:129
+#: new-dynamic-engraver.cc:142
 #, c-format
 msgid ""
 "unknown crescendo style: %s\n"
@@ -2045,136 +2323,192 @@ msgstr ""
 "style de crescendo inconnu : %s\n"
 "retour à la valeur par défaut (soufflet)."
 
-#: new-fingering-engraver.cc:96
+#: new-dynamic-engraver.cc:200
+#, c-format
+msgid "unterminated %s"
+msgstr "%s non terminé(e)"
+
+#: new-fingering-engraver.cc:106
 msgid "cannot add text scripts to individual note heads"
 msgstr "impossible d'ajouter du texte à des têtes de notes individuelles"
 
-#: new-fingering-engraver.cc:239
+#: new-fingering-engraver.cc:250
 msgid "no placement found for fingerings"
 msgstr "nulle part où positionner des doigtés"
 
-#: new-fingering-engraver.cc:240
+#: new-fingering-engraver.cc:251
 msgid "placing below"
 msgstr "on les place en dessous"
 
-#: note-collision.cc:484
+#: note-collision.cc:497
 msgid "ignoring too many clashing note columns"
 msgstr "trop d'empilements de notes se chevauchent. On fera au mieux."
 
-#: note-column.cc:124
+#: note-column.cc:135
 msgid "cannot have note heads and rests together on a stem"
 msgstr "impossible de superposer une note et un silence sur une même hampe"
 
-#: note-head.cc:63
+#: note-head.cc:76
 #, c-format
 msgid "none of note heads `%s' or `%s' found"
 msgstr "tête de note « %s » ou « %s » non trouvé(e)"
 
-#: note-heads-engraver.cc:64
+#: note-heads-engraver.cc:76
 msgid "NoteEvent without pitch"
 msgstr "NoteEvent sans hauteur"
 
-#: open-type-font.cc:33
+#: open-type-font.cc:44
 #, c-format
 msgid "cannot allocate %lu bytes"
 msgstr "impossible d'allouer %lu octets"
 
-#: open-type-font.cc:37
+#: open-type-font.cc:48
 #, c-format
 msgid "cannot load font table: %s"
 msgstr "impossible de charger la table des fontes : %s"
 
-#: open-type-font.cc:42
+#: open-type-font.cc:53
 #, c-format
 msgid "Free type error: %s"
 msgstr "Erreur Free type : %s"
 
-#: open-type-font.cc:100
+#: open-type-font.cc:111
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "format de police non supporté : %s"
 
-#: open-type-font.cc:102
+#: open-type-font.cc:113
 #, c-format
 msgid "error reading font file %s: %s"
 msgstr "erreur de lecture du fichier de fontes %s : %s"
 
-#: open-type-font.cc:177
+#: open-type-font.cc:188
 #, c-format
 msgid "FT_Get_Glyph_Name () Freetype error: %s"
 msgstr "erreur Freetype FT_Get_Glyph_Name () : %s"
 
-#: open-type-font.cc:302 pango-font.cc:167
+#: open-type-font.cc:250
+msgid "Invalid index for character"
+msgstr "Index de caractère invalide"
+
+#: open-type-font.cc:319 pango-font.cc:187
 #, c-format
 msgid "FT_Get_Glyph_Name () error: %s"
 msgstr "FT_Get_Glyph_Name () erreur : %s"
 
 #. find out the ideal number of pages
-#: optimal-page-breaking.cc:56
+#: optimal-page-breaking.cc:60
 msgid "Finding the ideal number of pages..."
 msgstr "Détermination du nombre optimal de pages..."
 
-#: optimal-page-breaking.cc:78
+#: optimal-page-breaking.cc:87
 msgid "Fitting music on 1 page..."
 msgstr "Répartition de la musique sur une page..."
 
-#: optimal-page-breaking.cc:80
+#: optimal-page-breaking.cc:89
 #, c-format
 msgid "Fitting music on %d pages..."
 msgstr "Répartition de la musique sur %d pages..."
 
-#: optimal-page-breaking.cc:82
+#: optimal-page-breaking.cc:91
 #, c-format
 msgid "Fitting music on %d or %d pages..."
 msgstr "Répartition de la musique sur %d ou %d pages..."
 
-#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
-#: paper-score.cc:146
+#: optimal-page-breaking.cc:101 optimal-page-breaking.cc:155
+#, c-format
+msgid "trying %d systems"
+msgstr "tentative pour %d systèmes"
+
+#: optimal-page-breaking.cc:120 optimal-page-breaking.cc:183
+#, c-format
+msgid "best score for this sys-count: %f"
+msgstr "meilleur résultat pour cette configuration « sys-count » : %f"
+
+#: optimal-page-breaking.cc:190 page-turn-page-breaking.cc:248
+#: paper-score.cc:163
 msgid "Drawing systems..."
 msgstr "Dessin des systèmes..."
 
-#: page-turn-page-breaking.cc:146
+#: output-def.cc:235
+msgid "margins do not fit with line-width, setting default values"
+msgstr ""
+"les marges ne sont pas en cohérence avec la longueur de ligne ;\n"
+"retour aux valeurs par défaut"
+
+#: output-def.cc:242
+msgid "systems run off the page due to improper paper settings, setting default values"
+msgstr ""
+"les systèmes débordent de la page en raison de réglages de papier erronés ;\n"
+"retour aux valeurs par défaut"
+
+#: page-breaking.cc:194
+msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
+msgstr ""
+"systems-per-page non défini :\n"
+"  min-systems-per-page et max-systems-per-page ignorés"
+
+#: page-breaking.cc:199
+msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
+msgstr ""
+"min-systems-per-page supérieur à max-systems-per-page :\n"
+"  tous deux seront ignorés"
+
+#: page-layout-problem.cc:315
+#, c-format
+msgid "couldn't fit music on page: overflow is %f"
+msgstr "impossible de faire tenir la musique sur la page.  Débordement de %f"
+
+#: page-layout-problem.cc:317
+msgid "compressing music to fit"
+msgstr "compression de la musique pour que cela tienne"
+
+#: page-layout-problem.cc:733
+msgid "staff-affinities should only decrease"
+msgstr "staff-affinities devraient aller en ordre décroissant"
+
+#: page-turn-page-breaking.cc:168
 #, c-format
 msgid "page-turn-page-breaking: breaking from %d to %d"
 msgstr "Saut de page et tourne (page-turn-page-breaking) : coupure de %d à %d"
 
-#: page-turn-page-breaking.cc:195
+#: page-turn-page-breaking.cc:217
 msgid "cannot fit the first page turn onto a single page.  Consider setting first-page-number to an even number."
 msgstr ""
-"impossible de cadrer la première tourne de page sur une seule page. \n"
+"Impossible de cadrer sur une seule page ce qui précède la première tourne.\n"
 "Envisagez de définir un numéro pair pour first-page-number."
 
-#: page-turn-page-breaking.cc:208
+#: page-turn-page-breaking.cc:230
 #, c-format
 msgid "Calculating page and line breaks (%d possible page breaks)..."
 msgstr "Calcul des sauts de page et de ligne (%d sauts de pages possibles)..."
 
-#: page-turn-page-breaking.cc:275
+#: page-turn-page-breaking.cc:297
 #, c-format
 msgid "break starting at page %d"
 msgstr "saut intervenant à la page %d"
 
-#: page-turn-page-breaking.cc:276
+#: page-turn-page-breaking.cc:298
 #, c-format
 msgid "\tdemerits: %f"
 msgstr "        démérites : %f"
 
-#: page-turn-page-breaking.cc:277
+#: page-turn-page-breaking.cc:299
 #, c-format
 msgid "\tsystem count: %d"
 msgstr "        nombre de systèmes : %d"
 
-#: page-turn-page-breaking.cc:278
+#: page-turn-page-breaking.cc:300
 #, c-format
 msgid "\tpage count: %d"
 msgstr "        nombre de pages : %d"
 
-#: page-turn-page-breaking.cc:279
+#: page-turn-page-breaking.cc:301
 #, c-format
 msgid "\tprevious break: %d"
 msgstr "        coupure précédente : %d"
 
-#: pango-font.cc:184
+#: pango-font.cc:204
 #, c-format
 msgid ""
 "Glyph has no name, but font supports glyph naming.\n"
@@ -2183,140 +2517,154 @@ msgstr ""
 "Le glyphe n'a pas de nom, mais la fonte prend en charge le nommage de glyphes.\n"
 "Glyphe U+%0X ignoré dans le fichier %s"
 
-#: pango-font.cc:229
+#: pango-font.cc:241
 #, c-format
 msgid "no PostScript font name for font `%s'"
 msgstr "« %s » n'est pas un fichier PostScript"
 
-#: pango-font.cc:277
+#: pango-font.cc:290
 msgid "FreeType face has no PostScript font name"
 msgstr "Caractère FreeType sans nom de police PostScript"
 
-#: paper-column-engraver.cc:221
+#: paper-book.cc:214
+#, c-format
+msgid "program option -dprint-pages not supported by backend `%s'"
+msgstr "l'option -dprint-pages n'est pas opérationnelle avec le moteur %s"
+
+#: paper-book.cc:233
+#, c-format
+msgid "program option -dpreview not supported by backend `%s'"
+msgstr "l'option -dpreview n'est pas opérationnelle avec le moteur %s"
+
+#: paper-column-engraver.cc:233
 msgid "forced break was overridden by some other event, should you be using bar checks?"
 msgstr ""
-"Une coupure explicite a été outrepassée par un autre événement. \n"
+"Un saut explicite a été outrepassé par un autre événement. \n"
 "Positionnez quelques contrôles de mesure (bar check) pour vérifier."
 
-#: paper-outputter-scheme.cc:30
+#: paper-outputter-scheme.cc:41
 #, c-format
 msgid "Layout output to `%s'..."
 msgstr "Sortie mise en page vers « %s »..."
 
-#: paper-score.cc:118
+#: paper-score.cc:135
 #, c-format
 msgid "Element count %d (spanners %d) "
 msgstr "%d éléments dénombrés (%d extensions)"
 
-#: paper-score.cc:122
+#: paper-score.cc:139
 msgid "Preprocessing graphical objects..."
 msgstr "Pré-traitement des éléments graphiques..."
 
-#: parse-scm.cc:93
+#: parse-scm.cc:101
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE a signalé une erreur pour l'expression débutant ici"
 
-#: percent-repeat-engraver.cc:202
+#: partial-iterator.cc:45
+msgid "trying to use \\partial after the start of a piece"
+msgstr "\\partial ne devrait intervenir qu'en début de morceau"
+
+#: percent-repeat-engraver.cc:213
 msgid "unterminated percent repeat"
 msgstr "répétition en pourcent non terminée"
 
-#: performance.cc:43
+#: performance.cc:54
 msgid "Track..."
 msgstr "Piste..."
 
-#: performance.cc:72
+#: performance.cc:83
 msgid "MIDI channel wrapped around"
 msgstr "Bouclage du canal MIDI"
 
-#: performance.cc:73
+#: performance.cc:84
 msgid "remapping modulo 16"
 msgstr "réaffectation modulo 16"
 
-#: performance.cc:100
+#: performance.cc:111
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "Sortie MIDI vers « %s »..."
 
-#: phrasing-slur-engraver.cc:146
+#: phrasing-slur-engraver.cc:157
 msgid "unterminated phrasing slur"
 msgstr "liaison de phrasé non terminée"
 
-#: piano-pedal-engraver.cc:287
+#: piano-pedal-engraver.cc:298
 #, c-format
 msgid "expect 3 strings for piano pedals, found: %ld"
 msgstr "Les pédales de piano nécessitent 3 cordes. Il y en a %ld"
 
-#: piano-pedal-engraver.cc:302 piano-pedal-engraver.cc:313
-#: piano-pedal-performer.cc:93
+#: piano-pedal-engraver.cc:313 piano-pedal-engraver.cc:324
+#: piano-pedal-performer.cc:104
 #, c-format
 msgid "cannot find start of piano pedal: `%s'"
 msgstr "début de la pédale de piano indéterminé : « %s »"
 
-#: piano-pedal-engraver.cc:348
+#: piano-pedal-engraver.cc:359
 #, c-format
 msgid "cannot find start of piano pedal bracket: `%s'"
 msgstr "début du crochet de la pédale de piano indéterminé : « %s »"
 
-#: program-option-scheme.cc:215
+#: program-option-scheme.cc:237
 #, c-format
 msgid "no such internal option: %s"
 msgstr "option interne inconnue : %s"
 
-#: property-iterator.cc:74
+#: property-iterator.cc:85
 #, c-format
 msgid "not a grob name, `%s'"
 msgstr " « %s » n'est pas un nom d'objet graphique (grob)"
 
-#: relative-octave-check.cc:38
+#: relative-octave-check.cc:49
 msgid "Failed octave check, got: "
 msgstr "échec de la vérification d'octave, a obtenu : "
 
-#: relocate.cc:44
+#: relocate.cc:54
 #, c-format
 msgid "Setting %s to %s"
 msgstr "%s fixé à %s"
 
-#: relocate.cc:64
+#: relocate.cc:74
 #, c-format
 msgid "no such file: %s for %s"
 msgstr "fichier inexistant : %s pour %s"
 
-#: relocate.cc:74 relocate.cc:92
+#: relocate.cc:84 relocate.cc:102
 #, c-format
 msgid "no such directory: %s for %s"
 msgstr "répertoire inexistant : %s pour %s"
 
-#: relocate.cc:84
+#: relocate.cc:94
 #, c-format
 msgid "%s=%s (prepend)\n"
 msgstr "%s=%s (préfixage)\n"
 
-#: relocate.cc:114
+#: relocate.cc:124
 #, c-format
 msgid "not relocating, no %s/ or current/ found under %s"
 msgstr "relocalisation non effectuée, ni %s/ ni courrant/ n'existent sous %s"
 
-#: relocate.cc:125
+#: relocate.cc:135
 #, c-format
 msgid "Relocation: compile datadir=%s, new datadir=%s"
 msgstr "Relocalisation : datadir de compilation=%s, nouveau datadir=%s"
 
-#: relocate.cc:138
+#: relocate.cc:148
 #, c-format
 msgid "Relocation: framework_prefix=%s"
 msgstr "Relocalisation : framework_prefix=%s"
 
-#: relocate.cc:179
+#: relocate.cc:189
 #, c-format
 msgid "Relocation: is absolute: argv0=%s"
-msgstr "Relocalisation : est absolue : argv0=%s"
+msgstr "Relocalisation : argv0=%s est absolu"
 
-#: relocate.cc:186
+#: relocate.cc:196
 #, c-format
 msgid "Relocation: from cwd: argv0=%s"
-msgstr "Relocalisation : à partir du répertoire courant : argv0=%s"
+msgstr "Relocalisation : argv0=%s à partir du répertoire courant"
 
-#: relocate.cc:195
+#: relocate.cc:205
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
@@ -2325,157 +2673,166 @@ msgstr ""
 "Relocalisation : à partir de PATH=%s\n"
 "argv0=%s"
 
-#: relocate.cc:229
+#: relocate.cc:239
 msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
 msgstr "LILYPONDPREFIX est obsolète, utiliser LILYPOND_DATADIR"
 
-#: relocate.cc:356
+#: relocate.cc:366
 #, c-format
 msgid "Relocation file: %s"
 msgstr "Fichier de relocalisation : %s"
 
-#: relocate.cc:392
+#: relocate.cc:372 source-file.cc:65
+#, c-format
+msgid "cannot open file: `%s'"
+msgstr "Impossible d'ouvrir le fichier « %s »"
+
+#: relocate.cc:402
 #, c-format
 msgid "Unknown relocation command %s"
 msgstr "Commande de relocalisation inconnue : %s"
 
-#: rest-collision.cc:145
+#: rest-collision-engraver.cc:70
+msgid "rhythmic head is not part of a rhythmic column"
+msgstr "tête rythmique non rattachée à un empilement rythmique"
+
+#: rest-collision.cc:146
 msgid "cannot resolve rest collision: rest direction not set"
-msgstr "collision de silences insoluble : direction du silence non fixée"
+msgstr "collision de silences insoluble : positionnement du silence indéterminée"
 
-#: rest-collision.cc:159 rest-collision.cc:204
+#: rest-collision.cc:160 rest-collision.cc:205
 msgid "too many colliding rests"
 msgstr "trop de silences se chevauchent"
 
-#: rest.cc:148
+#: rest.cc:159
 #, c-format
 msgid "rest `%s' not found"
 msgstr "silence « %s » inconnu"
 
-#: score-engraver.cc:67
+#: score-engraver.cc:78
 #, c-format
 msgid "cannot find `%s'"
 msgstr "impossible de trouver « %s »"
 
-#: score-engraver.cc:69
+#: score-engraver.cc:80
 msgid "Music font has not been installed properly."
-msgstr "Les fontes Musicales n'ont pas été installées correctement."
+msgstr "Les fontes musicales n'ont pas été installées correctement."
 
-#: score-engraver.cc:71
+#: score-engraver.cc:82
 #, c-format
 msgid "Search path `%s'"
 msgstr "Chemin de recherche : « %s »"
 
-#: score-engraver.cc:73
+#: score-engraver.cc:84
 msgid "Aborting"
 msgstr "Abandon"
 
-#: score.cc:167
+#: score.cc:178
 msgid "already have music in score"
 msgstr "il y a déjà de la musique dans la partition"
 
-#: score.cc:168
+#: score.cc:179
 msgid "this is the previous music"
 msgstr "voici la musique précédente"
 
-#: score.cc:173
+#: score.cc:184
 msgid "errors found, ignoring music expression"
 msgstr "suite à des erreurs répétées, l'expression musicale sera ignorée"
 
 #. FIXME:
-#: script-engraver.cc:102
-msgid "do not know how to interpret articulation: "
-msgstr "ne sait comment interpréter l'articulation : "
+#: script-engraver.cc:113
+msgid "do not know how to interpret articulation:"
+msgstr "ne sait comment interpréter l'articulation"
 
-#: script-engraver.cc:103
-msgid "scheme encoding: "
+#: script-engraver.cc:114
+msgid " scheme encoding: "
 msgstr "encodage Scheme : "
 
-#: slur-engraver.cc:82
+#: slur-engraver.cc:93
 #, c-format
 msgid "direction of %s invalid: %d"
 msgstr "la direction de %s n'est pas valide : %d"
 
-#: slur-engraver.cc:151
+#: slur-engraver.cc:162
 msgid "unterminated slur"
 msgstr "liaison non terminée"
 
-#: slur-engraver.cc:163
+#: slur-engraver.cc:174
 msgid "cannot end slur"
 msgstr "impossible de terminer la liaison"
 
-#: slur.cc:359
+#: slur.cc:369
 #, c-format
 msgid "Ignoring grob for slur: %s. avoid-slur not set?"
 msgstr ""
 "objet graphique (grob) non concerné par la liaison : %s.\n"
 "avoid-slur non définie ?"
 
-#: source-file.cc:79
+#: source-file.cc:85
 #, c-format
 msgid "expected to read %d characters, got %d"
 msgstr "au lieu de %d caractères à lire, il y en a %d"
 
-#: spaceable-grob.cc:83
+#: spaceable-grob.cc:94
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "Pas de tension entre la colonne %d et la suivante"
 
-#: staff-symbol-engraver.cc:62
-msgid "staff-span event has no direction"
-msgstr "L'événement staff-span n'a pas de direction"
-
-#: stem-engraver.cc:92
+#: stem-engraver.cc:103
 msgid "tremolo duration is too long"
 msgstr "durée du tremolo trop longue"
 
 #. FIXME:
-#: stem-engraver.cc:129
+#: stem-engraver.cc:140
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "Ajout d'une tête de note à une hampe incompatible (type = %d)"
 
-#: stem-engraver.cc:131
+#: stem-engraver.cc:142
 msgid "maybe input should specify polyphonic voices"
 msgstr "la source devrait spécifier des voix polyphoniques"
 
-#: stem.cc:105
+#: stem.cc:116
 msgid "weird stem size, check for narrow beams"
 msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
 
-#: stem.cc:623
+#: stem.cc:642
 #, c-format
 msgid "flag `%s' not found"
 msgstr "crochet inconnu : « %s »"
 
-#: stem.cc:639
+#: stem.cc:658
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "type de crochet inconnu : « %s »"
 
-#: system.cc:178
+#: system.cc:197
 #, c-format
-msgid "Element count %d."
+msgid "Element count %d"
 msgstr "%d éléments dénombrés."
 
-#: system.cc:270
+#: system.cc:289
 #, c-format
 msgid "Grob count %d"
 msgstr "%d objet graphiques (grob) dénombrés"
 
-#: text-spanner-engraver.cc:62
+#: text-spanner-engraver.cc:73
 msgid "cannot find start of text spanner"
 msgstr "impossible de repérer le point de départ de l'extension de texte"
 
-#: text-spanner-engraver.cc:75
+#: text-spanner-engraver.cc:86
 msgid "already have a text spanner"
 msgstr "a déjà une extension de texte"
 
-#: text-spanner-engraver.cc:121
+#: text-spanner-engraver.cc:132
 msgid "unterminated text spanner"
 msgstr "extension de texte non terminée"
 
-#: tie-engraver.cc:262
+#: tie-engraver.cc:116
+msgid "unterminated tie"
+msgstr "liaison de prolongation non terminée"
+
+#: tie-engraver.cc:312
 msgid "lonely tie"
 msgstr "liaison de prolongation orpheline"
 
@@ -2484,357 +2841,387 @@ msgstr "liaison de prolongation orpheline"
 #.
 #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
 #.
-#: time-signature-engraver.cc:64
+#: time-signature-engraver.cc:75
 #, c-format
 msgid "strange time signature found: %d/%d"
 msgstr "Chiffrage de mesure inhabituel : %d/%d"
 
 #. If there is no such symbol, we default to the numbered style.
 #. (Here really with a warning!)
-#: time-signature.cc:83
+#: time-signature.cc:94
 #, c-format
 msgid "time signature symbol `%s' not found; reverting to numbered style"
 msgstr "symbole de chiffrage de mesure « %s » inconnu ; retour à un style numérique"
 
-#: translator-ctors.cc:53
+#: translator-ctors.cc:65
 #, c-format
 msgid "unknown translator: `%s'"
 msgstr "translateur inconnu : « %s »"
 
-#: translator-group-ctors.cc:29
+#: translator-group-ctors.cc:40
 #, c-format
 msgid "fatal error. Couldn't find type: %s"
 msgstr "Erreur fatale. Type inconnu : %s"
 
-#: translator-group.cc:146
+#: translator-group.cc:188
 #, c-format
 msgid "cannot find: `%s'"
 msgstr " « %s » inconnu(e)"
 
-#: translator.cc:347
+#: translator.cc:359
 #, c-format
 msgid "Two simultaneous %s events, junking this one"
 msgstr "Deux événements %s simultanés, rejet de celui-ci"
 
-#: translator.cc:348
+#: translator.cc:360
 #, c-format
 msgid "Previous %s event here"
 msgstr "Événement %s précédent ici"
 
-#: trill-spanner-engraver.cc:85
-msgid "cannot find start of trill spanner"
-msgstr "impossible de repérer le point de départ de l'extension de trille"
+#: ttf.cc:481 ttf.cc:530
+#, c-format
+msgid "font index %d too large for font `%s', using index 0"
+msgstr "index %d trop grand pour la fonte « %s » ; réindexé sur 0"
 
-#: trill-spanner-engraver.cc:98
-msgid "already have a trill spanner"
-msgstr "a déjà une extension de trille"
+#: ttf.cc:513 ttf.cc:565
+msgid "font index must be non-negative, using index 0"
+msgstr "l'index de fonte ne peut être négatif ; réindexé sur 0"
 
-#: tuplet-engraver.cc:96
+#: tuplet-engraver.cc:107
 msgid "No tuplet to end"
 msgstr "Aucun n-olet à terminer"
 
-#: vaticana-ligature-engraver.cc:389
+#: vaticana-ligature-engraver.cc:400
 #, c-format
-msgid "ignored prefix (es) `%s' of this head according to restrictions of the selected ligature style"
+msgid "ignored prefix(es) `%s' of this head according to restrictions of the selected ligature style"
 msgstr ""
 "préfixe(s) « %s » ignoré(s) pour la tête de note, \n"
 "selon les restrictions du style de ligature sélectionné"
 
-#: vaticana-ligature-engraver.cc:718
+#: vaticana-ligature-engraver.cc:736
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
 msgstr "Vaticana_ligature_engraver : fixé `spacing-increment = %f': ptr=%ul"
 
-#: vaticana-ligature.cc:84
+#: vaticana-ligature.cc:95
 msgid "flexa-height undefined; assuming 0"
 msgstr "Vaticana_ligature : décalage en X indéfini ; ramené à 0"
 
-#: vaticana-ligature.cc:89
+#: vaticana-ligature.cc:100
 msgid "ascending vaticana style flexa"
 msgstr "flexe de style vaticana ascendant"
 
-#: vaticana-ligature.cc:177
+#: vaticana-ligature.cc:188
 msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: aucun joint (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:100
+#: volta-engraver.cc:111
 msgid "cannot end volta spanner"
 msgstr "extension de reprise sans terminaison"
 
-#: volta-engraver.cc:110
+#: volta-engraver.cc:121
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "extension de reprise déjà présente, fin prématurée de celle-ci"
 
-#: volta-engraver.cc:114
+#: volta-engraver.cc:125
 msgid "also already have an ended spanner"
 msgstr "a déjà une extension terminée"
 
-#: volta-engraver.cc:115
+#: volta-engraver.cc:126
 msgid "giving up"
 msgstr "abandon"
 
-#: parser.yy:804
+#: parser.yy:816
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "dans la section \\score, utiliser \\layout au lieu de \\paper"
 
-#: parser.yy:828
+#: parser.yy:840
 msgid "need \\paper for paper block"
 msgstr "\\paper est nécessaire pour définir les paramètres de la page"
 
-#: parser.yy:1299
+#: parser.yy:1365
+msgid "only \\consists takes non-string argument."
+msgstr "seul \\consists peut prendre un argument autre qu'une chaîne"
+
+#: parser.yy:1378
 msgid "Grob name should be alphanumeric"
 msgstr "Un nom de Grob devrait être alphanumérique"
 
-#: parser.yy:1597
+#: parser.yy:1687
 msgid "second argument must be pitch list"
 msgstr "le second argument doit être une liste de hauteurs"
 
-#: parser.yy:1624 parser.yy:1629 parser.yy:2101
+#: parser.yy:1714 parser.yy:1719 parser.yy:2192
 msgid "have to be in Lyric mode for lyrics"
 msgstr "doit être en mode Lyric pour des paroles"
 
-#: parser.yy:1726
+#: parser.yy:1816
 msgid "expecting string as script definition"
 msgstr "chaîne requise pour définir un script"
 
-#: parser.yy:1881 parser.yy:1931
+#: parser.yy:1971 parser.yy:2022
 #, c-format
 msgid "not a duration: %d"
 msgstr "%d n'est pas une durée"
 
-#: parser.yy:2055
+#: parser.yy:2146
 msgid "have to be in Note mode for notes"
 msgstr "doit être en mode Note pour des notes"
 
-#: parser.yy:2116
+#: parser.yy:2207
 msgid "have to be in Chord mode for chords"
 msgstr "doit être en mode Chord pour des accords"
 
-#: lexer.ll:179
+#: lexer.ll:190
 msgid "stray UTF-8 BOM encountered"
 msgstr "parasitage par UTF-8 BOM"
 
-#: lexer.ll:183
+#: lexer.ll:194
 msgid "Skipping UTF-8 BOM"
 msgstr "Escamotage d'UTF-8 BOM"
 
-#: lexer.ll:238
+#: lexer.ll:249
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "L'entrée a été renommée en « %s »"
 
-#: lexer.ll:255
+#: lexer.ll:266
 msgid "quoted string expected after \\version"
 msgstr "\\version doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:259
+#: lexer.ll:270
 msgid "quoted string expected after \\sourcefilename"
 msgstr "\\sourcefilename doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:263
+#: lexer.ll:274
 msgid "integer expected after \\sourcefileline"
 msgstr "\\sourcefilename doit être suivi d'un nombre entier"
 
-#: lexer.ll:276
+#: lexer.ll:287
 msgid "EOF found inside a comment"
 msgstr "Fin de fichier (EOF) à l'intérieur du commentaire"
 
-#: lexer.ll:291
+#: lexer.ll:302
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput n'est pas permis en dehors des fichiers d'initialisation"
 
-#: lexer.ll:315
+#: lexer.ll:326
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "identificateur erroné ou non défini : « %s »"
 
 #. backup rule
-#: lexer.ll:324
+#: lexer.ll:335
 msgid "end quote missing"
 msgstr "absence de guillemet fermant"
 
-#: lexer.ll:469
+#: lexer.ll:485
 msgid "Brace found at end of lyric.  Did you forget a space?"
 msgstr "Accolade repérée à la fin d'une parole. Manquerait-il un espace ?"
 
-#: lexer.ll:584
+#: lexer.ll:595
 msgid "Brace found at end of markup.  Did you forget a space?"
 msgstr "Accolade repérée à la fin d'un \"markup\". Manquerait-il un espace ?"
 
-#: lexer.ll:688
+#: lexer.ll:699
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "caractère invalide : « %c »"
 
-#: lexer.ll:803
+#: lexer.ll:814 lexer.ll:815
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "chaîne d'échappement inconnue : « \\%s »"
 
-#: lexer.ll:910
+#: lexer.ll:924 lexer.ll:925
 #, c-format
 msgid "file too old: %s (oldest supported: %s)"
 msgstr ""
-"%s est plus qu'obsolète ; \n"
+"%s est plus qu'obsolète ;\n"
 "le plus ancien pouvant être supporté est : %s"
 
-#: lexer.ll:911
+#: lexer.ll:925 lexer.ll:926
 msgid "consider updating the input with the convert-ly script"
 msgstr "Envisagez la mise à jour de la source à l'aide du script convert-ly"
 
-#: lexer.ll:917
+#: lexer.ll:931 lexer.ll:932
 #, c-format
 msgid "program too old: %s (file requires: %s)"
 msgstr "Programme plus qu'obsolète : %s (le fichier requiert %s)"
 
-#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
+#: backend-library.scm:35 ps-to-png.scm:66
 #, scheme-format
 msgid "Invoking `~a'..."
 msgstr "Appel de « ~a »..."
 
-#: backend-library.scm:28
+#: backend-library.scm:45
 #, scheme-format
 msgid "`~a' failed (~a)"
 msgstr "échec de « ~a » (~a)"
 
-#: backend-library.scm:116
+#: backend-library.scm:130
 #, scheme-format
 msgid "Converting to `~a'..."
 msgstr "Conversion à « ~a »..."
 
 #. Do not try to guess the name of the png file,
 #. GS produces PNG files like BASE-page%d.png.
-#: backend-library.scm:128
+#: backend-library.scm:140
 #, scheme-format
 msgid "Converting to ~a..."
 msgstr "Conversion à ~a..."
 
-#: backend-library.scm:166
+#: backend-library.scm:178
 #, scheme-format
 msgid "Writing header field `~a' to `~a'..."
 msgstr "écriture du champ d'en-tête « ~a » dans « ~a »..."
 
-#: define-context-properties.scm:20 define-grob-properties.scm:10
-#: define-music-properties.scm:10
+#: backend-library.scm:228
+#, scheme-format
+msgid "missing stencil expression `~S'"
+msgstr "absence d'expression stencil ~S"
+
+#: chord-entry.scm:50
+#, scheme-format
+msgid "Spurious garbage following chord: ~A"
+msgstr "Information incompréhensible à la suite de l'accord ~A"
+
+#: define-context-properties.scm:31 define-grob-properties.scm:21
+#: define-music-properties.scm:21
 #, scheme-format
 msgid "symbol ~S redefined"
 msgstr "symbole ~S redéfini"
 
-#: define-event-classes.scm:119
+#: define-event-classes.scm:78
+msgid "All classes must be the last in their matrilineal line."
+msgstr "Toute classe doit être la dernière de sa lignée."
+
+#: define-event-classes.scm:82
+msgid "All classes must have a well-defined pedigree in the existing class hierarchy."
+msgstr ""
+"Chaque classe requiert que son pédigrée soit correctement défini\n"
+"dans la hiérarchie de la classe existante."
+
+#: define-event-classes.scm:148
 #, scheme-format
 msgid "event class ~A seems to be unused"
 msgstr "la classe d'événement ~A semble être inutilisée"
 
 #. should be programming-error
-#: define-event-classes.scm:125
+#: define-event-classes.scm:154
 #, scheme-format
 msgid "translator listens to nonexisting event class ~A"
 msgstr "le traducteur écoute la classe d'événements ~A inexistante"
 
-#: define-markup-commands.scm:569
+#: define-markup-commands.scm:803
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr "pas de système trouvé dans le bloc \\score, contient-il un bloc \\layout ?"
 
-#: define-markup-commands.scm:2387
+#: define-markup-commands.scm:2571
 #, scheme-format
 msgid "Cannot find glyph ~a"
 msgstr "impossible de trouver le glyphe ~a"
 
-#: define-markup-commands.scm:2696
+#: define-markup-commands.scm:2831
+#, scheme-format
+msgid "no brace found for point size ~S "
+msgstr "il n'y a pas d'accolade qui fasse ~S points"
+
+#: define-markup-commands.scm:2832
+#, scheme-format
+msgid "defaulting to ~S pt"
+msgstr "application de la taille par défaut (~S pt)"
+
+#: define-markup-commands.scm:2985
 #, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr "chaîne de durée invalide : ~a"
 
-#: define-music-types.scm:670
+#: define-music-types.scm:725
 #, scheme-format
 msgid "symbol expected: ~S"
 msgstr "symbole requis : ~S"
 
-#: define-music-types.scm:673
+#: define-music-types.scm:728
 #, scheme-format
 msgid "cannot find music object: ~S"
 msgstr "impossible de trouver l'objet de type musique : ~S"
 
-#: define-music-types.scm:692
+#: define-music-types.scm:747
 #, scheme-format
 msgid "unknown repeat type `~S'"
 msgstr "type de répétition inconnu : « ~S »"
 
-#: define-music-types.scm:693
+#: define-music-types.scm:748
 msgid "See define-music-types.scm for supported repeats"
 msgstr "Consulter define-music-types.scm pour connaître les répétitions prises en charge"
 
-#: document-backend.scm:99
+#: document-backend.scm:132
 #, scheme-format
 msgid "pair expected in doc ~s"
 msgstr "le document ~s devrait contenir une paire"
 
-#: document-backend.scm:154
+#: document-backend.scm:189
 #, scheme-format
 msgid "cannot find interface for property: ~S"
 msgstr "impossible de trouver l'interface pour la propriété ~S"
 
-#: document-backend.scm:164
+#: document-backend.scm:199
 #, scheme-format
 msgid "unknown Grob interface: ~S"
 msgstr "interface d'objet graphique (Grob) inconnue : ~S"
 
-#: documentation-lib.scm:49
+#: documentation-lib.scm:59
 #, scheme-format
 msgid "Processing ~S..."
 msgstr "Traitement de ~S..."
 
-#: documentation-lib.scm:165
+#: documentation-lib.scm:176
 #, scheme-format
 msgid "Writing ~S..."
 msgstr "Écriture de ~S..."
 
-#: documentation-lib.scm:187
+#: documentation-lib.scm:198
 #, scheme-format
 msgid "cannot find description for property ~S (~S)"
 msgstr "impossible de trouver une description de la propriété ~S (~S)"
 
-#: flag-styles.scm:145
+#: flag-styles.scm:142
 #, scheme-format
 msgid "flag stroke `~a' or `~a' not found"
 msgstr "type de crochet inconnu : « ~a » ou « ~a »"
 
-#: framework-eps.scm:90
+#: framework-eps.scm:108
 #, scheme-format
 msgid "Writing ~a..."
 msgstr "Écriture de ~a..."
 
-#: framework-ps.scm:277
+#: framework-ps.scm:250
 #, scheme-format
 msgid "cannot embed ~S=~S"
 msgstr "intégration impossible : ~S=~S"
 
-#: framework-ps.scm:330
+#: framework-ps.scm:291
 #, scheme-format
 msgid "cannot extract file matching ~a from ~a"
 msgstr "impossible d'extraire le fichier ~a à partir de ~a"
 
-#: framework-ps.scm:347
+#: framework-ps.scm:309
 #, scheme-format
 msgid "do not know how to embed ~S=~S"
 msgstr "imposible de réaliser l'intégration ~S=~S"
 
-#: framework-ps.scm:378
+#: framework-ps.scm:334
 #, scheme-format
 msgid "do not know how to embed font ~s ~s ~s"
 msgstr "impossible d'intégrer les fontes ~s ~s ~s"
 
-#: framework-ps.scm:748
-#, scheme-format
-msgid "cannot convert <stdout> to ~S"
-msgstr "impossible de convertir <stdout> en ~S"
-
-#: framework-ps.scm:771
+#: framework-ps.scm:639
 msgid ""
 "\n"
-"The PostScript backend does not support the system-by-system \n"
-"output. For that, use the EPS backend instead,\n"
+"The PostScript backend does not support the\n"
+"system-by-system output.  For that, use the EPS backend instead,\n"
 "\n"
 "  lilypond -dbackend=eps FILE\n"
 "\n"
@@ -2851,65 +3238,87 @@ msgstr ""
 "\n"
 "  lilypond -dbackend=eps FICHIER\n"
 "\n"
-"Si vous avez copié et collé un fragment lilypond à partir d'un page internet,\n"
+"Si vous avez copié et collé un fragment lilypond à partir d'une page internet,\n"
 "assurez-vous d'avoir bien supprimé tout ce qui précède\n"
 "\n"
 "  %% ****************************************************************\n"
 "  %% Start cut-&-pastable-section\n"
 "  %% ****************************************************************\n"
-"\n"
 
-#: graphviz.scm:53
+#: framework-svg.scm:84
+#, scheme-format
+msgid "Updating font into: ~a"
+msgstr "Actualisation de la fonte dans ~a"
+
+#: graphviz.scm:64
 #, scheme-format
 msgid "Writing graph `~a'..."
 msgstr "Écriture du graphique « ~a »..."
 
-#: layout-beam.scm:29
+#: layout-beam.scm:38
 #, scheme-format
 msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
 msgstr "Erreur de définition du lien : attendait (~S,~S), ~S trouvé."
 
-#: layout-beam.scm:43
+#: layout-beam.scm:52
 #, scheme-format
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Erreur de définition du lien : attendait ~S 0, repéré ~S."
 
-#: layout-page-layout.scm:126
-msgid "Can't fit systems on page -- ignoring between-system-padding"
-msgstr "Les système ne tiennent pas sur la page ; between-system-padding ignoré"
+#: lily-library.scm:747
+msgid ""
+"Find the index between @var{start} and @var{end} (an integer)\n"
+"which will produce the closest match to @var{target-val} when\n"
+"applied to function @var{getter}."
+msgstr ""
+"Recherche un index compris entre @var{début} et @var{fin}\n"
+"(nombre entier) qui soit le plus proche de @var{valeur-cible}\n"
+"lorsqu'appliqué à la fonction @var{appelant}."
 
-#: lily-library.scm:602
+#: lily-library.scm:821
 #, scheme-format
 msgid "unknown unit: ~S"
 msgstr "unité inconnue : ~S"
 
-#: lily-library.scm:636
+#: lily-library.scm:847 lily-library.scm:856
+msgid "warning:"
+msgstr "Avertissement :"
+
+#: lily-library.scm:849
 #, scheme-format
 msgid "no \\version statement found, please add~afor future compatibility"
 msgstr ""
 "déclaration de \\version absente ;\n"
 "ajoutez ~a pour une compatibilité future"
 
-#: lily-library.scm:644
+#: lily-library.scm:857
 msgid "old relative compatibility not used"
 msgstr "compatibilité avec l'ancien mode relatif non utilisée"
 
-#: lily.scm:179
+#: lily.scm:282
 #, scheme-format
 msgid "cannot find: ~A"
 msgstr "impossible de trouver ~A"
 
-#: lily.scm:228
+#: lily.scm:342
 #, scheme-format
 msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr "type d'argument erroné pour ~a. Attendait ~a, ~s trouvé"
 
-#: lily.scm:625
+#: lily.scm:704
+msgid "Compilation successfully completed"
+msgstr "Compilation menée à son terme, avec succès."
+
+#: lily.scm:705
+msgid "Compilation completed with warnings or errors"
+msgstr "Compilation menée à son terme, avec des avertissements ou erreurs."
+
+#: lily.scm:767
 #, scheme-format
 msgid "job ~a terminated with signal: ~a"
 msgstr "le travail ~a s'est terminé avec le signal ~a"
 
-#: lily.scm:628
+#: lily.scm:770
 #, scheme-format
 msgid ""
 "logfile ~a (exit ~a):\n"
@@ -2918,129 +3327,157 @@ msgstr ""
 "fichier journal ~a (sortie ~a) :\n"
 "~a"
 
-#: lily.scm:653 lily.scm:751
+#: lily.scm:792 lily.scm:870
 #, scheme-format
 msgid "failed files: ~S"
-msgstr "erreur sur les fichiers ~S"
+msgstr "erreur sur les fichiers ~S"
 
-#: lily.scm:741
+#: lily.scm:861
 #, scheme-format
 msgid "Redirecting output to ~a..."
 msgstr "Redirection de la sortie vers ~a..."
 
-#: ly-syntax-constructors.scm:40
+#: lily.scm:880
+#, scheme-format
+msgid "Invoking `~a'...\n"
+msgstr "Appel de « ~a »...\n"
+
+#: ly-syntax-constructors.scm:51
 msgid "Music head function must return Music object"
 msgstr "Une fonction musicale primitive devrait renvoyer un objet Music"
 
-#: ly-syntax-constructors.scm:154
+#: ly-syntax-constructors.scm:176
 #, scheme-format
 msgid "Invalid property operation ~a"
 msgstr "Opération de propriété invalide : ~a"
 
-#: markup.scm:204
+#: markup.scm:223
 #, scheme-format
 msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
 msgstr "Nombre d'arguments erroné. Requis : ~A, présent(s) ~A : ~S"
 
-#: markup.scm:210
+#: markup.scm:229
 #, scheme-format
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Argument invalide à la position ~A. ~A attendu, ~S trouvé."
 
-#: markup.scm:274
+#: markup.scm:292
 #, scheme-format
 msgid "Not a markup command: ~A"
 msgstr "~A n'est pas une commande de type « markup»"
 
-#: music-functions.scm:228
+#: music-functions.scm:265
 msgid "More alternatives than repeats.  Junking excess alternatives"
 msgstr ""
 "Plus d'alternatives que de répétitions.\n"
 " Escamotage des alternatives surnuméraires."
 
-#: music-functions.scm:240
+#: music-functions.scm:294
 #, scheme-format
 msgid "invalid tremolo repeat count: ~a"
 msgstr "nombre de répétition en trémolo invalide : ~a"
 
-#: music-functions.scm:248
-#, scheme-format
-msgid "expecting 2 elements for chord tremolo, found ~a"
-msgstr "2 éléments sont requis pour l'accord de trémolo, ~a trouvé(s)"
-
-#: music-functions.scm:575
+#: music-functions.scm:601
 #, scheme-format
 msgid "music expected: ~S"
 msgstr "~S requiert de la musique"
 
 #. FIXME: uncomprehensable message
-#: music-functions.scm:625
+#: music-functions.scm:649
 #, scheme-format
 msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
 msgstr ""
 "Échec du contrôle de barre de mesure. \n"
 "Aurait dû se trouver à ~a au lieu de ~a"
 
-#: music-functions.scm:793
+#: music-functions.scm:828
 #, scheme-format
 msgid "cannot find quoted music: `~S'"
 msgstr "impossible de trouver la citation de musique « ~S »"
 
-#: music-functions.scm:1198
+#: music-functions.scm:964
+msgid "Add @var{octave-shift} to the octave of @var{pitch}."
+msgstr "Ajoute @var{octave-shift} à l'octave de @var{hauteur}."
+
+#: music-functions.scm:1019
+#, scheme-format
+msgid "Unknown octaveness type: ~S "
+msgstr "Octave inconnue : « ~S »"
+
+#: music-functions.scm:1020
+msgid "Defaulting to 'any-octave."
+msgstr "Application de la valeur par défaut 'any-octave."
+
+#: music-functions.scm:1355
 #, scheme-format
 msgid "unknown accidental style: ~S"
 msgstr "style d'altération inconnu : ~S"
 
-#: output-ps.scm:294
-msgid "utf-8-string encountered in PS backend"
-msgstr "le support PS a rencontré une chaîne utf8"
+#: output-ps.scm:289 output-svg.scm:550
+#, scheme-format
+msgid "unknown line-cap-style: ~S"
+msgstr "line-cap-style inconnu : ~S"
 
-#: output-svg.scm:45
+#: output-ps.scm:294 output-svg.scm:556
+#, scheme-format
+msgid "unknown line-join-style: ~S"
+msgstr "line-join-style inconnu : ~S"
+
+#: output-svg.scm:47
 #, scheme-format
 msgid "undefined: ~S"
 msgstr "~S indéfini(e)"
 
-#: output-svg.scm:135
+#: output-svg.scm:151
 #, scheme-format
 msgid "cannot decypher Pango description: ~a"
 msgstr "la description de Pango ne peut être déchiffrée : ~a"
 
-#: paper.scm:104
+#: output-svg.scm:231
+msgid "Glyph must have a unicode value"
+msgstr "Un glyphe doit avoir une valeur unicode"
+
+#: output-svg.scm:283 output-svg.scm:293
+#, scheme-format
+msgid "cannot find SVG font ~S"
+msgstr "fonte SVG ~S introuvable"
+
+#: paper.scm:115
 msgid "set-global-staff-size: not in toplevel scope"
 msgstr "set-global-staff-size n'est pas à un niveau de portée globale"
 
-#: paper.scm:244
+#: paper.scm:296
 #, scheme-format
 msgid "This is not a \\layout {} object, ~S"
 msgstr "~S n'est pas un objet de \\layout {}"
 
-#: paper.scm:256
+#: paper.scm:308
 #, scheme-format
 msgid "Unknown paper size: ~a"
-msgstr "Taille de papier inconnue : ~a"
+msgstr "Format de papier inconnue : ~a"
 
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
-#: paper.scm:271
+#: paper.scm:323
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
 
-#: parser-clef.scm:129
+#: parser-clef.scm:140
 #, scheme-format
 msgid "unknown clef type `~a'"
 msgstr "type de clef inconnu : « ~a »"
 
-#: parser-clef.scm:130
+#: parser-clef.scm:141
 #, scheme-format
 msgid "supported clefs: ~a"
 msgstr "clefs reconnues : ~a"
 
-#: ps-to-png.scm:64
+#: ps-to-png.scm:72
 #, scheme-format
 msgid "~a exited with status: ~S"
 msgstr "~a s'est terminé avec le statut ~S"
 
-#: to-xml.scm:180
+#: to-xml.scm:191
 #, scheme-format
 msgid "assertion failed: ~S"
 msgstr "erreur d'assertion : ~S"
index b01e1bbaba46b74f8eed3174911645434a1d3391..be132ac5e3db3c7b269b330634317b93fa81a97f 100644 (file)
@@ -3095,12 +3095,12 @@ def conv(str):
 @rule ((2, 13, 40),
     _ ("Remove \\paper variables head-separation and foot-separation."))
 def conv(str):
-    if re.search(r'head-separation', str):
+    if re.search (r'head-separation', str):
         stderr_write("\n")
         stderr_write(NOT_SMART % ("head-separation.\n"))
         stderr_write(_ ("Adjust settings for top-system-spacing instead.\n"))
-        stderr_write(UPDATE_MANUALLY)
-    if re.search(r'foot-separation', str):
+        stderr_write (UPDATE_MANUALLY)
+    if re.search (r'foot-separation', str):
         stderr_write("\n")
         stderr_write(NOT_SMART % ("foot-separation.\n"))
         stderr_write(_ ("Adjust settings for last-bottom-spacing instead.\n"))
@@ -3109,10 +3109,17 @@ def conv(str):
     return str
 
 @rule ((2, 13, 42),
-    _ ("Rename space to basic-distance in various spacing alists."))
+    _ ("Rename space to basic-distance in various spacing alists.\n\
+Remove HarmonicParenthesesItem grob."))
 def conv(str):
     str = re.sub (r'\(space\s+\.\s+([0-9]*\.?[0-9]*)\)', r'(basic-distance . \1)', str)
     str = re.sub (r"#'space\s+=\s+#?([0-9]*\.?[0-9]*)", r"#'basic-distance = #\1", str)
+    if re.search (r'HarmonicParenthesesItem', str):
+       stderr_write ("\n")
+       stderr_write (NOT_SMART % ("HarmonicParenthesesItem.\n"))
+       stderr_write (_ ("HarmonicParenthesesItem has been eliminated.\n"))
+       stderr_write (_ ("Harmonic parentheses are part of the TabNoteHead grob.\n"))
+       stderr_write (UPDATE_MANUALLY);
     return str
 
 
index 409d0134374cac61535de4f15057bfabdd8f753b..539709e60cd2f315a0b346345e497fd48ac5aeef 100644 (file)
        (add-system
        (lambda (system)
          (let* ((stencil (paper-system-stencil system))
-                (y (ly:prob-property system 'Y-offset))
+                (y (ly:prob-property system 'Y-offset 0))
                 (is-title (paper-system-title?
                            system)))
            (add-to-page stencil
index 763b173e6921ab3f486f6e370c50731fe6fa8bcb..217ae297752b7dac6a878f8c6c13ffe3e4e7bfc9 100755 (executable)
@@ -67,6 +67,7 @@ $LILYPONDBOOK \
         -I $FROMDIR/input/manual \
         -I $FROMDIR/Documentation \
         -I $FROMDIR/Documentation/included  \
+        -I $FROMDIR/Documentation/pictures \
         -o $TODIR/out \
         $FROMDIR/Documentation/$DIRECTORY/$NAME.itely
 BOOKRC=$?
index b124d5ff32c6bc478f2e4d20acffda97a6158275..6063c21ee411336402bd3f2d8a0b8fbeffe847a1 100755 (executable)
@@ -21,7 +21,7 @@ cd $TOP_SRC_DIR
 
 ### update manuals
 find Documentation/ -path 'Documentation/snippets' -prune \
-  , -name '*.itely' | xargs $BUILD_DIR/out/bin/convert-ly -e -d
+  -o -name '*.itely' | xargs $BUILD_DIR/out/bin/convert-ly -e -d
 
 ### update .ly files
 find . -name '*.ly' | xargs $BUILD_DIR/out/bin/convert-ly -e -d