]> git.donarmstrong.com Git - lilypond.git/blobdiff - po/fi.po
Doc-es: various updates.
[lilypond.git] / po / fi.po
index 37ba5ea3d33518635b8fbd3be7fa744308c5edd3..a83fbc483f128814e39d3dbd8e0b536b91daf27e 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
-# 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.
-# First translator: Heikki Junes <hjunes@cc.hut.fi>, 2003-2005.
-#
 #
+# Heikki Junes <hjunes@cc.hut.fi>, 2003-2006.
 msgid ""
 msgstr ""
-"Project-Id-Version: fi\n"
+"Project-Id-Version: lilypond 2.6.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2005-08-12 10:19+0300\n"
-"PO-Revision-Date: 2005-08-12 10:47+0300\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"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
+"X-Generator: KBabel 1.11.2\n"
 
-#: convertrules.py:9
+#: convertrules.py:12
 #, python-format
 msgid "Not smart enough to convert %s"
 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."
 
-#: convertrules.py:11
+#: convertrules.py:14
 #, python-format
 msgid "%s has been replaced by %s"
 msgstr "%s on korvattu %s:lla"
 
-#: convertrules.py:2400
+#: convertrules.py:2398
 msgid "LilyPond source must be UTF-8"
 msgstr "LilyPond lähdekoodin täytyy olla UTF-8 muodossa"
 
-#: convertrules.py:2403
+#: convertrules.py:2401
 msgid "Try the texstrings backend"
 msgstr "Koeta tex-merkkijonon käyttöä"
 
-#: convertrules.py:2406
+#: convertrules.py:2404
 #, python-format
 msgid "Do something like: %s"
 msgstr "Tee jotain tällaista: %s"
 
-#: convertrules.py:2409
+#: convertrules.py:2407
 msgid "Or save as UTF-8 in your editor"
 msgstr "Tai talleta UTF-8 -muodossa editorissasi"
 
-#: convertrules.py:2584
-msgid "Applying conversion: "
-msgstr "Toteutetaan muunnos: "
-
-#: convertrules.py:2596
-msgid "error while converting"
-msgstr "virhe muunnettaessa"
-
-#: convertrules.py:2598 score-engraver.cc:75
-msgid "Aborting"
-msgstr "Keskeytetään"
-
-#: fontextract.py:25
+#: fontextract.py:26
 #, python-format
 msgid "Scanning %s"
 msgstr "Skannataan %s"
 
-#: fontextract.py:70
+#: fontextract.py:71
 #, 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'"
 
-#: lilylib.py:66 midi2ly.py:135 mup2ly.py:108
-#, python-format
-msgid "Copyright (c) %s by"
-msgstr "Copyright (c) %s by"
-
-#: lilylib.py:70 midi2ly.py:140 mup2ly.py:113
-msgid "Distributed under terms of the GNU General Public License."
-msgstr "Levitettävissä ehdoilla GNU General Public License."
-
-#: lilylib.py:72 midi2ly.py:141 mup2ly.py:114
-msgid "It comes with NO WARRANTY."
-msgstr "Se toimitetaan ILMAN TAKUUTA."
-
-#: lilylib.py:79 warn.cc:44 input.cc:79
-#, c-format, python-format
-msgid "warning: %s"
-msgstr "varoitus: %s"
-
-#: lilylib.py:82 warn.cc:50 input.cc:85 input.cc:93
-#, c-format, python-format
-msgid "error: %s"
-msgstr "virhe: %s"
-
-#: lilylib.py:86
-#, python-format
-msgid "Exiting (%d)..."
-msgstr "Lopetetaan (%d)..."
-
-#: lilylib.py:154 midi2ly.py:222 mup2ly.py:197
-#, python-format
-msgid "Usage: %s [OPTIONS]... FILE"
-msgstr "Käyttö: %s [OPTIOT]... TIEDOSTO"
-
-#: lilylib.py:158 midi2ly.py:226 mup2ly.py:201 main.cc:242
-#, c-format
-msgid "Options:"
-msgstr "Optiot:"
-
-#: lilylib.py:162 midi2ly.py:230 mup2ly.py:205 main.cc:246
-#, c-format, python-format
-msgid "Report bugs to %s."
-msgstr "Raportoi virheet osoitteeseen %s."
-
-#: lilylib.py:182
-#, python-format
-msgid "Binary %s has version %s, looking for version %s"
-msgstr "Binääritiedosto %s on versiota %s, etsitään versiota %s"
-
-#: lilylib.py:216
-#, python-format
-msgid "Opening pipe `%s'"
-msgstr "Avataan putki `%s'"
-
-#: lilylib.py:231 lilypond-book.py:1215
-#, python-format
-msgid "`%s' failed (%d)"
-msgstr "`%s' epäonnistui (%d)"
-
-#: lilylib.py:236 lilylib.py:295 lilypond-book.py:1216
-msgid "The error log is as follows:"
-msgstr "Virheloki on seuraava:"
-
-#: lilylib.py:267 midi2ly.py:258 mup2ly.py:233
+#: lilylib.py:85 lilylib.py:136
 #, python-format
 msgid "Invoking `%s'"
 msgstr "Kutsutaan `%s'"
 
-#: lilylib.py:269
+#: lilylib.py:87 lilylib.py:138
 #, python-format
 msgid "Running %s..."
 msgstr "Ajetaan %s..."
 
-#: lilylib.py:288
-#, python-format
-msgid "`%s' failed (%s)"
-msgstr "`%s' epäonnistui (%s)"
+#: lilylib.py:203
+#, fuzzy, python-format
+msgid "Usage: %s"
+msgstr "Käyttö: %s\n"
 
-#: lilylib.py:291 midi2ly.py:264 mup2ly.py:241
-msgid "(ignored)"
-msgstr "(sivuutetaan)"
+#: 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..."
 
-#: lilylib.py:309 midi2ly.py:274 mup2ly.py:251
-#, python-format
-msgid "Cleaning %s..."
-msgstr "Siivotaan pois %s..."
+#: abc2ly.py:1351
+#, fuzzy, python-format
+msgid ""
+"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."
 
-#: lilylib.py:403
-#, python-format
-msgid "%s exited with status: %d"
-msgstr "%s lopetettiin tilassa %d"
+#: abc2ly.py:1355 etf2ly.py:1200 midi2ly.py:885
+msgid "write output to FILE"
+msgstr "tulosta tiedostoon TIEDOSTO"
+
+#: abc2ly.py:1357
+msgid "be strict about succes"
+msgstr "ole tarkka onnistumisesta"
+
+#: abc2ly.py:1359
+msgid "preserve ABC's notion of beams"
+msgstr "säilytä ABC:n palkkimerkinnät"
 
-#: convert-ly.py:38
+#: 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"
-"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 "
@@ -186,539 +123,518 @@ msgstr ""
 "  convert-ly -e old.ly\n"
 "  convert-ly --from=2.3.28 --to 2.5.21 foobar.ly\n"
 
-#: convert-ly.py:51
-msgid "edit in place"
-msgstr "editoi paikassaan"
+#: 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"
+
+#: 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"
 
-#: convert-ly.py:52 convert-ly.py:57
+#: 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."
+
+#: 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."
+
+#: convert-ly.py:86 convert-ly.py:106
 msgid "VERSION"
 msgstr "VERSIO"
 
-#: convert-ly.py:53
+#: convert-ly.py:88
 msgid "start from VERSION [default: \\version found in file]"
 msgstr "aloita versiosta VERSIO [oletus: \\version joka on tiedostossa]"
 
-#: convert-ly.py:54 lilypond-book.py:91 midi2ly.py:99 mup2ly.py:75 main.cc:156
-msgid "print this help"
-msgstr "näytä tämä opaste"
+#: convert-ly.py:91
+msgid "edit in place"
+msgstr "editoi paikassaan"
 
-#: convert-ly.py:55
+#: convert-ly.py:94
 msgid "do not add \\version command if missing"
 msgstr "älä lisää \\version komentoa jos se puuttuu"
 
-#: convert-ly.py:56
-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@]"
 
-#: convert-ly.py:57
+#: convert-ly.py:105
 msgid "convert to VERSION [default: @TOPLEVEL_VERSION@]"
 msgstr "muunnaa versioon VERSIO [oletus: @TOPLEVEL_VERSION@]"
 
-#: convert-ly.py:58
-msgid "print program version\""
-msgstr "tulosta ohjelman versionumero\""
+#: convert-ly.py:153
+msgid "Applying conversion: "
+msgstr "Toteutetaan muunnos: "
 
-#: convert-ly.py:84
-#, python-format
-msgid "Processing `%s'... "
-msgstr "Prosessoidaan `%s'..."
+#: convert-ly.py:166
+#, fuzzy
+msgid "Error while converting"
+msgstr "virhe muunnettaessa"
+
+#: convert-ly.py:168
+msgid "Stopping at last succesful rule"
+msgstr ""
 
-#: convert-ly.py:155 lilypond-book.py:1510 midi2ly.py:1015
+#: convert-ly.py:190
 #, python-format
-msgid "getopt says: `%s'"
-msgstr "getopt sanoo: `%s'"
+msgid "Processing `%s'... "
+msgstr "Prosessoidaan `%s'... "
 
-#: convert-ly.py:205 source-file.cc:55
+#: convert-ly.py:277 relocate.cc:360 source-file.cc:54
 #, c-format, python-format
-msgid "can't open file: `%s'"
+msgid "cannot open file: `%s'"
 msgstr "tiedostoa ei voitu avata: `%s'"
 
-#: convert-ly.py:212
-#, 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"
 
-#: lilypond-book.py:73
+#: etf2ly.py:1196
+#, fuzzy, python-format
+msgid "%s [OPTION]... ETF-FILE"
+msgstr "Käyttö: %s [OPTIO]... TIEDOSTO..."
+
+#: etf2ly.py:1198
+#, fuzzy
 msgid ""
-"Process LilyPond snippets in hybrid HTML, LaTeX, or texinfo document.\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"
+"Enigma Transport Format is a format used by Coda Music Technology's\n"
+"Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond "
+"file."
 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"
-"\n"
+"Enigma Transport Format on Coda Music Technology:n Finale-tuotteen\n"
+"tallennusmuoto. Tämä ohjelma muuntaa ETF-muodon osajoukon\n"
+"LilyPondilla käytettäväksi."
 
