]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'master' into translation
authorJean-Charles Malahieude <lilyfan@orange.fr>
Sat, 17 Jun 2017 15:38:46 +0000 (17:38 +0200)
committerJean-Charles Malahieude <lilyfan@orange.fr>
Sat, 17 Jun 2017 15:38:46 +0000 (17:38 +0200)
15 files changed:
Documentation/ly-examples/granados.ly
Documentation/notation/changing-defaults.itely
Documentation/web/news-headlines.itexi
Documentation/web/news-new.itexi
Documentation/web/news-old.itexi
VERSION
lily/include/lily-imports.hh
lily/include/lily-lexer.hh
lily/lexer.ll
lily/lily-imports.cc
ly/Welcome-to-LilyPond-MacOS.ly
ly/Welcome_to_LilyPond.ly
po/lilypond.pot
scm/define-markup-commands.scm
scripts/abc2ly.py

index 5cabf5766ef3d66587e6838e59c96aa79cb9ac43..25a5bf6979bd32e4214490f17be1b9bee2de1ca0 100644 (file)
@@ -103,7 +103,8 @@ lowerVoiceTwo = \relative {
   \csh
   \once \override Beam.damping = #+inf.0
   <bes'' es g>8 \csl \slurUp
-  %\once\override Slur.extra-offset = #'(0 . 4)
+  % Fix problem with -dpreview cropping beams
+  \once \override TextScript.padding = #10 <> _\markup { " " }
   es,,64 bes' es g s32.
     c64
     s4 <bes des>
index 7fad344bb6ee3cc4d281e36d49e55bbf77363115..5373e4f399fa3fcb17d7775032be5b7d801894c6 100644 (file)
@@ -2783,10 +2783,11 @@ The following example displaces the @q{broken} @code{OttavaBracket}
 object through its @code{staff-padding} property.  Since the property
 takes a @code{number}, @var{offsets} is provided with a list of
 @code{number}s to account for the two segments created by the line
-break.  The slur piece on the first line is effectively untouched since
-@code{0} is added to its default value.  The segment on the second
-line is raised two staff-spaces from its default height.  The default
-height happens to be @code{2}, though it is not necesssary to know this.
+break.  The bracket piece on the first line is effectively untouched
+since @code{0} is added to its default value of @code{staff-padding}.
+The segment on the second line is raised three staff-spaces from its
+default height.  The default height happens to be @code{2}, though it is
+not necessary to know this to achieve the desired positioning.
 
 @lilypond[quote,verbatim]
 {
index ec6bbc8b6a9dc9c6527f191a563c0d91fbdff4de..d40479e22163eedba4911c29ffb884292b74ea98 100644 (file)
@@ -11,7 +11,7 @@
 @ifclear web_version
   @c no anchor links, just link to News page
 
-@ref{News, LilyPond 2.19.60 released - @emph{May 08, 2017}}
+@ref{News, LilyPond 2.19.62 released - @emph{June 10, 2017}}
 
 @ref{News, Two LilyPond projects in Google Summer of Code 2016 - @emph{April 23, 2016}}
 
@@ -23,8 +23,8 @@
 @ifset web_version
   @c anchor links, link to individual news items by their <a> tag
 
-@uref{news.html#LilyPond-2_002e19_002e60-released-May-08_002c-2017,
-  LilyPond 2.19.60 released - @emph{May 08, 2017}}
+@uref{news.html#LilyPond-2_002e19_002e62-released-June-10_002c-2017,
+  LilyPond 2.19.62 released - @emph{June 10, 2017}}
 
 @uref{news.html#Two-LilyPond-projects-in-Google-Summer-of-Code-2016-April-23_002c-2016,
   Two LilyPond projects in Google Summer of Code 2016 - @emph{April 23, 2016}}
index 65383474ac072fc9a5b2d4f96778194ecba25779..bc7cdea2fe6d85c7db2ee5717ba042db009cc936 100644 (file)
@@ -9,10 +9,10 @@
 @c used for news about the upcoming release; see CG on Release Work
 
 @newsItem
-@subheading LilyPond 2.19.60 released  @emph{May 08, 2017}
+@subheading LilyPond 2.19.62 released  @emph{June 10, 2017}
 
 We are happy to announce the release of LilyPond
-2.19.60.  This release includes a number of enhancements, and contains some
+2.19.62.  This release includes a number of enhancements, and contains some
 work in progress.  You will have access to the very latest features, but
 some may be incomplete, and you may encounter bugs and crashes.  If you
 require a stable version of LilyPond, we recommend using the 2.18
index 17b31caf5310aeaa14cf8efb2e8feb29ff1928ce..436b1f553637ec68708b529703c024035ccd855b 100644 (file)
@@ -26,6 +26,30 @@ NOTE:
   * don't duplicate entries from news-new.itexi
 @end ignore
 
+@newsItem
+@subheading LilyPond 2.19.61 released  @emph{May 21, 2017}
+
+We are happy to announce the release of LilyPond
+2.19.61.  This release includes a number of enhancements, and contains some
+work in progress.  You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes.  If you
+require a stable version of LilyPond, we recommend using the 2.18
+version.
+
+@newsEnd
+
+@newsItem
+@subheading LilyPond 2.19.60 released  @emph{May 08, 2017}
+
+We are happy to announce the release of LilyPond
+2.19.60.  This release includes a number of enhancements, and contains some
+work in progress.  You will have access to the very latest features, but
+some may be incomplete, and you may encounter bugs and crashes.  If you
+require a stable version of LilyPond, we recommend using the 2.18
+version.
+
+@newsEnd
+
 @newsItem
 @subheading LilyPond 2.19.59 released  @emph{April 09, 2017}
 
diff --git a/VERSION b/VERSION
index e1d368af3833aa5a9b9f8a8cd9184fd3a78a63ef..2f424f76a7fcdc917a089387957735ab8b0a6283 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,7 +1,7 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=2
 MINOR_VERSION=19
-PATCH_LEVEL=61
+PATCH_LEVEL=63
 MY_PATCH_LEVEL=
 VERSION_STABLE=2.18.2
-VERSION_DEVEL=2.19.60
+VERSION_DEVEL=2.19.62
index d930f69cf940527ddd9eba2703ecf5920e220d34..1b63a537179a5a20f8922f008102d2692d7731a6 100644 (file)
@@ -86,6 +86,7 @@ namespace Lily {
   extern Variable make_safe_lilypond_module;
   extern Variable make_span_event;
   extern Variable markup_p;
+  extern Variable markup_command_signature;
   extern Variable markup_list_p;
   extern Variable midi_program;
 #if !GUILEV2
index eb26403b006d428ef96242893fc70e64c833bab1..ff2e8668c3615a349f26a50d23da3f756ac05399 100644 (file)
@@ -46,6 +46,7 @@ private:
   int scan_shorthand (const string&);
   int scan_scm_id (SCM);
   int identifier_type (SCM);
+  void push_markup_predicates (SCM sig);
   char escaped_char (char) const;
   const char *YYText_utf8 ();
 
index 93184ebe085dc2d432274a06d4eeb887e565fe01..21d2fc1acc16bc32cd224c1e0013fcf93151db4f 100644 (file)
@@ -417,6 +417,20 @@ BOM_UTF8   \357\273\277
 
        sval = eval_scm (sval, hi, '$');
 
+       if (YYSTATE == markup && ly_is_procedure (sval))
+       {
+               SCM sig = Lily::markup_command_signature (sval);
+               if (scm_is_true (sig))
+               {
+                       yylval = sval;
+                       int token = MARKUP_FUNCTION;
+                       if (scm_is_true (scm_object_property
+                                        (sval, ly_symbol2scm ("markup-list-command"))))
+                               token = MARKUP_LIST_FUNCTION;
+                       push_markup_predicates (sig);
+                       return token;
+               }
+       }
        int token = scan_scm_id (sval);
        if (!scm_is_eq (yylval, SCM_UNSPECIFIED))
                return token;
@@ -684,18 +698,8 @@ BOM_UTF8   \357\273\277
                // value (for token type MARKUP_FUNCTION or
                // MARKUP_LIST_FUNCTION).
 
-               push_extra_token (here_input (), EXPECT_NO_MORE_ARGS);
-               s = scm_cdr(s);
-               for (; scm_is_pair(s); s = scm_cdr(s)) {
-                 SCM predicate = scm_car(s);
-
-                 if (scm_is_eq (predicate, SCM (Lily::markup_list_p)))
-                   push_extra_token (here_input (), EXPECT_MARKUP_LIST);
-                 else if (scm_is_eq (predicate, SCM (Lily::markup_p)))
-                   push_extra_token (here_input (), EXPECT_MARKUP);
-                 else
-                   push_extra_token (here_input (), EXPECT_SCM, predicate);
-               }
+               push_markup_predicates (scm_cdr (s));
+
                return token_type;
        }
        [^$#{}\"\\ \t\n\r\f]+ {
@@ -892,6 +896,23 @@ Lily_lexer::pop_state ()
 
 }
 
+void
+Lily_lexer::push_markup_predicates (SCM sig)
+{
+       push_extra_token (here_input (), EXPECT_NO_MORE_ARGS);
+       for (SCM s = sig; scm_is_pair(s); s = scm_cdr(s)) {
+               SCM predicate = scm_car(s);
+
+               if (scm_is_eq (predicate, SCM (Lily::markup_list_p)))
+                       push_extra_token (here_input (), EXPECT_MARKUP_LIST);
+               else if (scm_is_eq (predicate, SCM (Lily::markup_p)))
+                       push_extra_token (here_input (), EXPECT_MARKUP);
+               else
+                       push_extra_token (here_input (), EXPECT_SCM, predicate);
+       }
+}
+
+
 int
 Lily_lexer::identifier_type (SCM sid)
 {
index 62e58b603c1ff36e8c150fbf920c9e6bae711965..f3cd3b1ab244b6287fec83edaa75b1f8f2b84334 100644 (file)
@@ -80,6 +80,7 @@ namespace Lily {
   Variable make_safe_lilypond_module ("make-safe-lilypond-module");
   Variable make_span_event ("make-span-event");
   Variable markup_p ("markup?");
+  Variable markup_command_signature ("markup-command-signature");
   Variable markup_list_p ("markup-list?");
   Variable midi_program ("midi-program");
 #if !GUILEV2
index 28f7a8443eed1aec5685bf08f30b193d80a0e8f9..2a8f0e7594dcf271997b614772c795c076d89064 100644 (file)
@@ -23,7 +23,7 @@ That's it.  For more information, visit http://lilypond.org .
 
 %}
 
-\version "2.19.60"  % necessary for upgrading to future LilyPond versions.
+\version "2.19.62"  % necessary for upgrading to future LilyPond versions.
 
 \header{
   title = "A scale in LilyPond"
index cee729e18ea52741358fb56312e33f08010f9bb8..b3cbf95e7191653bbc460883a800389ea6325a75 100644 (file)
@@ -32,7 +32,7 @@ Good luck with LilyPond!  Happy engraving.
 
 %}
 
-\version "2.19.60"  % necessary for upgrading to future LilyPond versions.
+\version "2.19.62"  % necessary for upgrading to future LilyPond versions.
 
 \header{
   title = "A scale in LilyPond"
index 8d8c78a6911b9c3fb24ca2342a88b7f43dc65f38..13c72abe5ba8e54085058383bd46136667a7e02a 100644 (file)
@@ -6,10 +6,10 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.19.60\n"
+"Project-Id-Version: lilypond 2.19.62\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu."
 "lilypond.bugs\n"
-"POT-Creation-Date: 2017-05-07 11:40+0100\n"
+"POT-Creation-Date: 2017-06-10 12:21+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -925,41 +925,41 @@ msgstr ""
 msgid "Encountered unprocessed marker %s\n"
 msgstr ""
 
-#: abc2ly.py:1389 convert-ly.py:85 lilypond-book.py:122 midi2ly.py:1061
+#: abc2ly.py:1393 convert-ly.py:85 lilypond-book.py:122 midi2ly.py:1061
 #, python-format
 msgid "%s [OPTION]... FILE"
 msgstr ""
 
-#: abc2ly.py:1390
+#: abc2ly.py:1394
 #, python-format
 msgid ""
 "abc2ly converts ABC music files (see\n"
 "%s) to LilyPond input.\n"
 msgstr ""
 
-#: abc2ly.py:1398 convert-ly.py:92 etf2ly.py:1208 lilypond-book.py:231
+#: abc2ly.py:1402 convert-ly.py:92 etf2ly.py:1208 lilypond-book.py:231
 #: midi2ly.py:1112 musicxml2ly.py:2774 main.cc:184
 msgid "show version number and exit"
 msgstr ""
 
-#: abc2ly.py:1401 convert-ly.py:96 etf2ly.py:1204 lilypond-book.py:140
+#: abc2ly.py:1405 convert-ly.py:96 etf2ly.py:1204 lilypond-book.py:140
 #: midi2ly.py:1079 musicxml2ly.py:2755 main.cc:163
 msgid "show this help and exit"
 msgstr ""
 
-#: abc2ly.py:1404 etf2ly.py:1209 midi2ly.py:1088
+#: abc2ly.py:1408 etf2ly.py:1209 midi2ly.py:1088
 msgid "write output to FILE"
 msgstr ""
 
-#: abc2ly.py:1407
+#: abc2ly.py:1411
 msgid "be strict about success"
 msgstr ""
 
-#: abc2ly.py:1410
+#: abc2ly.py:1414
 msgid "preserve ABC's notion of beams"
 msgstr ""
 
-#: abc2ly.py:1413
+#: abc2ly.py:1417
 msgid "suppress progress messages"
 msgstr ""
 
@@ -967,7 +967,7 @@ msgstr ""
 #. "Report bugs in English via %s",
 #. or if there is a LilyPond users list or forum in your language
 #. "Report bugs in English via %s or in YOUR_LANG via URI"
-#: abc2ly.py:1416 convert-ly.py:157 etf2ly.py:1218 lilypond-book.py:258
+#: abc2ly.py:1420 convert-ly.py:157 etf2ly.py:1218 lilypond-book.py:258
 #: midi2ly.py:1124 musicxml2ly.py:2917 main.cc:318
 #, c-format, python-format
 msgid "Report bugs via %s"
index 91b9391fe6600325df53b1c5c72df21f28e6f508..370d9de4f2bad7cf6720ed0dc75299c05852cb5f 100644 (file)
@@ -1595,16 +1595,11 @@ equivalent to @code{\"fi\"}.
                         (cons arg result-list))))
                 '()
                 arg-list))
