]> git.donarmstrong.com Git - lilypond.git/blobdiff - po/fi.po
Issue 5167/6: Changes: show \markup xxx = ... \etc assignments
[lilypond.git] / po / fi.po
index 39f2f3690f7732d945bdd15785e4d1f43ce6283b..a83fbc483f128814e39d3dbd8e0b536b91daf27e 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
-# translation of fi.po to 
-# translation of fi.po to
-# translation of fi.po to
 # Finnish Translation of lilypond.
 # Copyright (C) 2003 Han-Wen Nienhuys, Jan Nieuwenhuizen
 # This file is distributed under the same license as the lilypond package.
 # Finnish Translation of lilypond.
 # Copyright (C) 2003 Han-Wen Nienhuys, Jan Nieuwenhuizen
 # This file is distributed under the same license as the lilypond package.
-# First translator: Heikki Junes <hjunes@cc.hut.fi>, 2003-2005.
-# 
-# 
+#
+# Heikki Junes <hjunes@cc.hut.fi>, 2003-2006.
 msgid ""
 msgstr ""
 msgid ""
 msgstr ""
-"Project-Id-Version: fi\n"
+"Project-Id-Version: lilypond 2.6.0\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-03-13 17:35+0200\n"
-"PO-Revision-Date: 2006-03-13 22:28+0200\n"
-"Last-Translator: hjunes <>\n"
-"Language-Team:  <en@li.org>\n"
+"POT-Creation-Date: 2006-12-24 10:40+0100\n"
+"PO-Revision-Date: 2006-11-04 02:19+0200\n"
+"Last-Translator: Heikki Junes <hjunes@cc.hut.fi>\n"
+"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.2\n"
 
 
-#: convertrules.py:9
+#: convertrules.py:12
 #, python-format
 msgid "Not smart enough to convert %s"
 #, python-format
 msgid "Not smart enough to convert %s"
-msgstr "Ei tarpeeksi fiksu konvertoidakseen %sd"
+msgstr "Ei tarpeeksi fiksu konvertoidakseen %s"
 
 
-#: convertrules.py:10
+#: convertrules.py:13
 msgid "Please refer to the manual for details, and update manually."
 msgstr "Ole hyvä ja katso ohjekirjasta yksityiskohdat, ja päivitä käsin."
 
 msgid "Please refer to the manual for details, and update manually."
 msgstr "Ole hyvä ja katso ohjekirjasta yksityiskohdat, ja päivitä käsin."
 
-#: convertrules.py:11
+#: convertrules.py:14
 #, python-format
 msgid "%s has been replaced by %s"
 msgstr "%s on korvattu %s:lla"
 
 #, python-format
 msgid "%s has been replaced by %s"
 msgstr "%s on korvattu %s:lla"
 
-#: convertrules.py:2395
+#: convertrules.py:2398
 msgid "LilyPond source must be UTF-8"
 msgstr "LilyPond lähdekoodin täytyy olla UTF-8 muodossa"
 
 msgid "LilyPond source must be UTF-8"
 msgstr "LilyPond lähdekoodin täytyy olla UTF-8 muodossa"
 
-#: convertrules.py:2398
+#: convertrules.py:2401
 msgid "Try the texstrings backend"
 msgstr "Koeta tex-merkkijonon käyttöä"
 
 msgid "Try the texstrings backend"
 msgstr "Koeta tex-merkkijonon käyttöä"
 
-#: convertrules.py:2401
+#: convertrules.py:2404
 #, python-format
 msgid "Do something like: %s"
 msgstr "Tee jotain tällaista: %s"
 
 #, python-format
 msgid "Do something like: %s"
 msgstr "Tee jotain tällaista: %s"
 
-#: convertrules.py:2404
+#: convertrules.py:2407
 msgid "Or save as UTF-8 in your editor"
 msgstr "Tai talleta UTF-8 -muodossa editorissasi"
 
 msgid "Or save as UTF-8 in your editor"
 msgstr "Tai talleta UTF-8 -muodossa editorissasi"
 
-#: fontextract.py:25
+#: fontextract.py:26
 #, python-format
 msgid "Scanning %s"
 msgstr "Skannataan %s"
 
 #, python-format
 msgid "Scanning %s"
 msgstr "Skannataan %s"
 
-#: fontextract.py:70
+#: fontextract.py:71
 #, python-format
 msgid "Extracted %s"
 msgstr "Poimittiin %s"
 
 #, python-format
 msgid "Extracted %s"
 msgstr "Poimittiin %s"
 
-#: fontextract.py:85
+#: fontextract.py:86
 #, python-format
 msgid "Writing fonts to %s"
 msgstr "Kirjoitetaan fontit osoitteeseen `%s'"
 
 #, python-format
 msgid "Writing fonts to %s"
 msgstr "Kirjoitetaan fontit osoitteeseen `%s'"
 
-#: lilylib.py:82
+#: lilylib.py:85 lilylib.py:136
 #, python-format
 msgid "Invoking `%s'"
 msgstr "Kutsutaan `%s'"
 
 #, python-format
 msgid "Invoking `%s'"
 msgstr "Kutsutaan `%s'"
 
-#: lilylib.py:84
+#: lilylib.py:87 lilylib.py:138
 #, python-format
 msgid "Running %s..."
 msgstr "Ajetaan %s..."
 
 #, python-format
 msgid "Running %s..."
 msgstr "Ajetaan %s..."
 
-#: lilylib.py:168
-#, python-format
-msgid "Usage: %s\n"
+#: lilylib.py:203
+#, fuzzy, python-format
+msgid "Usage: %s"
 msgstr "Käyttö: %s\n"
 
 msgstr "Käyttö: %s\n"
 
-#: abc2ly.py:1357
+#: abc2ly.py:1349 convert-ly.py:80 lilypond-book.py:125 midi2ly.py:869
+#, fuzzy, python-format
+msgid "%s [OPTION]... FILE"
+msgstr "Käyttö: %s [OPTIO]... TIEDOSTO..."
+
+#: abc2ly.py:1351
+#, fuzzy, python-format
 msgid ""
 msgid ""
-"This program converts ABC music files (see\n"
-"http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt) to LilyPond input."
-msgstr "Tämä ohjelma kääntää ABC musiikkitiedostoja (katso\n"
-"http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt) LilyPond syötteeksi"
+"abc2ly converts ABC music files (see\n"
+"%s) to LilyPond input."
+msgstr ""
+"Tämä ohjelma kääntää ABC-musiikkitiedostoja (katso\n"
+"http://www.gre.ac.uk/~c.walshaw/abc2mtex/abc.txt) LilyPond-syötteeksi."
 
 
-#: abc2ly.py:1360
-msgid "set output filename to FILE"
+#: abc2ly.py:1355 etf2ly.py:1200 midi2ly.py:885
+msgid "write output to FILE"
 msgstr "tulosta tiedostoon TIEDOSTO"
 
 msgstr "tulosta tiedostoon TIEDOSTO"
 
-#: abc2ly.py:1362
+#: abc2ly.py:1357
 msgid "be strict about succes"
 msgstr "ole tarkka onnistumisesta"
 
 msgid "be strict about succes"
 msgstr "ole tarkka onnistumisesta"
 
-#: abc2ly.py:1364
+#: abc2ly.py:1359
 msgid "preserve ABC's notion of beams"
 msgstr "säilytä ABC:n palkkimerkinnät"
 
 msgid "preserve ABC's notion of beams"
 msgstr "säilytä ABC:n palkkimerkinnät"
 
-#: convert-ly.py:49
+#: abc2ly.py:1361 convert-ly.py:112 etf2ly.py:1208 lilypond-book.py:168
+#: midi2ly.py:911 musicxml2ly.py:505
+#, fuzzy
+msgid "Report bugs via"
+msgstr "Raportoi virheet osoitteeseen %s"
+
+#: convert-ly.py:41
+#, fuzzy
 msgid ""
 "Update LilyPond input to newer version.  By default, update from the\n"
 msgid ""
 "Update LilyPond input to newer version.  By default, update from the\n"
-"version taken from the \\version command, to the current LilyPond version.\n"
-"\n"
-"Examples:\n"
-"\n"
-"  convert-ly -e old.ly\n"
-"  convert-ly --from=2.3.28 --to 2.5.21 foobar.ly\n"
+"version taken from the \\version command, to the current LilyPond version."
 msgstr ""
 "Päivitä LilyPond syöte uudempaan versioon.  Oletuksena päivittää\n"
 "versiosta joka on annettu \\version komennolla nykyiseksi LilyPond "
 msgstr ""
 "Päivitä LilyPond syöte uudempaan versioon.  Oletuksena päivittää\n"
 "versiosta joka on annettu \\version komennolla nykyiseksi LilyPond "
@@ -117,507 +123,546 @@ msgstr ""
 "  convert-ly -e old.ly\n"
 "  convert-ly --from=2.3.28 --to 2.5.21 foobar.ly\n"
 
 "  convert-ly -e old.ly\n"
 "  convert-ly --from=2.3.28 --to 2.5.21 foobar.ly\n"
 
-#: convert-ly.py:67 lilypond-book.py:115 warn.cc:48 input.cc:81
+#: convert-ly.py:43 lilypond-book.py:73
+#, fuzzy
+msgid "Examples:"
+msgstr "esimerkki"
+
+#: convert-ly.py:56 lilypond-book.py:98 warn.cc:48 input.cc:90
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "varoitus: %s"
 
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "varoitus: %s"
 
-#: convert-ly.py:70 lilypond-book.py:118 warn.cc:54 input.cc:87 input.cc:95
+#: convert-ly.py:59 lilypond-book.py:101 warn.cc:54 input.cc:96 input.cc:104
 #, c-format, python-format
 msgid "error: %s"
 msgstr "virhe: %s"
 
 #, c-format, python-format
 msgid "error: %s"
 msgstr "virhe: %s"
 
-#: convert-ly.py:86 etf2ly.py:1200 lilypond-book.py:138 midi2ly.py:114
+#: convert-ly.py:75 etf2ly.py:1190 lilypond-book.py:121 midi2ly.py:98
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Levitettävissä ehdoilla GNU General Public License."
 
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Levitettävissä ehdoilla GNU General Public License."
 
-#: convert-ly.py:87 etf2ly.py:1201 lilypond-book.py:139 midi2ly.py:115
+#: convert-ly.py:76 etf2ly.py:1191 lilypond-book.py:122 midi2ly.py:99
 msgid "It comes with NO WARRANTY."
 msgstr "Se toimitetaan ILMAN TAKUUTA."
 
 msgid "It comes with NO WARRANTY."
 msgstr "Se toimitetaan ILMAN TAKUUTA."
 
-#: convert-ly.py:98 convert-ly.py:118
+#: convert-ly.py:86 convert-ly.py:106
 msgid "VERSION"
 msgstr "VERSIO"
 
 msgid "VERSION"
 msgstr "VERSIO"
 
-#: convert-ly.py:100
+#: convert-ly.py:88
 msgid "start from VERSION [default: \\version found in file]"
 msgstr "aloita versiosta VERSIO [oletus: \\version joka on tiedostossa]"
 
 msgid "start from VERSION [default: \\version found in file]"
 msgstr "aloita versiosta VERSIO [oletus: \\version joka on tiedostossa]"
 
-#: convert-ly.py:103
+#: convert-ly.py:91
 msgid "edit in place"
 msgstr "editoi paikassaan"
 
 msgid "edit in place"
 msgstr "editoi paikassaan"
 
-#: convert-ly.py:106
+#: convert-ly.py:94
 msgid "do not add \\version command if missing"
 msgstr "älä lisää \\version komentoa jos se puuttuu"
 
 msgid "do not add \\version command if missing"
 msgstr "älä lisää \\version komentoa jos se puuttuu"
 
-#: convert-ly.py:112
-msgid "print rules [default: --from=0, --to=@TOPLEVEL_VERSION@]"
+#: convert-ly.py:100
+#, fuzzy
+msgid "show rules [default: --from=0, --to=@TOPLEVEL_VERSION@]"
 msgstr "tulosta säännöt [oletus: --from=0, --to=@TOPLEVEL_VERSION@]"
 
 msgstr "tulosta säännöt [oletus: --from=0, --to=@TOPLEVEL_VERSION@]"
 
-#: convert-ly.py:117
+#: convert-ly.py:105
 msgid "convert to VERSION [default: @TOPLEVEL_VERSION@]"
 msgstr "muunnaa versioon VERSIO [oletus: @TOPLEVEL_VERSION@]"
 
 msgid "convert to VERSION [default: @TOPLEVEL_VERSION@]"
 msgstr "muunnaa versioon VERSIO [oletus: @TOPLEVEL_VERSION@]"
 
-#: convert-ly.py:164
+#: convert-ly.py:153
 msgid "Applying conversion: "
 msgstr "Toteutetaan muunnos: "
 
 msgid "Applying conversion: "
 msgstr "Toteutetaan muunnos: "
 
-#: convert-ly.py:176
-msgid "error while converting"
+#: convert-ly.py:166
+#, fuzzy
+msgid "Error while converting"
 msgstr "virhe muunnettaessa"
 
 msgstr "virhe muunnettaessa"
 
-#: convert-ly.py:178 score-engraver.cc:73
-msgid "Aborting"
-msgstr "Keskeytetään"
+#: convert-ly.py:168
+msgid "Stopping at last succesful rule"
+msgstr ""
 
 
-#: convert-ly.py:202
+#: convert-ly.py:190
 #, python-format
 msgid "Processing `%s'... "
 #, python-format
 msgid "Processing `%s'... "
-msgstr "Prosessoidaan `%s'..."
+msgstr "Prosessoidaan `%s'... "
 
 
-#: convert-ly.py:289 source-file.cc:56
+#: convert-ly.py:277 relocate.cc:360 source-file.cc:54
 #, c-format, python-format
 #, c-format, python-format
-msgid "can't open file: `%s'"
+msgid "cannot open file: `%s'"
 msgstr "tiedostoa ei voitu avata: `%s'"
 
 msgstr "tiedostoa ei voitu avata: `%s'"
 
-#: convert-ly.py:296
-#, python-format
-msgid "can't determine version for `%s'. Skipping"
+#: convert-ly.py:284
+#, fuzzy, python-format
+msgid "cannot determine version for `%s'.  Skipping"
 msgstr "ei voitu määrittää `%s':lle versiota. Sivuutetaan"
 
 msgstr "ei voitu määrittää `%s':lle versiota. Sivuutetaan"
 
-#: etf2ly.py:1208
+#: etf2ly.py:1196
+#, fuzzy, python-format
+msgid "%s [OPTION]... ETF-FILE"
+msgstr "Käyttö: %s [OPTIO]... TIEDOSTO..."
+
+#: etf2ly.py:1198
+#, fuzzy
 msgid ""
 "Enigma Transport Format is a format used by Coda Music Technology's\n"
 msgid ""
 "Enigma Transport Format is a format used by Coda Music Technology's\n"
-"Finale product. This program will convert a subset of ETF to a\n"
-"ready-to-use lilypond file."
-msgstr "Enigma Transport Format on Coda Music Technology:n Finale-tuotteen\n"
+"Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond "
+"file."
+msgstr ""
+"Enigma Transport Format on Coda Music Technology:n Finale-tuotteen\n"
 "tallennusmuoto. Tämä ohjelma muuntaa ETF-muodon osajoukon\n"
 "tallennusmuoto. Tämä ohjelma muuntaa ETF-muodon osajoukon\n"
-"LilyPondilla käytettäväksi.\n"
-
-#: etf2ly.py:1211 midi2ly.py:901
-msgid "write output to FILE"
-msgstr "tulosta tiedostoon TIEDOSTO"
+"LilyPondilla käytettäväksi."
 
 
-#: etf2ly.py:1212 midi2ly.py:902 main.cc:172 main.cc:178
+#: etf2ly.py:1201 midi2ly.py:886 musicxml2ly.py:498 main.cc:172 main.cc:178
 msgid "FILE"
 msgstr "TIEDOSTO"
 
 msgid "FILE"
 msgstr "TIEDOSTO"
 
-#: etf2ly.py:1214 midi2ly.py:915
-msgid "show warranty"
-msgstr "näytä takuusitoumus"
+#: etf2ly.py:1203 lilypond-book.py:165 midi2ly.py:899 main.cc:185
+msgid "show warranty and copyright"
+msgstr "näytä takuu ja copyright"
 
 
-#: lilypond-book.py:88
+#: lilypond-book.py:71
 msgid ""
 msgid ""
-"Process LilyPond snippets in hybrid HTML, LaTeX, or texinfo document.\n"
-"\n"
-"Example usage:\n"
-"\n"
-"   lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BOOK\n"
-"   lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" BOOK\n"
-"   lilypond-book --process='lilypond -I include' BOOK\n"
+"Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
+msgstr ""
+
+#: lilypond-book.py:78
+msgid "BOOK"
 msgstr ""
 msgstr ""
-"Käsittele HTML, LaTeX, tai texinfo -documenttiin sisällytetyt LilyPond "
-"palaset.\n"
-"Käyttöesimerkkejä:\n"
-"\n"
-"   lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BOOK\n"
-"   lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" BOOK\n"
-"   lilypond-book --process='lilypond-bin -I include' BOOK\n"
 
 
-#: lilypond-book.py:104
+#: lilypond-book.py:87
 #, python-format
 msgid "Exiting (%d)..."
 msgstr "Lopetetaan (%d)..."
 
 #, python-format
 msgid "Exiting (%d)..."
 msgstr "Lopetetaan (%d)..."
 
-#: lilypond-book.py:136
+#: lilypond-book.py:119
 #, python-format
 msgid "Copyright (c) %s by"
 msgstr "Copyright (c) %s by"
 
 #, python-format
 msgid "Copyright (c) %s by"
 msgstr "Copyright (c) %s by"
 
-#: lilypond-book.py:147
+#: lilypond-book.py:129
 msgid "FILTER"
 msgstr "FILTER"
 
 msgid "FILTER"
 msgstr "FILTER"
 
-#: lilypond-book.py:150
+#: lilypond-book.py:132
 msgid "pipe snippets through FILTER [convert-ly -n -]"
 msgstr "putkita palaset kohteen FILTER läpi [convert-ly -n -]"
 
 msgid "pipe snippets through FILTER [convert-ly -n -]"
 msgstr "putkita palaset kohteen FILTER läpi [convert-ly -n -]"
 
-#: lilypond-book.py:152
-msgid "use output format FORMAT (texi [default], texi-html, latex, html)"
+#: lilypond-book.py:135
+msgid ""
+"use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
 msgstr ""
 msgstr ""