-#: lilypond-book.py:85
-msgid "FMT"
-msgstr "FMT"
+#: etf2ly.py:1201 midi2ly.py:886 musicxml2ly.py:498 main.cc:172 main.cc:178
+msgid "FILE"
+msgstr "TIEDOSTO"
+
+#: 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:86
+#: lilypond-book.py:71
 msgid ""
-"use output format FMT (texi [default], texi-html,\n"
-"\t\tlatex, html)"
+"Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
 msgstr ""
-"tulostusmuotona käytetään formaattia FMT (texi [oletus], texi-html, latex, "
-"html)"
 
-#: lilypond-book.py:88
+#: lilypond-book.py:78
+msgid "BOOK"
+msgstr ""
+
+#: lilypond-book.py:87
+#, python-format
+msgid "Exiting (%d)..."
+msgstr "Lopetetaan (%d)..."
+
+#: lilypond-book.py:119
+#, python-format
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s by"
+
+#: lilypond-book.py:129
 msgid "FILTER"
 msgstr "FILTER"
 
-#: lilypond-book.py:89
+#: lilypond-book.py:132
 msgid "pipe snippets through FILTER [convert-ly -n -]"
 msgstr "putkita palaset kohteen FILTER läpi [convert-ly -n -]"
 
-#: lilypond-book.py:92 lilypond-book.py:94 main.cc:158
-msgid "DIR"
-msgstr "HAKEMISTO"
+#: lilypond-book.py:135
+msgid ""
+"use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
+msgstr ""
+"käytä tulostusmuotona formaattia FMT (texi [oletus], texi-html, latex, html, "
+"docbook)"
 
-#: lilypond-book.py:93
+#: lilypond-book.py:138
 msgid "add DIR to include path"
 msgstr "lisää HAKEMISTO hakupolkuun"
 
-#: lilypond-book.py:95
+#: 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"
 
-#: lilypond-book.py:96
+#: lilypond-book.py:147
 msgid "COMMAND"
 msgstr "KOMENTO"
 
-#: lilypond-book.py:97
+#: lilypond-book.py:148
 msgid "process ly_files using COMMAND FILE..."
 msgstr "prosessoi ly_tiedostot käyttäen komentoa COMMAND FILE..."
 
-#: lilypond-book.py:99
+#: lilypond-book.py:154
+msgid "Create PDF files for use with PDFTeX"
+msgstr ""
+
+#: lilypond-book.py:157
 msgid ""
 "extract all PostScript fonts into INPUT.psfonts for LaTeX\n"
-"\t must use this with dvips -h INPUT.psfonts"
+"must use this with dvips -h INPUT.psfonts"
 msgstr ""
-"avaa 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:102 midi2ly.py:104 mup2ly.py:78 main.cc:169
+#: lilypond-book.py:160 midi2ly.py:896 musicxml2ly.py:489 main.cc:184
 msgid "be verbose"
 msgstr "tulosta runsaasti käsittelytietoa"
 
-#: lilypond-book.py:104
-msgid "print version information"
-msgstr "tulosta versioinformaatio"
-
-#: lilypond-book.py:106 midi2ly.py:106 mup2ly.py:80 main.cc:170
-msgid "show warranty and copyright"
-msgstr "näytä takuu ja copyright"
-
-#: lilypond-book.py:628
+#: lilypond-book.py:773
 #, python-format
 msgid "file not found: %s"
 msgstr "tiedostoa %s ei löydy"
 
-#: lilypond-book.py:855
+#: lilypond-book.py:1004
 #, python-format
 msgid "deprecated ly-option used: %s=%s"
 msgstr "vanhentunut ly-optio käytössä: %s=%s"
 
-#: lilypond-book.py:858
+#: lilypond-book.py:1007
 #, python-format
 msgid "compatibility mode translation: %s=%s"
 msgstr "yhteensopivuusmuodon käännös: %s=%s"
 
-#: lilypond-book.py:862
+#: lilypond-book.py:1011
 #, python-format
 msgid "deprecated ly-option used: %s"
 msgstr "vanhentunut ly-optio käytössä: %s"
 
-#: lilypond-book.py:865
+#: lilypond-book.py:1014
 #, python-format
 msgid "compatibility mode translation: %s"
 msgstr "yhteensopivuusmuodon käännös: %s"
 
-#: lilypond-book.py:884
+#: lilypond-book.py:1033
 #, python-format
 msgid "ignoring unknown ly option: %s"
 msgstr "sivuutetaan tuntematon ly -optio: %s"
 
-#: lilypond-book.py:1198
+#: lilypond-book.py:1388
 #, python-format
 msgid "Opening filter `%s'"
 msgstr "Avataan filtteri `%s'"
 
-#: lilypond-book.py:1364
+#: lilypond-book.py:1405
+#, python-format
+msgid "`%s' failed (%d)"
+msgstr "`%s' epäonnistui (%d)"
+
+#: lilypond-book.py:1406
+msgid "The error log is as follows:"
+msgstr "Virheloki on seuraava:"
+
+#: 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..."
 
-#: lilypond-book.py:1369
+#: lilypond-book.py:1591
 msgid "Processing..."
 msgstr "Prosessoidaan..."
 
-#: lilypond-book.py:1373
+#: lilypond-book.py:1595
 msgid "All snippets are up to date..."
-msgstr "Kaikki palaset on päivitetty"
+msgstr "Kaikki palaset on päivitetty..."
 
-#: lilypond-book.py:1383
+#: lilypond-book.py:1605
 #, python-format
-msgid "can't determine format for: %s"
+msgid "cannot determine format for: %s"
 msgstr "ei löytynyt formaattia: %s"
 
-#: lilypond-book.py:1394
+#: lilypond-book.py:1616
 #, python-format
 msgid "%s is up to date."
 msgstr "%s on päivitetty."
 
-#: lilypond-book.py:1400 mup2ly.py:1280
+#: lilypond-book.py:1622
 #, python-format
 msgid "Writing `%s'..."
 msgstr "Kirjoitetaan `%s'..."
 
-#: lilypond-book.py:1442
+#: lilypond-book.py:1677
 msgid "Output would overwrite input file; use --output."
 msgstr "Tuloste kirjautuisi syötetiedoston päälle; käytä --output."
 
-#: lilypond-book.py:1446
+#: lilypond-book.py:1681
 #, python-format
 msgid "Reading %s..."
 msgstr "Luetaan %s..."
 
-#: lilypond-book.py:1465
+#: lilypond-book.py:1700
 msgid "Dissecting..."
 msgstr "Analysoidaan..."
 
-#: lilypond-book.py:1474
+#: lilypond-book.py:1716
 #, python-format
 msgid "Compiling %s..."
 msgstr "Kootaan %s..."
 
-#: lilypond-book.py:1483
+#: lilypond-book.py:1725
 #, python-format
 msgid "Processing include: %s"
 msgstr "Prosessoidaan sisällytetävä: %s"
 
-#: lilypond-book.py:1497
+#: lilypond-book.py:1739
 #, python-format
 msgid "Removing `%s'"
 msgstr "Poistetaan `%s'"
 
-#: lilypond-book.py:1592
+#: lilypond-book.py:1815
 #, python-format
 msgid "Writing fonts to %s..."
 msgstr "Kirjoitetaan fontteja hakemistoon %s..."
 
-#: lilypond-book.py:1604
+#: lilypond-book.py:1830
 msgid "option --psfonts not used"
 msgstr "optiota --psfonts=FILE ei käytetty"
 
-#: lilypond-book.py:1605
+#: lilypond-book.py:1831
 msgid "processing with dvips will have no fonts"
 msgstr "prosessointi dvips:illä ei sisällä fontteja"
 
-#: lilypond-book.py:1611
+#: lilypond-book.py:1834
 msgid "DVIPS usage:"
 msgstr "DVIPS käyttö:"
 
-#. temp_dir = os.path.join (original_dir,  '%s.dir' % program_name)
-#. original_dir = os.getcwd ()
-#. keep_temp_dir_p = 0
-#: midi2ly.py:93
-msgid "Convert MIDI to LilyPond source."
+#: midi2ly.py:106 lily-library.scm:624 lily-library.scm:632
+msgid "warning: "
+msgstr "varoitus: "
+
+#: midi2ly.py:109 midi2ly.py:924
+msgid "error: "
+msgstr "virhe: "
+
+#: midi2ly.py:110
+msgid "Exiting ... "
+msgstr "Lopettaa ... "
+
+#: midi2ly.py:857
+#, python-format
+msgid "%s output to `%s'..."
+msgstr "%s tulostetaan paikkaan `%s'..."
+
+#: midi2ly.py:871 musicxml2ly.py:485
+#, fuzzy, python-format
+msgid "Convert %s to LilyPond input."
 msgstr "Muunna MIDI LilyPond -muotoon."
 
-#: midi2ly.py:96
+#: midi2ly.py:875
 msgid "print absolute pitches"
 msgstr "tulosta tarkat äänenkorkeudet"
 
-#: midi2ly.py:97 midi2ly.py:102
+#: midi2ly.py:877 midi2ly.py:889
 msgid "DUR"
 msgstr "PIT"
 
-#: midi2ly.py:97
+#: midi2ly.py:878
 msgid "quantise note durations on DUR"
 msgstr "kvantisoi nuottipituuden PIT perusteella"
 
 # tulosta yksikäsitteiset nuottipituudet
-#: midi2ly.py:98
+#: midi2ly.py:881
 msgid "print explicit durations"
 msgstr "tulosta yksikäsitteiset nuottipituudet"
 
-#: midi2ly.py:100
-msgid "ALT[:MINOR]"
-msgstr "ETUMERKIT[:MOLLI]"
-
-#: midi2ly.py:100
+#: midi2ly.py:882
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "aseta sävellaji: ETUMERKIT=+ylennykset|-alennukset; MOLLI=1"
 
-#: midi2ly.py:101 main.cc:159 main.cc:160
-msgid "FILE"
-msgstr "TIEDOSTO"
-
-#: midi2ly.py:101 mup2ly.py:76
-msgid "write output to FILE"
-msgstr "tulosta tiedostoon TIEDOSTO"
+#: midi2ly.py:883
+msgid "ALT[:MINOR]"
+msgstr "ETUMERKIT[:MOLLI]"
 