-
-  (interpret-markup layout
-                    (prepend-alist-chain 'word-space 0 props)
-                    (make-line-markup
-                     (make-override-lines-markup-list
-                      (cons 'word-space
-                            (chain-assoc-get 'word-space props))
-                      (if (markup-command-list? args)
-                          args
-                          (concat-string-args args))))))
+  (stack-stencil-line 0
+                      (interpret-markup-list layout props
+                                             (if (markup-command-list? args)
+                                                 args
+                                                 (concat-string-args args)))))
 
 (define (wordwrap-stencils stencils
                            justify base-space line-width text-dir)
index 752f97f3be6a27bc785a97e6411b6c2d3b72e739..e6e0d12407e4ed53006ee529da85f55f7ac7dbab 100644 (file)
@@ -761,8 +761,12 @@ def try_parse_header_line (ln, state):
             lyrics_append(a)
         if g == 'w':        # vocals
             slyrics_append (a)
-        if g == 'Q':    #tempo
+        if g == 'Q':        # tempo
             try_parse_q (a)
+        if g == 'R':        # Rhythm (e.g. jig, reel, hornpipe)
+            header['meter'] = a
+        if g == 'Z':        # Transcription (e.g. Steve Mansfield 1/2/2000)
+            header['transcription'] = a
         return ''
     return ln