-"käytä tulostusmuotona formaattia FMT (texi [oletus], texi-html, latex, html)"
+"käytä tulostusmuotona formaattia FMT (texi [oletus], texi-html, latex, html, "
+"docbook)"
 
 
-#: lilypond-book.py:154
+#: lilypond-book.py:138
 msgid "add DIR to include path"
 msgstr "lisää HAKEMISTO hakupolkuun"
 
 msgid "add DIR to include path"
 msgstr "lisää HAKEMISTO hakupolkuun"
 
-#: lilypond-book.py:159
+#: lilypond-book.py:139 lilypond-book.py:144 main.cc:171
+msgid "DIR"
+msgstr "HAKEMISTO"
+
+#: lilypond-book.py:143
 msgid "write output to DIR"
 msgstr "tulosta polkuun HAKEMISTO"
 
 msgid "write output to DIR"
 msgstr "tulosta polkuun HAKEMISTO"
 
-#: lilypond-book.py:162
+#: lilypond-book.py:147
 msgid "COMMAND"
 msgstr "KOMENTO"
 
 msgid "COMMAND"
 msgstr "KOMENTO"
 
-#: lilypond-book.py:163
+#: lilypond-book.py:148
 msgid "process ly_files using COMMAND FILE..."
 msgstr "prosessoi ly_tiedostot käyttäen komentoa COMMAND FILE..."
 
 msgid "process ly_files using COMMAND FILE..."
 msgstr "prosessoi ly_tiedostot käyttäen komentoa COMMAND FILE..."
 
-#: lilypond-book.py:168
+#: lilypond-book.py:154
+msgid "Create PDF files for use with PDFTeX"
+msgstr ""
+
+#: lilypond-book.py:157
 msgid ""
 msgid ""
-"extract all PostScript fonts into INPUT.psfonts for LaTeXmust use this with "
-"dvips -h INPUT.psfonts"
+"extract all PostScript fonts into INPUT.psfonts for LaTeX\n"
+"must use this with dvips -h INPUT.psfonts"
 msgstr ""
 msgstr ""
-"poimi kaikki PostScript fontit tiedostoon INPUT.psfonts LaTeX:ia varten\n"
-"\t tätä täytyy käyttää dvips -h INPUT.psfonts :in kanssa"
+"poimi kaikki PostScript-fontit tiedostoon INPUT.psfonts LaTeX:ia varten\n"
+"tätä täytyy käyttää dvips -h INPUT.psfonts :in kanssa"
 
 
-#: lilypond-book.py:171 midi2ly.py:912 main.cc:182
+#: lilypond-book.py:160 midi2ly.py:896 musicxml2ly.py:489 main.cc:184
 msgid "be verbose"
 msgstr "tulosta runsaasti käsittelytietoa"
 
 msgid "be verbose"
 msgstr "tulosta runsaasti käsittelytietoa"
 
-#: lilypond-book.py:177 main.cc:183
-msgid "show warranty and copyright"
-msgstr "näytä takuu ja copyright"
-
-#: lilypond-book.py:734
+#: lilypond-book.py:773
 #, python-format
 msgid "file not found: %s"
 msgstr "tiedostoa %s ei löydy"
 
 #, python-format
 msgid "file not found: %s"
 msgstr "tiedostoa %s ei löydy"
 
-#: lilypond-book.py:963
+#: lilypond-book.py:1004
 #, python-format
 msgid "deprecated ly-option used: %s=%s"
 msgstr "vanhentunut ly-optio käytössä: %s=%s"
 
 #, python-format
 msgid "deprecated ly-option used: %s=%s"
 msgstr "vanhentunut ly-optio käytössä: %s=%s"
 
-#: lilypond-book.py:966
+#: lilypond-book.py:1007
 #, python-format
 msgid "compatibility mode translation: %s=%s"
 msgstr "yhteensopivuusmuodon käännös: %s=%s"
 
 #, python-format
 msgid "compatibility mode translation: %s=%s"
 msgstr "yhteensopivuusmuodon käännös: %s=%s"
 
-#: lilypond-book.py:970
+#: lilypond-book.py:1011
 #, python-format
 msgid "deprecated ly-option used: %s"
 msgstr "vanhentunut ly-optio käytössä: %s"
 
 #, python-format
 msgid "deprecated ly-option used: %s"
 msgstr "vanhentunut ly-optio käytössä: %s"
 
-#: lilypond-book.py:973
+#: lilypond-book.py:1014
 #, python-format
 msgid "compatibility mode translation: %s"
 msgstr "yhteensopivuusmuodon käännös: %s"
 
 #, python-format
 msgid "compatibility mode translation: %s"
 msgstr "yhteensopivuusmuodon käännös: %s"
 
-#: lilypond-book.py:992
+#: lilypond-book.py:1033
 #, python-format
 msgid "ignoring unknown ly option: %s"
 msgstr "sivuutetaan tuntematon ly -optio: %s"
 
 #, python-format
 msgid "ignoring unknown ly option: %s"
 msgstr "sivuutetaan tuntematon ly -optio: %s"
 
-#: lilypond-book.py:1327
+#: lilypond-book.py:1388
 #, python-format
 msgid "Opening filter `%s'"
 msgstr "Avataan filtteri `%s'"
 
 #, python-format
 msgid "Opening filter `%s'"
 msgstr "Avataan filtteri `%s'"
 
-#: lilypond-book.py:1344
+#: lilypond-book.py:1405
 #, python-format
 msgid "`%s' failed (%d)"
 msgstr "`%s' epäonnistui (%d)"
 
 #, python-format
 msgid "`%s' failed (%d)"
 msgstr "`%s' epäonnistui (%d)"
 
-#: lilypond-book.py:1345
+#: lilypond-book.py:1406
 msgid "The error log is as follows:"
 msgstr "Virheloki on seuraava:"
 
 msgid "The error log is as follows:"
 msgstr "Virheloki on seuraava:"
 
-#: lilypond-book.py:1512
+#: lilypond-book.py:1476
+#, fuzzy
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "Ei voitu löytää \\begin{document} LaTeX-documentista"
+
+#: lilypond-book.py:1586
 msgid "Writing snippets..."
 msgstr "Kirjoitetaan palasia..."
 
 msgid "Writing snippets..."
 msgstr "Kirjoitetaan palasia..."
 
-#: lilypond-book.py:1517
+#: lilypond-book.py:1591
 msgid "Processing..."
 msgstr "Prosessoidaan..."
 
 msgid "Processing..."
 msgstr "Prosessoidaan..."
 
-#: lilypond-book.py:1521
+#: lilypond-book.py:1595
 msgid "All snippets are up to date..."
 msgid "All snippets are up to date..."
-msgstr "Kaikki palaset on päivitetty"
+msgstr "Kaikki palaset on päivitetty..."
 
 
-#: lilypond-book.py:1531
+#: lilypond-book.py:1605
 #, python-format
 #, python-format
-msgid "can't determine format for: %s"
+msgid "cannot determine format for: %s"
 msgstr "ei löytynyt formaattia: %s"
 
 msgstr "ei löytynyt formaattia: %s"
 
-#: lilypond-book.py:1542
+#: lilypond-book.py:1616
 #, python-format
 msgid "%s is up to date."
 msgstr "%s on päivitetty."
 
 #, python-format
 msgid "%s is up to date."
 msgstr "%s on päivitetty."
 
-#: lilypond-book.py:1548
+#: lilypond-book.py:1622
 #, python-format
 msgid "Writing `%s'..."
 msgstr "Kirjoitetaan `%s'..."
 
 #, python-format
 msgid "Writing `%s'..."
 msgstr "Kirjoitetaan `%s'..."
 
-#: lilypond-book.py:1595
+#: lilypond-book.py:1677
 msgid "Output would overwrite input file; use --output."
 msgstr "Tuloste kirjautuisi syötetiedoston päälle; käytä --output."
 
 msgid "Output would overwrite input file; use --output."
 msgstr "Tuloste kirjautuisi syötetiedoston päälle; käytä --output."
 
-#: lilypond-book.py:1599
+#: lilypond-book.py:1681
 #, python-format
 msgid "Reading %s..."
 msgstr "Luetaan %s..."
 
 #, python-format
 msgid "Reading %s..."
 msgstr "Luetaan %s..."
 
-#: lilypond-book.py:1618
+#: lilypond-book.py:1700
 msgid "Dissecting..."
 msgstr "Analysoidaan..."
 
 msgid "Dissecting..."
 msgstr "Analysoidaan..."
 
-#: lilypond-book.py:1634
+#: lilypond-book.py:1716
 #, python-format
 msgid "Compiling %s..."
 msgstr "Kootaan %s..."
 
 #, python-format
 msgid "Compiling %s..."
 msgstr "Kootaan %s..."
 
-#: lilypond-book.py:1643
+#: lilypond-book.py:1725
 #, python-format
 msgid "Processing include: %s"
 msgstr "Prosessoidaan sisällytetävä: %s"
 
 #, python-format
 msgid "Processing include: %s"
 msgstr "Prosessoidaan sisällytetävä: %s"
 
-#: lilypond-book.py:1657
+#: lilypond-book.py:1739
 #, python-format
 msgid "Removing `%s'"
 msgstr "Poistetaan `%s'"
 
 #, python-format
 msgid "Removing `%s'"
 msgstr "Poistetaan `%s'"
 
-#: lilypond-book.py:1717
+#: lilypond-book.py:1815
 #, python-format
 msgid "Writing fonts to %s..."
 msgstr "Kirjoitetaan fontteja hakemistoon %s..."
 
 #, python-format
 msgid "Writing fonts to %s..."
 msgstr "Kirjoitetaan fontteja hakemistoon %s..."
 
-#: lilypond-book.py:1729
+#: lilypond-book.py:1830
 msgid "option --psfonts not used"
 msgstr "optiota --psfonts=FILE ei käytetty"
 
 msgid "option --psfonts not used"
 msgstr "optiota --psfonts=FILE ei käytetty"
 
-#: lilypond-book.py:1730
+#: lilypond-book.py:1831
 msgid "processing with dvips will have no fonts"
 msgstr "prosessointi dvips:illä ei sisällä fontteja"
 
 msgid "processing with dvips will have no fonts"
 msgstr "prosessointi dvips:illä ei sisällä fontteja"
 
-#: lilypond-book.py:1736
+#: lilypond-book.py:1834
 msgid "DVIPS usage:"
 msgstr "DVIPS käyttö:"
 
 msgid "DVIPS usage:"
 msgstr "DVIPS käyttö:"
 
-#: midi2ly.py:122 lily-library.scm:489 lily-library.scm:497
+#: midi2ly.py:106 lily-library.scm:624 lily-library.scm:632
 msgid "warning: "
 msgstr "varoitus: "
 
 msgid "warning: "
 msgstr "varoitus: "
 
-#: midi2ly.py:125 midi2ly.py:941
+#: midi2ly.py:109 midi2ly.py:924
 msgid "error: "
 msgstr "virhe: "
 
 msgid "error: "
 msgstr "virhe: "
 
-#: midi2ly.py:126
+#: midi2ly.py:110
 msgid "Exiting ... "
 msgstr "Lopettaa ... "
 
 msgid "Exiting ... "
 msgstr "Lopettaa ... "
 
-#: midi2ly.py:873
+#: midi2ly.py:857
 #, python-format
 msgid "%s output to `%s'..."
 msgstr "%s tulostetaan paikkaan `%s'..."
 
 #, python-format
 msgid "%s output to `%s'..."
 msgstr "%s tulostetaan paikkaan `%s'..."
 
-#: midi2ly.py:887
-msgid "Convert MIDI to LilyPond source."
+#: midi2ly.py:871 musicxml2ly.py:485
+#, fuzzy, python-format
+msgid "Convert %s to LilyPond input."
 msgstr "Muunna MIDI LilyPond -muotoon."
 
 msgstr "Muunna MIDI LilyPond -muotoon."
 
-#: midi2ly.py:891
+#: midi2ly.py:875
 msgid "print absolute pitches"
 msgstr "tulosta tarkat äänenkorkeudet"
 
 msgid "print absolute pitches"
 msgstr "tulosta tarkat äänenkorkeudet"
 
-#: midi2ly.py:893 midi2ly.py:905
+#: midi2ly.py:877 midi2ly.py:889
 msgid "DUR"
 msgstr "PIT"
 
 msgid "DUR"
 msgstr "PIT"
 
-#: midi2ly.py:894
+#: midi2ly.py:878
 msgid "quantise note durations on DUR"
 msgstr "kvantisoi nuottipituuden PIT perusteella"
 
 # tulosta yksikäsitteiset nuottipituudet
 msgid "quantise note durations on DUR"
 msgstr "kvantisoi nuottipituuden PIT perusteella"
 
 # tulosta yksikäsitteiset nuottipituudet
-#: midi2ly.py:897
+#: midi2ly.py:881
 msgid "print explicit durations"
 msgstr "tulosta yksikäsitteiset nuottipituudet"
 
 msgid "print explicit durations"
 msgstr "tulosta yksikäsitteiset nuottipituudet"
 
-#: midi2ly.py:898
+#: midi2ly.py:882
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "aseta sävellaji: ETUMERKIT=+ylennykset|-alennukset; MOLLI=1"
 
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "aseta sävellaji: ETUMERKIT=+ylennykset|-alennukset; MOLLI=1"
 
-#: midi2ly.py:899
+#: midi2ly.py:883
 msgid "ALT[:MINOR]"
 msgstr "ETUMERKIT[:MOLLI]"
 
 msgid "ALT[:MINOR]"
 msgstr "ETUMERKIT[:MOLLI]"
 
-#: midi2ly.py:904
+#: midi2ly.py:888
 msgid "quantise note starts on DUR"
 msgstr "nuottien kvantisointi alkukohtana PIT"
 
 msgid "quantise note starts on DUR"
 msgstr "nuottien kvantisointi alkukohtana PIT"
 
-#: midi2ly.py:907
+#: midi2ly.py:891
 msgid "DUR*NUM/DEN"
 msgstr "PIT*OSOITTAJA/NIMITTÄJÄ"
 
 # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
 msgid "DUR*NUM/DEN"
 msgstr "PIT*OSOITTAJA/NIMITTÄJÄ"
 
 # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
-#: midi2ly.py:910
+#: midi2ly.py:894
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "salli tupletti -pituudet PIT*OSOITTAJA/NIMITTÄJÄ"
 
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "salli tupletti -pituudet PIT*OSOITTAJA/NIMITTÄJÄ"
 
-#: midi2ly.py:918
+#: midi2ly.py:902
 msgid "treat every text as a lyric"
 msgstr "käsittele kaikki tekstit lyriikkana"
 
 msgid "treat every text as a lyric"
 msgstr "käsittele kaikki tekstit lyriikkana"
 
-#: midi2ly.py:921
-msgid "example"
+#: midi2ly.py:905
+#, fuzzy
+msgid "Examples"
 msgstr "esimerkki"
 
 msgstr "esimerkki"
 
-#: midi2ly.py:942
+#: midi2ly.py:925
 msgid "no files specified on command line."
 msgstr "tiedostoja ei annettu komentorivillä."
 
 msgid "no files specified on command line."
 msgstr "tiedostoja ei annettu komentorivillä."
 
-#: getopt-long.cc:141
+#: musicxml2ly.py:473
+msgid "musicxml2ly FILE.xml"
+msgstr ""
+
+#: musicxml2ly.py:476
+#, fuzzy, python-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."
+msgstr ""
+"Tämä on ilmaisohjelmisto. Siihen sovelletaan GNU General Public License\n"
+"ja olet tervetullut muuttamaan ohjelmaa ja/tai levittämään siitä kopioita\n"
+"tietyillä ehdoilla. Suorita `%s --warranty' saadaksesi lisäinformaatiota.\n"
+
+#: musicxml2ly.py:495
+msgid "Use lxml.etree; uses less memory and cpu time."
+msgstr ""
+
+#: musicxml2ly.py:503
+msgid "set output filename to FILE"
+msgstr "tulosta tiedostoon TIEDOSTO"
+
+#: getopt-long.cc:140
 #, c-format
 msgid "option `%s' requires an argument"
 msgstr "optio `%s' vaatii argumentin"
 
 #, c-format
 msgid "option `%s' requires an argument"
 msgstr "optio `%s' vaatii argumentin"
 
-#: getopt-long.cc:145
-#, c-format
-msgid "option `%s' doesn't allow an argument"
+#: getopt-long.cc:144
+#, fuzzy, c-format
+msgid "option `%s' does not allow an argument"
 msgstr "optio `%s' ei salli argumenttia"
 
 msgstr "optio `%s' ei salli argumenttia"
 
-#: getopt-long.cc:149
+#: getopt-long.cc:148
 #, c-format
 msgid "unrecognized option: `%s'"
 msgstr "tunnistamaton optio: `%s'"
 
 #, c-format
 msgid "unrecognized option: `%s'"
 msgstr "tunnistamaton optio: `%s'"
 
-#: getopt-long.cc:155
+#: getopt-long.cc:154
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
 msgstr "epäkelpo argumentti `%s' optiolle `%s'"
 
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
 msgstr "epäkelpo argumentti `%s' optiolle `%s'"
 
-#: warn.cc:68 grob.cc:462
+#: warn.cc:68 grob.cc:559 input.cc:82
 #, c-format
 msgid "programming error: %s"
 msgstr "ohjelmointivirhe: %s"
 
 #, c-format
 msgid "programming error: %s"
 msgstr "ohjelmointivirhe: %s"
 
-#: warn.cc:69
+#: warn.cc:69 input.cc:83
 msgid "continuing, cross fingers"
 msgstr "jatketaan, ristitään kädet"
 
 msgid "continuing, cross fingers"
 msgstr "jatketaan, ristitään kädet"
 
-#: accidental-engraver.cc:238
+#: accidental-engraver.cc:240
 #, c-format
 msgid "accidental typesetting list must begin with context-name: %s"
 msgstr "Korotusmerkkien ladontalista täytyy alkaa konteksti-nimellä: %s"
 
 #, c-format
 msgid "accidental typesetting list must begin with context-name: %s"
 msgstr "Korotusmerkkien ladontalista täytyy alkaa konteksti-nimellä: %s"
 
-#: accidental-engraver.cc:266
+#: accidental-engraver.cc:268
 #, c-format
 msgid "ignoring unknown accidental: %s"
 msgstr "sivutetaan tuntematan etumerkki: %s"
 
 #, c-format
 msgid "ignoring unknown accidental: %s"
 msgstr "sivutetaan tuntematan etumerkki: %s"
 