-#: midi2ly.py:102
+#: midi2ly.py:888
 msgid "quantise note starts on DUR"
 msgstr "nuottien kvantisointi alkukohtana PIT"
 
-#: midi2ly.py:103
+#: midi2ly.py:891
 msgid "DUR*NUM/DEN"
 msgstr "PIT*OSOITTAJA/NIMITTÄJÄ"
 
 # tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
-#: midi2ly.py:103
+#: midi2ly.py:894
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "salli tupletti -pituudet PIT*OSOITTAJA/NIMITTÄJÄ"
 
-#: midi2ly.py:105 mup2ly.py:79 main.cc:168
-msgid "print version number"
-msgstr "tulosta versionumero"
-
-#: midi2ly.py:107
+#: midi2ly.py:902
 msgid "treat every text as a lyric"
 msgstr "käsittele kaikki tekstit lyriikkana"
 
-#: midi2ly.py:148 mup2ly.py:121 lily-library.scm:449 lily-library.scm:457
-msgid "warning: "
-msgstr "varoitus: "
+#: midi2ly.py:905
+#, fuzzy
+msgid "Examples"
+msgstr "esimerkki"
 
-#: midi2ly.py:163 midi2ly.py:1015 midi2ly.py:1080 mup2ly.py:124 mup2ly.py:138
-msgid "error: "
-msgstr "virhe: "
-
-#: midi2ly.py:164 mup2ly.py:139
-msgid "Exiting ... "
-msgstr "Lopettaa ... "
-
-#: midi2ly.py:262 mup2ly.py:238
-#, python-format
-msgid "command exited with value %d"
-msgstr "komento lopetettiin tilassa %d"
-
-#: midi2ly.py:999
-#, python-format
-msgid "%s output to `%s'..."
-msgstr "%s tulostetaan paikkaan `%s'..."
-
-#: midi2ly.py:1030
-msgid "Example:"
-msgstr "Esimerkki:"
-
-#: midi2ly.py:1080
+#: midi2ly.py:925
 msgid "no files specified on command line."
 msgstr "tiedostoja ei annettu komentorivillä."
 
-#: mup2ly.py:70
-msgid "Convert mup to LilyPond source."
-msgstr "Muunna mup LilyPond-muotoon."
-
-#: mup2ly.py:73
-msgid "debug"
-msgstr "testaa"
-
-#: mup2ly.py:74
-msgid "define macro NAME [optional expansion EXP]"
-msgstr "määritä makro NIMI [vaihtoehtoinen laajennus EXP]"
+#: musicxml2ly.py:473
+msgid "musicxml2ly FILE.xml"
+msgstr ""
 
-#: mup2ly.py:77
-msgid "only pre-process"
-msgstr "vain esiprosessointi"
+#: 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"
 
-#: mup2ly.py:1036
-#, python-format
-msgid "no such context: %s"
-msgstr "kontekstia ei ole: %s"
+#: musicxml2ly.py:495
+msgid "Use lxml.etree; uses less memory and cpu time."
+msgstr ""
 
-#: mup2ly.py:1261
-#, python-format
-msgid "Processing `%s'..."
-msgstr "Prosessoidaan `%s'..."
+#: musicxml2ly.py:503
+msgid "set output filename to FILE"
+msgstr "tulosta tiedostoon TIEDOSTO"
 
-#: getopt-long.cc:143
+#: getopt-long.cc:140
 #, c-format
 msgid "option `%s' requires an argument"
 msgstr "optio `%s' vaatii argumentin"
 
-#: getopt-long.cc:147
-#, 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"
 
-#: getopt-long.cc:151
+#: getopt-long.cc:148
 #, c-format
 msgid "unrecognized option: `%s'"
 msgstr "tunnistamaton optio: `%s'"
 
-#: getopt-long.cc:158
+#: getopt-long.cc:154
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
 msgstr "epäkelpo argumentti `%s' optiolle `%s'"
 
-#: warn.cc:64 grob.cc:640
+#: warn.cc:68 grob.cc:559 input.cc:82
 #, c-format
 msgid "programming error: %s"
 msgstr "ohjelmointivirhe: %s"
 
-#: warn.cc:65
+#: warn.cc:69 input.cc:83
 msgid "continuing, cross fingers"
 msgstr "jatketaan, ristitään kädet"
 
-#.
-#. todo i18n.
-#.
-#: kpath.c:142
-#, c-format
-msgid "can't dlopen: %s: %s"
-msgstr "tiedostoa ei voitu avata: %s: %s"
-
-#: kpath.c:143
-#, c-format
-msgid "install package: %s or %s"
-msgstr "asenna paketti: %s tai %s"
-
-#: kpath.c:156
-#, c-format
-msgid "no such symbol: %s: %s"
-msgstr "ei löytynyt symbolia: %s: %s"
-
-#: kpath.c:179
-#, c-format
-msgid "error opening kpathsea library"
-msgstr "virhe avatessa kpathsea kirjastoa"
-
-#: kpath.c:180
-#, c-format
-msgid "aborting"
-msgstr "keskeytetään"
-
-#: accidental-engraver.cc:251
+#: 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"
 
-#: accidental-engraver.cc:279
+#: accidental-engraver.cc:268
 #, c-format
 msgid "ignoring unknown accidental: %s"
 msgstr "sivutetaan tuntematan etumerkki: %s"
 
-#: accidental-engraver.cc:295
+#: 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"
 
-#: accidental.cc:233 key-signature-interface.cc:128
+#: accidental.cc:243 key-signature-interface.cc:133
 #, c-format
 msgid "accidental `%s' not found"
 msgstr "korotusmerkkiä `%s' ei löydy"
 
-#: afm.cc:142
-#, c-format
-msgid "parsing AFM file: `%s'"
-msgstr "jäsennetään AFM-tiedostoa: `%s'"
-
-#: align-interface.cc:124
+#: align-interface.cc:222
 msgid ""
-"vertical alignment called before line-breaking. Only do cross-staff spanners "
-"with PianoStaff."
+"vertical alignment called before line-breaking.\n"
+"Only do cross-staff spanners with PianoStaff."
 msgstr ""
-"pystysyora sijoittelu kutsuttiin ennen rivinkatkaisua. Viivaston "
-"ylittävät ladokkeet tehdään vain PianoStaff:in yhteydessä"
+"pystysyora sijoittelu kutsuttiin ennen rivinkatkaisua.\n"
+"Viivaston ylittävät ladokkeet tehdään vain PianoStaff:in yhteydessä."
 
-#. FIXME: broken sentence
-#: all-font-metrics.cc:177
-#, c-format
-msgid "checksum mismatch for font file: `%s'"
-msgstr "virhesumma ei täsmää fonttitiedostolle: `%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:179
+#: all-font-metrics.cc:173
 #, c-format
-msgid "does not match: `%s'"
-msgstr "ei täsmää: `%s'"
-
-#: all-font-metrics.cc:185
-msgid "Rebuild all .afm files, and remove all .pk and .tfm files."
-msgstr "Uudista kaikki .afm -tiedosto, ja poista kaikki .pk ja .tfm -tiedostot."
-
-#: all-font-metrics.cc:187
-msgid "Rerun with -V to show font paths."
-msgstr "Aja uudelleen lisäten -V nähdäksesi fonttipolut."
-
-#: all-font-metrics.cc:189
-msgid "A script for removing font-files is delivered with the source-code:"
-msgstr "Skripti fonttitiedostojen poistamista varten toimitetaan lähdekoodin mukana:"
-
-#: all-font-metrics.cc:298
-#, c-format
-msgid "can't find font: `%s'"
+msgid "cannot find font: `%s'"
 msgstr "ei löytynyt fonttia: `%s'"
 
-#: all-font-metrics.cc:299
-msgid "loading default font"
-msgstr "ladataan oletusfontti"
-
-#: all-font-metrics.cc:314
-#, c-format
-msgid "can't find default font: `%s'"
-msgstr "ei löytynyt oletusfonttia: `%s'"
-
-#: all-font-metrics.cc:315 includable-lexer.cc:59 lily-parser-scheme.cc:95
-#, c-format
-msgid "(search path: `%s')"
-msgstr "(hakupolku: `%s')"
-
-#: all-font-metrics.cc:316 volta-engraver.cc:156
-msgid "giving up"
-msgstr "luovutetaan"
-
-#: apply-context-iterator.cc:33
+#: apply-context-iterator.cc:31
 msgid "\\applycontext argument is not a procedure"
 msgstr "\\applycontext vaatii funktioargumentin"
 
-#: auto-change-iterator.cc:61 change-iterator.cc:60
+#: auto-change-iterator.cc:63 change-iterator.cc:61
 #, 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"
 
-#: axis-group-engraver.cc:95
+#: axis-group-engraver.cc:78
 msgid "Axis_group_engraver: vertical group already has a parent"
 msgstr "Axis_group_engraver: vertikaaliryhmällä on jo vanhempi"
 
-#: axis-group-engraver.cc:96
+#: axis-group-engraver.cc:79
 msgid "are there two Axis_group_engravers?"
 msgstr "onko käytössä kaksi Axis_group_engraver:ia?"
 
-#: axis-group-engraver.cc:97
+#: axis-group-engraver.cc:80
 msgid "removing this vertical group"
 msgstr "poistetaan tämä vertikaaliryhmä"
 
-#: bar-check-iterator.cc:72
+#: 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"
 
-#: beam-engraver.cc:137
+#: beam-engraver.cc:128
 msgid "already have a beam"
 msgstr "palkki löytyi jo"
 
-#: beam-engraver.cc:206
+#: beam-engraver.cc:196
 msgid "unterminated beam"
 msgstr "päättämätön palkki"
 
-#: beam-engraver.cc:240 chord-tremolo-engraver.cc:164
+#: beam-engraver.cc:238 chord-tremolo-engraver.cc:134
 msgid "stem must have Rhythmic structure"
 msgstr "varrella on oltava Rhytmic -rakenne"
 
-#: beam-engraver.cc:253
-msgid "stem doesn't fit in beam"
+#: beam-engraver.cc:246
+#, fuzzy
+msgid "stem does not fit in beam"
 msgstr "varsi ei sovi palkkiin"
 
-#: beam-engraver.cc:254
+#: beam-engraver.cc:247
 msgid "beam was started here"
 msgstr "palkki aloitettiin täältä"
 
