-2004-11-08 Han-Wen Nienhuys <hanwen@xs4all.nl>
-
- * lily/grace-engraver.cc (start_translation_timestep): split
- scm_cadddr
-
-2004-11-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
-
- * lily/quote-iterator.cc (Module): remove old quote-iterator
-
- * scm/define-music-types.scm (music-descriptions): move
- NewQuoteMusic over QuoteMusic
-
- * Documentation/user/notation.itely (Formatting cue notes): use
- \cueDuring.
-
- * lily/new-quote-iterator.cc (quote_ok): new function.
+2004-11-20 Han-Wen Nienhuys <hanwen@xs4all.nl>
- * input/regression/quote-cue-during.ly: new file.
+ * scm/define-markup-commands.scm (fill-line): use stack-stencils
+ iso. stack-stencils-line. Fixes putting centered objects into
+ fill-line.
- * input/regression/quote-grace.ly: new file.
+ * lily/bar-line.cc (get_staff_bar_size): backport for bar y-size
+ fix.
- * scm/define-context-properties.scm (Module): change definition of
- graceSettings
+2004-11-19 Han-Wen Nienhuys <hanwen@xs4all.nl>
- * lily/context-property.cc (Module): rename from
- translator-property.cc
+ * scripts/convert-ly.py (conv): backport convert-ly warnings.
- * lily/context.cc (context_name_symbol): new function
+2004-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
- * lily/grace-engraver.cc: new file. Set properties for grobs based
- on the grace-ness of now_moment().
-
- * scm/music-functions.scm (add-grace-property): use list
- iso. vector for graceSettings
- remove set-{start,stop}-grace-properties.
-
- * lily/new-quote-iterator.cc (construct_children): set
- quote_outlet_ if no quoted-context-{id,type} specified.
-
- * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
-
- * lily/parser.yy (command_element): remove \quote.
-
- * ly/music-functions-init.ly (location): add quoteDuring music
- function.
+ * lily/parser.yy:
+ (re_rhythmed_music): search for first Voice with context-id. This
+ fixes addlyrics-second-staff.ly
+
+2004-11-07 Han-Wen Nienhuys <hanwen@xs4all.nl>
* lily/lexer.ll: allow \encoding in lyrics as well. Remove
optional semicolon. (backportme)
+ * VERSION: release 2.4.2
+
2004-11-06 Jan Nieuwenhuizen <janneke@gnu.org>
* python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
2004-11-06 Han-Wen Nienhuys <hanwen@xs4all.nl>
- * scm/define-music-properties.scm (all-music-properties): add
- quoted-context-type, quoted-context-id.
-
- * scm/lily.scm (type-check-list): new function.
-
- * scm/lily-library.scm: new file. Generic library routines.
-
- * lily/parser.yy (Generic_prefix_music): move typechecking out of
- parser.
-
- * ly/music-functions-init.ly: add quoteDuring function.
-
- * lily/include/music-iterator.hh (class Music_iterator): rename
- set_translator -> set_context
-
- * lily/parser.yy (Generic_prefix_music_scm): add
- MUSIC_FUNCTION_SCM_SCM_MUSIC
-
* scm/lily.scm (sanitize-command-option): new function. (backportme)
* scm/framework-tex.scm (header): sanitize TeX paper size.
2004-11-05 Han-Wen Nienhuys <hanwen@xs4all.nl>
- * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
+ * mf/GNUmakefile: use Fedora-3 in download link.
* scm/framework-tex.scm (convert-to-dvi): use ly:system for
- invoking latex. (backportme.)
-
+ invoking latex.
+
* lily/stem.cc (off_callback): center stems for all rest stems.
2004-11-05 Werner Lemberg <wl@gnu.org>
PACKAGE_NAME defined in the VERSION file.
2004-11-04 Han-Wen Nienhuys <hanwen@xs4all.nl>
-
- * lily/beam.cc (rest_collision_callback): use local beam
- multiplicity.
-
- * input/regression/stem-stemlet.ly: new file.
- * lily/stem.cc (add_head): store rests as well.
-
- * scm/define-grob-properties.scm (all-user-grob-properties): add
- stemlet-length
-
- * lily/stem.cc: store rests as well.
-
* input/regression/new-slur.ly: mention forcing.
2004-11-04 Werner Lemberg <wl@gnu.org>
-Release 2.5
-***********
-
-
-DEVELOPMENT TEAM
-
-Han-Wen Nienhuys - Core development
-Jan Nieuwenhuizen - Core development
-Erik Sandberg - Bug Meister
-Pedro Kroger - Build Meister
-Graham Percival - Documentation Editor
-
-CONTRIBUTORS
-
-Werner Lemberg
-Heikki Junes
-
-BUG HUNTERS/SUGGESTIONS
-
-Fernando Pablo Lopez-Lezcano
-Jack O'Quin
-
Release 2.4
***********
BUG HUNTERS/SUGGESTIONS
+Arjan Bos
Antti Kaihola
Bertalan Fodor
Brian Clements
calculation. That's a nonsense value, which would collapse the
barline so we return 0.0 in the next alternative.
*/
- return scm_make_real ((Staff_symbol_referencer::line_count (me) -1) * ss);
+ Real ysize = (Staff_symbol_referencer::line_count (me) -1);
+ ysize = ysize * ss + Staff_symbol_referencer::line_thickness (me);
+ return scm_make_real (ysize);
}
else
return scm_int2num (0);
return v;
}
+
+SCM
+get_first_context_id (SCM type, Music *m)
+{
+ SCM id = m->get_property ("context-id");
+ if (SCM_BOOL_T == scm_equal_p (m->get_property ("context-type"), type)
+ && scm_is_string (m->get_property ("context-id"))
+ && scm_c_string_length (id) > 0)
+ {
+ return id;
+ }
+ return SCM_EOL;
+}
+
SCM
make_simple_markup (SCM encoding, SCM a)
{
re_rhythmed_music:
Grouped_music_list new_lyrics {
-
- SCM name = $1->get_property ("context-id");
- //if (name == SCM_EOL)
+ Music * voice = $1;
+ SCM name = get_first_context_id (scm_makfrom0str ("Voice"), voice);
if (!scm_is_string (name))
- name = scm_makfrom0str ("");
+ {
+ name = get_next_unique_context ();
+ voice = context_spec_music (scm_makfrom0str ("Voice"),
+ name,
+ voice, SCM_EOL);
+ }
SCM context = scm_makfrom0str ("Lyrics");
Music *all = MY_MAKE_MUSIC ("SimultaneousMusic");
get_next_unique_context (), com, SCM_EOL);
lst = scm_cons (csm->self_scm (), lst);
}
- /* FIXME: only first lyric music is accepted,
- the rest is junked */
- all->set_property ("elements", scm_cons ($1->self_scm (),
+ all->set_property ("elements", scm_cons (voice->self_scm (),
lst));
$$ = all;
- scm_gc_unprotect_object ($1->self_scm ());
+ scm_gc_unprotect_object (voice->self_scm ());
}
| LYRICSTO {
THIS->lexer_->push_lyric_state ();
(make-stencil-markup (car stencils))
(make-simple-markup "")))
stencils)))
- (stack-stencil-line fill-space line-stencils)))
+ (stack-stencils X RIGHT fill-space line-stencils)))
(define (font-markup qualifier value)
(lambda (layout props arg)
(ice-9 format)
(guile)
(srfi srfi-13)
+ (srfi srfi-1)
(lily))
;; FIXME: rename
(lambda (line) (dump-line outputter line (eq? line last-line))) lines)
(ly:outputter-dump-string outputter "\\lilypondend\n")))
+
(define-public (output-preview-framework
outputter book scopes fields basename )
(let* ((paper (ly:paper-book-paper book))
- (lines (ly:paper-book-systems book)))
+ (lines (ly:paper-book-systems book))
+ (first-notes-index (list-index
+ (lambda (s) (not (ly:paper-system-title? s)))
+ lines)))
+
(for-each
(lambda (x)
(ly:outputter-dump-string outputter x))
(define-fonts paper)
(header-end)))
- (dump-line outputter (car lines) #t)
+ (for-each
+ (lambda (l)
+ (dump-line outputter l (not (ly:paper-system-title? l))))
+ (take lines (1+ first-notes-index)))
(ly:outputter-dump-string outputter "\\lilypondend\n")))
(define-public (convert-to-pdf book name)
'''\\apply -> \\applymusic'''))
def conv (str):
+ if re.search ('textheight', str):
+ sys.stderr.write("\nWarning: tuning of page layout has changed. See reference manual.\n")
+
str = re.sub (r'\\OrchestralScoreContext', '\\Score', str)
def func(m):
if m.group(1) not in ['RemoveEmptyStaff',
+def conv (str):
+ str = re.sub (r'lastpagefill\s*=\s*"?1"', 'raggedlastbottom = ##t', str)
+ return str
+
+conversions.append (((2, 3, 6), conv,
+ '''lastpagefill -> raggedlastbottom'''))
+
+
+
def conv (str):
str = re.sub (r'\\consistsend', '\\consists', str)
str = re.sub (r'\\lyricsto\s+("?[a-zA-Z]+"?)(\s*\\new Lyrics\s*)?\\lyrics',
def conv (str):
str = re.sub (r'\\addlyrics', r'\\oldaddlyrics', str)
str = re.sub (r'\\newlyrics', r'\\addlyrics', str)
+ if re.search (r"\\override\s*TextSpanner", str):
+ sys.stderr.write ("\nWarning: TextSpanner has been split into DynamicTextSpanner and TextSpanner\n")
return str
conversions.append (((2, 3, 10), conv,
str = re.sub ('soloADue', 'printPartCombineTexts', str)
str = re.sub (r'\\applymusic\s*#notes-to-clusters',
'\\makeClusters', str)
+
+ str = re.sub (r'pagenumber\s*=', 'firstpagenumber', str)
return str
conversions.append (((2, 3, 12), conv,
def conv (str):
str = re.sub (r'\\paper', r'\\layout', str)
str = re.sub (r'\\bookpaper', r'\\paper', str)
- str = re.sub (r'paper-set-staff-size', r'layout-set-staff-size', str)
+ if re.search ('paper-set-staff-size', str):
+ sys.stderr.write ('''\nWarning: staff size should be changed at top-level
+with
+
+ #(set-global-staff-size <STAFF-HEIGHT-IN-POINT>)
+
+''')
+
+
+ str = re.sub (r'#\(paper-set-staff-size', '%Use set-global-staff-size at toplevel\n% #(layout-set-staff-size', str)
return str
conversions.append (((2, 3, 22),
'''\context Foo = NOTENAME -> \context Foo = "NOTENAME"'''))
-# nothing, just to make version numbers look good.
def conv (str):
return str
conv,
''))
+
+
+
################################
# END OF CONVERSIONS
################################