-#: accidental-engraver.cc:282
+#: accidental-engraver.cc:284
 #, c-format
 msgid "pair or context-name expected for accidental rule, found %s"
 msgstr "pari tai konteksti-nimi oletettiin korotusmerkkisäännölle, löytyi %s"
 
 #, c-format
 msgid "pair or context-name expected for accidental rule, found %s"
 msgstr "pari tai konteksti-nimi oletettiin korotusmerkkisäännölle, löytyi %s"
 
-#: accidental.cc:239 key-signature-interface.cc:124
+#: accidental.cc:243 key-signature-interface.cc:133
 #, c-format
 msgid "accidental `%s' not found"
 msgstr "korotusmerkkiä `%s' ei löydy"
 
 #, c-format
 msgid "accidental `%s' not found"
 msgstr "korotusmerkkiä `%s' ei löydy"
 
-#: align-interface.cc:160
+#: align-interface.cc:222
 msgid ""
 "vertical alignment called before line-breaking.\n"
 "Only do cross-staff spanners with PianoStaff."
 msgstr ""
 "pystysyora sijoittelu kutsuttiin ennen rivinkatkaisua.\n"
 msgid ""
 "vertical alignment called before line-breaking.\n"
 "Only do cross-staff spanners with PianoStaff."
 msgstr ""
 "pystysyora sijoittelu kutsuttiin ennen rivinkatkaisua.\n"
-"Viivaston ylittävät ladokkeet tehdään vain PianoStaff:in yhteydessä"
+"Viivaston ylittävät ladokkeet tehdään vain PianoStaff:in yhteydessä."
 
 
-#: all-font-metrics.cc:213
-#, c-format
-msgid "can't find font: `%s'"
-msgstr "ei löytynyt fonttia: `%s'"
-
-#: all-font-metrics.cc:214
-msgid "loading default font"
-msgstr "ladataan oletusfontti"
-
-#: all-font-metrics.cc:224
-#, c-format
-msgid "can't find default font: `%s'"
-msgstr "ei löytynyt oletusfonttia: `%s'"
+#: align-interface.cc:329
+#, fuzzy
+msgid "tried to get a translation for something that is no child of mine"
+msgstr "yritettiin saada käännösteksti jollekin, joka ei ole lapseni"
 
 
-#: all-font-metrics.cc:225 includable-lexer.cc:62 lily-parser-scheme.cc:97
+#: all-font-metrics.cc:173
 #, c-format
 #, c-format
-msgid "(search path: `%s')"
-msgstr "(hakupolku: `%s')"
-
-#: all-font-metrics.cc:226 volta-engraver.cc:157
-msgid "giving up"
-msgstr "luovutetaan"
+msgid "cannot find font: `%s'"
+msgstr "ei löytynyt fonttia: `%s'"
 
 
-#: apply-context-iterator.cc:34
+#: apply-context-iterator.cc:31
 msgid "\\applycontext argument is not a procedure"
 msgstr "\\applycontext vaatii funktioargumentin"
 
 msgid "\\applycontext argument is not a procedure"
 msgstr "\\applycontext vaatii funktioargumentin"
 
-#: auto-change-iterator.cc:62 change-iterator.cc:61
+#: auto-change-iterator.cc:63 change-iterator.cc:61
 #, c-format
 #, c-format
-msgid "can't change, already in translator: %s"
+msgid "cannot change, already in translator: %s"
 msgstr "ei voitu vaihtaa, oli jo tulkitsijassa: %s"
 
 msgstr "ei voitu vaihtaa, oli jo tulkitsijassa: %s"
 
-#: axis-group-engraver.cc:79
+#: axis-group-engraver.cc:78
 msgid "Axis_group_engraver: vertical group already has a parent"
 msgstr "Axis_group_engraver: vertikaaliryhmällä on jo vanhempi"
 
 msgid "Axis_group_engraver: vertical group already has a parent"
 msgstr "Axis_group_engraver: vertikaaliryhmällä on jo vanhempi"
 
-#: axis-group-engraver.cc:80
+#: axis-group-engraver.cc:79
 msgid "are there two Axis_group_engravers?"
 msgstr "onko käytössä kaksi Axis_group_engraver:ia?"
 
 msgid "are there two Axis_group_engravers?"
 msgstr "onko käytössä kaksi Axis_group_engraver:ia?"
 
-#: axis-group-engraver.cc:81
+#: axis-group-engraver.cc:80
 msgid "removing this vertical group"
 msgstr "poistetaan tämä vertikaaliryhmä"
 
 msgid "removing this vertical group"
 msgstr "poistetaan tämä vertikaaliryhmä"
 
+#: axis-group-interface.cc:96
+msgid "tried to calculate pure-height at a non-breakpoint"
+msgstr "yritettiin laskea korkeus ei-katkaisukohdassa"
+
+#: axis-group-interface.cc:370
+msgid "an outside-staff object should have a direction, defaulting to up"
+msgstr ""
+
+#: axis-group-interface.cc:383
+#, c-format
+msgid "outside-staff object %s has an empty extent"
+msgstr ""
+
 #: bar-check-iterator.cc:73
 #, c-format
 msgid "barcheck failed at: %s"
 msgstr "tahtiviivan tarkistus epäonnistui kohdassa: %s"
 
 #: bar-check-iterator.cc:73
 #, c-format
 msgid "barcheck failed at: %s"
 msgstr "tahtiviivan tarkistus epäonnistui kohdassa: %s"
 
-#: beam-engraver.cc:136
+#: beam-engraver.cc:128
 msgid "already have a beam"
 msgstr "palkki löytyi jo"
 
 msgid "already have a beam"
 msgstr "palkki löytyi jo"
 
-#: beam-engraver.cc:205
+#: beam-engraver.cc:196
 msgid "unterminated beam"
 msgstr "päättämätön palkki"
 
 msgid "unterminated beam"
 msgstr "päättämätön palkki"
 
-#: beam-engraver.cc:246 chord-tremolo-engraver.cc:162
+#: beam-engraver.cc:238 chord-tremolo-engraver.cc:134
 msgid "stem must have Rhythmic structure"
 msgstr "varrella on oltava Rhytmic -rakenne"
 
 msgid "stem must have Rhythmic structure"
 msgstr "varrella on oltava Rhytmic -rakenne"
 
-#: beam-engraver.cc:259
-msgid "stem doesn't fit in beam"
+#: beam-engraver.cc:246
+#, fuzzy
+msgid "stem does not fit in beam"
 msgstr "varsi ei sovi palkkiin"
 
 msgstr "varsi ei sovi palkkiin"
 
-#: beam-engraver.cc:260
+#: beam-engraver.cc:247
 msgid "beam was started here"
 msgstr "palkki aloitettiin täältä"
 
 msgid "beam was started here"
 msgstr "palkki aloitettiin täältä"
 
-#: beam-quanting.cc:306
+#: beam-quanting.cc:307
 msgid "no feasible beam position"
 msgstr "ei löytynyt sopivaa palkin paikkaa"
 
 msgid "no feasible beam position"
 msgstr "ei löytynyt sopivaa palkin paikkaa"
 
-#: beam.cc:126
-msgid "removing beam with less than two stems"
-msgstr "poistetaan palkki jolla olisi vähemmän kuin kaksi pystyviivaa"
+#: beam.cc:144
+msgid "removing beam with no stems"
+msgstr "poistetaan palkki jolla ei ole parrua"
 
 
-#: beam.cc:981
+#: beam.cc:1007
 msgid "no viable initial configuration found: may not find good beam slope"
 msgstr "toimivaa alkuasettelua ei löytynyt: hyvää palkkikaltevuuta ei löytyne"
 
 msgid "no viable initial configuration found: may not find good beam slope"
 msgstr "toimivaa alkuasettelua ei löytynyt: hyvää palkkikaltevuuta ei löytyne"
 
-#: break-align-interface.cc:194
+#: break-alignment-interface.cc:208
 #, c-format
 msgid "No spacing entry from %s to `%s'"
 msgstr "Ei välistyksen syöttöä paikasta %s paikkaan `%s'"
 
 #: change-iterator.cc:23
 #, c-format
 #, c-format
 msgid "No spacing entry from %s to `%s'"
 msgstr "Ei välistyksen syöttöä paikasta %s paikkaan `%s'"
 
 #: change-iterator.cc:23
 #, c-format
-msgid "can't change `%s' to `%s'"
+msgid "cannot change `%s' to `%s'"
 msgstr "ei voitu vaihtaa `%s' tilalle `%s'"
 
 #. FIXME: constant error message.
 #: change-iterator.cc:82
 msgstr "ei voitu vaihtaa `%s' tilalle `%s'"
 
 #. FIXME: constant error message.
 #: change-iterator.cc:82
-msgid "can't find context to switch to"
+msgid "cannot find context to switch to"
 msgstr "ei löytynyt kontekstia johon vaihtaa"
 
 #. We could change the current translator's id, but that would make
 msgstr "ei löytynyt kontekstia johon vaihtaa"
 
 #. We could change the current translator's id, but that would make
@@ -635,20 +680,20 @@ msgstr "ei vaihdettu samaan konteksti tyyppiin: %s"
 msgid "none of these in my family"
 msgstr "ei yksikään näistä perheessäni"
 
 msgid "none of these in my family"
 msgstr "ei yksikään näistä perheessäni"
 
-#: chord-tremolo-engraver.cc:96
-#, c-format
-msgid "expect 2 elements for chord tremolo, found %d"
-msgstr "odotettiin 2 elementtiä sointutremololle, löytyi %d"
+#: chord-tremolo-engraver.cc:88
+msgid "No tremolo to end"
+msgstr "Ei löytynyt päätettävää tremoloa"
 
 
-#: chord-tremolo-engraver.cc:132
+#: chord-tremolo-engraver.cc:110
 msgid "unterminated chord tremolo"
 msgstr "päättämätön sointutremolo"
 
 msgid "unterminated chord tremolo"
 msgstr "päättämätön sointutremolo"
 
-#: chord-tremolo-iterator.cc:60
-msgid "no one to print a tremolos"
-msgstr "tremoloa ei voitu tulostaa"
+#: chord-tremolo-iterator.cc:33
+#, c-format
+msgid "expect 2 elements for chord tremolo, found %d"
+msgstr "odotettiin 2 elementtiä sointutremololle, löytyi %d"
 
 
-#: clef.cc:55
+#: clef.cc:54
 #, c-format
 msgid "clef `%s' not found"
 msgstr "avainta `%s' ei löydy"
 #, c-format
 msgid "clef `%s' not found"
 msgstr "avainta `%s' ei löydy"
@@ -662,62 +707,45 @@ msgstr "tuntematon klusterityyli: `%s'"
 msgid "junking empty cluster"
 msgstr "heitetään pois tyhjä klusteri"
 
 msgid "junking empty cluster"
 msgstr "heitetään pois tyhjä klusteri"
 
-#: coherent-ligature-engraver.cc:86
-#, c-format
-msgid "gotcha: ptr=%ul"
-msgstr "löytyi: ptr=%ul"
-
-#: coherent-ligature-engraver.cc:93
-msgid "distance undefined, assuming 0.1"
-msgstr "etäisyys määrittämättä, oletetaan 0.1"
-
-#: coherent-ligature-engraver.cc:96
-#, c-format
-msgid "distance=%f"
-msgstr "etäisyys=%f"
-
-#: coherent-ligature-engraver.cc:136
+#: coherent-ligature-engraver.cc:100
 #, c-format
 msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
 msgstr ""
 "Coherent_ligature_engraver: asetetaan `spacing-increment=0.01': ptr=%ul"
 
 #, c-format
 msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
 msgstr ""
 "Coherent_ligature_engraver: asetetaan `spacing-increment=0.01': ptr=%ul"
 
-#: constrained-breaking.cc:124
-msgid "no system number set in constrained-breaking"
-msgstr "viivastojen määrää ei asetettu pakotetussa katkaisussa"
-
 #. if we get to here, just put everything on one line
 #. if we get to here, just put everything on one line
-#: constrained-breaking.cc:225 constrained-breaking.cc:241
-msgid "couldn't find line breaking that satisfies constraints"
+#: constrained-breaking.cc:176 constrained-breaking.cc:193
+#, fuzzy
+msgid "cannot find line breaking that satisfies constraints"
 msgstr "ei löytynyt rivinkatkaisukohtaa joka täyttäisi ehdot"
 
 msgstr "ei löytynyt rivinkatkaisukohtaa joka täyttäisi ehdot"
 
-#: context-def.cc:123
+#: context-def.cc:130
 #, c-format
 msgid "program has no such type: `%s'"
 msgstr "ohjelmalla ei ole tyyppiä: `%s'"
 
 #, c-format
 msgid "program has no such type: `%s'"
 msgstr "ohjelmalla ei ole tyyppiä: `%s'"
 
-#: context-def.cc:311
-#, c-format
-msgid "can't find: `%s'"
-msgstr "ei löytynyt `%s'"
-
-#: context-property.cc:77
+#: context-property.cc:76
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "tarvitaan symboliargumentti funktioille \\override ja \\revert"
 
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "tarvitaan symboliargumentti funktioille \\override ja \\revert"
 
-#: context.cc:160
+#: context.cc:151
 #, c-format
 #, c-format
-msgid "can't find or create new `%s'"
+msgid "cannot find or create new `%s'"
 msgstr "ei löydetty tai ei luotu uutta `%s'"
 
 msgstr "ei löydetty tai ei luotu uutta `%s'"
 
-#: context.cc:222
+#: context.cc:213
 #, c-format
 #, c-format
-msgid "can't find or create `%s' called `%s'"
+msgid "cannot find or create `%s' called `%s'"
 msgstr "ei löydetty tai ei luotu `%s' nimeltä `%s'"
 
 #: context.cc:276
 #, c-format
 msgstr "ei löydetty tai ei luotu `%s' nimeltä `%s'"
 
 #: context.cc:276
 #, c-format
-msgid "can't find or create: `%s'"
+msgid "Invalid CreateContext event: Cannot create %s context"
+msgstr "Epäkelpo CreateContext-tapahtuma: Ei voitu luoda %s-kontekstia"
+
+#: context.cc:388
+#, c-format
+msgid "cannot find or create: `%s'"
 msgstr "ei löydetty tai ei luotu: `%s'"
 
 #: custos.cc:77
 msgstr "ei löydetty tai ei luotu: `%s'"
 
 #: custos.cc:77
@@ -725,144 +753,133 @@ msgstr "ei löydetty tai ei luotu: `%s'"
 msgid "custos `%s' not found"
 msgstr "custos `%s' ei löytynyt"
 
 msgid "custos `%s' not found"
 msgstr "custos `%s' ei löytynyt"
 
-#: dynamic-engraver.cc:181 span-dynamic-performer.cc:84
-msgid "can't find start of (de)crescendo"
+#: dispatcher.cc:71
+msgid "Event class should be a symbol"
+msgstr "Tapamahtumaluokan tulisi olla symboli"
+
+#: dispatcher.cc:78
+#, c-format
+msgid "Unknown event class %s"
+msgstr "Tuntematon tapahtumaluokka %s"
+
+#: dots.cc:38
+#, c-format
+msgid "dot `%s' not found"
+msgstr "pistettä `%s' ei löytynyt"
+
+#: dynamic-engraver.cc:186 span-dynamic-performer.cc:87
+msgid "cannot find start of (de)crescendo"
 msgstr "ei löytynyt alkua (de)crescendolle"
 
 msgstr "ei löytynyt alkua (de)crescendolle"
 
-#: dynamic-engraver.cc:190
+#: dynamic-engraver.cc:195
 msgid "already have a decrescendo"
 msgstr "decresendo jo käytössä"
 
 msgid "already have a decrescendo"
 msgstr "decresendo jo käytössä"
 
-#: dynamic-engraver.cc:192
+#: dynamic-engraver.cc:197
 msgid "already have a crescendo"
 msgstr "crescendo jo käytössä"
 
 msgid "already have a crescendo"
 msgstr "crescendo jo käytössä"
 
-#: dynamic-engraver.cc:195
+#: dynamic-engraver.cc:200
 msgid "cresc starts here"
 msgstr "cresc aloitettiin tästä"
 
 msgid "cresc starts here"
 msgstr "cresc aloitettiin tästä"
 
-#: dynamic-engraver.cc:315
+#: dynamic-engraver.cc:323
 msgid "unterminated (de)crescendo"
 msgstr "päättämätön (de)crescendo"
 
 msgid "unterminated (de)crescendo"
 msgstr "päättämätön (de)crescendo"
 
-#: event-chord-iterator.cc:53 output-property-music-iterator.cc:31
-#, c-format
-msgid "junking event: `%s'"
-msgstr "hylätään tapahtuma: `%s'"
-
 #: extender-engraver.cc:131 extender-engraver.cc:140
 msgid "unterminated extender"
 msgstr "päättämätön pidennys"
 
 #: extender-engraver.cc:131 extender-engraver.cc:140
 msgid "unterminated extender"
 msgstr "päättämätön pidennys"
 
-#: folded-repeat-iterator.cc:63
-msgid "no one to print a repeat brace"
-msgstr "kukaan ei voinut tulostaa toistoa"
-
 #: font-config.cc:28
 msgid "Initializing FontConfig..."
 msgstr "Alustetaan FontConfig..."
 
 #: font-config.cc:28
 msgid "Initializing FontConfig..."
 msgstr "Alustetaan FontConfig..."
 
-#: font-config.cc:38
+#: font-config.cc:44
 #, c-format
 #, c-format
-msgid "Rebuilding FontConfig cache %s. this may take a while..."
+msgid "Rebuilding FontConfig cache %s, this may take a while..."
 msgstr ""
 msgstr ""
-"Käännetään uudelleen FontConfig välimuisti %s. tämä voi kestää hetken..."
+"Käännetään uudelleen FontConfig-välimuisti %s. tämä voi kestää hetken..."
 
 
-#: font-config.cc:49 font-config.cc:51
+#: font-config.cc:55
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "ei onnistuttu lisäämään fonttihakemistoa: %s"
+
+#: font-config.cc:57
 #, c-format
 msgid "adding font directory: %s"
 msgstr "lisätään fonttihakemisto: %s"
 
 #, c-format
 msgid "adding font directory: %s"
 msgstr "lisätään fonttihakemisto: %s"
 
-#: general-scheme.cc:161
+#: general-scheme.cc:160
 msgid "infinity or NaN encountered while converting Real number"
 msgstr "ääretön tai NaN kohdattiin kun tehtiin reaalilukumuunnosta"
 
 msgid "infinity or NaN encountered while converting Real number"
 msgstr "ääretön tai NaN kohdattiin kun tehtiin reaalilukumuunnosta"
 
-#: general-scheme.cc:162
+#: general-scheme.cc:161
 msgid "setting to zero"
 msgstr "asetetaan nollaksi"
 
 msgid "setting to zero"
 msgstr "asetetaan nollaksi"
 