@@ -726,27 +642,27 @@ msgstr "palkki aloitettiin täältä"
 msgid "no feasible beam position"
 msgstr "ei löytynyt sopivaa palkin paikkaa"
 
-#: beam.cc:147
-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:972
+#: 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"
 
-#: break-align-interface.cc:214
+#: 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:22
+#: 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:81
-msgid "can't find context to switch to"
+#: change-iterator.cc:82
+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
@@ -754,340 +670,341 @@ msgstr "ei löytynyt kontekstia johon vaihtaa"
 #.
 #. last->translator_id_string () = get_change
 #. ()->change_to_id_string ();
-#: change-iterator.cc:90
+#: change-iterator.cc:91
 #, c-format
 msgid "not changing to same context type: %s"
 msgstr "ei vaihdettu samaan konteksti tyyppiin: %s"
 
 #. FIXME: uncomprehensable message
-#: change-iterator.cc:94
+#: change-iterator.cc:95
 msgid "none of these in my family"
 msgstr "ei yksikään näistä perheessäni"
 
-#: chord-tremolo-engraver.cc:95
-#, 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"
 
-#: chord-tremolo-iterator.cc:59
-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:57
+#: clef.cc:54
 #, c-format
 msgid "clef `%s' not found"
 msgstr "avainta `%s' ei löydy"
 
-#: cluster.cc:115
+#: cluster.cc:110
 #, c-format
 msgid "unknown cluster style `%s'"
 msgstr "tuntematon klusterityyli: `%s'"
 
-#: cluster.cc:141
+#: cluster.cc:135
 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:95
-msgid "distance undefined, assuming 0.1"
-msgstr "etäisyys määrittämättä, oletetaan 0.1"
-
-#: coherent-ligature-engraver.cc:98
-#, c-format
-msgid "distance=%f"
-msgstr "etäisyys=%f"
-
-#: coherent-ligature-engraver.cc:138
+#: 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"
+msgstr ""
+"Coherent_ligature_engraver: asetetaan `spacing-increment=0.01': ptr=%ul"
 
-#: context-def.cc:122
+#. if we get to here, just put everything on one line
+#: 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"
+
+#: context-def.cc:130
 #, 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:109
+#: context-property.cc:76
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "tarvitaan symboliargumentti funktioille \\override ja \\revert"
 
-#: context.cc:160
+#: context.cc:151
 #, 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'"
 
-#: context.cc:222
+#: context.cc:213
 #, 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:319
+#: context.cc:276
+#, c-format
+msgid "Invalid CreateContext event: Cannot create %s context"
+msgstr "Epäkelpo CreateContext-tapahtuma: Ei voitu luoda %s-kontekstia"
+
+#: context.cc:388
 #, c-format
-msgid "can't find or create: `%s'"
+msgid "cannot find or create: `%s'"
 msgstr "ei löydetty tai ei luotu: `%s'"
 
-#: custos.cc:83
+#: custos.cc:77
 #, c-format
 msgid "custos `%s' not found"
 msgstr "custos `%s' ei löytynyt"
 
-#: dynamic-engraver.cc:179 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"
 
-#: dynamic-engraver.cc:188
+#: dynamic-engraver.cc:195
 msgid "already have a decrescendo"
 msgstr "decresendo jo käytössä"
 
-#: dynamic-engraver.cc:190
+#: dynamic-engraver.cc:197
 msgid "already have a crescendo"
 msgstr "crescendo jo käytössä"
 
-#: dynamic-engraver.cc:193
+#: dynamic-engraver.cc:200
 msgid "cresc starts here"
 msgstr "cresc aloitettiin tästä"
 
-#: dynamic-engraver.cc:313
+#: dynamic-engraver.cc:323
 msgid "unterminated (de)crescendo"
 msgstr "päättämätön (de)crescendo"
 
-#: event-chord-iterator.cc:52 output-property-music-iterator.cc:29
-#, c-format
-msgid "junking event: `%s'"
-msgstr "hylätään tapahtuma: `%s'"
-
-#: extender-engraver.cc:130 extender-engraver.cc:139
+#: extender-engraver.cc:131 extender-engraver.cc:140
 msgid "unterminated extender"
 msgstr "päättämätön pidennys"
 
-#: folded-repeat-iterator.cc:64
-msgid "no one to print a repeat brace"
-msgstr "kukaan ei voinut tulostaa toistoa"
-
-#: font-config.cc:25
+#: font-config.cc:28
 msgid "Initializing FontConfig..."
 msgstr "Alustetaan FontConfig..."
 
-#: font-config.cc:28
-msgid "initializing FontConfig failed"
-msgstr "FontConfig:in alustaminen epäonnistui"
+#: font-config.cc:44
+#, c-format
+msgid "Rebuilding FontConfig cache %s, this may take a while..."
+msgstr ""
+"Käännetään uudelleen FontConfig-välimuisti %s. tämä voi kestää hetken..."
+
+#: font-config.cc:55
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "ei onnistuttu lisäämään fonttihakemistoa: %s"
 
-#: font-config.cc:49 font-config.cc:51
+#: font-config.cc:57
 #, c-format
 msgid "adding font directory: %s"
 msgstr "lisätään fonttihakemisto: %s"
 
-#: general-scheme.cc:166
+#: general-scheme.cc:160
 msgid "infinity or NaN encountered while converting Real number"
 msgstr "ääretön tai NaN kohdattiin kun tehtiin reaalilukumuunnosta"
 
-#: general-scheme.cc:167
+#: general-scheme.cc:161
 msgid "setting to zero"
 msgstr "asetetaan nollaksi"
 
-#: glissando-engraver.cc:94
+#: glissando-engraver.cc:92
 msgid "unterminated glissando"
 msgstr "päättämätön glissando"
 
-#: global-context-scheme.cc:49 global-context-scheme.cc:76
+#: global-context-scheme.cc:91 global-context-scheme.cc:107
 msgid "no music found in score"
 msgstr "Laita musiikkia viivastolle"
 
-#: global-context-scheme.cc:66
+#: global-context-scheme.cc:97
 msgid "Interpreting music... "
-msgstr "Tulkitaan musiikkia..."
+msgstr "Tulkitaan musiikkia... "
 
-#: global-context-scheme.cc:87
+#: global-context-scheme.cc:120
 #, 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:199
-#, c-format
-msgid "Optimal demerits: %f"
-msgstr "Optimaalinen heikennys: %f"
-
-#: gourlay-breaking.cc:204
-msgid "no feasible line breaking found"
-msgstr "Ei löytynyt sopivaa viivan katkaisukohtaa"
-
-#: gourlay-breaking.cc:212
-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:60
+#: gregorian-ligature-engraver.cc:59
 #, c-format
 msgid "\\%s ignored"
 msgstr "\\%s sivuutettiin"
 
-#: gregorian-ligature-engraver.cc:65
+#: gregorian-ligature-engraver.cc:64
 #, c-format
 msgid "implied \\%s added"
 msgstr "lisättiin vihjattu \\%s"
 
-#: gregorian-ligature-engraver.cc:214
-msgid "can't apply `\\~' on first head of ligature"
+#. ligature may not start with 2nd head of pes or flexa
+#: gregorian-ligature-engraver.cc:212
+msgid "cannot apply `\\~' on first head of ligature"
 msgstr "di voitu käyttää `\\~' ligaturen alkupäässä"
 
-#: gregorian-ligature-engraver.cc:228
-msgid "can't apply `\\~' on heads with identical pitch"
+#. (pitch == prev_pitch)
+#: gregorian-ligature-engraver.cc:224
+msgid "cannot apply `\\~' on heads with identical pitch"
 msgstr "ei voitu käyttää `\\~' identtisien nuotinkorkeuksien päissä"
 
-#: grob-interface.cc:46
+#: grob-interface.cc:57
 #, c-format
 msgid "Unknown interface `%s'"
 msgstr "Tuntematon rajapinta `%s'"
 
-#: grob-interface.cc:57
+#: grob-interface.cc:68
 #, c-format
 msgid "Grob `%s' has no interface for property `%s'"
 msgstr "Ladokkeella `%s' ei ole rajapintaa ominaisuudella `%s'"
 
-#: hairpin.cc:130
+#: grob.cc:253
+msgid "Infinity or NaN encountered"
+msgstr "ääretön tai NaN kohdattiin"
+
+#: hairpin.cc:183
 msgid "decrescendo too small"
 msgstr "liian lyhyt decrescendo"
 
-#: hairpin.cc:131
-msgid "crescendo too small"
-msgstr "liian lyhyt crescendo"
-
-#: horizontal-bracket-engraver.cc:57
-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"
 
-#: horizontal-bracket-engraver.cc:66
+#: horizontal-bracket-engraver.cc:68
 msgid "conflicting note group events"
 msgstr "ristiriitainen nuottiryhmä -tapaus"
 
-#: hyphen-engraver.cc:83
+#: hyphen-engraver.cc:93
 msgid "removing unterminated hyphen"
 msgstr "päättämätön tavuviiva"
 
-#: hyphen-engraver.cc:96
+#: hyphen-engraver.cc:107
 msgid "unterminated hyphen; removing"
 msgstr "päättämätön tavuviiva"
 
-#: includable-lexer.cc:50
+#: includable-lexer.cc:53
 msgid "include files are not allowed in safe mode"
 msgstr "sisällytettävät tiedostot eivät ole sallittuja turvatilassa"
 
-#: includable-lexer.cc:57 lily-guile.cc:94 lily-parser-scheme.cc:102
+#: includable-lexer.cc:60 lily-guile.cc:90 lily-parser-scheme.cc:116
 #, c-format
-msgid "can't find file: `%s'"
+msgid "cannot find file: `%s'"
 msgstr "tiedostoa ei löydy: `%s'"
 
-#: input.cc:101 source-file.cc:144 source-file.cc:160
+#: 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"
-msgstr "sijainti tuntematon:"
+msgstr "sijainti tuntematon"
 
-#: ligature-engraver.cc:145
-msgid "can't find start of ligature"
+#: ligature-engraver.cc:93
+msgid "cannot find start of ligature"
 msgstr "ei löytynyt alkua ligature:lle"
 
-#: ligature-engraver.cc:151
+#: ligature-engraver.cc:98
 msgid "no right bound"
 msgstr "ei oikeata reunaa"
 
-#: ligature-engraver.cc:175
+#: ligature-engraver.cc:120
 msgid "already have a ligature"
 msgstr "ligature löytyi jo"
 
-#: ligature-engraver.cc:191
+#: ligature-engraver.cc:129
 msgid "no left bound"
 msgstr "ei vasenta reunaa"
 
-#: ligature-engraver.cc:237
+#: ligature-engraver.cc:173
 msgid "unterminated ligature"
 msgstr "päättämätön ligature"
 
-#: ligature-engraver.cc:267
+#: ligature-engraver.cc:202
 msgid "ignoring rest: ligature may not contain rest"
 msgstr "ligature ei voi sisältää taukoa; sivuutetaan tauko"
 
-#: ligature-engraver.cc:268
+#: ligature-engraver.cc:203
 msgid "ligature was started here"
 msgstr "ligature alkoi tästä"
 
-#: lily-guile.cc:96
+#: lily-guile.cc:92
 #, c-format
 msgid "(load path: `%s')"
 msgstr "(hakupolku: `%s')"
 
-#: lily-guile.cc:446
+#: lily-guile.cc:518
 #, 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)."
 
-#: lily-guile.cc:449
+#: lily-guile.cc:521
 msgid "perhaps a typing error?"
 msgstr "ehkä näppäilyvirhe?"
 
-#: lily-guile.cc:455
+#: lily-guile.cc:527
 msgid "doing assignment anyway"
 msgstr "suoritetaan tehtävä joka tapauksessa"
 
-#: lily-guile.cc:467
+#: 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'"
 
-#: lily-lexer.cc:228
+#: lily-lexer.cc:254
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "tunnistenimi on avainsana: `%s'"
 
-#: lily-lexer.cc:243
+#: lily-lexer.cc:269
 #, c-format
 msgid "error at EOF: %s"
 msgstr "virhe tiedoston lopussa (EOF): %s"
 
-#: lily-parser-scheme.cc:27
+#: lily-parser-scheme.cc:29
 #, c-format
 msgid "deprecated function called: %s"
 msgstr "vanhentunut funktiokutsu: %s"
 
-#: lily-parser-scheme.cc:74
-#, 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'"
 
-#: lily-parser-scheme.cc:94
+#: lily-parser-scheme.cc:106
 #, c-format
-msgid "can't find init file: `%s'"
+msgid "cannot find init file: `%s'"
 msgstr "tiedostoa ei löydy: `%s'"
 
-#: lily-parser-scheme.cc:112
+#: lily-parser-scheme.cc:125
 #, c-format
 msgid "Processing `%s'"
-msgstr "Prosessoidaan `%s'..."
+msgstr "Prosessoidaan `%s'"
 
 #: lily-parser.cc:99
 msgid "Parsing..."
 msgstr "Jäsennetään..."
 
-#: lily-parser.cc:128
-msgid "braces don't match"
+#: lily-parser.cc:127
+#, fuzzy
+msgid "braces do not match"
 msgstr "aaltosulkumerkit eivät täsmää"
 
-#: main.cc:104
+#: lyric-combine-music-iterator.cc:291
+#, c-format
+msgid "cannot find Voice `%s'"
+msgstr "ei löydetty Voice `%s'"
+
+#: main.cc:116
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -1099,7 +1016,7 @@ msgstr ""
 "ja olet tervetullut muuttamaan ohjelmaa ja/tai levittämään siitä kopioita\n"
 "tietyillä ehdoilla. Suorita `%s --warranty' saadaksesi lisäinformaatiota.\n"
 
-#: main.cc:110
+#: main.cc:122
 msgid ""
 "    This program is free software; you can redistribute it and/or\n"
 "modify it under the terms of the GNU General Public License version 2\n"
@@ -1110,7 +1027,7 @@ msgid ""
 "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"
@@ -1124,98 +1041,105 @@ msgstr ""
 "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"
 
-#: main.cc:141
+#: main.cc:153
 msgid "BACK"
 msgstr "PÄÄ"
 
-#: main.cc:141
+#: main.cc:153
+#, fuzzy
 msgid ""
-"use backend BACK (gnome, ps [default],\n"
+"use backend BACK (eps, gnome, ps [default],\n"
 "scm, svg, tex, texstr)"
 msgstr ""
-"käytä päänä PÄÄ (gnome, ps [default],\n"
-"scm, svg, tex, texstr)"
+"käytä päänä PÄÄ (gnome, ps, eps,\n"
+"scm, svg, tex, texstr)\n"
+"default: PS"
 
-#: main.cc:143
-msgid "SYM=VAL"
+#: main.cc:155
+#, fuzzy
+msgid "SYM[=VAL]"
 msgstr "SYM=VAL"
 
-#: main.cc:144
+#: main.cc:156
+#, fuzzy
 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."
 
-#: main.cc:147
+#: main.cc:159
 msgid "EXPR"
 msgstr "LAUSEKE"
 
-#: main.cc:147
+#: main.cc:159
 msgid "evaluate scheme code"
 msgstr "suorita scheme koodi"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:150
+#: main.cc:162
 msgid "FORMATs"
 msgstr "FORMAATIT"
 
-#: main.cc:150
+#: main.cc:162
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr "vedosta FORMAATTI,...  Myös erilliset optiot:"
 
-#: main.cc:151
+#: main.cc:163
 msgid "generate DVI (tex backend only)"
 msgstr "tuota DVI (vain käytettäessä tex -päätä)"
 
-#: main.cc:152
+#: main.cc:164
 msgid "generate PDF (default)"
 msgstr "tuota PDF (oletus)"
 
-#: main.cc:153
+#: main.cc:165
 msgid "generate PNG"
 msgstr "tuota PNG"
 
-#: main.cc:154
+#: main.cc:166
 msgid "generate PostScript"
 msgstr "tuota PostScript"
 
-#: main.cc:155
+#: main.cc:167
 msgid "generate TeX (tex backend only)"
 msgstr "tuota TeX (vain käytettäessä tex -päätä)"
 
-#: main.cc:157
+#: main.cc:168
+msgid "show this help and exit"
+msgstr ""
+
+#: main.cc:169
 msgid "FIELD"
 msgstr "KENTTÄ"
 
-#: main.cc:157
-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Ä"
 
-#: main.cc:158
+#: main.cc:171
 msgid "add DIR to search path"
 msgstr "lisää HAKEMISTO hakupolkuun"
 
-#: main.cc:159
+#: main.cc:172
 msgid "use FILE as init file"
 msgstr "käytä TIEDOSTO alustustiedostona"
 
-#: main.cc:160
-msgid "write output to FILE (suffix will be added)"
-msgstr "tulosta tiedostoon TIEDOSTO (pääte lisätään)"
-
-#: main.cc:162
+#: main.cc:174
 msgid "USER,GROUP,JAIL,DIR"
 msgstr "USER,GROUP,JAIL,DIR"
 
-#: main.cc:162
+#: main.cc:174
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
@@ -1223,19 +1147,35 @@ msgstr ""
 "käytä chroot-hakemistona JAIL, ole USER:GROUP\n"
 "ja siirry hakemistoon DIR"
 
-#: main.cc:165
+#: main.cc:177
 msgid "do not generate printed output"
 msgstr "älä tuota tulostetta"
 
-#: main.cc:166
+#: main.cc:178
+msgid "write output to FILE (suffix will be added)"
+msgstr "tulosta tiedostoon TIEDOSTO (pääte lisätään)"
+
+#: main.cc:179
 msgid "generate a preview of the first system"
 msgstr "tee kuva ensimmäisestä kokonaisuudesta"
 
-#: main.cc:167
-msgid "run in safe mode"
-msgstr "aja turvamoodissa"
+#: main.cc:180
+msgid "relocate using directory of lilypond program"
+msgstr "paikallista käyttäen lilypond ohjelman hakemistoa"
+
+#: main.cc:181
+#, fuzzy
+msgid ""
+"disallow unsafe Scheme and PostScript\n"
+"operations"
+msgstr "älä salli turvattomia Scheme ja PostScript -operaatioita"
 
-#: main.cc:207
+#: main.cc:183
+#, fuzzy
+msgid "show version number and exit"
+msgstr "tulosta versionumero"
+
+#: main.cc:224
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1245,125 +1185,125 @@ msgstr ""
 "%s  ja muut."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:234
+#: main.cc:251
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Käyttö: %s [OPTIO]... TIEDOSTO..."
 
-#: main.cc:236
+#: main.cc:253
 #, c-format
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Lado musiikki ja/tai tuota MIDI tiedostosta TIEDOSTO."
 
-#: main.cc:238
+#: main.cc:255
 #, c-format
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond tuottaa kaunista musiikkinotaatiota."
 
-#: main.cc:240
+#: main.cc:257
 #, c-format
 msgid "For more information, see %s"
-msgstr "Lisätietoja varten, katso %s."
-
-#: main.cc:281
-#, c-format
-msgid "no such file: %s"
-msgstr "tiedostoa ei löydy: `%s'"
+msgstr "Lisätietoja varten, katso %s"
 
-#: main.cc:295
+#: main.cc:259
 #, c-format
-msgid "no such directory: %s"
-msgstr "hakemistoa ei löydy: `%s'"
+msgid "Options:"
+msgstr "Optiot:"
 
-#: main.cc:328
+#: main.cc:263
 #, c-format
-msgid "argv0 relocation: argv0=%s, prefix=%s"
-msgstr "argv0 paikantaminen: argv=%s, prefix=%s"
+msgid "Report bugs via %s"
+msgstr "Raportoi virheet osoitteeseen %s"
 
-#: main.cc:443
+#: main.cc:309
 #, 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:457
+#: main.cc:323
 #, c-format
 msgid "no such user: %s"
 msgstr "käyttäjää ei löydy: `%s'"
 
-#: main.cc:459
+#: main.cc:325
 #, 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"
 
-#: main.cc:474
+#: main.cc:340
 #, c-format
 msgid "no such group: %s"
 msgstr "ryhmää ei ole: %s"
 
-#: main.cc:476
+#: main.cc:342
 #, 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"
 
-#: main.cc:484
+#: main.cc:350
 #, c-format
-msgid "can't chroot to: %s: %s"
+msgid "cannot chroot to: %s: %s"
 msgstr "chroot ei onnistunut: %s: %s"
 