-#: glissando-engraver.cc:91
+#: glissando-engraver.cc:92
 msgid "unterminated glissando"
 msgstr "päättämätön glissando"
 
 msgid "unterminated glissando"
 msgstr "päättämätön glissando"
 
-#: global-context-scheme.cc:50 global-context-scheme.cc:77
+#: global-context-scheme.cc:91 global-context-scheme.cc:107
 msgid "no music found in score"
 msgstr "Laita musiikkia viivastolle"
 
 msgid "no music found in score"
 msgstr "Laita musiikkia viivastolle"
 
-#: global-context-scheme.cc:68
+#: global-context-scheme.cc:97
 msgid "Interpreting music... "
 msgid "Interpreting music... "
-msgstr "Tulkitaan musiikkia..."
+msgstr "Tulkitaan musiikkia... "
 
 
-#: global-context-scheme.cc:88
+#: global-context-scheme.cc:120
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "kulunut aika: %.2f sekuntia"
 
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "kulunut aika: %.2f sekuntia"
 
-#: global-context.cc:159
-#, c-format
-msgid "can't find `%s' context"
-msgstr "ei löytynyt kontekstia `%s'"
-
-#: gourlay-breaking.cc:202
-#, c-format
-msgid "Optimal demerits: %f"
-msgstr "Optimaalinen heikennys: %f"
-
-#: gourlay-breaking.cc:207
-msgid "no feasible line breaking found"
-msgstr "Ei löytynyt sopivaa viivan katkaisukohtaa"
-
-#: gourlay-breaking.cc:215
-msgid "can't find line breaking that satisfies constraints"
-msgstr "ei löytynyt sopivaa rivin katkaisukohtaa joka täyttäisi ehdot"
-
-#: gregorian-ligature-engraver.cc:61
+#: gregorian-ligature-engraver.cc:59
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s sivuutettiin"
 
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s sivuutettiin"
 
-#: gregorian-ligature-engraver.cc:66
+#: gregorian-ligature-engraver.cc:64
 #, c-format
 msgid "implied \\%s added"
 msgstr "lisättiin vihjattu \\%s"
 
 #. ligature may not start with 2nd head of pes or flexa
 #, c-format
 msgid "implied \\%s added"
 msgstr "lisättiin vihjattu \\%s"
 
 #. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:214
-msgid "can't apply `\\~' on first head of ligature"
+#: gregorian-ligature-engraver.cc:212
+msgid "cannot apply `\\~' on first head of ligature"
 msgstr "di voitu käyttää `\\~' ligaturen alkupäässä"
 
 #. (pitch == prev_pitch)
 msgstr "di voitu käyttää `\\~' ligaturen alkupäässä"
 
 #. (pitch == prev_pitch)
-#: gregorian-ligature-engraver.cc:226
-msgid "can't apply `\\~' on heads with identical pitch"
+#: gregorian-ligature-engraver.cc:224
+msgid "cannot apply `\\~' on heads with identical pitch"
 msgstr "ei voitu käyttää `\\~' identtisien nuotinkorkeuksien päissä"
 
 msgstr "ei voitu käyttää `\\~' identtisien nuotinkorkeuksien päissä"
 
-#: grob-interface.cc:48
+#: grob-interface.cc:57
 #, c-format
 msgid "Unknown interface `%s'"
 msgstr "Tuntematon rajapinta `%s'"
 
 #, c-format
 msgid "Unknown interface `%s'"
 msgstr "Tuntematon rajapinta `%s'"
 
-#: grob-interface.cc:59
+#: grob-interface.cc:68
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "Ladokkeella `%s' ei ole rajapintaa ominaisuudella `%s'"
 
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "Ladokkeella `%s' ei ole rajapintaa ominaisuudella `%s'"
 
-#: grob.cc:242
+#: grob.cc:253
 msgid "Infinity or NaN encountered"
 msgstr "ääretön tai NaN kohdattiin"
 
 msgid "Infinity or NaN encountered"
 msgstr "ääretön tai NaN kohdattiin"
 
-#: hairpin.cc:149
+#: hairpin.cc:183
 msgid "decrescendo too small"
 msgstr "liian lyhyt decrescendo"
 
 msgid "decrescendo too small"
 msgstr "liian lyhyt decrescendo"
 
-#: hairpin.cc:150
-msgid "crescendo too small"
-msgstr "liian lyhyt crescendo"
-
-#: horizontal-bracket-engraver.cc:58
-msgid "don't have that many brackets"
+#: horizontal-bracket-engraver.cc:59
+#, fuzzy
+msgid "do not have that many brackets"
 msgstr "ei ole käytössä niin monia sulkeita"
 
 msgstr "ei ole käytössä niin monia sulkeita"
 
-#: horizontal-bracket-engraver.cc:67
+#: horizontal-bracket-engraver.cc:68
 msgid "conflicting note group events"
 msgstr "ristiriitainen nuottiryhmä -tapaus"
 
 msgid "conflicting note group events"
 msgstr "ristiriitainen nuottiryhmä -tapaus"
 
@@ -878,72 +895,77 @@ msgstr "päättämätön tavuviiva"
 msgid "include files are not allowed in safe mode"
 msgstr "sisällytettävät tiedostot eivät ole sallittuja turvatilassa"
 
 msgid "include files are not allowed in safe mode"
 msgstr "sisällytettävät tiedostot eivät ole sallittuja turvatilassa"
 
-#: includable-lexer.cc:60 lily-guile.cc:96 lily-parser-scheme.cc:104
+#: includable-lexer.cc:60 lily-guile.cc:90 lily-parser-scheme.cc:116
 #, c-format
 #, c-format
-msgid "can't find file: `%s'"
+msgid "cannot find file: `%s'"
 msgstr "tiedostoa ei löydy: `%s'"
 
 msgstr "tiedostoa ei löydy: `%s'"
 
-#: input.cc:103 source-file.cc:153 source-file.cc:168
+#: includable-lexer.cc:62 lily-parser-scheme.cc:107
+#, c-format
+msgid "(search path: `%s')"
+msgstr "(hakupolku: `%s')"
+
+#: input.cc:112 source-file.cc:168 source-file.cc:183
 msgid "position unknown"
 msgid "position unknown"
-msgstr "sijainti tuntematon:"
+msgstr "sijainti tuntematon"
 
 
-#: ligature-engraver.cc:100
-msgid "can't find start of ligature"
+#: ligature-engraver.cc:93
+msgid "cannot find start of ligature"
 msgstr "ei löytynyt alkua ligature:lle"
 
 msgstr "ei löytynyt alkua ligature:lle"
 
-#: ligature-engraver.cc:105
+#: ligature-engraver.cc:98
 msgid "no right bound"
 msgstr "ei oikeata reunaa"
 
 msgid "no right bound"
 msgstr "ei oikeata reunaa"
 
-#: ligature-engraver.cc:127
+#: ligature-engraver.cc:120
 msgid "already have a ligature"
 msgstr "ligature löytyi jo"
 
 msgid "already have a ligature"
 msgstr "ligature löytyi jo"
 
-#: ligature-engraver.cc:136
+#: ligature-engraver.cc:129
 msgid "no left bound"
 msgstr "ei vasenta reunaa"
 
 msgid "no left bound"
 msgstr "ei vasenta reunaa"
 
-#: ligature-engraver.cc:180
+#: ligature-engraver.cc:173
 msgid "unterminated ligature"
 msgstr "päättämätön ligature"
 
 msgid "unterminated ligature"
 msgstr "päättämätön ligature"
 
-#: ligature-engraver.cc:209
+#: ligature-engraver.cc:202
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "ligature ei voi sisältää taukoa; sivuutetaan tauko"
 
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "ligature ei voi sisältää taukoa; sivuutetaan tauko"
 
-#: ligature-engraver.cc:210
+#: ligature-engraver.cc:203
 msgid "ligature was started here"
 msgstr "ligature alkoi tästä"
 
 msgid "ligature was started here"
 msgstr "ligature alkoi tästä"
 
-#: lily-guile.cc:98
+#: lily-guile.cc:92
 #, c-format
 msgid "(load path: `%s')"
 msgstr "(hakupolku: `%s')"
 
 #, c-format
 msgid "(load path: `%s')"
 msgstr "(hakupolku: `%s')"
 
-#: lily-guile.cc:441
+#: lily-guile.cc:518
 #, c-format
 #, c-format
-msgid "can't find property type-check for `%s' (%s)."
+msgid "cannot find property type-check for `%s' (%s)."
 msgstr "Ei löytynyt tyyppitarkistusta ominaisuudelle `%s' (%s)."
 
 msgstr "Ei löytynyt tyyppitarkistusta ominaisuudelle `%s' (%s)."
 
-#: lily-guile.cc:444
+#: lily-guile.cc:521
 msgid "perhaps a typing error?"
 msgstr "ehkä näppäilyvirhe?"
 
 msgid "perhaps a typing error?"
 msgstr "ehkä näppäilyvirhe?"
 
-#: lily-guile.cc:450
+#: lily-guile.cc:527
 msgid "doing assignment anyway"
 msgstr "suoritetaan tehtävä joka tapauksessa"
 
 msgid "doing assignment anyway"
 msgstr "suoritetaan tehtävä joka tapauksessa"
 
-#: lily-guile.cc:462
+#: lily-guile.cc:539
 #, c-format
 msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr "tyypin `%s' tarkistus epäonnistui; arvon `%s' on oltava tyyppiä `%s'"
 
 #, c-format
 msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr "tyypin `%s' tarkistus epäonnistui; arvon `%s' on oltava tyyppiä `%s'"
 
-#: lily-lexer.cc:223
+#: lily-lexer.cc:254
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "tunnistenimi on avainsana: `%s'"
 
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "tunnistenimi on avainsana: `%s'"
 
-#: lily-lexer.cc:238
+#: lily-lexer.cc:269
 #, c-format
 msgid "error at EOF: %s"
 msgstr "virhe tiedoston lopussa (EOF): %s"
 #, c-format
 msgid "error at EOF: %s"
 msgstr "virhe tiedoston lopussa (EOF): %s"
@@ -953,30 +975,31 @@ msgstr "virhe tiedoston lopussa (EOF): %s"
 msgid "deprecated function called: %s"
 msgstr "vanhentunut funktiokutsu: %s"
 
 msgid "deprecated function called: %s"
 msgstr "vanhentunut funktiokutsu: %s"
 
-#: lily-parser-scheme.cc:76
-#, c-format
-msgid "Changing working directory to `%s'"
+#: lily-parser-scheme.cc:88
+#, fuzzy, c-format
+msgid "Changing working directory to: `%s'"
 msgstr "Vaihdetaan työhakemistoksi `%s'"
 
 msgstr "Vaihdetaan työhakemistoksi `%s'"
 
-#: lily-parser-scheme.cc:96
+#: lily-parser-scheme.cc:106
 #, c-format
 #, c-format
-msgid "can't find init file: `%s'"
+msgid "cannot find init file: `%s'"
 msgstr "tiedostoa ei löydy: `%s'"
 
 msgstr "tiedostoa ei löydy: `%s'"
 
-#: lily-parser-scheme.cc:114
+#: lily-parser-scheme.cc:125
 #, c-format
 msgid "Processing `%s'"
 #, c-format
 msgid "Processing `%s'"
-msgstr "Prosessoidaan `%s'..."
+msgstr "Prosessoidaan `%s'"
 
 
-#: lily-parser.cc:97
+#: lily-parser.cc:99
 msgid "Parsing..."
 msgstr "Jäsennetään..."
 
 msgid "Parsing..."
 msgstr "Jäsennetään..."
 
-#: lily-parser.cc:126
-msgid "braces don't match"
+#: lily-parser.cc:127
+#, fuzzy
+msgid "braces do not match"
 msgstr "aaltosulkumerkit eivät täsmää"
 
 msgstr "aaltosulkumerkit eivät täsmää"
 
-#: lyric-combine-music-iterator.cc:256
+#: lyric-combine-music-iterator.cc:291
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "ei löydetty Voice `%s'"
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "ei löydetty Voice `%s'"
@@ -1004,7 +1027,7 @@ msgid ""
 "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n"
 "General Public License for more details.\n"
 "\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 (refer to the file COPYING) of the\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"
 "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"
@@ -1018,8 +1041,8 @@ msgstr ""
 "KAUPAKSIKÄYVYYDESTÄ tai SOPIVUUDESTA TIETTYYN TARKOITUKSEEN.  Lisätietoja\n"
 "voit katsoa lisenssistä GNU General Public Licence.\n"
 "\n"
 "KAUPAKSIKÄYVYYDESTÄ tai SOPIVUUDESTA TIETTYYN TARKOITUKSEEN.  Lisätietoja\n"
 "voit katsoa lisenssistä GNU General Public Licence.\n"
 "\n"
-"    Saat kopion (katso tiedosto COPYING) lisenssistä GNU General Public\n"
-"License ohjelman mukana; jos et saanut; kirjoita osoitteeseen\n"
+"    Olet saanut kopion lisenssistä GNU General Public License\n"
+"tämän ohjelman mukana; jos et saanut; kirjoita osoitteeseen\n"
 "Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 
 "Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 
@@ -1028,23 +1051,25 @@ msgid "BACK"
 msgstr "PÄÄ"
 
 #: main.cc:153
 msgstr "PÄÄ"
 
 #: main.cc:153
+#, fuzzy
 msgid ""
 msgid ""
-"use backend BACK (gnome, ps,eps,\n"
-"scm, svg, tex, texstr)\n"
-"default: PS"
+"use backend BACK (eps, gnome, ps [default],\n"
+"scm, svg, tex, texstr)"
 msgstr ""
 "käytä päänä PÄÄ (gnome, ps, eps,\n"
 "scm, svg, tex, texstr)\n"
 "default: PS"
 
 #: main.cc:155
 msgstr ""
 "käytä päänä PÄÄ (gnome, ps, eps,\n"
 "scm, svg, tex, texstr)\n"
 "default: PS"
 
 #: main.cc:155
-msgid "SYM=VAL"
+#, fuzzy
+msgid "SYM[=VAL]"
 msgstr "SYM=VAL"
 
 #: main.cc:156
 msgstr "SYM=VAL"
 
 #: main.cc:156
+#, fuzzy
 msgid ""
 msgid ""
-"set a Scheme program option. Uses #t if VAL is not specified\n"
-"Try -dhelp for help."
+"set Scheme option SYM to VAL (default: #t)\n"
+"Use -dhelp for help."
 msgstr ""
 "aseta Scheme -ohjelman optio. Käyttää #t jos VAL ei ole määritelty\n"
 "Koeta -dhelp saadaksesi lisäapua."
 msgstr ""
 "aseta Scheme -ohjelman optio. Käyttää #t jos VAL ei ole määritelty\n"
 "Koeta -dhelp saadaksesi lisäapua."
@@ -1072,41 +1097,36 @@ msgid "generate DVI (tex backend only)"
 msgstr "tuota DVI (vain käytettäessä tex -päätä)"
 
 #: main.cc:164
 msgstr "tuota DVI (vain käytettäessä tex -päätä)"
 
 #: main.cc:164
-msgid "relocate using directory of lilypond program"
-msgstr "paikallista käyttäen lilypond ohjelman hakemistoa"
-
-#: main.cc:165
 msgid "generate PDF (default)"
 msgstr "tuota PDF (oletus)"
 
 msgid "generate PDF (default)"
 msgstr "tuota PDF (oletus)"
 
-#: main.cc:166
+#: main.cc:165
 msgid "generate PNG"
 msgstr "tuota PNG"
 
 msgid "generate PNG"
 msgstr "tuota PNG"
 
-#: main.cc:167
+#: main.cc:166
 msgid "generate PostScript"
 msgstr "tuota PostScript"
 
 msgid "generate PostScript"
 msgstr "tuota PostScript"
 
-#: main.cc:168
+#: main.cc:167
 msgid "generate TeX (tex backend only)"
 msgstr "tuota TeX (vain käytettäessä tex -päätä)"
 
 msgid "generate TeX (tex backend only)"
 msgstr "tuota TeX (vain käytettäessä tex -päätä)"
 
-#: main.cc:169
-msgid "print this help"
-msgstr "näytä tämä opaste"
+#: main.cc:168
+msgid "show this help and exit"
+msgstr ""
 
 
-#: main.cc:170
+#: main.cc:169
 msgid "FIELD"
 msgstr "KENTTÄ"
 
 msgid "FIELD"
 msgstr "KENTTÄ"
 
-#: main.cc:170
-msgid "dump a header field to file BASENAME.FIELD"
+#: main.cc:169
+#, fuzzy
+msgid ""
+"dump header field FIELD to file\n"
+"named BASENAME.FIELD"
 msgstr "kirjoita otsake tiedostoon PERUSNIMI.KENTTÄ"
 
 msgstr "kirjoita otsake tiedostoon PERUSNIMI.KENTTÄ"
 
-#: main.cc:171
-msgid "DIR"
-msgstr "HAKEMISTO"
-
 #: main.cc:171
 msgid "add DIR to search path"
 msgstr "lisää HAKEMISTO hakupolkuun"
 #: main.cc:171
 msgid "add DIR to search path"
 msgstr "lisää HAKEMISTO hakupolkuun"
@@ -1140,14 +1160,22 @@ msgid "generate a preview of the first system"
 msgstr "tee kuva ensimmäisestä kokonaisuudesta"
 
 #: main.cc:180
 msgstr "tee kuva ensimmäisestä kokonaisuudesta"
 
 #: main.cc:180
-msgid "disallow unsafe Scheme and PostScript operations"
-msgstr "älä salli turvattomia Scheme ja PostScript -operaatioita"
+msgid "relocate using directory of lilypond program"
+msgstr "paikallista käyttäen lilypond ohjelman hakemistoa"
 
 #: main.cc:181
 
 #: main.cc:181
-msgid "print version number"
+#, fuzzy
+msgid ""
+"disallow unsafe Scheme and PostScript\n"
+"operations"
+msgstr "älä salli turvattomia Scheme ja PostScript -operaatioita"
+
+#: main.cc:183
+#, fuzzy
+msgid "show version number and exit"
 msgstr "tulosta versionumero"
 
 msgstr "tulosta versionumero"
 
-#: main.cc:221
+#: main.cc:224
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1157,125 +1185,125 @@ msgstr ""
 "%s  ja muut."
 
 #. No version number or newline here.  It confuses help2man.
 "%s  ja muut."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:248
+#: main.cc:251
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Käyttö: %s [OPTIO]... TIEDOSTO..."
 
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Käyttö: %s [OPTIO]... TIEDOSTO..."
 