-#: main.cc:491
+#: main.cc:357
 #, 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"
 
-#: main.cc:497
+#: main.cc:363
 #, 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"
 
-#: main.cc:503
+#: main.cc:369
 #, 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"
 
-#: main.cc:553
+#: main.cc:415
 #, c-format
 msgid "Evaluating %s"
 msgstr "Määritetään %s"
 
+#: main.cc:645
+#, c-format
+msgid "exception caught: %s"
+msgstr "napattiin poikkeus: %s"
+
 #. FIXME: constant error message.
-#: mark-engraver.cc:123
+#: mark-engraver.cc:154
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark vaatii kokonaislukuargumentin"
 
-#: mark-engraver.cc:129
+#: mark-engraver.cc:160
 msgid "mark label must be a markup object"
 msgstr "merkinnän on oltava markup -objekti"
 
-#: mensural-ligature-engraver.cc:74
+#: mensural-ligature-engraver.cc:85
 msgid "ligature with less than 2 heads -> skipping"
 msgstr "ligatuuri vähemmällä kuin 2:lla nuottipäällä -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:101
+#: mensural-ligature-engraver.cc:112
 msgid "cannot determine pitch of ligature primitive -> skipping"
 msgstr "ei voitu määrittää nuottikorkeutta ligatuurin osalle -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:115
+#: mensural-ligature-engraver.cc:126
 msgid "single note ligature - skipping"
 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:127
+#: mensural-ligature-engraver.cc:138
 msgid "prime interval within ligature -> skipping"
 msgstr "priimi-intervalli ligatuurissa -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:139
+#: 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"
 
-#: mensural-ligature-engraver.cc:187
+#: mensural-ligature-engraver.cc:198
 msgid "semibrevis must be followed by another one -> skipping"
 msgstr "semibrevis vaatii samantyyppisen seuraavaksi -> ohitetaan"
 
-#: mensural-ligature-engraver.cc:198
+#: 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"
@@ -1371,7 +1311,7 @@ msgstr ""
 "semibreve:t voivat esiintyä vain ligaturen alussa,\n"
 "ja niitä voi olla vain nolla tai kaksi"
 
-#: mensural-ligature-engraver.cc:225
+#: mensural-ligature-engraver.cc:236
 msgid ""
 "invalid ligatura ending:\n"
 "when the last note is a descending brevis,\n"
@@ -1383,385 +1323,426 @@ msgstr ""
 "toiseksi viimeisen nuotin on oltava joku muu,\n"
 "tai ligaturan täytyy olla LB tai SSB"
 
-#: mensural-ligature-engraver.cc:345
+#: mensural-ligature-engraver.cc:356
 msgid "unexpected case fall-through"
 msgstr "odottamaton tapauksen raukeaminen"
 
-#: mensural-ligature.cc:145
+#: mensural-ligature.cc:141
 msgid "Mensural_ligature: unexpected case fall-through"
 msgstr "Mensural_ligature: odottamaton tapauksen raukeaminen"
 
-#: mensural-ligature.cc:197
+#: mensural-ligature.cc:192
 msgid "Mensural_ligature: (join_right == 0)"
 msgstr "Mensural_ligature: (join_right == 0)"
 
-#: midi-item.cc:150
+#: midi-item.cc:152
 #, c-format
 msgid "no such MIDI instrument: `%s'"
 msgstr "ei löytynyt MIDI-instrumenttia: `%s'"
 
-#: midi-item.cc:254
-msgid "silly pitch"
-msgstr "sekava äänenkorkeus"
-
-#: midi-item.cc:270
+#: 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:26
+#: 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:43
+#: 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'"
 
-#: music.cc:178
-#, 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:241
+#: 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"
 
-#: new-fingering-engraver.cc:83
-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"
 
-#.
-#. music for the softenon children?
-#.
-#: new-fingering-engraver.cc:154
-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"
 
-#: new-fingering-engraver.cc:262
+#: new-fingering-engraver.cc:240
 msgid "placing below"
 msgstr "sijoitetaan alle"
 
-#: new-lyric-combine-music-iterator.cc:241
-#, c-format
-msgid "cannot find Voice `%s'"
-msgstr "ei löydetty Voice `%s'"
-
-#: note-collision.cc:401
+#: note-collision.cc:457
 msgid "ignoring too many clashing note columns"
 msgstr "liian monta törmäävää nuottisaraketta"
 
-#: note-column.cc:121
-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"
 
-#: note-head.cc:68
+#: note-head.cc:63
 #, 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:29
+#: open-type-font.cc:33
 #, c-format
-msgid "can't allocate %d bytes"
-msgstr "ei voitu varata %d bittiä"
+msgid "cannot allocate %lu bytes"
+msgstr "ei voitu varata %lu bittiä"
 
-#: open-type-font.cc:33
+#: 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'"
 
-#: open-type-font.cc:106
+#: open-type-font.cc:98
 #, c-format
 msgid "unsupported font format: %s"
 msgstr "tukematon fonttimuoto: %s"
 
-#: open-type-font.cc:108
+#: open-type-font.cc:100
 #, c-format
 msgid "unknown error: %d reading font file: %s"
 msgstr "tuntematon virhe: %d lukee fonttitiedostoa: %s"
 
-#: open-type-font.cc:180
+#: open-type-font.cc:173 open-type-font.cc:297
 #, 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"
+
+#: 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."
 
-#: pango-font.cc:154
+#: 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'"
 
-#: pango-font.cc:197
+#: pango-font.cc:272
 msgid "FreeType face has no PostScript font name"
 msgstr "FreeType muodolla ei ollut PostScript fonttinimeä"
 
-#: paper-outputter-scheme.cc:32
+#: paper-outputter-scheme.cc:33
 #, c-format
 msgid "Layout output to `%s'..."
 msgstr "Aseta tulostus paikkaan `%s'..."
 
-#: paper-score.cc:77
+#: 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)"
 
-#: paper-score.cc:81
+#: paper-score.cc:122
 msgid "Preprocessing graphical objects..."
 msgstr "Esiprosessoidaan graafisia kohteita..."
 
-#: parse-scm.cc:81
+#: parse-scm.cc:83
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE antoi virheen lausekkeelle, joka alkoi täältä"
 
-#: percent-repeat-engraver.cc:97
-#, c-format
-msgid "can't handle a percent repeat of length: %s"
-msgstr "ei tiedetä kuinka kohdella tämän mittaista prosenttitoistoa: %s"
-
-#: percent-repeat-engraver.cc:159
+#: percent-repeat-engraver.cc:200
 msgid "unterminated percent repeat"
 msgstr "päättämätön prosenttitoisto"
 
-#: percent-repeat-iterator.cc:51
-msgid "no one to print a percent"
-msgstr "kukaan ei voinut tulostaa prosenttia"
-
-#: performance.cc:47
+#: performance.cc:45
 msgid "Track..."
 msgstr "Jälki..."
 
-#: performance.cc:71
+#: performance.cc:74
 msgid "MIDI channel wrapped around"
 msgstr "MIDI kanava kietaistiin ympäri"
 
-#: performance.cc:72
+#: performance.cc:75
 msgid "remapping modulo 16"
 msgstr "kuvataan uudelleen modulo 16"
 
-#: performance.cc:91
-msgid "Creator: "
-msgstr "Tekijä: "
-
-#: performance.cc:111
-msgid "at "
-msgstr "kohdassa "
-
-#: performance.cc:164
+#: performance.cc:103
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "Tehdään MIDI-tuloste `%s'..."
 
-#: phrasing-slur-engraver.cc:167
+#: phrasing-slur-engraver.cc:146
 msgid "unterminated phrasing slur"
 msgstr "päättämätön fraaseerauskaari"
 
-#: piano-pedal-engraver.cc:221
+#: piano-pedal-engraver.cc:286
 #, c-format
-msgid "expect 3 strings for piano pedals, found: %d"
-msgstr "odotettiin 3 merkkijonoa pianopedaalille, löytyi: %d"
+msgid "expect 3 strings for piano pedals, found: %ld"
+msgstr "odotettiin 3 merkkijonoa pianopedaalille, löytyi: %ld"
 
-#: piano-pedal-engraver.cc:237 piano-pedal-engraver.cc:250
-#: piano-pedal-performer.cc:81
+#: piano-pedal-engraver.cc:301 piano-pedal-engraver.cc:312
+#: piano-pedal-performer.cc:93
 #, 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'"
 
-#: piano-pedal-engraver.cc:298
+#: piano-pedal-engraver.cc:347
 #, 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'"
 
-#: program-option.cc:188
+#: program-option.cc:205
 #, c-format
 msgid "no such internal option: %s"
 msgstr "tuntematon sisäinen optio: %s"
 
-#: property-iterator.cc:80
+#: property-iterator.cc:74
 #, c-format
 msgid "not a grob name, `%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'"
+msgstr "ei ole graafisen objektin (grob) nimi, `%s'"
 
 #: relative-octave-check.cc:38
 msgid "Failed octave check, got: "
 msgstr "Oktaavitarkistus epäonnistui, saatiin: "
 
-#: rest-collision.cc:145
-msgid "can't resolve rest collission: rest direction not set"
-msgstr "ei voitu määrittää taukojen törmäystä: tauon suuntaa ei asetettu"
+#: 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"
+
+#: relocate.cc:69 relocate.cc:87
+#, c-format
+msgid "no such directory: %s for %s"
+msgstr "hakemistoa ei löydy: %s kohteelle %s"
+
+#: relocate.cc:79
+#, c-format
+msgid "%s=%s (prepend)\n"
+msgstr "%s=%s (painota)\n"
+
+#: relocate.cc:99
+#, c-format
+msgid "Relocation: compile prefix=%s, new prefix=%s"
+msgstr "Paikantaminen: käännös-etuliite=%s, uusi etuliite=%s"
+
+#: relocate.cc:129
+#, c-format
+msgid "Relocation: framework_prefix=%s"
+msgstr "Paikantaminen: framework_prefix=%s"
+
+#: relocate.cc:169
+#, c-format
+msgid "Relocation: is absolute: argv0=%s"
+msgstr "Paikantaminen: absoluuttinen: argv0=%s"
+
+#: relocate.cc:176
+#, c-format
+msgid "Relocation: from cwd: argv0=%s"
+msgstr "Paikantaminen: nykyisestä polusta: argv0=%s"
+
+#: relocate.cc:185
+#, c-format
+msgid ""
+"Relocation: from PATH=%s\n"
+"argv0=%s"
+msgstr ""
+"Paikantaminen: polusta PATH=%s\n"
+"argv0=%s"
 
-#: rest-collision.cc:159 rest-collision.cc:205
+#: 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"
+
+#: rest-collision.cc:165 rest-collision.cc:210
 msgid "too many colliding rests"
 msgstr "liian monta törmäävää taukoa"
 
-#: rest.cc:138
+#: rest.cc:144
 #, c-format
 msgid "rest `%s' not found"
 msgstr "taukoa `%s' ei löytynyt, "
 
-#: score-engraver.cc:69
+#: score-engraver.cc:67
 #, c-format
 msgid "cannot find `%s'"
 msgstr "`%s' ei lyötynyt"
 
-#: score-engraver.cc:71
+#: score-engraver.cc:69
 msgid "Music font has not been installed properly."
 msgstr "Fontteja ei oltu asennettu kunnolla."
 
-#: score-engraver.cc:73
+#: score-engraver.cc:71
 #, c-format
 msgid "Search path `%s'"
 msgstr "Hakupolku `%s'"
 
-#: score.cc:215
+#: score-engraver.cc:73
+msgid "Aborting"
+msgstr "Keskeytetään"
+
+#: score.cc:225
 msgid "already have music in score"
 msgstr "viivastolla on jo musiikkia"
 
-#: score.cc:216
+#: score.cc:226
 msgid "this is the previous music"
 msgstr "tämä on edellinen musiikki"
 
-#: score.cc:221
+#: score.cc:231
 msgid "errors found, ignoring music expression"
 msgstr "virheitä löytyi, sivuutetaan musiikki-ilmaisu"
 
 #. FIXME:
-#: script-engraver.cc:104
-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: "
 
-#: script-engraver.cc:105
+#: script-engraver.cc:103
 msgid "scheme encoding: "
 msgstr "scheme koodaus: "
 
-#: simple-spacer.cc:414
+#: 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ä"
 
-#: slur-engraver.cc:160
+#: 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"
 
-#: slur-engraver.cc:169
-msgid "can't end slur"
+#: slur-engraver.cc:166
+msgid "cannot end slur"
 msgstr "ei löytynyt kaaren loppua"
 
-#: source-file.cc:68
+#: source-file.cc:74
 #, c-format
 msgid "expected to read %d characters, got %d"
 msgstr "odotettiin %d merkkiä, saatiin %d"
 
-#: spacing-spanner.cc:40
-#, 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:91
+#: stem-engraver.cc:92
 msgid "tremolo duration is too long"
 msgstr "tremolon kesto on liian pitkä"
 
 #. FIXME:
-#: stem-engraver.cc:128
+#: stem-engraver.cc:129
 #, c-format
 msgid "adding note head to incompatible stem (type = %d)"
 msgstr "lisätään nuottipää sopimattomaan varteen (tyyppi = %d)"
 
-#: stem-engraver.cc:130
+#: stem-engraver.cc:131
 msgid "maybe input should specify polyphonic voices"
 msgstr "ehkä syötteen täytyisi määrittää moniäänisiä ääniä"
 
-#: stem.cc:124
+#: stem.cc:105
 msgid "weird stem size, check for narrow beams"
 msgstr "outo varren koko, koeta lyhyempiä palkkeja"
 
-#: stem.cc:579
+#: stem.cc:641
 #, c-format
 msgid "flag `%s' not found"
 msgstr "lippua `%s' ei löydetty"
 
-#: stem.cc:590
+#: stem.cc:652
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "lipun piirtoa `%s' ei löytynyt"
 
-#: system.cc:184
+#: system.cc:180
 #, c-format
 msgid "Element count %d."
 msgstr "Elementtien määrä: %d."
 
-#: system.cc:270
+#: system.cc:276
 #, 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:61
-msgid "can't find start of text spanner"
+msgid "cannot find start of text spanner"
 msgstr "ei löydetty alkua tekstileikkeelle"
 
-#: text-spanner-engraver.cc:75
+#: text-spanner-engraver.cc:73
 msgid "already have a text spanner"
 msgstr "tekstileike löytyi jo"
 
-#: text-spanner-engraver.cc:136
+#: text-spanner-engraver.cc:133
 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:106
-#, c-format
-msgid "TFM header of `%s' has only %u word (s)"
-msgstr "TFM-otsakkeessa `%s' on vain %u sana(a)"
-
-#: tfm-reader.cc:139
-#, 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:70
-#, c-format
-msgid "can't find ascii character: %d"
-msgstr "ei löydetty ASCII-merkkiä: %d"
-
-#: tie-engraver.cc:187
+#: tie-engraver.cc:264
 msgid "lonely tie"
 msgstr "yksinäinen sidos"
 
-#: time-scaled-music-iterator.cc:22
-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.
 #.
-#: time-signature-engraver.cc:61
+#: 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!)
-#: time-signature.cc:81
+#: 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"
@@ -1771,19 +1752,30 @@ msgstr "aikamerkintäsymbolia `%s' ei löytynyt; vaihdetaan numeroituun tyyliin"
 msgid "unknown translator: `%s'"
 msgstr "tuntematon tulkitsija: `%s'"
 
-#: trill-spanner-engraver.cc:70
-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"
 
-#: trill-spanner-engraver.cc:84
+#: trill-spanner-engraver.cc:80
 msgid "already have a trill spanner"
 msgstr "trilliladoke löytyi jo"
 
-#: trill-spanner-engraver.cc:144
-msgid "unterminated trill spanner"
-msgstr "päättymätön trilliladoke"
-
-#: vaticana-ligature-engraver.cc:344
+#: vaticana-ligature-engraver.cc:388
 #, c-format
 msgid ""
 "ignored prefix (es) `%s' of this head according to restrictions of the "
@@ -1792,316 +1784,295 @@ msgstr ""
 "sivuutetaan prefiksi (t) `%s' tälle nuottipäälle valitun ligatuurityylin "
 "mukaisesti"
 
-#: vaticana-ligature-engraver.cc:587
+#: vaticana-ligature-engraver.cc:714
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
-msgstr "Vaticana_ligature_engraver: asetetaan `spacing-increment = %f': ptr=%ul"
+msgstr ""
+"Vaticana_ligature_engraver: asetetaan `spacing-increment = %f': ptr=%ul"
 
-#: vaticana-ligature.cc:87
+#: vaticana-ligature.cc:84
 msgid "flexa-height undefined; assuming 0"
 msgstr "flexa-height määrittämättä; oletetaan 0"
 
-#: vaticana-ligature.cc:93
+#: vaticana-ligature.cc:89
 msgid "ascending vaticana style flexa"
 msgstr "laskeva vaticana-tyylinen flexa"
 