-#: main.cc:250
+#: main.cc:253
 #, c-format
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Lado musiikki ja/tai tuota MIDI tiedostosta TIEDOSTO."
 
 #, c-format
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Lado musiikki ja/tai tuota MIDI tiedostosta TIEDOSTO."
 
-#: main.cc:252
+#: main.cc:255
 #, c-format
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond tuottaa kaunista musiikkinotaatiota."
 
 #, c-format
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond tuottaa kaunista musiikkinotaatiota."
 
-#: main.cc:254
+#: main.cc:257
 #, c-format
 msgid "For more information, see %s"
 #, c-format
 msgid "For more information, see %s"
-msgstr "Lisätietoja varten, katso %s."
+msgstr "Lisätietoja varten, katso %s"
 
 
-#: main.cc:256
+#: main.cc:259
 #, c-format
 msgid "Options:"
 msgstr "Optiot:"
 
 #, c-format
 msgid "Options:"
 msgstr "Optiot:"
 
-#: main.cc:260
+#: main.cc:263
 #, c-format
 msgid "Report bugs via %s"
 #, c-format
 msgid "Report bugs via %s"
-msgstr "Raportoi virheet osoitteeseen %s."
+msgstr "Raportoi virheet osoitteeseen %s"
 
 
-#: main.cc:306
+#: main.cc:309
 #, c-format
 #, c-format
-msgid "expected %d arguments with jail, found: %d"
-msgstr "odotettiin %d argumenttia jail:ille, löytyi: %d"
+msgid "expected %d arguments with jail, found: %u"
+msgstr "odotettiin %d argumenttia chroot-vankilalle, löytyi: %u"
 
 
-#: main.cc:320
+#: main.cc:323
 #, c-format
 msgid "no such user: %s"
 msgstr "käyttäjää ei löydy: `%s'"
 
 #, c-format
 msgid "no such user: %s"
 msgstr "käyttäjää ei löydy: `%s'"
 
-#: main.cc:322
+#: main.cc:325
 #, c-format
 #, c-format
-msgid "can't get user id from user name: %s: %s"
+msgid "cannot get user id from user name: %s: %s"
 msgstr "ei saatu käyttäjä-id:tä käyttäjänimestä: %s: %s"
 
 msgstr "ei saatu käyttäjä-id:tä käyttäjänimestä: %s: %s"
 
-#: main.cc:337
+#: main.cc:340
 #, c-format
 msgid "no such group: %s"
 msgstr "ryhmää ei ole: %s"
 
 #, c-format
 msgid "no such group: %s"
 msgstr "ryhmää ei ole: %s"
 
-#: main.cc:339
+#: main.cc:342
 #, c-format
 #, c-format
-msgid "can't get group id from group name: %s: %s"
+msgid "cannot get group id from group name: %s: %s"
 msgstr "ei voitu saada ryhmä -id:tä ryhmänimestä: %s: %s"
 
 msgstr "ei voitu saada ryhmä -id:tä ryhmänimestä: %s: %s"
 
-#: main.cc:347
+#: main.cc:350
 #, c-format
 #, c-format
-msgid "can't chroot to: %s: %s"
+msgid "cannot chroot to: %s: %s"
 msgstr "chroot ei onnistunut: %s: %s"
 
 msgstr "chroot ei onnistunut: %s: %s"
 
-#: main.cc:354
+#: main.cc:357
 #, c-format
 #, c-format
-msgid "can't change group id to: %d: %s"
+msgid "cannot change group id to: %d: %s"
 msgstr "ei voitu korvata ryhmän id:tä : %d: %s"
 
 msgstr "ei voitu korvata ryhmän id:tä : %d: %s"
 
-#: main.cc:360
+#: main.cc:363
 #, c-format
 #, c-format
-msgid "can't change user id to: %d: %s"
+msgid "cannot change user id to: %d: %s"
 msgstr "ei voitu vaihtaa käyttäjä-id:tä : %d: %s"
 
 msgstr "ei voitu vaihtaa käyttäjä-id:tä : %d: %s"
 
-#: main.cc:366
+#: main.cc:369
 #, c-format
 #, c-format
-msgid "can't change working directory to: %s: %s"
+msgid "cannot change working directory to: %s: %s"
 msgstr "työhakemiston vaihto ei onnistunut: %s: %s"
 
 msgstr "työhakemiston vaihto ei onnistunut: %s: %s"
 
-#: main.cc:413
+#: main.cc:415
 #, c-format
 msgid "Evaluating %s"
 msgstr "Määritetään %s"
 
 #, c-format
 msgid "Evaluating %s"
 msgstr "Määritetään %s"
 
-#: main.cc:627
+#: main.cc:645
 #, c-format
 msgid "exception caught: %s"
 msgstr "napattiin poikkeus: %s"
 
 #. FIXME: constant error message.
 #, c-format
 msgid "exception caught: %s"
 msgstr "napattiin poikkeus: %s"
 
 #. FIXME: constant error message.
-#: mark-engraver.cc:131
+#: mark-engraver.cc:154
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark vaatii kokonaislukuargumentin"
 
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark vaatii kokonaislukuargumentin"
 
-#: mark-engraver.cc:137
+#: mark-engraver.cc:160
 msgid "mark label must be a markup object"
 msgstr "merkinnän on oltava markup -objekti"
 
 msgid "mark label must be a markup object"
 msgstr "merkinnän on oltava markup -objekti"
 
-#: mensural-ligature-engraver.cc:77
+#: mensural-ligature-engraver.cc:85
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "ligatuuri vähemmällä kuin 2:lla nuottipäällä -> ohitetaan"
 
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "ligatuuri vähemmällä kuin 2:lla nuottipäällä -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:104
+#: mensural-ligature-engraver.cc:112
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "ei voitu määrittää nuottikorkeutta ligatuurin osalle -> ohitetaan"
 
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "ei voitu määrittää nuottikorkeutta ligatuurin osalle -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:118
+#: mensural-ligature-engraver.cc:126
 msgid "single note ligature - skipping"
 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
 
 msgid "single note ligature - skipping"
 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:130
+#: mensural-ligature-engraver.cc:138
 msgid "prime interval within ligature -> skipping"
 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
 
 msgid "prime interval within ligature -> skipping"
 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:142
+#: mensural-ligature-engraver.cc:150
 msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
 msgstr "mensuraaliligatuuri: kesto ei ollut Mx, L, B tai S -> ohitetaan"
 
 msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
 msgstr "mensuraaliligatuuri: kesto ei ollut Mx, L, B tai S -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:190
+#: mensural-ligature-engraver.cc:198
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "semibrevis vaatii samantyyppisen seuraavaksi -> ohitetaan"
 
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "semibrevis vaatii samantyyppisen seuraavaksi -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:201
+#: mensural-ligature-engraver.cc:209
 msgid ""
 "semibreves can only appear at the beginning of a ligature,\n"
 "and there may be only zero or two of them"
 msgid ""
 "semibreves can only appear at the beginning of a ligature,\n"
 "and there may be only zero or two of them"
@@ -1283,7 +1311,7 @@ msgstr ""
 "semibreve:t voivat esiintyä vain ligaturen alussa,\n"
 "ja niitä voi olla vain nolla tai kaksi"
 
 "semibreve:t voivat esiintyä vain ligaturen alussa,\n"
 "ja niitä voi olla vain nolla tai kaksi"
 
-#: mensural-ligature-engraver.cc:228
+#: mensural-ligature-engraver.cc:236
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
@@ -1295,7 +1323,7 @@ msgstr ""
 "toiseksi viimeisen nuotin on oltava joku muu,\n"
 "tai ligaturan täytyy olla LB tai SSB"
 
 "toiseksi viimeisen nuotin on oltava joku muu,\n"
 "tai ligaturan täytyy olla LB tai SSB"
 
-#: mensural-ligature-engraver.cc:348
+#: mensural-ligature-engraver.cc:356
 msgid "unexpected case fall-through"
 msgstr "odottamaton tapauksen raukeaminen"
 
 msgid "unexpected case fall-through"
 msgstr "odottamaton tapauksen raukeaminen"
 
@@ -1312,102 +1340,123 @@ msgstr "Mensural_ligature: (join_right == 0)"
 msgid "no such MIDI instrument: `%s'"
 msgstr "ei löytynyt MIDI-instrumenttia: `%s'"
 
 msgid "no such MIDI instrument: `%s'"
 msgstr "ei löytynyt MIDI-instrumenttia: `%s'"
 
-#: midi-item.cc:264
-msgid "silly pitch"
-msgstr "sekava äänenkorkeus"
-
-#: midi-item.cc:280
+#: midi-item.cc:285
 #, c-format
 msgid "experimental: temporarily fine tuning (of %d cents) a channel."
 msgstr "kokeellinen: viritetään väliaisesti (%d senttiä) kanavaa."
 
 #: midi-stream.cc:28
 #, c-format
 #, c-format
 msgid "experimental: temporarily fine tuning (of %d cents) a channel."
 msgstr "kokeellinen: viritetään väliaisesti (%d senttiä) kanavaa."
 
 #: midi-stream.cc:28
 #, c-format
-msgid "can't open for write: %s: %s"
+msgid "cannot open for write: %s: %s"
 msgstr "tiedostoa ei voitu avata kirjoitettavaksi: %s: `%s'"
 
 #: midi-stream.cc:44
 #, c-format
 msgstr "tiedostoa ei voitu avata kirjoitettavaksi: %s: `%s'"
 
 #: midi-stream.cc:44
 #, c-format
-msgid "can't write to file: `%s'"
+msgid "cannot write to file: `%s'"
 msgstr "tiedostoon ei voitu kirjoittaa: `%s'"
 
 msgstr "tiedostoon ei voitu kirjoittaa: `%s'"
 
-#: music.cc:140
-#, c-format
-msgid "octave check failed; expected %s, found: %s"
-msgstr "oktaavitarkistus epäonnistui; oletettiin %s, löydettiin: %s"
+#: music-iterator.cc:171
+msgid "Sending non-event to context"
+msgstr "Lähetetään ei-tapahtuma kontekstille"
 
 
-#: music.cc:203
+#: music.cc:141
+#, fuzzy, c-format
+msgid "octave check failed; expected \"%s\", found: \"%s\""
+msgstr "oktaavitarkistus epäonnistui; oletettiin \"%s\", löydettiin: %s"
+
+#: music.cc:207
 #, c-format
 msgid "transposition by %s makes alteration larger than double"
 msgstr "transponointi %s:N verran tekee muutokset suuremmaksi kuin kaksi"
 
 #, c-format
 msgid "transposition by %s makes alteration larger than double"
 msgstr "transponointi %s:N verran tekee muutokset suuremmaksi kuin kaksi"
 
-#: new-fingering-engraver.cc:84
-msgid "can't add text scripts to individual note heads"
+#: new-fingering-engraver.cc:96
+msgid "cannot add text scripts to individual note heads"
 msgstr "ei voitu lisätä tekstinpätkiä yksittäisiin nuotteihin"
 
 msgstr "ei voitu lisätä tekstinpätkiä yksittäisiin nuotteihin"
 
-#.
-#. music for the softenon children?
-#.
-#: new-fingering-engraver.cc:153
-msgid "music for the martians."
-msgstr "musiikkia marsilaisille."
-
-#: new-fingering-engraver.cc:261
+#: new-fingering-engraver.cc:239
 msgid "no placement found for fingerings"
 msgstr "sormitukselle ei löytynyt paikkaa"
 
 msgid "no placement found for fingerings"
 msgstr "sormitukselle ei löytynyt paikkaa"
 
-#: new-fingering-engraver.cc:262
+#: new-fingering-engraver.cc:240
 msgid "placing below"
 msgstr "sijoitetaan alle"
 
 msgid "placing below"
 msgstr "sijoitetaan alle"
 
-#: note-collision.cc:405
+#: note-collision.cc:457
 msgid "ignoring too many clashing note columns"
 msgstr "liian monta törmäävää nuottisaraketta"
 
 msgid "ignoring too many clashing note columns"
 msgstr "liian monta törmäävää nuottisaraketta"
 
-#: note-column.cc:123
-msgid "can't have note heads and rests together on a stem"
+#: note-column.cc:124
+msgid "cannot have note heads and rests together on a stem"
 msgstr "ei voinut olla nuotinpäitä ja taukoja yhtäaikaa palkissa"
 
 msgstr "ei voinut olla nuotinpäitä ja taukoja yhtäaikaa palkissa"
 
-#: note-head.cc:67
+#: note-head.cc:63
 #, c-format
 #, c-format
-msgid "note head `%s' not found"
-msgstr "nuottipäätä `%s' ei löytynyt"
+msgid "none of note heads `%s' or `%s' found"
+msgstr "yhtäkään nuottipäistä `%s' tai `%s' ei löytynyt"
 
 
-#: note-heads-engraver.cc:84
+#: note-heads-engraver.cc:61
 msgid "NoteEvent without pitch"
 msgstr "NoteEvent ilman nuottikorkeutta"
 
 #: open-type-font.cc:33
 #, c-format
 msgid "NoteEvent without pitch"
 msgstr "NoteEvent ilman nuottikorkeutta"
 
 #: open-type-font.cc:33
 #, c-format
-msgid "can't allocate %lu bytes"
+msgid "cannot allocate %lu bytes"
 msgstr "ei voitu varata %lu bittiä"
 
 #: open-type-font.cc:37
 #, c-format
 msgstr "ei voitu varata %lu bittiä"
 
 #: open-type-font.cc:37
 #, c-format
-msgid "can't load font table: %s"
+msgid "cannot load font table: %s"
 msgstr "ei voitu ladata fonttitaulukkoa: `%s'"
 
 msgstr "ei voitu ladata fonttitaulukkoa: `%s'"
 
-#: open-type-font.cc:108
+#: open-type-font.cc:98
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "tukematon fonttimuoto: %s"
 
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "tukematon fonttimuoto: %s"
 
-#: open-type-font.cc:110
+#: open-type-font.cc:100
 #, c-format
 msgid "unknown error: %d reading font file: %s"
 msgstr "tuntematon virhe: %d lukee fonttitiedostoa: %s"
 
 #, c-format
 msgid "unknown error: %d reading font file: %s"
 msgstr "tuntematon virhe: %d lukee fonttitiedostoa: %s"
 
-#: open-type-font.cc:183 open-type-font.cc:307
+#: open-type-font.cc:173 open-type-font.cc:297
 #, c-format
 #, c-format
-msgid "FT_Get_Glyph_Name() returned error: %d"
-msgstr "FT_Get_Glyph_Name() palautti virheen: %d"
+msgid "FT_Get_Glyph_Name() returned error: %u"
+msgstr "FT_Get_Glyph_Name() palautti virheen: %u"
 
 
-#: pango-font.cc:157
+#: page-turn-page-breaking.cc:205
+#, fuzzy
+msgid ""
+"cannot fit the first page turn onto a single page.  Consider setting first-"
+"page-number to an even number."
+msgstr ""
+"Ei voitu sovittaa ensimmäistä sivunkääntöä yhdelle sivulle. Harkitse "
+"ensimmäisen sivunumeron (first-page-number) asettamista parittomaksi."
+
+#: page-turn-page-breaking.cc:218
+#, c-format
+msgid "Calculating page and line breaks (%d possible page breaks)..."
+msgstr ""
+"Lasketaan sivujen ja rivien katkaisuja (%d mahdollista sivunkatkaisua)..."
+
+#: page-turn-page-breaking.cc:236 paper-score.cc:154
+msgid "Drawing systems..."
+msgstr "Piirretään tahteja..."
+
+#: pango-font.cc:181
+#, c-format
+msgid ""
+"Glyph has no name, but font supports glyph naming.\n"
+"Skipping glyph U+%0X, file %s"
+msgstr ""
+"Ladokkeella ei ole nimea, mutta kirjasin tukee ladokkeen nimeämistä.\n"
+"Sivuutetaan ladoke U+%0X, tiedostossa %s"
+
+#: pango-font.cc:224
 #, c-format
 msgid "no PostScript font name for font `%s'"
 msgstr "ei PostScript fonttinimeä fontille `%s'"
 
 #, c-format
 msgid "no PostScript font name for font `%s'"
 msgstr "ei PostScript fonttinimeä fontille `%s'"
 
-#: pango-font.cc:205
+#: pango-font.cc:272
 msgid "FreeType face has no PostScript font name"
 msgstr "FreeType muodolla ei ollut PostScript fonttinimeä"
 
 msgid "FreeType face has no PostScript font name"
 msgstr "FreeType muodolla ei ollut PostScript fonttinimeä"
 
@@ -1416,12 +1465,16 @@ msgstr "FreeType muodolla ei ollut PostScript fonttinimeä"
 msgid "Layout output to `%s'..."
 msgstr "Aseta tulostus paikkaan `%s'..."
 
 msgid "Layout output to `%s'..."
 msgstr "Aseta tulostus paikkaan `%s'..."
 
-#: paper-score.cc:104
+#: paper-score.cc:105
+msgid "Calculating line breaks..."
+msgstr "Lasketaan rivinvaihtoja..."
+
+#: paper-score.cc:118
 #, c-format
 msgid "Element count %d (spanners %d) "
 msgstr "Elementtien määrä: %d (ladokkeita: %d)"
 
 #, c-format
 msgid "Element count %d (spanners %d) "
 msgstr "Elementtien määrä: %d (ladokkeita: %d)"
 
-#: paper-score.cc:108
+#: paper-score.cc:122
 msgid "Preprocessing graphical objects..."
 msgstr "Esiprosessoidaan graafisia kohteita..."
 
 msgid "Preprocessing graphical objects..."
 msgstr "Esiprosessoidaan graafisia kohteita..."
 
@@ -1429,114 +1482,102 @@ msgstr "Esiprosessoidaan graafisia kohteita..."
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE antoi virheen lausekkeelle, joka alkoi täältä"
 
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE antoi virheen lausekkeelle, joka alkoi täältä"
 
-#: percent-repeat-engraver.cc:209
+#: percent-repeat-engraver.cc:200
 msgid "unterminated percent repeat"
 msgstr "päättämätön prosenttitoisto"
 
 msgid "unterminated percent repeat"
 msgstr "päättämätön prosenttitoisto"
 
-#: percent-repeat-iterator.cc:52
-msgid "no one to print a percent"
-msgstr "kukaan ei voinut tulostaa prosenttia"
-
-#: performance.cc:46
+#: performance.cc:45
 msgid "Track..."
 msgstr "Jälki..."
 
 msgid "Track..."
 msgstr "Jälki..."
 
-#: performance.cc:70
+#: performance.cc:74
 msgid "MIDI channel wrapped around"
 msgstr "MIDI kanava kietaistiin ympäri"
 
 msgid "MIDI channel wrapped around"
 msgstr "MIDI kanava kietaistiin ympäri"
 
-#: performance.cc:71
+#: performance.cc:75
 msgid "remapping modulo 16"
 msgstr "kuvataan uudelleen modulo 16"
 
 msgid "remapping modulo 16"
 msgstr "kuvataan uudelleen modulo 16"
 
-#: performance.cc:90
-msgid "Creator: "
-msgstr "Tekijä: "
-
-#: performance.cc:110
-msgid "at "
-msgstr "kohdassa "
-
-#: performance.cc:162
+#: performance.cc:103
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "Tehdään MIDI-tuloste `%s'..."
 
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "Tehdään MIDI-tuloste `%s'..."
 
-#: phrasing-slur-engraver.cc:170
+#: phrasing-slur-engraver.cc:146
 msgid "unterminated phrasing slur"
 msgstr "päättämätön fraaseerauskaari"
 
 msgid "unterminated phrasing slur"
 msgstr "päättämätön fraaseerauskaari"
 
-#: piano-pedal-engraver.cc:223
+#: piano-pedal-engraver.cc:286
 #, c-format
 msgid "expect 3 strings for piano pedals, found: %ld"
 msgstr "odotettiin 3 merkkijonoa pianopedaalille, löytyi: %ld"
 
 #, c-format
 msgid "expect 3 strings for piano pedals, found: %ld"
 msgstr "odotettiin 3 merkkijonoa pianopedaalille, löytyi: %ld"
 
-#: piano-pedal-engraver.cc:238 piano-pedal-engraver.cc:249
-#: piano-pedal-performer.cc:82
+#: piano-pedal-engraver.cc:301 piano-pedal-engraver.cc:312
+#: piano-pedal-performer.cc:93
 #, c-format
 #, c-format
-msgid "can't find start of piano pedal: `%s'"
+msgid "cannot find start of piano pedal: `%s'"
 msgstr "ei löydetty alkua pianopedaalille: `%s'"
 
 msgstr "ei löydetty alkua pianopedaalille: `%s'"
 
-#: piano-pedal-engraver.cc:296
+#: piano-pedal-engraver.cc:347
 #, c-format
 #, c-format
-msgid "can't find start of piano pedal bracket: `%s'"
+msgid "cannot find start of piano pedal bracket: `%s'"
 msgstr "ei löydetty alkua pianopedaalimerkinnälle: `%s'"
 
 msgstr "ei löydetty alkua pianopedaalimerkinnälle: `%s'"
 
-#: program-option.cc:195
+#: program-option.cc:205
 #, c-format
 msgid "no such internal option: %s"
 msgstr "tuntematon sisäinen optio: %s"
 
 #, c-format
 msgid "no such internal option: %s"
 msgstr "tuntematon sisäinen optio: %s"
 
-#: property-iterator.cc:81
+#: property-iterator.cc:74
 #, c-format
 msgid "not a grob name, `%s'"
 #, c-format
 msgid "not a grob name, `%s'"
-msgstr "ei ole graafisen objektin (grob) nimi: `%s'."
+msgstr "ei ole graafisen objektin (grob) nimi, `%s'"
 
 
-#: quote-iterator.cc:255
-#, c-format
-msgid "in quotation: junking event %s"
-msgstr "sitaatissa: hylätään tapahtuma `%s'"
-
-#: relative-octave-check.cc:39
+#: relative-octave-check.cc:38
 msgid "Failed octave check, got: "
 msgstr "Oktaavitarkistus epäonnistui, saatiin: "
 
 msgid "Failed octave check, got: "
 msgstr "Oktaavitarkistus epäonnistui, saatiin: "
 
-#: relocate.cc:52
+#: relocate.cc:44
+#, fuzzy, c-format
+msgid "Setting %s to %s"
+msgstr "Asetetaan %s kohtaan %s\n"
+
+#: relocate.cc:59
 #, c-format
 msgid "no such file: %s for %s"
 msgstr "tiedostoa ei löydy: %s kohteelle %s"
 
 #, c-format
 msgid "no such file: %s for %s"
 msgstr "tiedostoa ei löydy: %s kohteelle %s"
 
-#: relocate.cc:62 relocate.cc:80
+#: relocate.cc:69 relocate.cc:87
 #, c-format
 msgid "no such directory: %s for %s"
 msgstr "hakemistoa ei löydy: %s kohteelle %s"
 
 #, c-format
 msgid "no such directory: %s for %s"
 msgstr "hakemistoa ei löydy: %s kohteelle %s"
 
-#: relocate.cc:72
+#: relocate.cc:79
 #, c-format
 msgid "%s=%s (prepend)\n"
 msgstr "%s=%s (painota)\n"
 
 #, c-format
 msgid "%s=%s (prepend)\n"
 msgstr "%s=%s (painota)\n"
 
-#: relocate.cc:104
+#: relocate.cc:99
 #, c-format
 msgid "Relocation: compile prefix=%s, new prefix=%s"
 msgstr "Paikantaminen: käännös-etuliite=%s, uusi etuliite=%s"
 
 #, c-format
 msgid "Relocation: compile prefix=%s, new prefix=%s"
 msgstr "Paikantaminen: käännös-etuliite=%s, uusi etuliite=%s"
 
-#: relocate.cc:130
+#: relocate.cc:129
 #, c-format
 msgid "Relocation: framework_prefix=%s"
 msgstr "Paikantaminen: framework_prefix=%s"
 
 #, c-format
 msgid "Relocation: framework_prefix=%s"
 msgstr "Paikantaminen: framework_prefix=%s"
 
-#: relocate.cc:212
+#: relocate.cc:169
 #, c-format
 msgid "Relocation: is absolute: argv0=%s"
 msgstr "Paikantaminen: absoluuttinen: argv0=%s"
 
 #, c-format
 msgid "Relocation: is absolute: argv0=%s"
 msgstr "Paikantaminen: absoluuttinen: argv0=%s"
 
-#: relocate.cc:219
+#: relocate.cc:176
 #, c-format
 msgid "Relocation: from cwd: argv0=%s"
 msgstr "Paikantaminen: nykyisestä polusta: argv0=%s"
 
 #, c-format
 msgid "Relocation: from cwd: argv0=%s"
 msgstr "Paikantaminen: nykyisestä polusta: argv0=%s"
 
-#: relocate.cc:228
+#: relocate.cc:185
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
@@ -1545,15 +1586,25 @@ msgstr ""
 "Paikantaminen: polusta PATH=%s\n"
 "argv0=%s"
 
 "Paikantaminen: polusta PATH=%s\n"
 "argv0=%s"
 
-#: rest-collision.cc:149
-msgid "can't resolve rest collision: rest direction not set"
+#: relocate.cc:354
+#, fuzzy, c-format
+msgid "Relocation file: %s"
+msgstr "Paikannustiedosto %s\n"
+
+#: relocate.cc:390
+#, c-format
+msgid "Unknown relocation command %s"
+msgstr "Tuntematon paikannuskomento %s"
+
+#: rest-collision.cc:151
+msgid "cannot resolve rest collision: rest direction not set"
 msgstr "ei voida määrittää taukojen törmäystä: tauon suuntaa ei asetettu"
 
 msgstr "ei voida määrittää taukojen törmäystä: tauon suuntaa ei asetettu"
 
-#: rest-collision.cc:163 rest-collision.cc:208
+#: rest-collision.cc:165 rest-collision.cc:210
 msgid "too many colliding rests"
 msgstr "liian monta törmäävää taukoa"
 
 msgid "too many colliding rests"
 msgstr "liian monta törmäävää taukoa"
 
-#: rest.cc:140
+#: rest.cc:144
 #, c-format
 msgid "rest `%s' not found"
 msgstr "taukoa `%s' ei löytynyt, "
 #, c-format
 msgid "rest `%s' not found"
 msgstr "taukoa `%s' ei löytynyt, "
@@ -1572,38 +1623,48 @@ msgstr "Fontteja ei oltu asennettu kunnolla."
 msgid "Search path `%s'"
 msgstr "Hakupolku `%s'"
 
 msgid "Search path `%s'"
 msgstr "Hakupolku `%s'"
 
-#: score.cc:211
+#: score-engraver.cc:73
+msgid "Aborting"
+msgstr "Keskeytetään"
+
+#: score.cc:225
 msgid "already have music in score"
 msgstr "viivastolla on jo musiikkia"
 
 msgid "already have music in score"
 msgstr "viivastolla on jo musiikkia"
 
-#: score.cc:212
+#: score.cc:226
 msgid "this is the previous music"
 msgstr "tämä on edellinen musiikki"
 
 msgid "this is the previous music"
 msgstr "tämä on edellinen musiikki"
 
-#: score.cc:217
+#: score.cc:231
 msgid "errors found, ignoring music expression"
 msgstr "virheitä löytyi, sivuutetaan musiikki-ilmaisu"
 
 #. FIXME:
 msgid "errors found, ignoring music expression"
 msgstr "virheitä löytyi, sivuutetaan musiikki-ilmaisu"
 
 #. FIXME:
-#: script-engraver.cc:105
-msgid "don't know how to interpret articulation: "
+#: script-engraver.cc:102
+#, fuzzy
+msgid "do not know how to interpret articulation: "
 msgstr "ei tiedetä kuinka tulkita artikulaatio: "
 
 msgstr "ei tiedetä kuinka tulkita artikulaatio: "
 
-#: script-engraver.cc:106
+#: script-engraver.cc:103
 msgid "scheme encoding: "
 msgstr "scheme koodaus: "
 
 msgid "scheme encoding: "
 msgstr "scheme koodaus: "
 
-#: simple-spacer.cc:406
+#: simple-spacer.cc:375
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "Ei jousta sarakkeen %d ja sitä seuraavan välillä"
 
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "Ei jousta sarakkeen %d ja sitä seuraavan välillä"
 
-#: slur-engraver.cc:176
+#: slur-engraver.cc:83 tuplet-engraver.cc:75
+#, c-format
+msgid "direction of %s invalid: %d"
+msgstr ""
+
+#: slur-engraver.cc:157
 msgid "unterminated slur"
 msgstr "päättämätön kaari"
 
 msgid "unterminated slur"
 msgstr "päättämätön kaari"
 
-#: slur-engraver.cc:185
-msgid "can't end slur"
+#: slur-engraver.cc:166
+msgid "cannot end slur"
 msgstr "ei löytynyt kaaren loppua"
 
 #: source-file.cc:74
 msgstr "ei löytynyt kaaren loppua"
 
 #: source-file.cc:74
@@ -1611,104 +1672,77 @@ msgstr "ei löytynyt kaaren loppua"
 msgid "expected to read %d characters, got %d"
 msgstr "odotettiin %d merkkiä, saatiin %d"
 
 msgid "expected to read %d characters, got %d"
 msgstr "odotettiin %d merkkiä, saatiin %d"
 
-#: spacing-spanner.cc:48
-#, c-format
-msgid "Global shortest duration is %s"
-msgstr "Yleinen lyhin kesto on %s"
+#: staff-symbol-engraver.cc:62
+msgid "staff-span event has no direction"
+msgstr "viivastot ylittävällä tapahtumalla ei ole suuntaa"
 
 
-#: stem-engraver.cc:93
+#: stem-engraver.cc:92
 msgid "tremolo duration is too long"
 msgstr "tremolon kesto on liian pitkä"
 
 #. FIXME:
 msgid "tremolo duration is too long"
 msgstr "tremolon kesto on liian pitkä"
 
 #. FIXME:
-#: stem-engraver.cc:130
+#: stem-engraver.cc:129
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "lisätään nuottipää sopimattomaan varteen (tyyppi = %d)"
 
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "lisätään nuottipää sopimattomaan varteen (tyyppi = %d)"
 
-#: stem-engraver.cc:132
+#: stem-engraver.cc:131
 msgid "maybe input should specify polyphonic voices"
 msgstr "ehkä syötteen täytyisi määrittää moniäänisiä ääniä"
 
 msgid "maybe input should specify polyphonic voices"
 msgstr "ehkä syötteen täytyisi määrittää moniäänisiä ääniä"
 
-#: stem.cc:98
+#: stem.cc:105
 msgid "weird stem size, check for narrow beams"
 msgstr "outo varren koko, koeta lyhyempiä palkkeja"
 
 msgid "weird stem size, check for narrow beams"
 msgstr "outo varren koko, koeta lyhyempiä palkkeja"
 
-#: stem.cc:592
+#: stem.cc:641
 #, c-format
 msgid "flag `%s' not found"
 msgstr "lippua `%s' ei löydetty"
 
 #, c-format
 msgid "flag `%s' not found"
 msgstr "lippua `%s' ei löydetty"
 
-#: stem.cc:603
+#: stem.cc:652
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "lipun piirtoa `%s' ei löytynyt"
 
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "lipun piirtoa `%s' ei löytynyt"
 
-#: system.cc:181
+#: system.cc:180
 #, c-format
 msgid "Element count %d."
 msgstr "Elementtien määrä: %d."
 
 #, c-format
 msgid "Element count %d."
 msgstr "Elementtien määrä: %d."
 
-#: system.cc:268
+#: system.cc:276
 #, c-format
 msgid "Grob count %d"
 msgstr "Graafisien objektien (grob) määrä: %d "
 
 #, c-format
 msgid "Grob count %d"
 msgstr "Graafisien objektien (grob) määrä: %d "
 
-#: system.cc:289
-msgid "Calculating line breaks..."
-msgstr "Lasketaan rivinvaihtoja..."
-
-#: text-spanner-engraver.cc:62
-msgid "can't find start of text spanner"
+#: text-spanner-engraver.cc:61
+msgid "cannot find start of text spanner"
 msgstr "ei löydetty alkua tekstileikkeelle"
 
 msgstr "ei löydetty alkua tekstileikkeelle"
 
-#: text-spanner-engraver.cc:74
+#: text-spanner-engraver.cc:73
 msgid "already have a text spanner"
 msgstr "tekstileike löytyi jo"
 
 msgid "already have a text spanner"
 msgstr "tekstileike löytyi jo"
 
-#: text-spanner-engraver.cc:134
+#: text-spanner-engraver.cc:133
 msgid "unterminated text spanner"
 msgstr "päättämätön tekstileike"
 
 msgid "unterminated text spanner"
 msgstr "päättämätön tekstileike"
 
-#. Not using ngettext's plural feature here, as this message is
-#. more of a programming error.
-#: tfm-reader.cc:107
-#, c-format
-msgid "TFM header of `%s' has only %u word (s)"
-msgstr "TFM-otsakkeessa `%s' on vain %u sana(a)"
-
-#: tfm-reader.cc:140
-#, c-format
-msgid "%s: TFM file has %u parameters, which is more than the %u I can handle"
-msgstr ""
-"%s: TFM-tiedostossa on %u parametria, mikä on enemmän kuin maksimimäärä %u"
-
-#: tfm.cc:72
-#, c-format
-msgid "can't find ascii character: %d"
-msgstr "ei löydetty ASCII-merkkiä: %d"
-
-#: tie-engraver.cc:181
+#: tie-engraver.cc:264
 msgid "lonely tie"
 msgstr "yksinäinen sidos"
 
 msgid "lonely tie"
 msgstr "yksinäinen sidos"
 
-#: time-scaled-music-iterator.cc:24
-msgid "no one to print a tuplet start bracket"
-msgstr "ketään ei löytynyt tulostamaan tupletin alkusulkua"
-
 #.
 #. Todo: should make typecheck?
 #.
 #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
 #.
 #.
 #. Todo: should make typecheck?
 #.
 #. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
 #.
-#: time-signature-engraver.cc:63
+#: time-signature-engraver.cc:64
 #, c-format
 msgid "strange time signature found: %d/%d"
 msgstr "löydettiin outo aikamerkintä: %d/%d"
 
 #. If there is no such symbol, we default to the numbered style.
 #. (Here really with a warning!)
 #, c-format
 msgid "strange time signature found: %d/%d"
 msgstr "löydettiin outo aikamerkintä: %d/%d"
 
 #. If there is no such symbol, we default to the numbered style.
 #. (Here really with a warning!)
-#: time-signature.cc:82
+#: time-signature.cc:83
 #, c-format
 msgid "time signature symbol `%s' not found; reverting to numbered style"
 msgstr "aikamerkintäsymbolia `%s' ei löytynyt; vaihdetaan numeroituun tyyliin"
 #, c-format
 msgid "time signature symbol `%s' not found; reverting to numbered style"
 msgstr "aikamerkintäsymbolia `%s' ei löytynyt; vaihdetaan numeroituun tyyliin"
@@ -1718,19 +1752,30 @@ msgstr "aikamerkintäsymbolia `%s' ei löytynyt; vaihdetaan numeroituun tyyliin"
 msgid "unknown translator: `%s'"
 msgstr "tuntematon tulkitsija: `%s'"
 
 msgid "unknown translator: `%s'"
 msgstr "tuntematon tulkitsija: `%s'"
 
-#: trill-spanner-engraver.cc:71
-msgid "can't find start of trill spanner"
+#: translator-group.cc:151
+#, c-format
+msgid "cannot find: `%s'"
+msgstr "ei löytynyt `%s'"
+
+#: translator.cc:332
+#, c-format
+msgid "Two simultaneous %s events, junking this one"
+msgstr "Kaksi samanaikaista %s-tapahtumaa, hylätään tämä"
+
+#: translator.cc:333
+#, c-format
+msgid "Previous %s event here"
+msgstr "Edellinen %s-tapahtuma täällä"
+
+#: trill-spanner-engraver.cc:68
+msgid "cannot find start of trill spanner"
 msgstr "ei löydetty alkua trilliladokkeelle"
 
 msgstr "ei löydetty alkua trilliladokkeelle"
 
-#: trill-spanner-engraver.cc:83
+#: trill-spanner-engraver.cc:80
 msgid "already have a trill spanner"
 msgstr "trilliladoke löytyi jo"
 
 msgid "already have a trill spanner"
 msgstr "trilliladoke löytyi jo"
 
-#: trill-spanner-engraver.cc:142
-msgid "unterminated trill spanner"
-msgstr "päättymätön trilliladoke"
-
-#: vaticana-ligature-engraver.cc:347
+#: vaticana-ligature-engraver.cc:388
 #, c-format
 msgid ""
 "ignored prefix (es) `%s' of this head according to restrictions of the "
 #, c-format
 msgid ""
 "ignored prefix (es) `%s' of this head according to restrictions of the "
@@ -1739,7 +1784,7 @@ msgstr ""
 "sivuutetaan prefiksi (t) `%s' tälle nuottipäälle valitun ligatuurityylin "
 "mukaisesti"
 
 "sivuutetaan prefiksi (t) `%s' tälle nuottipäälle valitun ligatuurityylin "
 "mukaisesti"
 