-#: vaticana-ligature.cc:182
+#: vaticana-ligature.cc:177
 msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: nollayhdiste (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:141
-msgid "can't end volta spanner"
+#: volta-engraver.cc:144
+msgid "cannot end volta spanner"
 msgstr "ei löydetty loppua volta ladokkeelle"
 
-#: volta-engraver.cc:151
+#: volta-engraver.cc:154
 msgid "already have a volta spanner, ending that one prematurely"
 msgstr "löytyi ja volta-ladoke, lopetetaan se ennenaikaisesti"
 
-#: volta-engraver.cc:155
+#: volta-engraver.cc:158
 msgid "also already have an ended spanner"
 msgstr "myös tekstileike päätettiin jo"
 
-#: parser.yy:91
-msgid "tag must be symbol or list of symbols"
-msgstr "merkinnän on oltava symboli tai lista symboleita"
-
-#: parser.yy:654
-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:814
+#: 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"
 
-#: parser.yy:838
+#: parser.yy:726
 msgid "need \\paper for paper block"
 msgstr "tarvitaan \\paper paperiryhmälle"
 
-#: parser.yy:983
-msgid "more alternatives than repeats"
-msgstr "enemmän vaihtoehtoja kuin kertauksia"
-
-#: parser.yy:1020
-#, c-format
-msgid "expect 2 elements for Chord tremolo, found %d"
-msgstr "odotetaan 2 elementtiä Chord tremololle, löytyi %d"
-
-#: parser.yy:1175
-msgid "music head function must return Music object"
-msgstr "päämusiikkifuntion täytyy palauttaa Music objecti"
-
-#: parser.yy:1448
+#: parser.yy:1172
 msgid "Grob name should be alphanumeric"
 msgstr "Graafiseen objectiin täytyy olla kirjain tai numero"
 
-#: parser.yy:1812
+#: parser.yy:1475
 msgid "second argument must be pitch list"
 msgstr "toisen argumentin on oltava äänenkorkeuslista"
 
-#: parser.yy:1851 parser.yy:1856 parser.yy:2332
+#: 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"
 
-#: parser.yy:1949
+#: parser.yy:1604
 msgid "expecting string as script definition"
 msgstr "oletetaan merkkijonon olevan skriptimäärittely"
 
-#: parser.yy:2108 parser.yy:2158
+#: parser.yy:1759 parser.yy:1809
 #, c-format
 msgid "not a duration: %d"
 msgstr "ei ole kesto: %d"
 
-#: parser.yy:2251
+#: parser.yy:1926
 msgid "have to be in Note mode for notes"
 msgstr "täytyy olla Note -moodissa nuotteja varten"
 
-#: parser.yy:2345
+#: parser.yy:1987
 msgid "have to be in Chord mode for chords"
 msgstr "täytyy olla Chord -moodissa sointuja varten"
 
-#: lexer.ll:156
+#: lexer.ll:176
 msgid "stray UTF-8 BOM encountered"
 msgstr "satunnainen UTF-8 BOM (osaluettelo) havaittu"
 
-#: lexer.ll:160
+#: lexer.ll:180
 msgid "Skipping UTF-8 BOM"
 msgstr "Sivuutetaan UTF-8 BOM (osaluettelo)"
 
-#: lexer.ll:204
+#: lexer.ll:235
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "Avataan syöte: `%s'"
 
-#: lexer.ll:212
+#: lexer.ll:252
 msgid "quoted string expected after \\version"
 msgstr "lainausmerkittyä merkkijonoa ei löytynyt kohteen \\version jälkeen"
 
-#: lexer.ll:216
-msgid "quoted string expected after \\renameinput"
-msgstr "lainausmerkittyä merkkijonoa ei löytynyt kohteen \\renameinput jälkeen"
+#: lexer.ll:256
+msgid "quoted string expected after \\sourcefilename"
+msgstr "odotettiin lainausmerkittyä merkkijonoa \\sourcefilename:n jälkeen"
+
+#: lexer.ll:260
+msgid "integer expected after \\sourcefileline"
+msgstr "odotettiin kokonaislukua \\sourcefilename:n jälkeen"
 
-#: lexer.ll:229
+#: lexer.ll:273
 msgid "EOF found inside a comment"
 msgstr "EOF löytyi kommentin sisältä"
 
-#: lexer.ll:244
+#: lexer.ll:288
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput ei ole sallittu init-alustustiedoston ulkopuolella"
 
-#: lexer.ll:268
+#: lexer.ll:312
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "väärä tai määrittämätön tunniste: `%s'"
 
 #. backup rule
-#: lexer.ll:277
+#: lexer.ll:321
 msgid "end quote missing"
 msgstr "jälkimmäinen lainaismerkki puuttuu"
 
-#: lexer.ll:439
+#: 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?"
 
-#: lexer.ll:538
+#: 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?"
 
-#: lexer.ll:627
+#: lexer.ll:659
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "epäkelpo merkki: `%c'"
 
-#: lexer.ll:714 lexer.ll:715
+#: lexer.ll:774 lexer.ll:775
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "tuntematon koodinvaihtomerkillinen merkkijono: `\\\\%s'"
 
-#: lexer.ll:812 lexer.ll:813
+#: lexer.ll:880 lexer.ll:881
 #, 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:813 lexer.ll:814
-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ä"
 
-#. TODO: print location
-#: lexer.ll:950 lexer.ll:951
-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:434 ps-to-png.scm:87
-#, 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
-#, lisp-format
+#, scheme-format
 msgid "`~a' failed (~a)"
 msgstr "`~a' epäonnistui (~a)"
 
-#: backend-library.scm:82 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'..."
 
-#: backend-library.scm:97
-#, lisp-format
+#: backend-library.scm:108
+#, scheme-format
 msgid "Converting to ~a..."
 msgstr "Muunnetaan kohteeksi `~a'..."
 
-#: backend-library.scm:142
-#, lisp-format
+#: backend-library.scm:145
+#, scheme-format
 msgid "Writing header field `~a' to `~a'..."
 msgstr "Kirjoitetaan otsaketietue `~a' kohteeseen `~a'..."
 
-#: beam.scm:79
-#, lisp-format
-msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
-msgstr "Virhe palkin laskennassa.  Odotettiin (~S,~S), löytyi ~S."
-
-#: beam.scm:93
-#, lisp-format
-msgid "Error in beam quanting.  Expected ~S 0, found ~S."
-msgstr "Virhe palkin laskennassa.  Odotettiin ~S 0, löytyi ~S."
-
-#: clef.scm:124
-#, lisp-format
-msgid "unknown clef type `~a'"
-msgstr "tuntematon avaimen tyyppi: `~a'"
-
-#: clef.scm:125
-msgid "see scm/clef.scm for supported clefs"
-msgstr "katso tiedostosta scm/clef.scm tuetut avaimet"
-
-#: 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
-#, lisp-format
+#, scheme-format
 msgid "symbol ~S redefined"
 msgstr "symbol ~S määriteltiin uudelleen"
 
-#: define-markup-commands.scm:204
-#, lisp-format
-msgid "can't find bounding box of `~a'"
-msgstr "ei löytynyt `~a':n rajauskehystä (bounding box)"
+#: 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"
 
-#: define-markup-commands.scm:272
+#. 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?"
+msgstr ""
+"systeemejä ei löytynyt \\score merkinnässä, onko siinä \\layout blokkia?"
 
-#: define-markup-commands.scm:981
-#, lisp-format
+#: define-markup-commands.scm:1297
+#, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr "ei ole sallittu keston merkkijono: ~a"
 
-#: define-music-types.scm:730
-#, lisp-format
+#: define-music-types.scm:751
+#, scheme-format
 msgid "symbol expected: ~S"
 msgstr "odotettiin symboli: ~S"
 
-#: define-music-types.scm:733
-#, 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"
 
-#: define-music-types.scm:753
-#, lisp-format
+#: define-music-types.scm:774
+#, scheme-format
 msgid "unknown repeat type `~S'"
 msgstr "tuntematon toistotyyppi `~S'"
 
-#: define-music-types.scm:754
+#: 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
-#, lisp-format
+#, scheme-format
 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:144
-#, lisp-format
-msgid "unknown interface: ~S"
-msgstr "tuntematon rajapinta: ~S"
+#: document-backend.scm:145
+#, scheme-format
+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
-#, lisp-format
+#, scheme-format
 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)"
 
-#: framework-eps.scm:46 framework-eps.scm:47
-#, lisp-format
+#: framework-eps.scm:91 framework-eps.scm:92
+#, scheme-format
 msgid "Writing ~a..."
 msgstr "Kirjoitetaan ~a..."
 
-#: framework-ps.scm:258
-#, 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"
 
-#: framework-ps.scm:304
-#, 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"
 
-#: framework-ps.scm:321
-#, 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"
 
-#: framework-ps.scm:353
-#, 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"
 
-#: framework-ps.scm:549
-#, 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"
 
-#: framework-ps.scm:566 framework-ps.scm:569
-#, 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ä"
 
-#: framework-ps.scm:576
+#: framework-ps.scm:758
+#, fuzzy
 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"
@@ -2114,120 +2085,221 @@ msgstr ""
 "\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'"
 
-#: lily-library.scm:418
-#, lisp-format
+#: layout-beam.scm:29
+#, 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
+#, scheme-format
+msgid "Error in beam quanting.  Expected ~S 0, found ~S."
+msgstr "Virhe palkin laskennassa.  Odotettiin ~S 0, löytyi ~S."
+
+#: layout-page-layout.scm:357
+msgid "Calculating page breaks..."
+msgstr "Lasketaan sivunvaihtoja..."
+
+#: lily-library.scm:593
+#, scheme-format
 msgid "unknown unit: ~S"
 msgstr "tuntematon yksikkö: ~S"
 
-#: lily-library.scm:451
-#, 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:458
+#: lily-library.scm:633
 msgid "old relative compatibility not used"
 msgstr "vanhaa relative -yhteensopivuutta ei käytetty"
 
-#: lily.scm:167
-#, 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"
 
-#: lily.scm:364 lily.scm:424
-#, lisp-format
+#: lily.scm:525 lily.scm:589
+#, scheme-format
 msgid "failed files: ~S"
 msgstr "epäonniset tiedostot: ~S"
 
-#: lily.scm:415
-#, lisp-format
+#: lily.scm:579
+#, scheme-format
 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"
 
-#: 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."
 
-#: music-functions.scm:507
-#, 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
-#: music-functions.scm:558
-#, 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"
 
-#: music-functions.scm:702
-#, 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'"
 
-#: music-functions.scm:909
-#, lisp-format
+#: music-functions.scm:942
+#, scheme-format
 msgid "unknown accidental style: ~S"
 msgstr "tuntematan kortusmerkkityyli: ~S"
 
-#: output-lib.scm:219
-#, lisp-format
-msgid "unknown bar glyph: `~S'"
-msgstr "tuntematon palkkityyli: `~S'"
-
-#: output-ps.scm:291
+#: output-ps.scm:315
 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"
 
-#: 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
-#, lisp-format
-msgid "can't find ~a in ~a"
+#, scheme-format
+msgid "cannot find ~a in ~a"
 msgstr "ei löytynyt ~a paikassa ~a"
 
-#: page-layout.scm:433
-msgid "Calculating page breaks..."
-msgstr "Lasketaan sivunvaihtoja..."
-
-#: paper.scm:68
+#: paper.scm:69
 msgid "Not in toplevel scope"
 msgstr "Ei huipputason piirissä"
 
-#: paper.scm:113
-#, lisp-format
+#: paper.scm:117
+#, scheme-format
 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
-#: paper.scm:141
+#: paper.scm:144
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "Täytyy käyttää #(set-paper-size .. ) \\paper { ... } :n sisällä"
 
-#: ps-to-png.scm:96
-#, lisp-format
+#: parser-clef.scm:126
+#, scheme-format
+msgid "unknown clef type `~a'"
+msgstr "tuntematon avaimen tyyppi: `~a'"
+
+#: parser-clef.scm:127
+msgid "see scm/clef.scm for supported clefs"
+msgstr "katso tiedostosta scm/clef.scm tuetut avaimet"
+
+#: ps-to-png.scm:88
+#, scheme-format
 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"
 
+#~ msgid "silly pitch"
+#~ msgstr "sekava äänenkorkeus"
+
+#~ msgid "show warranty"
+#~ msgstr "näytä takuusitoumus"
+
+#~ msgid ""
+#~ "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 ""
+#~ "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 "loading default font"
+#~ msgstr "ladataan oletusfontti"
+
+#~ msgid "cannot find default font: `%s'"
+#~ msgstr "ei löytynyt oletusfonttia: `%s'"
+
+#~ msgid "not setting creation callback: not a procedure"
+#~ msgstr "ei aseteta luonnin takaisinkutsua: ei ole proseduuri"
+
+#~ msgid "not setting modification callback: not a procedure"
+#~ msgstr "ei aseteta muutoksen takaisinkutsua: ei ole proseduuri"
+
+#~ msgid "crescendo too small"
+#~ msgstr "liian lyhyt crescendo"
+
+#~ msgid "print this help"
+#~ msgstr "näytä tämä opaste"
+
+#~ msgid "cannot open file %s"
+#~ msgstr "ei voitu avata tiedostoa %s"
+
+#~ msgid "Invalid direction of slur-event"
+#~ msgstr "Tuntematon kaari-tapahtuman suunta"
+
+#~ msgid "invalid direction of tuplet-span-event"
+#~ msgstr "tuntematon tuplettiväli-tapahtuman suunta"
+
+#~ msgid "Incorrect lilypond version: %s (%s, %s)"
+#~ msgstr "Epäkelpo lilypond versio: %s (%s, %s)"