-#: vaticana-ligature-engraver.cc:584
+#: vaticana-ligature-engraver.cc:714
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
 msgstr ""
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
 msgstr ""
@@ -1758,272 +1803,276 @@ msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: nollayhdiste (delta_pitch == 0)"
 
 #. fixme: be more verbose.
 msgstr "Vaticana_ligature: nollayhdiste (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:142
-msgid "can't end volta spanner"
+#: volta-engraver.cc:144
+msgid "cannot end volta spanner"
 msgstr "ei löydetty loppua volta ladokkeelle"
 
 msgstr "ei löydetty loppua volta ladokkeelle"
 
-#: volta-engraver.cc:152
+#: volta-engraver.cc:154
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "löytyi ja volta-ladoke, lopetetaan se ennenaikaisesti"
 
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "löytyi ja volta-ladoke, lopetetaan se ennenaikaisesti"
 
-#: volta-engraver.cc:156
+#: volta-engraver.cc:158
 msgid "also already have an ended spanner"
 msgstr "myös tekstileike päätettiin jo"
 
 msgid "also already have an ended spanner"
 msgstr "myös tekstileike päätettiin jo"
 
-#. no longer valid with dashes in \paper{} block.
-#: parser.yy:535
-msgid "identifier should have alphabetic characters only"
-msgstr "tunnisteessa saa olla vain aakkosellisia merkkejä"
+#: volta-engraver.cc:159
+msgid "giving up"
+msgstr "luovutetaan"
 
 
-#: parser.yy:705
+#: parser.yy:702
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "\\paper ei voi olla käytössä \\score:ssa, käytä \\layout sen sijaan"
 
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "\\paper ei voi olla käytössä \\score:ssa, käytä \\layout sen sijaan"
 
-#: parser.yy:729
+#: parser.yy:726
 msgid "need \\paper for paper block"
 msgstr "tarvitaan \\paper paperiryhmälle"
 
 msgid "need \\paper for paper block"
 msgstr "tarvitaan \\paper paperiryhmälle"
 
-#: parser.yy:879
-msgid "more alternatives than repeats"
-msgstr "enemmän vaihtoehtoja kuin kertauksia"
-
-#: parser.yy:916
-#, c-format
-msgid "expect 2 elements for Chord tremolo, found %d"
-msgstr "odotetaan 2 elementtiä Chord tremololle, löytyi %d"
-
-#: parser.yy:1316
+#: parser.yy:1172
 msgid "Grob name should be alphanumeric"
 msgstr "Graafiseen objectiin täytyy olla kirjain tai numero"
 
 msgid "Grob name should be alphanumeric"
 msgstr "Graafiseen objectiin täytyy olla kirjain tai numero"
 
-#: parser.yy:1681
+#: parser.yy:1475
 msgid "second argument must be pitch list"
 msgstr "toisen argumentin on oltava äänenkorkeuslista"
 
 msgid "second argument must be pitch list"
 msgstr "toisen argumentin on oltava äänenkorkeuslista"
 
-#: parser.yy:1724 parser.yy:1729 parser.yy:2235
+#: parser.yy:1502 parser.yy:1507 parser.yy:1972
 msgid "have to be in Lyric mode for lyrics"
 msgstr "täytyy olla Lyrics -moodissa lyriikkaa varten"
 
 msgid "have to be in Lyric mode for lyrics"
 msgstr "täytyy olla Lyrics -moodissa lyriikkaa varten"
 
-#: parser.yy:1822
+#: parser.yy:1604
 msgid "expecting string as script definition"
 msgstr "oletetaan merkkijonon olevan skriptimäärittely"
 
 msgid "expecting string as script definition"
 msgstr "oletetaan merkkijonon olevan skriptimäärittely"
 
-#: parser.yy:1981 parser.yy:2031
+#: parser.yy:1759 parser.yy:1809
 #, c-format
 msgid "not a duration: %d"
 msgstr "ei ole kesto: %d"
 
 #, c-format
 msgid "not a duration: %d"
 msgstr "ei ole kesto: %d"
 
-#: parser.yy:2154
+#: parser.yy:1926
 msgid "have to be in Note mode for notes"
 msgstr "täytyy olla Note -moodissa nuotteja varten"
 
 msgid "have to be in Note mode for notes"
 msgstr "täytyy olla Note -moodissa nuotteja varten"
 
-#: parser.yy:2248
+#: parser.yy:1987
 msgid "have to be in Chord mode for chords"
 msgstr "täytyy olla Chord -moodissa sointuja varten"
 
 msgid "have to be in Chord mode for chords"
 msgstr "täytyy olla Chord -moodissa sointuja varten"
 
-#: parser.yy:2730
-msgid "music head function must return Music object"
-msgstr "päämusiikkifuntion täytyy palauttaa Music objecti"
-
-#: lexer.ll:158
+#: lexer.ll:176
 msgid "stray UTF-8 BOM encountered"
 msgstr "satunnainen UTF-8 BOM (osaluettelo) havaittu"
 
 msgid "stray UTF-8 BOM encountered"
 msgstr "satunnainen UTF-8 BOM (osaluettelo) havaittu"
 
-#: lexer.ll:162
+#: lexer.ll:180
 msgid "Skipping UTF-8 BOM"
 msgstr "Sivuutetaan UTF-8 BOM (osaluettelo)"
 
 msgid "Skipping UTF-8 BOM"
 msgstr "Sivuutetaan UTF-8 BOM (osaluettelo)"
 
-#: lexer.ll:206
+#: lexer.ll:235
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "Avataan syöte: `%s'"
 
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "Avataan syöte: `%s'"
 
-#: lexer.ll:214
+#: lexer.ll:252
 msgid "quoted string expected after \\version"
 msgstr "lainausmerkittyä merkkijonoa ei löytynyt kohteen \\version jälkeen"
 
 msgid "quoted string expected after \\version"
 msgstr "lainausmerkittyä merkkijonoa ei löytynyt kohteen \\version jälkeen"
 
-#: lexer.ll:218
+#: lexer.ll:256
 msgid "quoted string expected after \\sourcefilename"
 msgstr "odotettiin lainausmerkittyä merkkijonoa \\sourcefilename:n jälkeen"
 
 msgid "quoted string expected after \\sourcefilename"
 msgstr "odotettiin lainausmerkittyä merkkijonoa \\sourcefilename:n jälkeen"
 
-#: lexer.ll:231
+#: lexer.ll:260
+msgid "integer expected after \\sourcefileline"
+msgstr "odotettiin kokonaislukua \\sourcefilename:n jälkeen"
+
+#: lexer.ll:273
 msgid "EOF found inside a comment"
 msgstr "EOF löytyi kommentin sisältä"
 
 msgid "EOF found inside a comment"
 msgstr "EOF löytyi kommentin sisältä"
 
-#: lexer.ll:246
+#: lexer.ll:288
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput ei ole sallittu init-alustustiedoston ulkopuolella"
 
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput ei ole sallittu init-alustustiedoston ulkopuolella"
 
-#: lexer.ll:270
+#: lexer.ll:312
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "väärä tai määrittämätön tunniste: `%s'"
 
 #. backup rule
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "väärä tai määrittämätön tunniste: `%s'"
 
 #. backup rule
-#: lexer.ll:279
+#: lexer.ll:321
 msgid "end quote missing"
 msgstr "jälkimmäinen lainaismerkki puuttuu"
 
 msgid "end quote missing"
 msgstr "jälkimmäinen lainaismerkki puuttuu"
 
-#: lexer.ll:441
+#: lexer.ll:466
 msgid "Brace found at end of lyric.  Did you forget a space?"
 msgstr "Sulkumerkki löytyi lyriikan lopussa.  Unohditko välilyönnin?"
 
 msgid "Brace found at end of lyric.  Did you forget a space?"
 msgstr "Sulkumerkki löytyi lyriikan lopussa.  Unohditko välilyönnin?"
 
-#: lexer.ll:540
+#: lexer.ll:559
 msgid "Brace found at end of markup.  Did you forget a space?"
 msgstr "Sulkumerkki löytyi lyriikan lopussa.  Unohditko välilyönnin?"
 
 msgid "Brace found at end of markup.  Did you forget a space?"
 msgstr "Sulkumerkki löytyi lyriikan lopussa.  Unohditko välilyönnin?"
 
-#: lexer.ll:640
+#: lexer.ll:659
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "epäkelpo merkki: `%c'"
 
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "epäkelpo merkki: `%c'"
 
-#: lexer.ll:727
+#: lexer.ll:774 lexer.ll:775
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "tuntematon koodinvaihtomerkillinen merkkijono: `\\\\%s'"
 
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "tuntematon koodinvaihtomerkillinen merkkijono: `\\\\%s'"
 
-#: lexer.ll:825
+#: lexer.ll:880 lexer.ll:881
 #, c-format
 #, c-format
-msgid "Incorrect lilypond version: %s (%s, %s)"
-msgstr "Epäkelpo lilypond versio: %s (%s, %s)"
+msgid "file too old: %s (oldest supported: %s)"
+msgstr ""
 
 
-#: lexer.ll:826
-msgid "Consider updating the input with the convert-ly script"
+#: lexer.ll:881 lexer.ll:882
+#, fuzzy
+msgid "consider updating the input with the convert-ly script"
 msgstr "Harkitse syötteen päivittämistä convert-ly scriptillä"
 
 msgstr "Harkitse syötteen päivittämistä convert-ly scriptillä"
 
-#. TODO: print location
-#: lexer.ll:946
-msgid "can't find signature for music function"
-msgstr "ei löytynyt aikamerkintää musiikkifunktiolle"
+#: lexer.ll:887 lexer.ll:888
+#, c-format
+msgid "program too old: %s (file requires: %s)"
+msgstr ""
 
 
-#: backend-library.scm:19 lily.scm:439 ps-to-png.scm:88
-#, lisp-format
+#: backend-library.scm:19 lily.scm:599 ps-to-png.scm:82
+#, scheme-format
 msgid "Invoking `~a'..."
 msgstr "Kutsutaan `~a'..."
 
 #: backend-library.scm:24
 msgid "Invoking `~a'..."
 msgstr "Kutsutaan `~a'..."
 
 #: backend-library.scm:24
-#, lisp-format
+#, scheme-format
 msgid "`~a' failed (~a)"
 msgstr "`~a' epäonnistui (~a)"
 
 msgid "`~a' failed (~a)"
 msgstr "`~a' epäonnistui (~a)"
 
-#: backend-library.scm:84 framework-tex.scm:339 framework-tex.scm:364
-#, lisp-format
+#: backend-library.scm:95 framework-tex.scm:343 framework-tex.scm:368
+#, scheme-format
 msgid "Converting to `~a'..."
 msgstr "Muunnetaan kohteeksi `~a'..."
 
 msgid "Converting to `~a'..."
 msgstr "Muunnetaan kohteeksi `~a'..."
 
-#: backend-library.scm:100
-#, lisp-format
+#: backend-library.scm:108
+#, scheme-format
 msgid "Converting to ~a..."
 msgstr "Muunnetaan kohteeksi `~a'..."
 
 #: backend-library.scm:145
 msgid "Converting to ~a..."
 msgstr "Muunnetaan kohteeksi `~a'..."
 
 #: backend-library.scm:145
-#, lisp-format
+#, scheme-format
 msgid "Writing header field `~a' to `~a'..."
 msgstr "Kirjoitetaan otsaketietue `~a' kohteeseen `~a'..."
 
 msgid "Writing header field `~a' to `~a'..."
 msgstr "Kirjoitetaan otsaketietue `~a' kohteeseen `~a'..."
 
-#: define-context-properties.scm:13 define-grob-properties.scm:10
+#: define-context-properties.scm:20 define-grob-properties.scm:10
 #: define-music-properties.scm:10
 #: define-music-properties.scm:10
-#, lisp-format
+#, scheme-format
 msgid "symbol ~S redefined"
 msgstr "symbol ~S määriteltiin uudelleen"
 
 msgid "symbol ~S redefined"
 msgstr "symbol ~S määriteltiin uudelleen"
 
-#: define-markup-commands.scm:251
+#: define-event-classes.scm:119
+#, scheme-format
+msgid "event class ~A seems to be unused"
+msgstr "tapahtumaluokka ~A näkyy olevan käyttämätön"
+
+#. should be programming-error
+#: define-event-classes.scm:125
+#, scheme-format
+msgid "translator listens to nonexisting event class ~A"
+msgstr "kääntäjä kuuntelee olematonta tapahtumaluokkaa ~A"
+
+#: define-markup-commands.scm:255
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr ""
 "systeemejä ei löytynyt \\score merkinnässä, onko siinä \\layout blokkia?"
 
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr ""
 "systeemejä ei löytynyt \\score merkinnässä, onko siinä \\layout blokkia?"
 
-#: define-markup-commands.scm:1139
-#, lisp-format
+#: define-markup-commands.scm:1297
+#, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr "ei ole sallittu keston merkkijono: ~a"
 
 msgid "not a valid duration string: ~a"
 msgstr "ei ole sallittu keston merkkijono: ~a"
 
-#: define-music-types.scm:738
-#, lisp-format
+#: define-music-types.scm:751
+#, scheme-format
 msgid "symbol expected: ~S"
 msgstr "odotettiin symboli: ~S"
 
 msgid "symbol expected: ~S"
 msgstr "odotettiin symboli: ~S"
 
-#: define-music-types.scm:741
-#, lisp-format
-msgid "can't find music object: ~S"
+#: define-music-types.scm:754
+#, scheme-format
+msgid "cannot find music object: ~S"
 msgstr "ei löytynyt musiikkiobjektia: ~S"
 
 msgstr "ei löytynyt musiikkiobjektia: ~S"
 
-#: define-music-types.scm:761
-#, lisp-format
+#: define-music-types.scm:774
+#, scheme-format
 msgid "unknown repeat type `~S'"
 msgstr "tuntematon toistotyyppi `~S'"
 
 msgid "unknown repeat type `~S'"
 msgstr "tuntematon toistotyyppi `~S'"
 
-#: define-music-types.scm:762
+#: define-music-types.scm:775
 msgid "See music-types.scm for supported repeats"
 msgstr "Katso tiedostosta music-types.scm tuetut toistotyypit"
 
 #: document-backend.scm:91
 msgid "See music-types.scm for supported repeats"
 msgstr "Katso tiedostosta music-types.scm tuetut toistotyypit"
 
 #: document-backend.scm:91
-#, lisp-format
+#, scheme-format
 msgid "pair expected in doc ~s"
 msgstr "pari odotettiin dokumentissa ~s"
 
 #: document-backend.scm:135
 msgid "pair expected in doc ~s"
 msgstr "pari odotettiin dokumentissa ~s"
 
 #: document-backend.scm:135
-#, lisp-format
-msgid "can't find interface for property: ~S"
+#, scheme-format
+msgid "cannot find interface for property: ~S"
 msgstr "ei löytynyt rajapintaa ominaisuudelle: ~S"
 
 #: document-backend.scm:145
 msgstr "ei löytynyt rajapintaa ominaisuudelle: ~S"
 
 #: document-backend.scm:145
-#, lisp-format
+#, scheme-format
 msgid "unknown Grob interface: ~S"
 msgstr "tuntematon ladoke-rajapinta: ~S"
 
 #: documentation-lib.scm:45
 msgid "unknown Grob interface: ~S"
 msgstr "tuntematon ladoke-rajapinta: ~S"
 
 #: documentation-lib.scm:45
-#, lisp-format
+#, scheme-format
 msgid "Processing ~S..."
 msgstr "Prosessoidaan ~S..."
 
 #: documentation-lib.scm:150
 msgid "Processing ~S..."
 msgstr "Prosessoidaan ~S..."
 
 #: documentation-lib.scm:150
-#, lisp-format
+#, scheme-format
 msgid "Writing ~S..."
 msgstr "Kirjoitetaan ~S..."
 
 #: documentation-lib.scm:172
 msgid "Writing ~S..."
 msgstr "Kirjoitetaan ~S..."
 
 #: documentation-lib.scm:172
-#, lisp-format
-msgid "can't find description for property ~S (~S)"
+#, scheme-format
+msgid "cannot find description for property ~S (~S)"
 msgstr "ei löytynyt kuvausta ominaisuudelle ~S (~S)"
 
 msgstr "ei löytynyt kuvausta ominaisuudelle ~S (~S)"
 
-#: framework-eps.scm:71 framework-eps.scm:72
-#, lisp-format
+#: framework-eps.scm:91 framework-eps.scm:92
+#, scheme-format
 msgid "Writing ~a..."
 msgstr "Kirjoitetaan ~a..."
 
 msgid "Writing ~a..."
 msgstr "Kirjoitetaan ~a..."
 
-#: framework-ps.scm:272
-#, lisp-format
-msgid "can't embed ~S=~S"
+#: framework-ps.scm:279
+#, scheme-format
+msgid "cannot embed ~S=~S"
 msgstr "ei voitu upottaa ~S=~S"
 
 msgstr "ei voitu upottaa ~S=~S"
 
-#: framework-ps.scm:323
-#, lisp-format
-msgid "can't extract file matching ~a from ~a"
+#: framework-ps.scm:332
+#, scheme-format
+msgid "cannot extract file matching ~a from ~a"
 msgstr "Ei voitu poimia sopivaa tiedoa ~a:sta ~a:han"
 
 msgstr "Ei voitu poimia sopivaa tiedoa ~a:sta ~a:han"
 
-#: framework-ps.scm:340
-#, lisp-format
-msgid "don't know how to embed ~S=~S"
+#: framework-ps.scm:349
+#, fuzzy, scheme-format
+msgid "do not know how to embed ~S=~S"
 msgstr "ei tiedetä kuinka upottaa ~S=~S"
 
 msgstr "ei tiedetä kuinka upottaa ~S=~S"
 
-#: framework-ps.scm:370
-#, lisp-format
-msgid "don't know how to embed font ~s ~s ~s"
+#: framework-ps.scm:380
+#, fuzzy, scheme-format
+msgid "do not know how to embed font ~s ~s ~s"
 msgstr "ei tiedetä kuinka sijoittaa fontti ~s ~s ~s"
 
 msgstr "ei tiedetä kuinka sijoittaa fontti ~s ~s ~s"
 
-#: framework-ps.scm:576
-#, lisp-format
-msgid "can't convert <stdout> to ~S"
+#: framework-ps.scm:729
+#, scheme-format
+msgid "cannot convert <stdout> to ~S"
 msgstr "ei voida konvertoida <stdout> ~S:ksi"
 
 msgstr "ei voida konvertoida <stdout> ~S:ksi"
 
-#: framework-ps.scm:593 framework-ps.scm:596
-#, lisp-format
-msgid "can't generate ~S using the postscript back-end"
+#: framework-ps.scm:748 framework-ps.scm:751
+#, scheme-format
+msgid "cannot generate ~S using the postscript back-end"
 msgstr "ei voida generoida ~S käyttäen postscript päänä"
 
 msgstr "ei voida generoida ~S käyttäen postscript päänä"
 
-#: framework-ps.scm:603
+#: framework-ps.scm:758
+#, fuzzy
 msgid ""
 msgid ""
-"nThe PostScript backend does not support the 'classic'\n"
+"\n"
+"The PostScript backend does not support the 'classic'\n"
 "framework. Use the EPS backend instead,\n"
 "\n"
 "  lilypond -b eps <file>\n"
 "framework. Use the EPS backend instead,\n"
 "\n"
 "  lilypond -b eps <file>\n"
@@ -2036,257 +2085,221 @@ msgstr ""
 "\n"
 "tai poista lilypond-book -ominaiset asetukset syötteestä.\n"
 
 "\n"
 "tai poista lilypond-book -ominaiset asetukset syötteestä.\n"
 
-#: framework-tex.scm:356
-#, lisp-format
+#: framework-tex.scm:360
+#, scheme-format
 msgid "TeX file name must not contain whitespace: `~a'"
 msgstr "TeX -tiedostoniemessä ei saa olla välilyöntejä: `~a'"
 
 #: layout-beam.scm:29
 msgid "TeX file name must not contain whitespace: `~a'"
 msgstr "TeX -tiedostoniemessä ei saa olla välilyöntejä: `~a'"
 
 #: layout-beam.scm:29
-#, lisp-format
+#, scheme-format
 msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
 msgstr "Virhe palkin laskennassa.  Odotettiin (~S,~S), löytyi ~S."
 
 #: layout-beam.scm:46
 msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
 msgstr "Virhe palkin laskennassa.  Odotettiin (~S,~S), löytyi ~S."
 
 #: layout-beam.scm:46
-#, lisp-format
+#, scheme-format
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Virhe palkin laskennassa.  Odotettiin ~S 0, löytyi ~S."
 
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Virhe palkin laskennassa.  Odotettiin ~S 0, löytyi ~S."
 
-#: layout-page-layout.scm:439
+#: layout-page-layout.scm:357
 msgid "Calculating page breaks..."
 msgstr "Lasketaan sivunvaihtoja..."
 
 msgid "Calculating page breaks..."
 msgstr "Lasketaan sivunvaihtoja..."
 
-#: lily-library.scm:458
-#, lisp-format
+#: lily-library.scm:593
+#, scheme-format
 msgid "unknown unit: ~S"
 msgstr "tuntematon yksikkö: ~S"
 
 msgid "unknown unit: ~S"
 msgstr "tuntematon yksikkö: ~S"
 
-#: lily-library.scm:491
-#, lisp-format
-msgid "no \\version statement found,  add~afor future compatibility"
-msgstr "ei \\version määrittelyä löytynyt,  lisää~ayhteensopivuuden varalle"
+#: lily-library.scm:626
+#, scheme-format
+msgid "no \\version statement found, please add~afor future compatibility"
+msgstr ""
+"ei löytynyt \\version-määrittelyä, ole hyvä ja lisää~a yhteensopivuuden "
+"varalle"
 
 
-#: lily-library.scm:498
+#: lily-library.scm:633
 msgid "old relative compatibility not used"
 msgstr "vanhaa relative -yhteensopivuutta ei käytetty"
 
 msgid "old relative compatibility not used"
 msgstr "vanhaa relative -yhteensopivuutta ei käytetty"
 
-#: lily.scm:172
-#, lisp-format
+#: lily.scm:144
+#, fuzzy, scheme-format
+msgid "cannot find: ~A"
+msgstr "Ei löydetty ~A"
+
+#: lily.scm:209
+#, scheme-format
 msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr "väärä tyyppi argumentille ~a.  Odotettiin ~a, löytyi ~s"
 
 msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr "väärä tyyppi argumentille ~a.  Odotettiin ~a, löytyi ~s"
 
-#: lily.scm:377 lily.scm:429
-#, lisp-format
+#: lily.scm:525 lily.scm:589
+#, scheme-format
 msgid "failed files: ~S"
 msgstr "epäonniset tiedostot: ~S"
 
 msgid "failed files: ~S"
 msgstr "epäonniset tiedostot: ~S"
 
-#: lily.scm:419
-#, lisp-format
+#: lily.scm:579
+#, scheme-format
 msgid "Redirecting output to ~a..."
 msgstr "Ohjataan tulosteet paikkaan ~a..."
 
 msgid "Redirecting output to ~a..."
 msgstr "Ohjataan tulosteet paikkaan ~a..."
 
-#: markup.scm:88
-#, lisp-format
+#: ly-syntax-constructors.scm:40
+msgid "Music head function must return Music object"
+msgstr "Music-pääfunktion täytyy palauttaa Music-objekti"
+
+#: ly-syntax-constructors.scm:136
+#, scheme-format
+msgid "Invalid property operation ~a"
+msgstr "Tuntematon ominaisuustoiminta ~a"
+
+#: markup.scm:123
+#, scheme-format
 msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
 msgstr "Väärä argumenttin määrä.  Odotettiin: ~A, löytyi ~A: ~S"
 
 msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
 msgstr "Väärä argumenttin määrä.  Odotettiin: ~A, löytyi ~A: ~S"
 
-#: markup.scm:94
-#, lisp-format
+#: markup.scm:129
+#, scheme-format
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Väärä argumentti paikassa ~A.  Odotettiin: ~A, löytyi: ~S."
 
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Väärä argumentti paikassa ~A.  Odotettiin: ~A, löytyi: ~S."
 
-#: music-functions.scm:533
-#, lisp-format
+#: music-functions.scm:213
+#, fuzzy
+msgid "More alternatives than repeats.  Junking excess alternatives"
+msgstr ""
+"Enemmän vaihtoehtoja kuin kertauksia. Hylätään ylimääräiset vaihtoehdot"
+
+#: music-functions.scm:232
+#, scheme-format
+msgid "expecting 2 elements for chord tremolo, found ~a"
+msgstr "odotettiin 2 elementtiä sointutremololle, löytyi ~a"
+
+#: music-functions.scm:538
+#, scheme-format
 msgid "music expected: ~S"
 msgstr "oletettiin musiikkia: ~S"
 
 #. FIXME: uncomprehensable message
 msgid "music expected: ~S"
 msgstr "oletettiin musiikkia: ~S"
 
 #. FIXME: uncomprehensable message
-#: music-functions.scm:584
-#, lisp-format
+#: music-functions.scm:589
+#, scheme-format
 msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
 msgstr "Tahtiviivan tarkistus epäonnistui.  Odotettiin: ~a, löytyi: ~a"
 
 msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
 msgstr "Tahtiviivan tarkistus epäonnistui.  Odotettiin: ~a, löytyi: ~a"
 
-#: music-functions.scm:739
-#, lisp-format
-msgid "can't find quoted music `~S'"
+#: music-functions.scm:748
+#, fuzzy, scheme-format
+msgid "cannot find quoted music: `~S'"
 msgstr "ei löytynyt lainusmerkittyä musiikkai `~S'"
 
 msgstr "ei löytynyt lainusmerkittyä musiikkai `~S'"
 
-#: music-functions.scm:947
-#, lisp-format
+#: music-functions.scm:942
+#, scheme-format
 msgid "unknown accidental style: ~S"
 msgstr "tuntematan kortusmerkkityyli: ~S"
 
 msgid "unknown accidental style: ~S"
 msgstr "tuntematan kortusmerkkityyli: ~S"
 
-#: output-ps.scm:282
+#: output-ps.scm:315
 msgid "utf-8-string encountered in PS backend"
 msgstr "utf8-merkkijono havaittu PS päässä"
 
 msgid "utf-8-string encountered in PS backend"
 msgstr "utf8-merkkijono havaittu PS päässä"
 
-#: output-svg.scm:41
-#, lisp-format
+#: output-svg.scm:42
+#, scheme-format
 msgid "undefined: ~S"
 msgstr "määrittämätön: ~S"
 
 msgid "undefined: ~S"
 msgstr "määrittämätön: ~S"
 
-#: output-svg.scm:121
-#, lisp-format
-msgid "can't decypher Pango description: ~a"
+#: output-svg.scm:132
+#, scheme-format
+msgid "cannot decypher Pango description: ~a"
 msgstr "decypher ei onnistunut Pango kuvauksessa: ~a"
 
 #: output-tex.scm:98
 msgstr "decypher ei onnistunut Pango kuvauksessa: ~a"
 
 #: output-tex.scm:98
-#, lisp-format
-msgid "can't find ~a in ~a"
+#, scheme-format
+msgid "cannot find ~a in ~a"
 msgstr "ei löytynyt ~a paikassa ~a"
 
 #: paper.scm:69
 msgid "Not in toplevel scope"
 msgstr "Ei huipputason piirissä"
 
 msgstr "ei löytynyt ~a paikassa ~a"
 
 #: paper.scm:69
 msgid "Not in toplevel scope"
 msgstr "Ei huipputason piirissä"
 
-#: paper.scm:114
-#, lisp-format
+#: paper.scm:117
+#, scheme-format
 msgid "This is not a \\layout {} object, ~S"
 msgstr "Tämä ei ole \\layout {} objekti, ~S"
 
 msgid "This is not a \\layout {} object, ~S"
 msgstr "Tämä ei ole \\layout {} objekti, ~S"
 
+#: paper.scm:129
+#, scheme-format
+msgid "Unknown papersize: ~a"
+msgstr "Tuntematon paperikoko: ~a"
+
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
-#: paper.scm:142
+#: paper.scm:144
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "Täytyy käyttää #(set-paper-size .. ) \\paper { ... } :n sisällä"
 
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "Täytyy käyttää #(set-paper-size .. ) \\paper { ... } :n sisällä"
 
-#: parser-clef.scm:124
-#, lisp-format
+#: parser-clef.scm:126
+#, scheme-format
 msgid "unknown clef type `~a'"
 msgstr "tuntematon avaimen tyyppi: `~a'"
 
 msgid "unknown clef type `~a'"
 msgstr "tuntematon avaimen tyyppi: `~a'"
 
-#: parser-clef.scm:125
+#: parser-clef.scm:127
 msgid "see scm/clef.scm for supported clefs"
 msgstr "katso tiedostosta scm/clef.scm tuetut avaimet"
 
 msgid "see scm/clef.scm for supported clefs"
 msgstr "katso tiedostosta scm/clef.scm tuetut avaimet"
 
-#: ps-to-png.scm:97
-#, lisp-format
+#: ps-to-png.scm:88
+#, scheme-format
 msgid "~a exited with status: ~S"
 msgstr "~a komento lopetettiin tilassa: ~S"
 
 #: to-xml.scm:190
 msgid "~a exited with status: ~S"
 msgstr "~a komento lopetettiin tilassa: ~S"
 
 #: to-xml.scm:190
-msgid "assertion failed"
+#, fuzzy, scheme-format
+msgid "assertion failed: ~S"
 msgstr "ajaminen epäonnistui"
 
 msgstr "ajaminen epäonnistui"
 
-#~ msgid "Usage: %s [OPTIONS]... FILE"
-#~ msgstr "Käyttö: %s [OPTIOT]... TIEDOSTO"
-
-#~ msgid "Report bugs to %s."
-#~ msgstr "Raportoi virheet osoitteeseen %s."
-
-#~ msgid "Binary %s has version %s, looking for version %s"
-#~ msgstr "Binääritiedosto %s on versiota %s, etsitään versiota %s"
-
-#~ msgid "Opening pipe `%s'"
-#~ msgstr "Avataan putki `%s'"
+#~ msgid "silly pitch"
+#~ msgstr "sekava äänenkorkeus"
 
 
-#~ msgid "`%s' failed (%s)"
-#~ msgstr "`%s' epäonnistui (%s)"
-
-#~ msgid "(ignored)"
-#~ msgstr "(sivuutetaan)"
-
-#~ msgid "Cleaning %s..."
-#~ msgstr "Siivotaan pois %s..."
-
-#~ msgid "%s exited with status: %d"
-#~ msgstr "%s lopetettiin tilassa %d"
-
-#~ msgid "print program version\""
-#~ msgstr "tulosta ohjelman versionumero\""
-
-#~ msgid "getopt says: `%s'"
-#~ msgstr "getopt sanoo: `%s'"
-
-#~ msgid "FMT"
-#~ msgstr "FMT"
+#~ msgid "show warranty"
+#~ msgstr "näytä takuusitoumus"
 
 #~ msgid ""
 
 #~ msgid ""
-#~ "do not alter the number of newline characters in output\n"
-#~ "\t  .tex files. Useful when the LaTeX package srcltx is used"
-#~ msgstr ""
-#~ "älä muuta uusi rivi -merkkien määrää tulostuksessa\n"
-#~ "\t  .tex tiedostot. Käytännöllinen kun LaTeX paketti srcltx on käytössä"
-
-#~ msgid "print version information"
-#~ msgstr "tulosta versioinformaatio"
-
-#~ msgid "Report bugs via %s."
-#~ msgstr "Raportoi virheet osoitteeseen %s."
-
-#~ msgid "command exited with value %d"
-#~ msgstr "komento lopetettiin tilassa %d"
-
-#~ msgid "Convert mup to LilyPond source."
-#~ msgstr "Muunna mup LilyPond-muotoon."
-
-#~ msgid "debug"
-#~ msgstr "testaa"
-
-#~ msgid "define macro NAME [optional expansion EXP]"
-#~ msgstr "määritä makro NIMI [vaihtoehtoinen laajennus EXP]"
-
-#~ msgid "only pre-process"
-#~ msgstr "vain esiprosessointi"
-
-#~ msgid "no such context: %s"
-#~ msgstr "kontekstia ei ole: %s"
-
-#~ msgid "Processing `%s'..."
-#~ msgstr "Prosessoidaan `%s'..."
-
-#~ msgid "%s=%s\n"
-#~ msgstr "%s=%s\n"
-
-#~ msgid "parsing AFM file: `%s'"
-#~ msgstr "jäsennetään AFM-tiedostoa: `%s'"
-
-#~ msgid "checksum mismatch for font file: `%s'"
-#~ msgstr "virhesumma ei täsmää fonttitiedostolle: `%s'"
-
-#~ msgid "does not match: `%s'"
-#~ msgstr "ei täsmää: `%s'"
-
-#~ msgid "Rebuild all .afm files, and remove all .pk and .tfm files."
+#~ "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook "
+#~ "document.\n"
+#~ "\n"
+#~ "Example usage:\n"
+#~ "\n"
+#~ " lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BOOK\n"
+#~ " lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" BOOK\n"
+#~ " lilypond-book --process='lilypond -I include' BOOK\n"
 #~ msgstr ""
 #~ msgstr ""
-#~ "Uudista kaikki .afm -tiedosto, ja poista kaikki .pk ja .tfm -tiedostot."
-
-#~ msgid "Rerun with -V to show font paths."
-#~ msgstr "Aja uudelleen lisäten -V nähdäksesi fonttipolut."
-
-#~ msgid "A script for removing font-files is delivered with the source-code:"
-#~ msgstr ""
-#~ "Skripti fonttitiedostojen poistamista varten toimitetaan lähdekoodin "
-#~ "mukana:"
-
-#~ msgid "initializing FontConfig failed"
-#~ msgstr "FontConfig:in alustaminen epäonnistui"
+#~ "Käsittele HTML, LaTeX, texinfo tai DocBook -documenttiin sisällytetyt "
+#~ "LilyPond palaset.\n"
+#~ "Käyttöesimerkkejä:\n"
+#~ "\n"
+#~ "   lilypond-book --filter=\"tr '[a-z]' '[A-Z]'\" BOOK\n"
+#~ "   lilypond-book --filter=\"convert-ly --no-version --from=2.0.0 -\" "
+#~ "BOOK\n"
+#~ "   lilypond-book --process='lilypond -I include' BOOK\n"
 
 
-#~ msgid "no such file: %s"
-#~ msgstr "tiedostoa ei löydy: `%s'"
+#~ msgid "loading default font"
+#~ msgstr "ladataan oletusfontti"
 
 
-#~ msgid "can't find bounding box of `~a'"
-#~ msgstr "ei löytynyt `~a':n rajauskehystä (bounding box)"
+#~ msgid "cannot find default font: `%s'"
+#~ msgstr "ei löytynyt oletusfonttia: `%s'"
 
 
-#~ msgid "can't dlopen: %s: %s"
-#~ msgstr "tiedostoa ei voitu avata: %s: %s"
+#~ msgid "not setting creation callback: not a procedure"
+#~ msgstr "ei aseteta luonnin takaisinkutsua: ei ole proseduuri"
 
 
-#~ msgid "install package: %s or %s"
-#~ msgstr "asenna paketti: %s tai %s"
+#~ msgid "not setting modification callback: not a procedure"
+#~ msgstr "ei aseteta muutoksen takaisinkutsua: ei ole proseduuri"
 
 
-#~ msgid "no such symbol: %s: %s"
-#~ msgstr "ei löytynyt symbolia: %s: %s"
+#~ msgid "crescendo too small"
+#~ msgstr "liian lyhyt crescendo"
 
 
-#~ msgid "error opening kpathsea library"
-#~ msgstr "virhe avatessa kpathsea kirjastoa"
+#~ msgid "print this help"
+#~ msgstr "näytä tämä opaste"
 
 
-#~ msgid "aborting"
-#~ msgstr "keskeytetään"
+#~ msgid "cannot open file %s"
+#~ msgstr "ei voitu avata tiedostoa %s"
 
 
-#~ msgid "run in safe mode"
-#~ msgstr "aja turvamoodissa"
+#~ msgid "Invalid direction of slur-event"
+#~ msgstr "Tuntematon kaari-tapahtuman suunta"
 
 
-#~ msgid "tag must be symbol or list of symbols"
-#~ msgstr "merkinnän on oltava symboli tai lista symboleita"
+#~ msgid "invalid direction of tuplet-span-event"
+#~ msgstr "tuntematon tuplettiväli-tapahtuman suunta"
 
 
-#~ msgid "unknown bar glyph: `~S'"
-#~ msgstr "tuntematon palkkityyli: `~S'"
+#~ msgid "Incorrect lilypond version: %s (%s, %s)"
+#~ msgstr "Epäkelpo lilypond versio: %s (%s, %s)"