2004-06-13 Jan Nieuwenhuizen * scm/output-gnome.scm: White background, better window size, sane canvas size. 2004-06-13 Han-Wen Nienhuys * scm/output-gnome.scm: set PATH in script. * scm/page-layout.scm (default-page-make-stencil): don't stretch if there is too few systems on a page. * lily/parser.yy (relative_music): start at middle C without pitch argument. * Documentation/user/changing-defaults.itely (Page layout): new node. (Paper size): rename node (Page breaking): new node. (Titling): move from invoking. (File structure): new node. * lily/parser.yy (score_body): allow \header and music anywhere in \score body. 2004-06-13 Jan Nieuwenhuizen * scm/lily.scm (ly:load): Remove page-breaking.scm. 2004-06-13 Han-Wen Nienhuys * lily/include/paper-system.hh: move cc/hh file from paper-line.* * lily/include/paper-line.hh: rename to Paper_system. * lily/include/paper-book.hh: doc class. * lily/paper-book.cc (c_ragged_page_breaks): remove functions. * scm/page-layout.scm (plain-footer): add tagline/copyright. (plain-header): add instrument-name. (default-page-make-stencil): bugfixes. * lily/parser.yy (book_body): allow \header anywhere in \book{} * lily/paper-book.cc: remove copyright & tagline. Remove interactions with Page * scm/page-layout.scm (ly:optimal-page-breaks): move back breaking here, (default-page-make-stencil): new function (default-page-music-height): new function (page-headfoot): new function (ly:optimal-page-breaks): generate stencils directly from here * scm/titling.scm: new file, group titling functions 2004-06-13 Jan Nieuwenhuizen * scm/output-gnome.scm: Handle multiple pages. * scm/framework-gnome.scm: Do not load output-gnome. (framework-gnome): Invoke output-gnome::header and output-gnome::end-output as faked stencils. Fixes experimental gnome output. 2004-06-13 Han-Wen Nienhuys * input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly (rondo): octavation compatibility fixes. Backportme. * scm/page-breaking.scm (ly:optimal-page-breaks): allow overfull pages. (ly:optimal-page-breaks): combine-penalties: no shortcut for negative. Now we handle negative penalties (ie. \pageBreak) correctly. * lily/system.cc (get_line): extract page-penalty from the left bound. * scm/fret-diagrams.scm (fret-diagram): use @table for documentation 2004-06-12 Han-Wen Nienhuys * scm/framework-ps.scm: don't load output-XXX from framework-XXX 2004-06-12 Jan Nieuwenhuizen * scm/output-gnome.scm: Update script. Move development to lilypond_2_3_2 branch for now. 2004-06-11 Han-Wen Nienhuys * scm/page-breaking.scm (ly:optimal-page-breaks): don't do negative penalties. cleanups. * Documentation/user/changing-defaults.itely (Creating contexts): index entries * scm/page-breaking.scm (ly:optimal-page-breaks): new file. Rewrite function. * lily/paper-book.cc (pages): new interface: page-breaking returns list of line-list. * lily/page.cc (Page): take lines argument. * scm/document-translation.scm (all-engravers-doc): link to user man * scm/page-layout.scm (ly:optimal-page-breaks): use penalty iso. score. * Documentation/user/notation.itely (Relative octaves): typo. * lily/paper-book.cc (LY_DEFINE): ly:output-formats. New function. 2004-06-11 Jan Nieuwenhuizen * scm/output-gnome.scm: Update build script. 2004-06-10 Jan Nieuwenhuizen * scm/output-gnome.scm: Add font scaling. Attempt to resurrect gnome backend. * scm/framework-gnome.scm: New file. * scm/lily.scm: Use it. * lily/paper-outputter.cc: Janitorial cleanups. (ly:outputter-dump-string): Remove unreachable statement. * scm/framework-ps.scm: Add header. Janitorial cleanups. (ice-9): Bugfix: Add srfi-1. * scm/framework-tex.scm: Add header. Janitorial cleanups. 2004-06-08 Han-Wen Nienhuys * lily/new-lyric-combine-music-iterator.cc (do_quit): put warning in do_quit() 2004-06-07 Han-Wen Nienhuys * ly/book-paper-defaults.ly: set optimal-page-breaks as default 2004-06-06 Han-Wen Nienhuys * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove override of Beam::position-callbacks. Why would grace beams not be quantized? Fixes: weird-stem-size-grace. * lily/new-lyric-combine-music-iterator.cc (find_voice): issue warning only once. Backportme. * lily/accidental-engraver.cc (number_accidentals_from_sig): bugfix, 2nd try. Backportme. * ly/vlaams.ly: new file. (Thanks Hendrik Maryns) 2004-06-04 Mats Bengtsson * Documentation/user/notation.itely (Instrument transpositions): Correct the name of the instrumentTransposition property. 2004-06-04 Han-Wen Nienhuys * scm/output-ps.scm (ps-font-command): fix parmesan coding too. 2004-06-04 Mats Bengtsson * scripts/lilypond-book.py (output): Bug fix so preLilyPondExample and postLilyPondExample are called when defined. 2004-06-03 Han-Wen Nienhuys * ly/nederlands.ly (pitchnames): use ly:parser-set-note-names. This fixes setting notenames with `\include "nederlands.ly" ' * lily/my-lily-parser.cc (LY_DEFINE): ly:parser-set-note-names: new function. 2004-06-01 Han-Wen Nienhuys * scm/page-layout.scm: don't do piece, it should be in score-title only. * lily/lexer.ll: lex \score separately. * lily/paper-book.cc: junk stencil2line. * lily/paper-line.cc (Paper_line): construct from Stencil directly. No futzing with the dimensions. * lily/include/paper-line.hh (class Paper_line): * lily/stencil.cc (interpret_stencil_expression): combine-stencil takes arbitrary number of arguments. * input/test/markup-score.ly (tuning): simplify example. 2004-05-31 Han-Wen Nienhuys * lily/score.cc (LY_DEFINE): ly:score-embedded-format, new function. * scm/define-markup-commands.scm (score): define score-markup * lily/parser.yy (markup): use score-markup. * lily/score.cc: add ly:score? 2004-05-30 Carl Sorensen * scm/fret-diagrams.scm: add fret-diagram-verbose markup; modified fret-parse-string so it prepares for calls to fret-diagram-verbose Changed display constants to props so they are available for \override. 2004-05-31 Han-Wen Nienhuys * VERSION: release 2.3.3 * stepmake/stepmake/generic-vars.make: unset LANG. * input/regression/tuplet-nest.ly: bugfix. * lily/tie-performer.cc (stop_translation_timestep): reset ties_created_. Fixes: midi-tie.ly, midi-lyrics-barcheck.ly * lily/chord-tremolo-engraver.cc (stop_translation_timestep): clear repeat_ directly after setting stem_tremolo_. Fixes: tremolo-repeat.ly * input/regression/span-bar-break.ly: new file. * scm/define-grobs.scm (all-grob-descriptions): remove break-visibility from SpanBar. Fixes: piano-repeat.ly 2004-05-30 Han-Wen Nienhuys * python/lilylib.py (make_ps_images): only compute bbox when needed. * scripts/lilypond-book.py (process_snippets): use lily -f ps files for generating pngs. (failed experiment) * scm/framework-ps.scm (output-classic-framework-ps): dump EPS file with PFA fonts included. * lily/score.cc (default_rendering): put header in too. * lily/paper-line.cc (LY_DEFINE): change function to ly:paper-line-extent * scm/page-layout.scm (default-book-title): only add lines for non-nil fields. (default-score-title): idem. * lily/my-lily-parser.cc (parse_string): delete lexer after use. * lily/my-lily-lexer.cc (My_lily_lexer): copy keytable. * lily/include/paper-book.hh (class Paper_book): remove height_ member. * input/test/coriolan-margin.ly (texidoc): remove latex macros. * lily/ly-module.cc (LY_DEFINE): bugfix. * lily/paper-book.cc (book_title): separate function for the book title. * scm/page-layout.scm (default-book-title): only account for markup fields. * scm/framework-ps.scm: new file. Move high level interface from output-ps.scm * scm/music-functions.scm (def-grace-function): move macros from ly/music-functions-init.ly * lily/paper-outputter.cc (Paper_outputter): move scheme_calls to framework-tex.scm * scm/framework-tex.scm (dump-line): new file. High level interface for output (pages, systems, header). * lily/include/page.hh (class Page): add is_last_ field. * lily/paper-outputter.cc (print_smob): smobify Paper_outputter. * lily/paper-book.cc (split_string): new function (output): output multiple formats, i.e. --format=ps,tex * scm/output-ps.scm (output-scopes): dump variables directly. (define-fonts): rewrite for new interface * ps/lilyponddefs.ps: remove lilypondpaper redefinitions. * lily/paper-outputter.cc (Paper_outputter): take format argument. * lily/main.cc (parse_argv): don't set extension for output. * lily/clef-engraver.cc (create_clef): remove Staff_symbol_referencer::set_position() call. 2004-05-30 Nicolas Sceaux * ly/music-functions-init.ly (addlyrics): set the 'origin property with the location argument in music function definitions. 2004-05-29 Han-Wen Nienhuys * lily/staff-symbol-engraver.cc (acknowledge_grob): remove item -> staffsymbol dependency. * lily/include/grob.hh (class Grob): live () -> is_live (). Small cleanups. * lily/book.cc (process): return Paper_book (to_stencil): use Book::process(). * lily/include/my-lily-parser.hh (class My_lily_parser): remove header_ field. Store in $globalheader * lily/parser.yy (book_body): book header is initted to $globalheader. 2004-05-28 Han-Wen Nienhuys * input/test/fill-a4.ly: removed. * lily/parser.yy (output_def): push scope of parent_ Output_def too. 2004-05-28 Jan Nieuwenhuizen * scm/output-gnome.scm: Update info. 2004-05-28 Han-Wen Nienhuys * lily/book-paper-def.cc: collapse Book_output_def to Output_def. * scm/lily.scm (ly:modules-lookup): handle empty list, and more than 1 module. * lily/include/ly-module.hh (ly_use_module): rename is_module to ly_c_module_p. * scm/page-layout.scm (default-book-title): move Scheme titling functions to here. * lily/parser.yy (book_paper_block): remove scope too. * ly/engraver-init.ly (EasyNotation): remove OrchestralScoreContext * lily/rest.cc: add direction to rest properties. * lily/include/output-def.hh: new file, move from music-output-def.hh 2004-05-27 Jan Nieuwenhuizen * scm/output-gnome.scm: Describe feta-cork hack. 2004-05-27 Han-Wen Nienhuys * lily/include/book-paper-def.hh: derive from Output_def * lily/include/paper-def.hh: move all functionality out of class. Junk header. * lily/include/music-output-def.hh: rename Music_output_def to Output_def. * input/wilhelmus.ly: only set space for Paper formatting. * lily/include/midi-def.hh: remove file, remove class. Move functions to Music-output-def. * lily/music-output-def.cc (Music_output_def): remove separate translator table. Lookup translators in scope directly. This obviates Context suffix for context identifiers, i.e. \context { \Staff .. } will work. * Documentation/user/notation.itely (Chords mode): typo: 13 -> 3. * Documentation/user/changing-defaults.itely (Horizontal spacing): document spacing override hack. 2004-05-27 Jan Nieuwenhuizen * scm/output-gnome.scm: Add C-q, C-w keybindings. Update installation info. Support point-and-click. Add +/- zoom keybindings. 2004-05-26 Han-Wen Nienhuys * VERSION: 2.3.2 released * lily/parser.yy (book_body): set default bookpaper. * scm/output-tex.scm (header): kludge: hard code linewidth. * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer. 2004-05-25 Han-Wen Nienhuys * lily/score.cc (default_rendering): scale outputdef before starting. 2004-05-25 Jan Nieuwenhuizen * scm/fret-diagrams.scm: Add header. * scm/output-gnome.scm: Hello world :-) 2004-05-25 Han-Wen Nienhuys * scripts/lilypond.py (run_dvips): only add papersize if present. * lily/accidental-engraver.cc (update_local_key_signature): new function, fold code from initialize() and process_music(). (update_local_key_signature): use deep copy. This fixes one problem from custom-key-signatures.ly. (number_accidentals_from_sig): tighter check for accidental-too-old. * ly/engraver-init.ly: remove localKeySignature definition from ChoirStaff, StaffGroup, Score. * lily/percent-repeat-engraver.cc (try_music): add moments for barlines too. Fixes: skipbars-percent-repeat.ly. 2004-05-24 Han-Wen Nienhuys * lily/context-def.cc (filter_performers): don't go to cdrloc if skipping last pair. Fixes: crash-bar-number. * scm/fret-diagrams.scm (nil): fret-diagrams (courtesy Carl D. Sorensen) * input/test/fret-diagram.ly: new file. * scm/paper.scm (paper-set-staff-size): scale linewidth too. (scale-paper): divide by scale. 2004-05-19 Han-Wen Nienhuys * lily/rest-collision.cc (do_shift): also do nothing for the (0,2) case. 2004-05-18 Han-Wen Nienhuys * scm/stencil.scm (fontify-text): reinstate function * tex/lily-ps-defs.tex: remove lilypondblotdiam def. * lily/book-paper-def.cc (Book_paper_def): add copy ctor. * lily/parser.yy (book_paper_head): \bookpaper {} * python/midi.c: remove config.h 2004-05-18 Jan Nieuwenhuizen * scm/output-gnome.scm: Update. 2004-05-17 Jan Nieuwenhuizen * scm/output-gnome.scm: New file. * lily/include/book-paper-def.hh: Add. Janitorial fixes. 2004-05-17 Han-Wen Nienhuys * lily/book-paper-def.cc (ly_bookpaper_fonts): move from Paperdef (find_scaled_font): move from Paper_def 2004-05-16 Han-Wen Nienhuys * lily/my-lily-parser.cc (LY_DEFINE): new function ly_parser_lookup (LY_DEFINE): add SCM_ASSERT_TYPE everywhere. * po/fr.po: update po. * lily/include/book-paper-def.hh (class Book_paper_def): new file. * lily/book-paper-def.cc (print_smob): new file. 2004-05-16 Heikki Junes * buildscripts/lilypond-words.py: search words also from music-functions-init.ly. 2004-05-15 Nicolas Sceaux * ly/music-functions-init.ly (def-music-function): new helper macro for defining music functions. \addlyrics \appoggiatura \acciaccatura \grace \partcombine \autochange \applycontext \applyoutput and \breathe are now defined here thanks to it. * lily/parser.yy: * lily/my-lily-lexer.cc: \addlyrics \appoggiatura \acciaccatura \grace \partcombine \autochange \applycontext \applyoutput and \breathe keywords removed from the parser. * lily/parser.yy: * lily/music-function.cc (ly_make_music_function): * lily/lexer.ll (music_function_type): added a case for 0-arg music functions. 2004-05-14 Nicolas Sceaux * scm/ly-from-scheme.scm (read-lily-expression): A variable refering to a music expression can be used in lily-inside-scheme: #{ $music #} * lily/my-lily-parser.cc (LY_DEFINE): introduce ly:clone-parser and ly:parser-define, and change ly:parser-parse-string in order to make #{ $music #} work. * scm/new-markup.scm (compile-markup-expression): when an argument is a string, use `make-simple-markup'. 2004-05-14 Han-Wen Nienhuys * lily/parser.yy (My_lily_lexer): bugfix; op should be tag. 2004-05-10 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.func): handle + in font-size. (backportme) 2004-05-09 Han-Wen Nienhuys * lily/paper-outputter.cc (output_stencil): dump font definitions before each stencil. * lily/include/paper-book.hh (struct Score_lines): new struct. Collect info per Paper-score. * lily/include/page.hh (class Page): to_stencil() returns Stencil everywhere. * lily/stencil.cc (find_expression_fonts): new function * lily/paper-outputter.cc (output_stencil): use interpret_stencil_expr * lily/stencil.cc (LY_DEFINE): ly_stencil_fonts: new function. (interpret_stencil_expr): new function. Generic stencil interpretation. * lily/paper-def.cc (find_scaled_font): divide lookup magnification by outpuscale for non-virtual fontmetrics. This fixes ludicrously long font definitions for text fonts. (backportme) * lily/score-engraver.cc: remove {Engraver,Score_engraver}::typeset_grob(), remove all calls. 2004-05-09 Jan Nieuwenhuizen * input/test/markup-score.ly: Remove \notes. * lily/parser.yy (book_body): Grok Composite_music and \header. (markup): Push NOTES mode before score_block. * VERSION: release 2.3.1 * mf/feta-klef.mf: * mf/feta-bolletjes.mf: Oops. Comment-out canvast test code. * Documentation/user/programming-interface.itely: Use @emph (was: @em). * Documentation/user/out/tutorial.texi: Untrigger lilypond-book error. 2004-05-09 Han-Wen Nienhuys * scm/output-tex.scm (output-tex-string): tighten safe security. * lily/scm-option.cc (LY_DEFINE): add 'safe to ly:get-option * scm/safe-lily.scm (make-safe-lilypond-module): new file. Define allowed ly functions. * lily/ly-module.cc (ly_module_define): only define variable if bound. (ly_make_anonymous_module): take safe option. 2004-05-08 Han-Wen Nienhuys * scripts/lilypond-book.py (compose_ly): remove FRAGMENT_LY. 2004-05-08 Jan Nieuwenhuizen * input/regression/newaddlyrics.ly: Fix. * Documentation/user/tutorial.itely: Use \newlyrics, remove most \score \notes. 2004-05-08 Heikki Junes * Documentation/user/music-glossary.tely ([k-z]): last fixes. 2004-05-08 Han-Wen Nienhuys * input/mutopia/R.Schumann/romanze-op28-2.ly (d): use #(define .. ) * lily/paper-line.cc (Paper_line): don't store list of stencils, but convert to single Stencil immediately. * lily/paper-book.cc (title): don't return Stencil* but Stencil. 2004-05-07 Jan Nieuwenhuizen * scm/output-sodipodi.scm: Resurrect sodipodi output. 2004-05-07 Kristof Bastiaensen * elisp/lilypond-mode.el: Changed the way defaults are created for LilyPond-command-master. LilyPond-mode will now check the timestamps of the files to see which command has to run next. 2004-05-07 Han-Wen Nienhuys * scm/bass-figure.scm (format-bass-figure): don't set number-markup for strings. This fixes string in bass figure. (backportme) * lily/parser.yy (bass_number): insert number-markup into figure definition. * scm/define-music-properties.scm (all-music-properties): make 'figure a markup. * scripts/convert-ly.py (conv): \apply -> \applymusic 2004-05-06 Kristof Bastiaensen * elisp/lilypond-mode.el: changed the order of some commands ("Midi" after "2Midi"), use the user-defined LilyPond-command-default as default instead of "LilyPond" * elisp/lilypond-mode.el: added a LilyPond-master-file variable, to set the master file for the next command. * elisp/lilypond-font-lock.el: replaced font-lock-warning-face with font-lock-reference-face. 2004-05-07 Heikki Junes * Documentation/user/music-glossary.tely ([ab]*): small fixes. * Documentation/user/music-glossary.tely ([c-l]*): more fixes. 2004-05-06 Han-Wen Nienhuys * ly/music-functions-init.ly (TODO): new file. * lily/parser.yy (Generic_prefix_music_scm): add more music_function symbols. (Prefix_composite_music): change \apply to music-function * lily/include/music-function.hh: rename to music-function 2004-05-05 Han-Wen Nienhuys * lily/music-head.cc (LY_DEFINE): change order of args. * input/regression/music-head.ly (texidoc): new file. * lily/parser.yy (Generic_prefix_music): allow generic music-transformation functions. * lily/include/music-head.hh (is_music_head): new file. * lily/music-head.cc (get_music_head_transform): new file. 2004-05-04 Han-Wen Nienhuys * lily/ottava-bracket.cc (print): use coordinate, not (0,0) for empty extent. This fixes ottava brackets on rests. (backportme) * make/lilypond.redhat.spec.in (Group): ln png files for info. * lily/piano-pedal-engraver.cc (create_text_grobs): core dump fix. * cygwin/lily-wins.py: update for the lily-wins.py script. 2004-05-03 Han-Wen Nienhuys * lily/score-engraver.cc (typeset_all): switch off unbound spanner code. This will obviate typeset_grob () in the future. The effect of this is that improperly written spanner handling will result in invalid spanner bounds. (announce_grob): add to elems_ from here (typeset_grob): comment out. * lily/include/engraver.hh (make_spanner): new calling interface for make_{item,spanner}. This obviates most calls to announce_grob(). * scm/music-functions.scm (set-accidental-style): use GrandStaff iso. PianoStaff for piano styles. 2004-05-03 Heikki Junes * Documentation/user/music-glossary.tely: add segno after d.s. 2004-05-02 Han-Wen Nienhuys * lily/include/audio-column.hh: remove unused variables. (patch by Michael Welsh Duggan) * flower/include/axes.hh (other_axis): inline Axes function (thanks to David Brandon). 2004-05-02 Jan Nieuwenhuizen * cygwin/mknetrel: Install image links (backportme). * Documentation/user/GNUmakefile (local-install-info): Activate actual installing of image links (backportme). 2004-04-30 Mats Bengtsson * Documentation/user/notation.itely (Measure repeats): Removed unnecessary (and confusing) \context Voice{. 2004-04-29 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Mention use of \score as markup. * lily/page.cc (Page): Do not use ly_scheme_function for volatile/configurable variables (FIXME: better name). * lily/music-output-def.cc (c_lookup_variable): Rename (WAS: get_scmvar). 2004-04-29 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.subst): use \transposition. 2004-04-29 Jan Nieuwenhuizen * lily/include/page.hh (class Page): Declare left_margin (). * lily/page.cc: Remove paper var caching. 2004-04-28 Jan Nieuwenhuizen * Documentation/user/music-glossary.tely: Add name to @top node. Remove comment from @table definitions (workaround for makinfo bug). * lily/stencil-scheme.cc (ly:stencil-expr): Rename (was: ly:stencil-get-expr). Update callers. (ly:stencil-align-to!): Return stencil too. * lily/paper-outputter.cc (output_page): Bugfix. Use page stencil. Remove looped line-based page output. (output_line): Use line stencil. Remove looped stencil-based line output. * lily/page.cc (ly:page-paper-lines): New function. * input/test/markup-score.ly: New file. * scm/define-markup-commands.scm (stencil): New markup. * lily/book.cc (to_stencil): New method. * lily/parser.yy (markup): Use it to grok \score. 2004-04-27 Jan Nieuwenhuizen * lily/stencil.cc (expr): Rename (was: get_expr). Update callers. * lily/paper-book.cc (pages): Change signature. Update callers. * lily/include/page.hh: * lily/page.cc: New file. * lily/paper-line.cc (to_stencil): New method. * lily/paper-outputter.cc (output_stencil): New method. * lily/paper-outputter.cc (output_line): Use them. * lily/warn.cc: Remove. * lily/my-lily-parser.cc (distill_inname): Remove. * flower/include/file-name.hh: * flower/file-name.cc: New file. Update users. * flower/file-path.cc [CYGWIN]: Junk testing code. Remove Path. (find): New method of same name. * lily/my-lily-parser.cc (ly:parse-file): Use it. * lily/scm-option.cc (ly:set-option, ly:get-option): Bugfix: constant error message. 2004-04-27 Heikki Junes * input/test/{blank-notes.ly,staff-container.ly}: typos. 2004-04-26 Jan Nieuwenhuizen * Documentation/user/music-glossary.tely: @table @strong' replaced by `@table @samp @c @strong'. This fixes invalid makeinfo output (backportme). 2004-04-25 Nicolas Sceaux * scm/lily.scm (ly:load): Add ly-from-scheme.scm loading. * scm/ly-from-scheme.scm: New file. Introduce a new syntax: #{ lily music expression #} that returns an equivalent scheme music expression by parsing the string. 2004-04-25 Jan Nieuwenhuizen * lily/my-lily-parser.cc: * lily/my-lily-lexer.cc: Another step towards parsing ly code from SCM string (foo.ly/toto.scm support). 2004-04-24 Jan Nieuwenhuizen * lily/my-lily-parser.cc (ly:parser-parse-string): New function. 2004-04-21 Jan Nieuwenhuizen * input/regression/newaddlyrics.ly: Remove lilypond-book kludge. * scripts/lilypond-book.py: LY code that includes \header is not assumed to be a fragment. 2004-04-20 Jan Nieuwenhuizen * lily/stem-tremolo.cc (print): If stem direction == CENTER, move tremolo beams up. * lily/stem.cc (chord_start_y): Return 0 if no heads. (get_default_stem_end_position): No tremolo head juggling if no heads. Fixes tremolo crash on rests (backportme). * scripts/abc2ly.py: Oops use [\]proper[ty] 2.2 syntax. 2004-04-19 Jan Nieuwenhuizen * scripts/abc2ly.py: ABC beams preserve support (courtesy Guy Gascoigne-Piggford). Also: TAB and whitespace fixes. * lily/lexer.ll: Allow \encoding in NOTES mode. * buildscripts/mf-to-table.py (write_fontlist): Use \lyrics for lyrics, not for commands. * lily/parser.yy (scalar): Bugfix: accept LYRICS_STRING. FIXME: Replace some `Music's with Grouped_music_list; fixes make web. * input/regression/newaddlyrics.ly: New file. * Documentation/topdocs/NEWS.texi: Update. * lily/parser.yy (new_lyrics): Return SCM list of lyric musics. (Music_list): Allow embedded scm. * lily/score.cc (ly:score-bookify): New function. * lily/music.cc (ly:music-scorify): Idem. * lily/my-lily-parser.cc (ly:parser-print-book): Idem. (ly:parser-print-score): Idem. * scm/lily.scm (default-toplevel-book-handler): Idem. (default-toplevel-music-handler): Idem. (default-toplevel-score-handler): Idem. * ly/declarations-init.ly: Set default toplevel handlers. * lily/parser.yy (book_block, score_block, toplevel_music): Use them. * scripts/lilypond-book.py (PREAMBLE_LY): Select classic score printer for score at toplevel. 2004-04-18 Jan Nieuwenhuizen * lily/parser.yy (NEWLYRICS): Switch to LYRICS mode for lyrics. Fix for simple case: input/simple-song.ly, more complex stuff does not work yet. 2004-04-18 Han-Wen Nienhuys * lily/parser.yy (Prefix_composite_music): split Composite_music in Prefix_composite_music and Grouped_music_list. (re_rhythmed_music): use Grouped_music_list for NEWLYRICS. 2004-04-18 Jan Nieuwenhuizen * scm/lily.scm (toplevel-expression): New define. * lily/my-lily-parser.cc (ly:parser-add-book-and-score): New function. * lily/parser.yy (toplevel_expression): Use it. * lily/include/my-lily-parser.hh: Smobbify. * lily/my-lily-parser.cc (parse_string): New method. * lily/my-lily-parser.cc (ly:parse-string): New function. * Documentation/user/lilypond.tely: Add comment and workaround for gs-8.01 crash. Fixes make web. Simplification of toplevel music. * lily/lexer.ll, lily/parser.yy: * In LYRICS mode, return LYRICS_STRING. This fixes one shift/reduce problem. * Use NOTES mode at start of maininput. * Grok toplevel composite music expression, put in score and book. * Grok \relative COMPOSITE_MUSIC, make relative on middleC. * \newlyrics is a shortcut for \context Lyrics \lyricsto "" \lyrics * input/simple.ly: New file. * input/simple-song.ly: Idem. 2004-04-16 Han-Wen Nienhuys * lily/parser.yy: rename NEWADDLYRICS to LYRICSTO. Thanks to Erik Sandberg. 2004-04-17 Jan Nieuwenhuizen * scm/font.scm (add-cmr-fonts): Narrow bold is ecrb. 2004-04-17 Heikki Junes * input/regression/accidental-octave.ly: doc automatic showing of note names. 2004-04-16 Heikki Junes * po/fi.po: do "make po && make -C po po-update" at top-level, then "cp po/out/fi.po po/fi.po" and update fields. * po/fi.po: remove all designations of `fuzzy'; shows those elements. 2004-04-15 Jan Nieuwenhuizen * Documentation/user/introduction.itely (About this manual): Fix templates and regression urls (backportme). 2004-04-14 Mats Bengtsson * ly/engraver-init.ly (Score:graceSettings): Increase beamed-lengths, especially for 32nd notes. * Documentation/user/notation.itely (Grace notes): Correct the syntax for add-grace-property example. 2004-04-13 Jan Nieuwenhuizen * flower/parse-afm.cc [METATYPE1_BUG]: Grok Metatype1's global `Generated' tag. * scm/font.scm (add-cmr-fonts): Use super-cm/lmodern fonts. NOT. Severely broken (the Debian package, at least). 2004-04-13 Han-Wen Nienhuys * lily/context.cc (find_create_context): assign to lvalue. 2004-04-12 Han-Wen Nienhuys * lily/include/translator.hh (class Translator): rename get_parent_context() to context () to avoid confusion. * lily/include/lily-guile.hh: is_x -> ly_c_X_p naming. * lily/lexer.ll: change is_string -> ly_c_string_p * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): use \book. * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use \book. * VERSION: release 2.3.0 * mf/feta-nummer-code.mf: use ascii names for number glyphs. * buildscripts/mf-to-table.py (parse_logfile): only prepend group- if nonempty. * lily/include/context.hh (class Context): make members protected. (children_contexts): new accessor function. * lily/include/translator.hh (class Translator): make daddy_context_ protected. (class Translator): clean up. * lily/include/context.hh (class Context): make daddy_context_ private. * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go higher for finding Voice. (backportme) * lily/include/context.hh (class Context): remove find_context_below() as a method. * Documentation/user/notation.itely (The Lyrics context): add note about manual durations * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math encoding. * scm/output-tex.scm (text): dump \inputencoding{} for text. 2004-04-11 Han-Wen Nienhuys * scripts/lilypond.py (global_latex_preamble): remove latin1 from \usepackage{inputenc} * lily/paper-book.cc (classic_output): don't advance Offset for TeX output. * make/mutopia-rules.make ($(outdir)-$(PAPERSIZE)/%.dvi): include ec-sauter.map in rules * mf/ecb.mf (font_identifier): new file, based on ecbx * mf/ecb10.mf (gensize): new file. * Documentation/topdocs/NEWS.texi (Top): document some more new features. * ly/declarations-init.ly: run convert-ly * lily/my-lily-parser.cc (LY_DEFINE): move parse-file function from input-file-results. Remove input-file-results.* 2004-04-11 Jan Nieuwenhuizen * scm/output-ps.scm (font-command): Fix, again. * input/test/title-markup.ly: Add \noPagebreak test. * lily/score-engraver.cc (try_music): Bugfix. 2004-04-11 Han-Wen Nienhuys * lily/main.cc (main_with_guile): excise dependency options -M and --dep-prefix * lily/input-file-results.cc: excise Makefile dependency code * Documentation/user/invoking.itexi (Invoking the lilypond binary): remove dep doco * lily/main.cc (main_with_guile): call lilypond-main * scm/lily.scm (lilypond-main): new function: handle multiple files. * lily/input-file-results.cc (LY_DEFINE): throw ly-file-failed exception. * lily/my-lily-parser.cc: remove paper_description function * lily/music-output-def.cc (LY_DEFINE): ly:output-description new function. * lily/main.cc: remove global_score_count. * lily/book.cc (process): don't take header from global_input_file. * buildscripts/lilypond-profile.sh (Error): set GS_FONTPATH * lily/parser.yy (My_lily_lexer): remove current_parser global var. * lily/music-output-def.cc (LY_DEFINE): new function ly_output_description. This function does the bulk for setting, parsing and breaking down of an input file. * lily/ly-module.cc (ly_make_anonymous_module): don't protect anonymous modules globally. Let's hope they get GCd * scripts/lilypond.py (run_dvips): add sauter-mftrace.map 2004-04-11 Jan Nieuwenhuizen * scm/output-ps.scm (header): Papersize from paper. * scripts/lilypond.py (global_latex_preamble): Oldish behaviour for classic output. * tex/lilyponddefs.tex (interscoreline): Oldish behaviour if lilypondclassic is defined. (lilypondstart): Oldish behaviour if lilypondclassic is defined. * input/regression/between-systems.ly: Remove. * python/lilylib.py (get_bbox): Fix regular expression for bounding box. * tex/lilyponddefs.tex (lilypondpagebreak): New overridable macro. * scm/output-tex.scm (stop-page): Use it. * scm/output-ps.scm (define-fonts): Bugfix. * lily/grob.cc: Add penalty to interface. * lily/include/paper-line.hh (class Paper_line): New member var penalty_. * lily/system.cc (get_line): Initialise Paper_line with page-penalty's from original grobs. * scm/define-music-properties.scm (all-music-properties): Add page-penalty. * scm/define-grob-properties.scm (all-grob-descriptions): Idem. * lily/score-engraver.cc (try_music): Handle page-penalty. * ly/declarations-init.ly (pagebreak, noPagebreak): New command. 2004-04-11 Han-Wen Nienhuys * ly/declarations-init.ly (melismaEnd): typo * scm/font.scm (add-cmr-fonts): caps is eccc, ecsc is slanted caps. * scm/output-ps.scm (text): split string into spaces, use moveto for setting space. 2004-04-10 Jan Nieuwenhuizen * po/nl.po: Update. * scm/font.scm (add-cmr-fonts): Typo. 2004-04-10 Han-Wen Nienhuys * scm/font.scm (add-cmr-fonts): add sauter fonts under latin1 font-encoding. * scm/define-grobs.scm (all-grob-descriptions): idem. * lily/time-signature.cc (numbered_time_signature): idem. * scm/font.scm (add-cmr-fonts): use real encoding names for font-encoding. 2004-04-10 Jan Nieuwenhuizen * lily/paper-book.cc (classic_output): * tex/lilyponddefs.tex (lybox): Add height, and proper raising. Fixes classic output. (lilypondstart): * scripts/lilypond.py (global_latex_preamble): Remove topmargin kludge. * scripts/old-lilypond-book.py: Remove. Page layout for SCOREs enclosed in a BOOK: * scripts/lilypond.py: Remove LaTeX titling kludge. Remove page layout tweaking. * input/les-nereides.ly (theScore): Add \book. * input/test/title-markup.ly: Add \book. * scm/page-layout.scm (ly:optimal-page-breaks): Debugging output only if 'verbose. * lily/include/paper-book.hh (PAGE_LAYOUT): Remove. * lily/paper-outputter.cc (output_line): Remove PAGE_LAYOUT check. * tex/lilyponddefs.tex (lilypondstart, lybox, lyitem): * scm/output-tex.scm (start-system): Update for page layout by LilyPond. * scm/output-ps.scm (start-system): Previously (new-start-system). * lily/paper-outputter.cc (output_header): Uniquify list of fonts passed to define-fonts. * lily/paper-column.cc: * lily/system.cc (get_line): * ly/property-init.ly (newpage): * scm/define-grob-properties.scm: * scm/output-ps.scm: * scm/output-tex.scm: Remove between-system-string kludge. * scm/output-ps.scm (define-fonts, font-command, font-load-encoding): Handle ENCODING = #f. * scm/output-tex.scm (output-scopes): Check if variable is bound. * scm/define-markup-commands.scm (fill-line): Use make-simple-markup (WAS: unexisting make-word-markup). * lily/text-item.cc (interpret_markup): Bugfix, transpose ENCODING, MARKUP parameters for interpret_string. * lily/input-file-results.cc (do_one_file): Remove Paper_book hack. * lily/score.cc (book_rendering): New method. (default_rendering): Create Paper_book helper locally, dump output. * lily/my-lily-lexer.cc (the_key_tab): Add book. * lily/parser.yy: Handle \book. * lily/include/book.hh: * lily/book.cc: New file. 2004-04-10 Han-Wen Nienhuys * lily/text-item.cc (interpret_string): new file, select font with encoding. * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout. * scm/define-markup-commands.scm (encoded-simple): new markup command. * lily/parser.yy (markup): take encoding from lexer. 2004-04-09 Jan Nieuwenhuizen * lily/kpath.cc (kpathsea_find_tfm): Do not trigger TFM generation. * scm/output-ps.scm: Remove some cruft. 2004-04-09 Han-Wen Nienhuys * lily/kpath.cc (kpathsea_find_tfm): don't make unfound TFMs/AFMs. * Documentation/user/lilypond.tely (Top): manual for v2.3 (backportme) 2004-04-09 Jan Nieuwenhuizen * scm/font.scm (add-century-schoolbook-fonts): (make-century-schoolbook-tree): New function. * input/test/title-markup.ly: Use Century Schoolbook font. 2004-04-09 Han-Wen Nienhuys * scripts/convert-ly.py: limited old-style markup convert. (Thanks to Erik Sandberg) * lily/font-metric.cc (LY_DEFINE): new function, return fontName. * scm/output-ps.scm (define-fonts): remove hack for feta/parmesan. * lily/font-metric.cc (LY_DEFINE): change to ly:font-filename * scm/encoding.scm (coding-alist): add AdobeStandardEncoding 2004-04-08 Han-Wen Nienhuys * scm/part-combiner.scm (determine-split-list): bugfix: if no solo-state (at end of solo), we can set the solo status too. (backportme.) * input/regression/part-combine-solo-end.ly: new file. 2004-04-08 Jan Nieuwenhuizen * scripts/abc2ly.py (parse_file): Strip \r from lines. Fixes DOS flavour abc files. Really ignore unknown keys (backportme). 2004-04-08 Han-Wen Nienhuys * lily/scaled-font-metric.cc (text_dimension): only multiply with magnification_ when looking up in orig_. * scm/output-tex.scm (text): switch off char-mapping. * lily/tfm.cc (coding_scheme): replace ' ' in encoding with '-', because AFM's encoding field cannot have spaces. 2004-04-08 Jan Nieuwenhuizen * scm/output-ps.scm (define-fonts): More re/encoding tweaking. 2004-04-08 Han-Wen Nienhuys * lily/paper-def.cc (find_scaled_font): change to inputencoding. * mf/cmr.enc: new file, without hi-bit ascii info. * lily/bezier-bow.cc (slur_shape): make indent dependent on width. This removes the 'hook' at the end of a long slur. * buildscripts/mf-to-table.py (parse_logfile): don't append encoding to fontname. 2004-04-07 Jan Nieuwenhuizen * scm/output-ps.scm (define-fonts): Load .enc only once. * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Install .enc files too. 2004-04-07 Han-Wen Nienhuys * buildscripts/mf-to-table.py (parse_logfile): remove spaces from encoding field. * lily/stencil-scheme.cc: remove ly:fontify-atom * ly/portuges.ly (pitchnames): new file. * lily/include/lily-guile.hh: many new ly_ functions. Thanks to Michael Welsh Duggan * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan * ly/nederlands.ly: add comment about digits. * lily/scaled-font-metric.cc (derived_mark): idem. * scm/encoding.scm (make-encoding-mapping): change permutation to mapping. * lily/scaled-font-metric.cc (derived_mark): is a const method. (Modified_font_metric): make alist for coding_description_ (LY_DEFINE): remove coding-name. * scm/output-tex.scm (text): remove debugging code. * lily/scaled-font-metric.cc (ly_font_encoding): return vector * buildscripts/mf-to-table.py (parse_logfile): read EncodingScheme from infile. * mf/feta-generic.mf: move fet_beginfont into generic code. use fetaMusic (without space) as encoding * mf/feta-autometric.mf: take encoding argument * lily/afm.cc (read_afm_file): bugfix, read global info too. * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr use. * scm/encoding.scm (read-encoding-file): use symbol for glyph name. 2004-04-07 Jan Nieuwenhuizen * input/test/title-markup.ly: Set inputencoding. * scm/output-ps.scm (define-fonts): Handle font re-encoding. * lily/scaled-font-metric.cc (ly:font-coding-name): New function. * scm/encoding.scm (get-coding-filename, get-coding-command): New function. (coding-alist): Also hold filename, command. (read-encoding-file): Return symbols. 2004-04-06 Han-Wen Nienhuys * scm/output-tex.scm: remove fontify; text and char take a font argument. * lily/tfm.cc (name_to_index): new function, use encoding_table_. * lily/scaled-font-metric.cc (text_dimension): init coding_{permutation,table}_ too (LY_DEFINE): ly:font-encoding, new function return * lily/paper-def.cc (find_scaled_font): take input coding from inputcoding paper var. * lily/performance.cc (output): remap modulo 16. * lily/text-item.cc (interpret_markup): whoops, variable shadowing fixed. 2004-04-06 Michael Welsh Duggan * lily/piano-pedal-performer.cc (try_music): Compare symbols to symbols, not symbols to strings. * lily/piano-pedal-engraver.cc (try_music): Compare symbols to symbols, not symbols to strings. 2004-04-06 Jan Nieuwenhuizen * lily/kpath.cc (kpathsea_gulp_file_to_string): (ly:kpathsea-gulp-file): New function. * scm/encoding.scm (read-encoding-file): Use it. 2004-04-06 Werner Lemberg * scm/encoding.scm (coding-alist): Fix typo. 2004-04-06 Han-Wen Nienhuys * lily/scaled-font-metric.cc (text_dimension): move function from Font_metric (make_scaled_font_metric): init coding_scheme_ to TeX (text_dimension): use get-coding-vector for non TeX coding_scheme_ * lily/include/scaled-font-metric.hh (struct Modified_font_metric): rename from Scaled_font_metric * scm/encoding.scm (read-encoding-file): split up large function, leave caching to (delay) * lily/lily-guile.cc (LY_DEFINE): typecheck argument. 2004-04-05 Jan Nieuwenhuizen * lily/my-lily-lexer.cc (set_encoding): New method. * lily/lexer.ll: Grok \encoding. * lily/font-metric.cc (get_encoded_index): New function. * lily/include/font-metric.hh (coding_scheme): New method. * scm/encoding.scm: New file. * mf/feta-beugel.mf: Better error message (WAS: `foobar'). 2004-04-05 Werner Lemberg * Documentation/user/tutorial.itely: Revised (finished). * Documentation/user/macros.itexi (@separate): Removed. 2004-04-05 Han-Wen Nienhuys * scm/output-ps.scm (define-fonts): fix scaling. * lily/scaled-font-metric.cc (design_size): add function. * lily/font-metric.cc (LY_DEFINE): opps ly:font-design-size is only partial cut&paste of ly:font-magnification. 2004-04-05 Jan Nieuwenhuizen * scm/output-ps.scm (define-fonts): (fontify): Update. 2004-04-04 Han-Wen Nienhuys * po/fr.po: update. (backportme). * po/nl.po: update. (backportme). * mf/feta-beugel.mf: document why design size is not fixed. * mf/feta-braces-a.mf: rename to stress that it's not design size. 2004-04-04 Werner Lemberg * Documentation/user/tutorial.itely: Revised (continued). 2004-04-03 Jan Nieuwenhuizen * po/nl.po: Update (backportme). 2004-04-03 Han-Wen Nienhuys * po/de.po: update. (backportme). * scm/output-tex.scm (font-command): use ly: functions to construct name. (define-fonts): don't use alist, just dump \font definitions. (font-load-command): calculate proper scaling by taking outputscale from paper argument. * lily/stencil-scheme.cc (fontify_atom): insert Font_metric into expression. * lily/paper-outputter.cc (output_header): pass paper arg to define-fonts * lily/paper-def.cc (font_descriptions): dump list of Scaled_font_metrics (find_scaled_font): take Font_metric argument, store Scaled_font_metrics in hash-table containing (size -> Scaled_font_metrics) alist. (get_dimension): rename from get_realvar * lily/font-metric.cc (LY_DEFINE): ly:font-design-size, ly:font-magnification, ly:font-name: new functions 2004-04-03 Werner Lemberg * Documentation/user/dedication.itely, Documentation/user/preface.itely, Documentation/user/introduction.itely, Documentation/user/tutorial.itely: Revised. Removing leading spaces which distorts output if info files are read with stand-alone info. Removing superfluous inter-word spaces which also distorts output for stand-alone info. Using ` and ' instead of `` and '' everywhere to improve legilibility with stand-alone info Using @samp for single-letter input items and data which contains spaces, @code for other things. * lily/grob-interface.cc: Adding copyright. (check_interfaces_for_property): Improve format of warning message. 2004-04-03 Han-Wen Nienhuys * lily/include/font-metric.hh (struct Font_metric): add design_size () method. * buildscripts/mf-to-table.py (base): add DesignSize comment. * lily/afm.cc (read_afm_file): read design size. * input/regression/repeat-unfold-tremolo.ly: add dotted case. * scm/music-functions.scm (unfold-repeats): handle dots too. 2004-04-02 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/$(redhat-package)): fix URL. (backportme) 2004-04-02 Jan Nieuwenhuizen * input/wilhelmus.ly: Use raggedright. Hack `Een prin -- ce' lyric indent. Revert melismaBusyProperties using \unset. 2004-04-02 Han-Wen Nienhuys * input/regression/bar-check-redefine.ly (pipeSymbol): new file. * lily/parser.yy (command_element): allow redefinition of | meaning. * lily/break-align-engraver.cc (acknowledge_grob): construct LeftEdge where the first cause for alignment is coming from. This makes \override Staff.LeftEdge work as expected. * lily/slur-performer.cc (Slur_performer): add inits * lily/beam-performer.cc (Beam_performer): add inits 2004-04-01 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.2.0 * scripts/convert-ly.py (conv): add 2.2.0 rule. 2004-04-01 Jan Nieuwenhuizen * lily/cluster.cc (height): Fix warning. * lily/parser.yy: Janitorial cleanups. * Documentation/user/tutorial.itely (Tutorial): Typo. 2004-04-01 Han-Wen Nienhuys * lily/change-iterator.cc (process): search at multiple context levels. This fixes * scm/part-combiner.scm (analyse-spanner-states): use split-index, not voice-state index for tie state. This fixes a partcombine problem with ties. * Documentation/user/tutorial.itely (Commenting input files): add note about convert-ly. * input/test/cadenza-skip.ly: new file. 2004-03-31 Jan Nieuwenhuizen * po/nl.po: Spelling fixes. * autogen.sh (srcdir): Regenerate. * stepmake/autogen.sh (srcdir): Copy SUSE fix to the master autogen.sh. * configure.in: Use C++ to check for C++ header. * po/nl.po: Update. * lily/scm-option.cc (LY_DEFINE): Name of the program is lilypond-bin. * lily/event.cc (to_relative_octave): Translatable sentence should be one string. * python/lilylib.py (warranty): Year range is not translatable. It's 2004 already! * flower/warn.cc (non_fatal_error, warning, programming_error): Remove whitespace from translated string. 2004-03-31 Jan Nieuwenhuizen * VERSION: release 2.1.37. 2004-03-31 Han-Wen Nienhuys * configure.in: check for C language. * lily/source-file.cc: include strstream without h. * scm/documentation-generate.scm (string-append): use name without .texi. * autogen.sh (srcdir): SUSE fix. * Documentation/user/notation.itely (Ancient clefs): idem. * Documentation/user/lilypond-book.itely (Integrating HTML and music): idem. * Documentation/user/cheatsheet.itely (Cheat sheet): octave fixes. * lily/change-iterator.cc (process): use find_existing_context(). * input/test/polymetric-differing-notes.ly: use ly:music-compress. * input/regression/repeat-unfold-tremolo.ly: new file. * scm/music-functions.scm (unfold-repeats): undo music compression too. * lily/music.cc (LY_DEFINE): rename to music-mutable-properties (LY_DEFINE): ly:music-compress new function. * scm/part-combiner.scm (determine-split-list): split for voice crossings * input/regression/part-combine-cross.ly: new file. * scm/part-combiner.scm (make-part-combine-music): don't do relative inside partcombine arguments. * scm/music-functions.scm (make-non-relative-music): new function. * Documentation/user/notation.itely (Automatic part combining): add note about \relative. * lily/part-combine-iterator.cc (construct_children): add start_moment_ member. * lily/chord-tremolo-engraver.cc (acknowledge_grob): trigger stem-tremolo by stem object. This fixes no stem for tremolo bug. * lily/stem-tremolo.cc (print): don't crash for no-stem. * Documentation/user/changing-defaults.itely (Which properties to change): fixes. 2004-03-31 Han-Wen Nienhuys * po/fr.po: update. 2004-03-31 Jan Nieuwenhuizen * input/wilhelmus.ly: More original lyrics. Add to examples. * stepmake/stepmake/generic-targets.make ($(outdir)/dummy.dep): Reinstate old code that issues warning. Fixes --srcdir build. 2004-03-30 Jan Nieuwenhuizen * input/wilhelmus.ly: New file. * Documentation/user/notation.itely: * Documentation/user/introduction.itely: * Documentation/user/tutorial.itely: Use quote ly-option instead of explicit @quotation. This fixes too long lilypond linewidths resulting in overful hboxes. * scripts/lilypond-book.py: Add ly-option: `quote'. 2004-03-30 Mats Bengtsson * tex/titledefs.tex: Avoid that the first score line is extra indented if instrument is defined but not piece. 2004-03-30 Werner Lemberg * Documentation/user/macros.itexi (@internalsref) [info]: Prepend `lilypond/' to info file name. (@usermanref) [info]: New variant. * scm/documentation-generate.scm: Fix definition of @usermanref and @glossaryref (in the `ifinfo' branch) by prepending `lilypond/' to info file name. 2004-03-30 Han-Wen Nienhuys * VERSION: release 2.1.36 * Documentation/user/changing-defaults.itely (Interpretation contexts): rewrite introduction. 2004-03-30 Ferenc Wagner * scm/define-markup-commands.scm: Use TeX accents instead of straight iso-8859-1 encoding in the doc string. 2004-03-30 Han-Wen Nienhuys * Documentation/user/tutorial.itely (A lead sheet): remove extra space after dotted duration. 2004-03-29 Jan Nieuwenhuizen * Documentation/user/introduction.itely: * Documentation/user/notation.itely: * Documentation/user/tutorial.itely: Up all relative examples. Enclose @lilypond displays in @quotation. Typos and corrections. * Documentation/user/macros.itexi: Use fetaflat, fetasharp. 2004-03-29 Mats Bengtsson * scm/music-functions.scm (make-voice-props-revert): Revert also MultiMeasureRest staff-position in oneVoice. 2004-03-29 Heikki Junes * Documentation/user/changing-defaults.itely, Documentation/user/lilypond.tely: few fixes. Place no comma between two options: a and b, but commas between three options: a, b, and c. By this manner, grouping is possible: a and b, and c and d. 2004-03-29 Han-Wen Nienhuys * Documentation/user/GNUmakefile: add rule for .nexi 2004-03-28 Han-Wen Nienhuys * Documentation/user/music-glossary.tely: move glossary direntry * stepmake/stepmake/texinfo-vars.make (INFOINSTALL): only do mkdir/install-info if INFO_INSTALL_FILES != "". 2004-03-28 Jan Nieuwenhuizen * stepmake/aclocal.m4: Verify that gettext configure check with gcc-3.3 and autoconf 2.59 is still broken. Update warning. 2004-03-28 Han-Wen Nienhuys * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): use glob.glob for .png filenames. This catches multipage pngs. * Documentation/user/changing-defaults.itely (Determining the grob property): fix references. * lily/staff-symbol.cc (print): only add extent if non empty. This fixes staff-container.ly. * lily/timing-engraver.cc (initialize): init whichBar, so a score starting with a mmrest also works. * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): require PNG for texinfo too. * po/lilypond.pot: update translation strings. * VERSION: 2.1.35 released * scripts/convert-ly.py (FatalConversionError.sub_abs): convert context argument too. * make/ly-rules.make ($(outdir)/%.texi): use variable for outdir. * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: Mozart died in 1791 * python/lilylib.py (command_name): don't return 1st path component. * scripts/lilypond-book.py (Lilypond_snippet.is_outdated): treat .png case separately. * python/lilylib.py (system): typo. 2004-03-28 Jan Nieuwenhuizen * input/regression/span-bar.ly: Fix typos. Set indent-level:2, run indent-region. * Documentation/user/preface.itely: Run texinfo-all-menus-update. Fixes compile. * lily/function-documentation.cc: Compile fix: Include . Add header. 2004-03-27 Heikki Junes * vim/lilypond-indent.vim: small fixes. 2004-03-26 Mats Bengtsson * Documentation/user/notation.itely (Entering lyrics): Add example with correct english double quotes (at least for LaTeX output, maybe not a good idea if we switch to PS as the default output format). 2004-03-26 Han-Wen Nienhuys * lily/staff-performer.cc (create_audio_elements): play instrument changes before notes arrive. This fixes instrument of the first note in a score. * scripts/convert-ly.py (FatalConversionError.conv): add #'() case to 1.9.0 conversion. * lily/mark-engraver.cc: doc string. * make/lilypond.redhat.spec.in (Group): add vim scriptlets. * Documentation/user/introduction.itely (Introduction): new node. 2004-03-25 Han-Wen Nienhuys * lily/duration.cc (LY_DEFINE): dotcount argument is now optional. * input/regression/spacing-ragged-last.ly: new file. * lily/gourlay-breaking.cc (do_solve): add raggedlast support for spacing. * scm/font.scm: rewrite using GOOPS. * lily/context-def.cc (filter_engravers): derefence pointer. * lily/lily-guile.cc (type_check_assignment): use ly_scheme_function iso. scm_primitive_eval where possible. * lily/performance.cc (output): limit channels at 15. This fixes percussion inadvertently showing up in large scores. 2004-03-24 Han-Wen Nienhuys * input/regression/tuplet-gap.ly: new file. * lily/tuplet-bracket.cc (make_bracket): take gap interval. (print): compute gap length from number size, include italic correction. * scm/define-grobs.scm (all-grob-descriptions): remove gap from tuplet-bracket * scm/paper.scm (set-default-paper-size): new function, to be called at toplevel. (set-paper-size): new function, to be called inside \paper {} (set-default-paper-size): new function, to be called at toplevel. * lily/paper-def.cc (LY_DEFINE): ly:paper-def?: new function. * lily/beam-performer.cc (process_music): idem. * lily/slur-performer.cc (process_music): stop melisma for stop event. * tex/titledefs.tex: remove scshape for piece. * lily/line-spanner.cc (line_stencil): font-encoding = music, not font-family * lily/time-signature.cc (special_time_signature): font-encoding not family. * lily/dynamic-engraver.cc (acknowledge_grob): fix typo, attach dynamic to head. This fixes p placement in morgenlied. 2004-03-23 Werner Lemberg * stepmake/stepmake/generic-targets.make (help): Improve text. 2004-03-23 Han-Wen Nienhuys * VERSION: 2.1.34 released * lily/main.cc (main_with_guile): switch debugging. * lily/system.cc (get_line): plug leak. * lily/paper-book.cc (pages): plug memory leaks: delete page array and contents. (stencil2line): plug leak. * Documentation/user/changing-defaults.itely (Determining a grob property): new node. (Layout interfaces): new node. (Navigating the program reference): new node. * lily/accidental-engraver.cc (acknowledge_grob): add property harmonicAccidentals * lily/piano-pedal-engraver.cc (del_linespanner): new function. general cleanups. * input/les-nereides.ly (middleDynamics): resurrect Les nereides. Remove pedal hack. 2004-03-22 Han-Wen Nienhuys * input/regression/property-grace-polyphony.ly: new file. * lily/translator-property.cc (execute_pushpop_property): only pop one instance of the property. This fixes << \\ >> together with \grace. * lily/break-align-interface.cc (ordered_elements): we cannot modify the #'elements property, so return reordered array. 2004-03-23 Heikki Junes * buildscripts/lilypond.words.py: remove. * buildscripts/lilypond-words.py: add new, renamed file. Give generated targets and dirs explicitly in arguments. * GNUmakefile.in, elisp/GNUmakefile, elisp/lilypond-init.el, elisp/lilypond-mode.el, vim/lilypond-ftplugin.vim, vim/lilypond-syntax.vim: update to use new lilypond-words.py. * config.make.in: give '/usr/share/vim' explicitly as $(vimdir). * vim/GNUmakefile: use --words and --vim targets in lilypond-words.py * Documentation/topdocs/INSTALL.texi: update vim-mode installing orders. * vim/GNUmakefile: add local-uninstall target. * Documentation/topdocs/INSTALL.texi: give even more detailed orders. * vim/vimrc: add a one-liner file. * vim/GNUmakefile: try to remove empty dirs during uninstalling, put vimrc in EXTRA_DIST_FILES. * vim/GNUmakefile: ignore errors due to rmdir of non-empty directories. 2004-03-22 Heikki Junes * config.make.in: add vimdir. * vim/GNUmakefile: add local-install. 2004-03-22 Mats Bengtsson * tex/titledefs.tex: Replaced \ifx\blabla\undefined with \lilypondifundefined{blabla}. Solves problem with multiple titles in the same lilypond-book document. 2004-03-22 Han-Wen Nienhuys * scm/document-backend.scm (interface-doc): sort grob list for interface. * scm/define-grobs.scm (all-grob-descriptions): fix ordering of pre/post break align-order. * spelling patch courtesy Edward Sutton. * Documentation/user/changing-defaults.itely (Changing context default settings): new node. (Defining new contexts): new node. * scripts/lilypond-book.py (is_derived_class): use numbers iso. booleans. * python/lilylib.py (make_ps_images): add margin to PS images. * scripts/lilypond-book.py (is_derived_class): new function. Take class arg iso. object. (to_eps): make a non EPS file if EPS contains %%Pages. Workaround for bug in GS/dvips. * lily/text-item.cc (interpret_markup): idem. * scm/define-markup-commands.scm: remove split around-space hack. * lily/staff-symbol-referencer.cc (get_rounded_position): new function, fold WL's fixes into one function. 2004-03-22 Werner Lemberg * lily/stem.cc (Stem::extremal_heads, Stem::note_head_positions), lily/dot-column.cc (Dot_column::do_shifts), lily/note-column.cc (Note_column::head_position_interval): Do proper rounding for calls to Staff_symbol_referencer::get_position. 2004-03-21 Werner Lemberg * lily/score.cc (ly_run_translator), lily/paper-def.cc (Paper_def::get_paper_outputter), lily/input-file-results.cc (Input_file_results::Input_file_results), lily/my-lily-parser.cc (My_lily_parser::parse_file): Improve formatting progress indication sent to stdout. 2004-03-21 Han-Wen Nienhuys * VERSION: 2.1.33 released. * scripts/lilypond-book.py (do_file): reinstate --filter support. * buildscripts/mf-to-table.py (base): use %d for TfmCheckSum * stepmake/stepmake/generic-targets.make: rewrite hack so no warning is issued about dummy.dep. * scm/new-font.scm: fix design sizes of nummer 2004-03-21 Werner Lemberg * stepmake/bin/install-sh: Updated (from gnulib). This removes some annoying warnings from mkdir during `make install'. 2004-03-21 Han-Wen Nienhuys * lily/performer-group-performer.cc (do_announces): call Performer_group_performer::create_audio_elements () too. * scripts/convert-ly.py (conv): add rule for breakAlignOrder. * scm/define-grobs.scm (all-grob-descriptions): add property break-align-orders * lily/global-context.cc (get_default_interpreter): new function. Override from base class, so no new Score contexts are created. * lily/include/stencil.hh (class Stencil): document origin field. * lily/staff-symbol.cc (print): span staff-symbol on column extents for non-broken columns. * ly/engraver-init.ly (breakAlignOrder): put staff-bar behind key-signature. * tex/titledefs.tex: don't use smallcaps for piece. * lily/system.cc (uniquify_list): bugfix. This fixes spuriously translated stencils in the output. * lily/paper-outputter.cc (output_line): don't add Stencil::origin. 2004-03-20 Han-Wen Nienhuys * lily/tie-performer.cc (acknowledge_audio_element): bugfix: use and init ties_created_ * VERSION: release 2.1.32 * lily/include/music-iterator.hh (IMPLEMENT_CTOR_CALLBACK): remove doc string from IMPLEMENT_CTOR_CALLBACK(). * lily/engraver.cc (typeset_grob): paranoia: take care of the case that engraver is in a performer hierarchy. 2004-03-17 Heikki Junes * vim/lilypond-ftdetect.vim: new file. 2004-03-19 Han-Wen Nienhuys * scripts/lilypond-book.py (compose_ly): bugfix for relative < 0. (compose_ly): default octave should be middle C. * Documentation/user/changing-defaults.itely (Layout tunings within contexts): new node. * lily/include/smobs.hh: document C++ smob interface. * lily/function-documentation.cc: don't doc functions without docstring. 2004-03-19 Jan Nieuwenhuizen * Documentation/user/lilypond.tely: Remove `* lilypond' node from direntry, so that `info lilypond' goes to Top. * scm/output-ps.scm (polygon): Fix: add spaces. * scm/page-layout.scm (ly:optimal-page-breaks): Bugfix: underful solutions are now optimal too. * input/test/page-breaks.ly: New file. * lily/paper-outputter.cc (Paper_outputter): Import page breaking functions into safe module. * lily/lily-guile.cc (ly:number->string): Do not leave space at end, prepend zeros. * scm/output-*.scm: Use ly:number->string rather than number->string. Makes for saner output. * scm/output-ps.scm (define-fonts): Always scale by designsize. Fixes feta-nummer, feta-din scaling. 2004-03-19 Han-Wen Nienhuys * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: use latin1. * scm/music-functions.scm (descend-to-context): new function. Similar to context-spec-music. (make-time-signature-set): specify Score as descend-only. This fixes the polymetric.ly example. * lily/context-specced-music-iterator.cc (construct_children): add support for descend-only context spec. * lily/note-head.cc (brew_ez_stencil): read vector #'note-names to determine ez-notation letter. * lily/system.cc (get_line): start with dumping layer 3. This fixes ez notation. 2004-03-19 Jan Nieuwenhuizen * input/test/title-markup.ly: Stress breaking harder. * scm/page-layout.scm (height-score): Overfull page scores twice as bad as underfull (was: by a power). (walk-lines): Omit first walk-path round (breaking after new node, without lines). * lily/paper-book.cc (pages): Bugfix: copy_height and tag_height diff values are negative. (output): Bugfix: treat negative vfill differently. * Documentation/user/lilypond.tely (direntry): Add note about why `info lilypond' brings up `Invoking LilyPond' node. 2004-03-18 Jan Nieuwenhuizen * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: Mutopia tagline. * lily/paper-book.cc: Remove cruft. (output): Bugfix: put vfill between lines. (pages): Bugfix: set page vars needed for filling. * Documentation/user/music-glossary.tely: Compile fix: Use @arrow (was: @ar). * scm/page-layout.scm: Further development. * ly/declarations-init.ly (paper): Define page-breaking. 2004-03-18 Han-Wen Nienhuys * lily/note-head.cc (brew_ez_stencil): add note-names property. Provides internationalization for note names. * Documentation/user/changing-defaults.itely (Creating contexts): new node. * lily/grace-iterator.cc (process): descend to child for \grace. * lily/timing-translator.cc (initialize): Timing_translator adds Timing alias by itself. * lily/context.cc (add_alias): new function. * scm/lily.scm (tex-output-expression): new function, eval within drawing API. Guards against eval vulnerabilities. * scm/output-tex.scm (tex-encoded-fontswitch): idem. * scm/output-ps.scm (scm): export lily drawing API. * lily/include/lily-guile.hh (ly_scheme_function): new macro. Use throughout. 2004-03-17 Jan Nieuwenhuizen * scm/page-layout.scm (optimal-page-breaking): New function. * lily/paper-book.cc (pages): Use it. 2004-03-16 Jan Nieuwenhuizen * lily/include/paper-line.hh (class Paper_line): Full smob. 2004-03-18 Han-Wen Nienhuys * lily/global-context.cc (run_iterator_on_me): fix grace note nesting by initting measurePosition. * lily/timing-translator.cc (initialize): do no init measurePosition * lily/include/music-output-def.hh (class Music_output_def): add input_origin_ field. * Documentation/user/changing-defaults.itely (Changing context properties on the fly): new node. * lily/include/ly-smobs.icc (free_smob): remove smobbed_self() function. Only have smobbed_copy (), and do not provide smobbed_copy() for non-simple smobs. Changes throughout. 2004-03-17 Han-Wen Nienhuys * lily/auto-change-iterator.cc (class Auto_change_iterator): add start_moment_. Fix by Doug A. Linhardt. 2004-03-16 Han-Wen Nienhuys * lily/accidental-engraver.cc (acknowledge_grob): don't suppress accidentals for harmonic notes. * lily/note-collision.cc (check_meshing_chords): don't merge heads of different style. (Thanks to Doug Linhardt). * Documentation/user/changing-defaults.itely (Scheme tutorial): new node. 2004-03-16 Heikki Junes * Documentation/topdocs/INSTALL.texi: finish install orders for vim. * vim/filetype.vim, vim/lilypond-ftplugin.vim, vim/lilypond-syntax.vim, vim/lilypond-compiler.vim, vim/lilypond-indent.vim: doc targets and deps in comments. 2004-03-15 Jan Nieuwenhuizen * lily/paper-book.cc (stencil2line): Bugfix: put stencil in line. * lily/system.cc (get_line): Return Paper_line. Change all users. * lily/include/paper-line.hh: * lily/include/paper-line.cc: New file. 2004-03-15 Han-Wen Nienhuys * VERSION (MY_PATCH_LEVEL): release 2.1.31. * GNUmakefile.in: remove stray make out=www * input/test/bagpipe.ly (gcdg): octave fixes. * scm/define-markup-commands.scm (number): use font-encoding iso. font-family * ly/chord-modifiers-init.ly (blackTriangleMarkup): set font-encoding. 2004-03-15 Heikki Junes * lily/parse-scm.cc: compile-bugfix: add missing header files for `output_format_global' and `PAGE_LAYOUT'. 2004-03-14 Jan Nieuwenhuizen * lily/parse-scm.cc (internal_ly_parse_scm)[PAGE_LAYOUT]: Import lily functions in safe mode. * scripts/lilypond-book.py (Lilypond_snippet.output_texinfo): Print filename for HTML, LATEX, before texidoc. * scm/output-tex.scm (ps-output-expression): Eval embedded-ps instructions in output-ps module. * scm/lily.scm: Do not load output-ps module. * lily/paper-outputter.cc (Paper_outputter): Eval output-ps in safe mode. 2004-03-14 Han-Wen Nienhuys * lily/span-dynamic-performer.cc (process_music): remove spurious warning. * lily/context-def.cc (Context_def): init name to "" * lily/font-interface.cc: add font-encoding property. * scm/lily.scm (chain-assoc-get): bugfix. * lily/paper-book.cc (stencil2line): protect static SCM. * lily/font-interface.cc (text_font_alist_chain): rename function, and use text-font-defaults. * lily/font-select.cc (properties_to_font_size_family): call SCM code. * scm/paper.scm (paper-set-staff-size): use new function. * scm/new-font.scm (make-font-tree): new function. 2004-03-13 Jan Nieuwenhuizen * lily/paper-book.cc (output): Bugfix: no output if no \paper. * scm/lily.scm (get-output-module): New function. (output-alist): Remove ,ps-output-expression. * scm/output-tex.scm (ps-output-expression): New function. * scm/output-ps.scm (ps-output-expression): Remove. (header, start-page): Output page metadata. * lily/paper-outputter.cc (Paper_outputter)[PAGE_LAYOUT]: initialise output_module_. Do not write part of header. (output_scheme)[PAGE_LAYOUT]: Output through output_module_. (output_header): Output full header. * scm/define-markup-commands.scm (bigger, smaller): Avoid crash. FIXME. 2004-03-13 Han-Wen Nienhuys * scm/new-font.scm: new file. Tree based font lookup. * scm/lily.scm (assoc-get): take default argument. Remove assoc-get-default. (chain-assoc-get): use chain-assoc-get everywhere. * scripts/convert-ly.py (FatalConversionError.subst_in_trans): autobeamsettings conversion bug. * lily/include/global-context.hh (Context): clean-up data hiding. * lily/include/music-iterator.hh (class Music_iterator): clean-up data hiding. * lily/include/grace-fixup.hh (struct Grace_fixup): new file. * input/regression/stem-shorten.ly: add chord case. * lily/stem.cc (get_default_stem_end_position): shorten stems triggered by note-head positions, not by forced-direction. This fixes a bug with too short stems. 2004-03-12 Jan Nieuwenhuizen * scripts/lilypond-book.py (Lilypond_snippet.output_html, Lilypond_snippet.output_latex): Always call output_print_filename. * lily/paper-book.cc (fill_pages): New method. Try to cramp or expand pages. 2004-03-12 Han-Wen Nienhuys * scm/part-combiner.scm (make-autochange-music): switch rests before switched notes too. * lily/figured-bass-engraver.cc (process_music): change calling convention. * scm/bass-figure.scm (format-bass-figure): rewrite function. * scm/define-markup-commands.scm (bracketed-y-column): new markup command. * lily/include/stencil.hh (class Stencil): add origin field. * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-move-to-edge: new function. * lily/grob-scheme.cc (LY_DEFINE): ly:grob-alist-chain: new function. * lily/lexer.ll: remove support for \$ and $ in identifiers * lily/sequential-iterator.cc: remove copy_grace_fixups (get_grace_fixup): slight abstraction of fixup code. * input/test/title-markup.ly (spaceTest): vary staff sizes. 2004-03-12 Heikki Junes * vim/lilypond-indent.vim: use (default) as indent key in insert-mode. add indenting rules. 2004-03-11 Jan Nieuwenhuizen * lily/parser.yy (toplevel_expression)[PAGE_LAYOUT]: Remove protect hack. * scm/page-layout.scm: * lily/paper-book.cc: Handle tagline/copyright. Internal page layout and titling should now match external latex based version. * scm/output-tex.scm (output-scopes): Bugfix: only write string header fields. * ps/lilyponddefs.ps: Remove automatic page layout. * scm/output-ps.scm (new-start-system): New interface function. * lily/include/paper-outputter.hh (output_line): Add ORIGIN parameter. * lily/paper-book.cc (output): Bugfix. 2004-03-11 Han-Wen Nienhuys * VERSION (MY_PATCH_LEVEL): release 2.1.30 2004-03-11 Jan Nieuwenhuizen * Documentation/user/lilypond.tely: Bugfix: Remove './' from direntries. * ps/lilyponddefs.ps: Bugfix. * input/regression/multi-measure-rest-instr-name.ly: Typo. 2004-03-11 Han-Wen Nienhuys * lily/auto-beam-engraver.cc (create_beam): add Stem as cause. This should fix warnings. * mf/feta-slag.mf (trill_ne): fix upmordent size. * lily/accidental.cc (accurate_boxes): enlarge Y-extent of flat to prevent aligned 6ths. * lily/custos.cc (print): remove adjust-if-on-staffline. 2004-03-11 Jan Nieuwenhuizen * lily/paper-book.cc: Do header and footer. 2004-03-10 Jan Nieuwenhuizen * scm/lily.scm (safe-mode?): New name (was: security-paranoia). * scm/paper.scm (lineheight): Remove (head-sep, foot-sep): Add. 2004-03-10 Han-Wen Nienhuys * mf/feta-schrift.mf: reduce portato thickness. * lily/context-scheme.cc (LY_DEFINE): remove ly:context-properties * lily/grob-pq-engraver.cc (start_translation_timestep): remove programming_error (). * lily/piano-pedal-engraver.cc (finalize): attach unfinished bracket to last command column. * lily/piano-pedal-bracket.cc (print): only flatten bracket if it continues on next/prev system. * input/regression/pedal-end.ly: new file. 2004-03-10 Werner Lemberg * make/lilypond.redhat.spec.in, make/lilypond.suse.spec.in: Remove pmx2ly stuff. * scripts/GNUmakefile (SEXECUTABLES): Remove pmx2ly. 2004-03-10 Jan Nieuwenhuizen * scm/page-layout.scm: New file. * scripts/lilypond-book.py (do_file): Bugfix: texinfo paper settings. (Lilypond_snippet.is_outdated): Also check for PNG file. Workaround for interrupted (web) builds. * lily/paper-book.cc (get_pages): Bugfix: set dimensions for titles. * ps/lilyponddefs.ps: Use only very small top-marging. (init-paper): Also pop page size string. (start-page, stop-page): New function. * scm/output-ps.scm (header-end): Remove stray exec commands. 2004-03-10 Han-Wen Nienhuys * lily/input-file-results.cc (do_one_file): use new Paper_book() * lily/score.cc (default_rendering): clean protection. * lily/paper-book.cc (mark_smob): implement smob marking. * scripts/lilypond.py (make_html_menu_file): remove --psgz option * Documentation/user/*.itely: user manual edits. 2004-03-09 Han-Wen Nienhuys * Documentation/user/converters.itely (Invoking musedata2ly): remove pmx2ly. * scripts/pmx2ly: remove script. 2004-03-09 Jan Nieuwenhuizen * lily/score.cc (default_rendering): Protect paper-book members. * lily/paper-def.cc (smobbed_copy): New method. * lily/include/paper-book.hh (PAGE_LAYOUT): Define as "ps"; make switch runtime. * lily/include/music-output.hh (process): Change signature to return SCM. * lily/paper-book.cc (classic_output, get_title, get_scopes): New method. * lily/paper-score.cc (process): Return stencils rather than outputting directly. Remove paper-book kludge. Delete grobs. (output): Remove. * lily/include/paper-score.hh (class Paper_score): Remove outputter_. * lily/score-engraver.cc (get_output): Do not reset pscore_. * lily/score.cc (default_rendering) (ly_render_output): Move adding paper-score two levels up. * lily/system.cc (get_line): * lily/paper-outputter.cc (output_line): Fix `between-system-string'. 2004-03-09 Han-Wen Nienhuys * scm/font.scm (paper20-font-vector): add more design sizes for number. * mf/GNUmakefile (depth): remove feta-din{11,13,19}, remove feta-nummber{5,7,11,13}. * scm/font.scm (paper20-font-vector): bugfix: use din12, not 10 for 12pt design size. 2004-03-09 Han-Wen Nienhuys * ly/engraver-init.ly: don't remove slur engraver from DrumVoice. 2004-03-09 Jan Nieuwenhuizen * lily/font-select.cc (properties_to_font_size_family): Fix warning message. * Experimental PostScript latin1 encoding: * mf/GNUmakefile (SAUTER_FONTS): Add ecmb14 ecrm12. * scm/output-ps.scm: Experimental encoding using reencode-font. * scm/font.scm: Add latin1 `font-shape'. * scm/define-markup-commands.scm (latin-i): New font-shape command. * ps/lilyponddefs.ps (reencode-font): New function. * lily/paper-book.cc (get_pages): Simplistic page breaking. * scm/output-tex.scm (start-page): (stop-page): New interface function. 2004-03-08 Jan Nieuwenhuizen * lily/paper-outputter.cc (output_expr): (output_header): (output_line): New method. * lily/system.cc (get_line): (get_lines): New method. (output_scheme): (output_line): Remove. * scm/lily.scm (make-title): New function. * lily/paper-book.cc: * lily/include/paper-book.hh: New file. * lily/include/ly-module.hh: New file, matching ly-module.cc (WAS: ly-modules.hh). * lily/ly-module.cc (ly_modules_lookup): New function. * lily/main.cc (main_with_guile): Move memory leak debug code back. * scm/output-ps.scm (make-title): Remove. (output-scopes): Junk header-title test. 2004-03-08 Han-Wen Nienhuys * mf/feta-schrift.mf: thicker dot for portato. * lily/accidental-placement.cc (position_accidentals): bugfix in offset, this fixes right-padding of AccidentalPlacement. * lily/[h-z]*.cc: () formatting. * Documentation/user/tutorial.itely (An orchestral part): more fixes for the tutorial. * scm/translation-functions.scm (fraction-tuplet-formatter): reverse fraction. * lily/parser.yy (context_def_spec_block): use \context instead of \translator. * lily/[a-g].cc: () style cleanup. * Documentation/user/tutorial.itely (Automatic and manual beams): editing of tutorial. 2004-03-07 Han-Wen Nienhuys * buildscripts/mf-to-table.py (base): write encoding name. 2004-03-07 Jan Nieuwenhuizen * Documentation/user/GNUmakefile (local-install-info): Issue warning (for packager, ie, if not installing in /usr or /usr/local). * lily/stencil-scheme.cc: * lily/staff-symbol-referencer.cc: * lily/script-column.cc: * lily/pitch.cc: * lily/music.cc: * lily/grob-pq-engraver.cc: * lily/font-interface.cc: * lily/music-output-def.cc: * lily/duration.cc: * lily/grob-scheme.cc: * lily/context-scheme.cc: Put scheme name on first line in LY_DEFINE to help etags (/ms multiline regexp flag broken?). Stray style cleanups. * stepmake/stepmake/scm-vars.make: * stepmake/stepmake/c++-vars.make (TAGS_HEADERS, TAGS_SOURCES): Rename and split TAGS_FILES. * GNUmakefile.in (ALL-TAGS): Remove. * stepmake/stepmake/generic-targets.make (TAGS): Also include deeper TAGS files. Fixes regexp tags in TOP dir. 2004-03-07 Han-Wen Nienhuys * VERSION: 2.1.29 released. * Documentation/user/changing-defaults.itely (Changing defaults): new file. * Documentation/user/notation.itely (Notation manual): rename from refman.itely * Documentation/user/notation-appendices.itely (The Feta font): new file. * Documentation/user/advanced.itely: add aborted attempt for advanced topics manual. 2004-03-06 Han-Wen Nienhuys * scm/new-markup.scm: display Markups in sane format. Patch by Nicolas Sceaux. 2004-03-05 Jan Nieuwenhuizen * lily/main.cc: Cleanups. (setup_localisation): New function. (sane_putenv): Remove. (main_with_guile): New name (Was: main_prog). Remove musings about possible preparation for GUILE heavy memory usage and practical uselessness. Do not set environment variables GUILE_INIT_SEGMENT_SIZE_1, GUILE_MAX_SEGMENT_SIZE. Remove file name juggling. (parse_argv): New function. (copyright): New function. It's 2004 already. * lily/input-file-results.cc (do_one_file): Add file name juggling. (distill_inname): Move from main. 2004-03-05 Han-Wen Nienhuys * GNUmakefile.in (EXTRA_DIST_FILES): remove VIM stuff. * vim/GNUmakefile: flatten dirs, add GNUmakefile. * Documentation/user/running.itely: new file. * lily/include/audio-element.hh (class Audio_element): remove grace_b_ * lily/score-performer.cc (finish): call Translator::finalize (). 2004-03-05 Heikki Junes * lilypond-ftpplugin.vim: renamed to the following file. * lilypond-ftplugin.vim: new file. * GNUmakefile.in: update VIM_FILES. 2004-03-04 Han-Wen Nienhuys * scm/output-ps.scm (output-scopes): use ly:paper-lookup for font props. * input/test/tie-sparse.ly: remove. * lily/tie-performer.cc (try_music): copy & paste from Tie_engraver. * lily/music-output-def.cc (LY_DEFINE): bugfix. Don't do variable_ref twice. * lily/key-performer.cc (create_audio_elements): use alterations-in-key. * scm/midi.scm (accidentals-in-key): divide alterations by 2. 2004-03-04 Heikki Junes * input/test/smart-transpose.ly: fix cases fes->e and similar. handle also quarter tones (not shown as tests). test also flats. * Documentation/index.html.in: small fixes. 2004-03-03 Jan Nieuwenhuizen * input/regression/new-markup-scheme.ly: Typo. * scm/define-markup-commands.scm (fill-line): New markup. * scm/output-ps.scm (ps-encoding): Add simplistic encoding. (output-paper-def): Fix alignment. (make-title): Fix height/width scaling. * ps/lilyponddefs.ps (base-line-skip): Bugfix. * input/test/title-markup.ly: Add remaining titles. Layout and font size fixes. Add simplistic latin1 test. 2004-03-03 Heikki Junes * input/test/nested-groups.ly: remove. move content (to next). * input/test/staff-bracket.ly: replace content (from prev), this has been already in templates. 2004-03-03 Jan Nieuwenhuizen * stepmake/autogen.sh: Only issue warning about running configure without arguments when autogen.sh will actually be running configure. 2004-03-03 Han-Wen Nienhuys * scm/new-markup.scm (stack-stencil-line): robustness. * scm/define-markup-commands.scm (simple): robustification of simple-markup. * Documentation/user/music-glossary.tely (Top): change central C to middle C. * lily/text-item.cc (interpret_markup): cache make-simple-markup 2004-03-03 Jan Nieuwenhuizen * input/test/title-markup.ly (spaceTest): Add. * lily/text-item.cc (interpret_markup): Make line markup from multi word markup. * scm/define-markup-commands.scm (word): New markup command. (simple): Use it. * scm/output-ps.scm (define-fonts): Fix TeX font scaling. 2004-03-02 Heikki Junes * vim/ftplugin/lilypond.vim: * vim/syntax/lilypond.vim: use only local settings with setlocal. show matching paren in insert mode. 2004-03-02 Jan Nieuwenhuizen * scm/output-ps.scm (make-title, output-scopes): Further development. * input/test/title-markup.ly: New file. * ps/lilyponddefs.ps: Disable PostScript titling. * lily/paper-score.cc (process): Quote PORT argument to make-title. 2004-03-01 Han-Wen Nienhuys * lily/arpeggio.cc (width_callback): remove padding. * scm/define-grobs.scm (all-grob-descriptions): add padding. * scm/define-music-types.scm: remove make-music-by-name. * Documentation/user/lilypond.tely: doc patch by Edward Sutton. 2004-03-01 Jan Nieuwenhuizen * lily/paper-score.cc (process): Output titles using make-title. * scm/output-ps.scm (output-stencil): Display directly instead of constructing string. (make-title): New function. 2004-03-01 Mats Bengtsson * Documentation/user/lilypond-book.itely (Integrating LaTeX and music), Documentation/user/invoking.itexi (Invoking lilypond): Move documentation of LaTeX packages for latin1 characters to the lilypond-book manual. 2004-03-01 Heikki Junes * Documentation/topdocs/INSTALL.texi: small fix (by Matthias Kilian). * vimrc: add menu in console and shortcut for it. * vim/: * vim/compiler/: * vim/syntax/: * vim/indent/: * vim/ftplugin/: new directories. * vim/filetype.vim: new file. * lilypond.vim: remove files (see next). * vim/syntax/lilypond.vim: new, renamed file (see prev). * vimrc: remove file (see next). * vim/ftplugin/lilypond.vim: new, renamed file (see prev). * vim/ftplugin/lilypond.vim: change dir for dictionary. add header. apply bindings only locally. * vim/indent/lilypond.vim: new file. * vim/ftplugin/lilypond.vim: remove errorformat. * vim/compiler/lilypond.vim: new file for errorformats. * Documentation/topdocs/INSTALL.texi: give easier orders. * ROADMAP: add vim/ 2004-02-29 Jan Nieuwenhuizen * Documentation/user/introduction.itely (Introduction): Use @image iso @html . Add workaround for images in columns in info. * stepmake/aclocal.m4: Store computed version in variable. * configure.in: Export MAKEINFO_VERSION. * config.make.in (MAKEINFO_VERSION): Add. * make/ly-rules.make: Add makeinfo <= 4.6 workaround. * Documentation/user/GNUmakefile: Only build info with images when building web. * GNUmakefile.in (install-WWW): Visit Documentation/user. * stepmake/stepmake/texinfo-targets.make: Move info and texinfo stuff from documentation-targets.make 2004-02-29 Han-Wen Nienhuys * VERSION: 2.1.28 released * scripts/convert-ly.py (conv): 2004-02-29 Heikki Junes * ly/property-init: new functions: \arpeggioUp, \arpeggioDown, \arpeggioBoth. redefine \arpeggioBracket. * Documentation/user/refman.itely: document new arpeggio functions. * scripts/convert-ly.py: add a rule for \arpeggioBracket. * input/regression/arpeggio-bracket.ly: apply convert-ly. * input/mutopia/R.Schumann/romanze-op28-2.ly: apply convert-ly. 2004-02-29 Han-Wen Nienhuys * Documentation/user/introduction.itely (Automated engraving): rewrite introduction using website text. 2004-02-28 Han-Wen Nienhuys * scm/*.scm: make-music-by-name is replaced by make-music, which also accept music property settings, eg: (make-music 'TextScriptEvent 'direction DOWN 'text (make-simple-markup x)) Patch courtesy Nicolas Sceaux * lily/beam-quanting.cc: cleanup, separate counts for left and right beam ends. * lily/side-position-interface.cc (quantised_position): also quantize staccato position for forced stem directions. 2004-02-27 Han-Wen Nienhuys * scm/*.scm: Patch by Nicolas Sceaux: * scm/music-functions.scm: ly:grob-property and ly:music-property are made procedure with setters. * scm/*.scm: replace ..-set-property! with set! (..-property ) 2004-02-28 Heikki Junes * input/test/[t-v]*.ly: finish rewriting texidocs. * input/test/vaticana.ly: remove. * input/test/ligature-vaticana.ly: new, renamed file name. * input/test/stem-centered.ly: remove. * input/test/mensural-note-heads.ly: new file. take content from removed file stem-centered.ly. * input/test/scales-greek.ly: simplify. * input/test/s*.ly: reformulate texidocs. * input/test/[p-r]*.ly: use more verbose texidocs. add comments of missing features. 2004-02-27 Heikki Junes * input/test/[j-o]*.ly: update texidocs. 2004-02-27 Jan Nieuwenhuizen * scm/documentation-generate.scm (usermanref): Add macro for TeX. * Documentation/topdocs/NEWS.texi: Add note about info docs with images. * Documentation/user/lilypond.tely (@direntry): Update. * stepmake/stepmake/documentation-targets.make (install-info,uninstall-info): Install into $(package_infodir). Install images. Run install-info to update dir. * config.make.in (package_infodir): Add. * Documentation/user/GNUmakefile (info-with-images, local-install-info, local-uninstall-info): New target. 2004-02-27 Han-Wen Nienhuys * scm/define-grobs.scm (all-grob-descriptions): tune concaveness gap/threshold. * lily/beam-quanting.cc (score_slopes_dy): remove ROUND_TO_ZERO_SLOPE kludge. * lily/beam.cc (check_concave): remove old concaveness2 kludge. * input/regression/beam-concave.ly (texidoc): add morgenlied example. * lily/global-context.cc (Global_context): alway accept Score (run_iterator_on_me): cast Context to Score_context, not Context_def. * Documentation/user/refman.itely: documentation patch by Edward Sanford Sutton. * mf/GNUmakefile: unset sauter-fonts. 2004-02-27 Jan Nieuwenhuizen * scripts/lilypond-book.py (output_texinfo): Output @image descriptions for info too. * input/test/chord-names-jazz.ly: * input/test/embedded-scm.ly: Clarify. * input/test/cautionaries.ly: Typo. * lily/input-smob.cc (ly_input_location): Compile fix. 2004-02-27 Han-Wen Nienhuys * make/lilypond.redhat.spec.in (Group): add/delete music-glossary too. * ly/engraver-init.ly: move \grobdescriptions to Global. This fixes problems with system defaults being reverted with \override on Score level. * lily/global-context.cc (Global_context): apply property-ops to Global_context too. 2004-02-27 Jan Nieuwenhuizen * scm/output-ps.scm (stencil->string): Rewrite. 2004-02-27 Heikki Junes * input/test/[+c-i]*.ly: refresh descriptions -- maintain impersonal style. 2004-02-26 Jan Nieuwenhuizen * lily/input-smob.cc (ly_input_location: New function. * scm/define-markup-commands.scm (upright): New markup command. * lily/parser.yy (markup): Add STRING_IDENTIFIER. * scm/font.scm (paper20-font-vector): cmcsc klugdge. * scm/output-ps.scm (output-stencil): New function. * scripts/lilypond-book.py (do_file): Bugfix: change search order of snippet types; fixes @ignore and @verbatim blocks. 2004-02-26 Heikki Junes * input/test/[a-b]*.ly: refresh descriptions -- avoid referring to a file in printed documentation, instead, refer either to a syntax or to an output. 2004-02-26 Jan Nieuwenhuizen * input/regression/beam-center-slope.ly: Add test. 2004-02-25 Jan Nieuwenhuizen * mf/GNUmakefile (Fontmap, Fontmap.lily): Add Fontmap for GS. (SAUTER_FONTS): Reinstate. * scm/define-markup-commands.scm (caps): New markup command. * scm/output-ps.scm (output-scopes): Experimental markup output. * scm/: Add missing headers. * lily/stencil-scheme.cc (ly_stencil_get_expr): New accessor. * lily/paper-outputter.cc (output_metadata): Add parameter PAPER. 2004-02-25 Jan Nieuwenhuizen * lily/stencil-scheme.cc (ly_stencil_get_expr): New function. Stray style cleanups. 2004-02-25 Han-Wen Nienhuys * lily/note-collision.cc (check_meshing_chords): bugfix for dot / no dot combination. * scripts/convert-ly.py (FatalConversionError.subst_in_trans): substitute \override Staff.autoBeamSettings too * Documentation/user/tutorial.itely: proofreading fixes by David Bobroff 2004-02-24 Jan Nieuwenhuizen * scm/output-ps.scm (top-of-file): Add tagline definition. FIXME. * ps/music-drawing-routines.ps: * ps/lilyponddefs.ps: Add end markers. 2004-02-24 Han-Wen Nienhuys * VERSION: 2.1.27 released. * lily/hyphen-engraver.cc (finalize): suicide unterminated hyphens. * scripts/lilypond-book.py (compose_ly): cleanup relative= option, obey documentation. 2004-02-24 Jan Nieuwenhuizen * scripts/lilypond.py (find_pfa_fonts): Bugfix and update. * scm/output-ps.scm: Resurrect. * scm/output-tex.scm: Minimal cleanups. * scm/paper.scm (paper-set-staff-size): Add lineheight. * make/ly-rules.make: Remove any broken lily-*.tex files before lilypond-book run. * stepmake/stepmake/c++-vars.make (EXTRA_CXXFLAGS): Remove -pipe comment. * stepmake/aclocal.m4: Add --enable-pipe option, with check. Enabled by default, may save 10% compile time. 2004-02-24 Han-Wen Nienhuys * lily/lyric-phrasing-engraver.cc: remove * lily/lyric-engraver.cc: rewrite so lyric-phrasing-engraver no longer necessary. * lily/extender-engraver.cc (stop_translation_timestep): rewrite so lyric-phrasing-engraver is no longer necessary. * ly/engraver-init.ly: move Break_forbid_engraver to Voice, remove Grob_pq_engraver from Staff. * lily/grob-pq-engraver.cc: remove current_grobs array, read/write busyGrobs directly. * input/regression/quote-transposition.ly: new file. * lily/recording-group-engraver.cc (stop_translation_timestep): store instrumentTuning too. * lily/quote-iterator.cc (process): transpose events using instrumentTuning. * scripts/convert-ly.py (FatalConversionError.subst): \set transposing -> \tuning * lily/parser.yy (command_req): add \tuning command for setting instrument tuning of staff. * Documentation/user/GNUmakefile ($(outdir)/lilypond/lilypond.html): ugh: use perl iso. sed. * Documentation/user/refman.itely (Customized accidental rules): typo. 2004-02-23 Heikki Junes * Documentation/user/music-glossary.tely: remove the missing norwegian translation; they can be put in later properly. 2004-02-23 Han-Wen Nienhuys * lily/recording-group-engraver.cc (start_translation_timestep): init Recording_group_engraver twice. 2004-02-23 Jan Nieuwenhuizen * gcc-3.4 snapshot: 3.4.0 20040215 (prerelease) compile fixes, and stray style cleanups: * stepmake/stepmake/c++-vars.make (EXTRA_CXXFLAGS): Remove -Wmissing-prototypes. * flower/include/killing-cons.tcc (Killing_cons): Add template specifier for car_. * flower/include/parray.hh (binsearchs): Add template specifier for maxkey. * flower/include/interval.hh: Declare elem () with template specfier. 2004-02-23 Heikki Junes * elisp/lilypond-indent.el (get-buffer-size): add customization groups for several variables (Reuben Thomas). 2004-02-23 Han-Wen Nienhuys * Documentation/user/invoking.itexi (Point and click): add index entry. * scm/slur.scm (calc-slur-extremity): use 'stem only if slur would go under beam. * lily/beam-quanting.cc: tune down ROUND_TO_ZERO_SLOPE, this fixes sarabande beam. * flower/warn.cc (programming_error): cross fingers not thumbs. * lily/rest.cc (polyphonic_offset_callback): return 0 when staff-position is set. * VERSION: release 2.1.26 * scm/chord-entry.scm (construct-chord): process transposition after processing explicit-11. 2004-02-22 Han-Wen Nienhuys * lily/parser.yy (add_quote): add syntax for adding quotes: \addquote "id-string" Music * scripts/lilypond-book.py (do_file): do not overwrite input file. * scripts/convert-ly.py (conv): add rules for name changes. * lily/context-scheme.cc (LY_DEFINE): use Scheme style naming for music/context/grob property functions. Internally, use get_property() and set_property() for both. 2004-02-22 Heikki Junes * elisp/lilypond-mode.el (get-buffer-size): define new function, for Emacs <= 20 (Laurent Martelli). 2004-02-21 Han-Wen Nienhuys * lily/parser.yy (command_element): extract quoted vector in parser. * input/regression/quote.ly: new file. * lily/sequential-iterator.cc (process): only process if moment >= 0. * lily/parser.yy (command_element): \quote DURATION NAME: support cue notes. * lily/quote-iterator.cc (class Quote_iterator): new file. 2004-02-20 Han-Wen Nienhuys * lily/auto-beam-engraver.cc (try_music): accept and process beam-forbid-event. * input/regression/auto-beam-no-beam.ly: new file. 2004-02-20 Mats Bengtsson * lily/accidental.cc (print): Change font-relative-size -> font-size. Fixes cautionary-style = smaller. 2004-02-20 Han-Wen Nienhuys * lily/system-start-delimiter.cc (staff_brace): remove font-relative-size * lily/parser.yy (music_property_def): oops. SCM_UNDEFINED forgotten with scm_list_n. Fixes spurious coredumps. * lily/accidental-engraver.cc (stop_translation_timestep): move update of localKeySignature to stop_translation_timestep (). This makes sure that all ties are noticed at the right moment. (stop_translation_timestep): clear tie only when right-side notehead was seen. (number_accidentals_from_sig): cleanup. * input/regression/accidental-tie.ly (mus): new file * input/regression/tie-accidental, tie-break-accidental.ly: remove these longish tests. 2004-02-19 Han-Wen Nienhuys * lily/include/*.hh (class Item): rename XXX_b () to is_XXX (). * THANKS: update bugreporter list. * lily/beam.cc (print): broken beams last until end of staff. (print): broken beams start from prefatory matter. * scm/output-tex.scm (output-scopes): don't dump fraction exactly. * lily/paper-score.cc (process): dump header only once. * lily/paper-outputter.cc (Paper_outputter): move logic into Scheme. * scm/output-tex.scm (output-scopes): new function. (output-paper-def): new function (tex-string-def): new function (symbol->tex-key): new function * scripts/convert-ly.py (conv): add rule for | ~ 2004-02-19 Heikki Junes * input/regression/{many}.ly: refresh, trying to guess how it was designed. 2004-02-18 Han-Wen Nienhuys * VERSION: release 2.1.25 * scm/define-translator-properties.scm (all-user-translation-properties): add printOctaveNames * ly/engraver-init.ly: remove Note_event_swallower from NoteNamesContext. * lily/note-name-engraver.cc (process_music): new property printOctaveNames * lily/context.cc (find_existing_context): remove support for Current. * scm/music-functions.scm (set-accidental-style): new function; duplicate accidental macros. * ly/property-init.ly (hideStaffSwitch): remove accidental macros. * lily/note-name-engraver.cc (process_music): process_acknowledged_grobs () -> process_music () * scm/part-combiner.scm (determine-split-list): robustification. 2004-02-17 Han-Wen Nienhuys * lily/beam-quanting.cc (score_forbidden_quants): check all staff lines for falling into beam-gap. (score_forbidden_quants): check all staff lines for falling in beam gaps. * lily/note-spacing.cc (get_spacing): less space at EOL in case of key/clef/time signatures. * input/test/ossia.ly: revise example. * lily/span-bar.cc (evaluate_glyph): read 'glyph of self first. cleanup. * lily/grob-scheme.cc (LY_DEFINE): change a few function names to comply to Scheme standard. Remove ly:get-paper-variable 2004-02-17 Mats Bengtsson * scripts/convert-ly.py (2.1.22): Corrected documentation printout. 2004-02-17 Han-Wen Nienhuys * lily/accidental-engraver.cc (process_acknowledged_grobs): use properties from Voice context. This fixes accidental size for staff-switches during grace contexts. * lily/note-collision.cc (check_meshing_chords): only wipe heads if necessary. Else, simply wipe dots. * input/test/beam-alternate.ly: new file * input/test/piano-staff-distance.ly: new file. * lily/translator-group.cc (recurse_down_translators): use Direction for bottom-up/top-down. * lily/include/translator.hh (class Translator): add process_music() and do_announces(). This obviates recurse_down_{engravers,performers}. * ly/declarations-init.ly (melismaEnd): use ManualMelismaEvent for \melisma and \melismaEnd * lily/melisma-engraver.cc (process_music): change to Melisma_translator, unify with performer. Accept ManualMelismaEvent. * ly/engraver-init.ly: add Font_size_engraver. 2004-02-16 Heikki Junes * lily/align-interface.cc, lily/axis-group-engraver.cc: spell it hara-kiri. * input/regression/{many}.ly: improve descriptions trying to figure out what is tested. 2004-02-16 Han-Wen Nienhuys * lily/slur.cc (broken_trend_offset): robustness fix. * VERSION: release 2.1.24 * lily/context.cc (find_create_context): go to Score if it exists. * lily/context-scheme.cc: new file. * lily/score-translator.cc (get_output): new file. * lily/include/grob-info.hh: origin_contexts() now does not include the originating engraver * lily/translator-group.cc (translator_each): clean up contents, remove superfluous stubs. Engraver_group_engraver and Performer_group_performer are the only classes using multiple inheritance. * lily/include/score-context.hh (class Score_context): interface between Score_{engraver,performer} and Global_context. * lily/include/global-context.hh (Context): change from global-translator. This is the entry point for contexts; it is not tweakable using \translator{}. Score is no longer the top context, but sits underneath Global. * lily/include/context.hh (class Context): brain surgery: split out Context functionality from Translator_group. Context is now a separate type from Translator. 2004-02-15 Han-Wen Nienhuys * lily/include/translator.hh (class Translator): make get_score_context() and get_global_translator (), and use the one which is appropriate. * lily/context.cc: partially put functionality of Translator_group into Context. * lily/include/context.hh (Translator): new class: put between Translator and Translator_group. * lily/new-accidental-engraver.cc: remove file. 2004-02-16 Heikki Junes * input/regression/{many}.ly: improve descriptions: use complete sentences, try to describe what is tested, avoid `we´, do not use don't, ... 2004-02-15 Heikki Junes * Documentation/user/refman.itely: use `@c´ if $internalsref{...} @c is at EOL. * Documentation/user/lilypond.tely: declare the topmost node only once; removes empty line in @contents. * Documentation/user/music-glossary.tely: really add Finnish author. Draw more beatiful `->´ arrow in html: → 2004-02-15 Han-Wen Nienhuys * lily/music.cc (LY_DEFINE): rename to ly:music-list? * scripts/convert-ly.py (conv): add ly:music-list change. * lily/grob.cc: edit doc string. * scm/define-grob-properties.scm (all-user-grob-properties): proofreading, editing of doc strings. * input/regression/tablature-string-tunings.ly: new file. * lily/staff-symbol-engraver.cc (process_music): new engraver, listen to stringTunings * lily/align-interface.cc (align_elements_to_extents): remove Grob for self-alignment-[XY] code. 2004-02-14 Han-Wen Nienhuys * scm/slur.scm (calc-slur-extremity): change "rules" (home-brewn cond) into function. Cleanup. * lily/text-spanner.cc: remove text-repeat-if-broken property. * VERSION (PACKAGE_NAME): 2.1.23 released 2004-02-14 Heikki Junes * Documentation/user/{refman,internals}.itely: small fixes. 2004-02-14 Han-Wen Nienhuys * lily/accidental-engraver.cc (acknowledge_grob): don't make accidentals for harmonic notes * lily/new-fingering-engraver.cc (acknowledge_grob): kill dots, for harmonic notes. * scm/document-backend.scm (interface-doc): prune Grob documentation: don't duplicate interface information. * lily/*.cc: lots of updates of doc strings. 2004-02-13 Han-Wen Nienhuys * input/test/ac-extra-voice.ly (accompany): remove file. * input/test/maximum-rest-count.ly: remove file. * scripts/convert-ly.py (FatalConversionError.subst_in_trans): conversion rule for \translator { }. Apply everywhere. * lily/parser.yy (music_property_def): set property for \once in the PropertyMusic itself, not the ContextSpec. (property_operation): change syntax within \translator { } * scm/define-music-properties.scm (all-music-properties): clean up. * lily/auto-beam-engraver.cc (test_moment): use updated_grob_properties() to retrieve autoBeam settings. * lily/spacing-spanner.cc: bound shortest_playing_len by measure_length * lily/spacing-engraver.cc (acknowledge_grob): ignore multi-measure events for spacing computation. * mf/feta-bolletjes.mf (overdone_heads): make note heads more elliptical, to 1.49. * lily/rest.cc (polyphonic_offset_callback): new function. Do vertical positioning for polyphony, without RestCollision object. * lily/note-column.cc (add_head): prevent rests & note heads on one stem. * lily/rest-collision.cc (do_shift): ignore rests with beams. (do_shift): rewrite only-rests case: use common refpoints: the routine will have sensible results when other rest-translations have taken place. * lily/simple-spacer.cc (solve): cleanup: remove code for linelen < 0 case. * VERSION: 2.1.22 released * input/GNUmakefile (SUBDIRS): remove ascii-art 2004-02-13 Jan Nieuwenhuizen * input/: Convert ly files that still had \property. Fixes make web. Remove exta spaces around '='. * scripts/convert-ly.py (conv): Redundant space fixes. * scripts/lilypond-book.py (compile-ly): python2.1 fix. 2004-02-13 Han-Wen Nienhuys * make/ly-rules.make ($(outdir)/%.pdf): add DVIPS_FLAGS. This will create scalable PS and PDFs for input/{test,template,regression}. * lily/context.cc (is_alias): move function. (is_alias): add Bottom as context alias. (find_create_translator): add Bottom as a context alias for creation. * lily/stencil.cc: rename Molecule to Stencil. Changes throughout. * lily/parser.yy (music_property_def): new syntax for property assignments: \set A.B = #C , \unset A.B \override A.B #C = #D, \revert A.B #C * lily/my-lily-lexer.cc: remove \property 2004-02-13 Heikki Junes * Documentation/user/refman.itely: add dots after seealso refs. * input/template/{many}.ly: harmonise descriptions. * Documentation/user/music-glossary.itely: add Finnish author. 2004-02-12 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 2.1.21 2004-02-12 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Substitute Lyrics/LyricsVoice. * scripts/lilypond-book.py (snippet_res): @include filename must not be empty. 2004-02-12 Han-Wen Nienhuys * scm/documentation-generate.scm (markup-doc-string): dump markup-commands.tely * scm/define-markup-commands.scm (override): new file. Move documentation from refman into doc-strings. * input/test/staff-container.ly: fix example. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove StaffContainer * lily/grob.cc: remove point_dimension_callback (Grob): read forced dimensions from X-extent and Y-extent. (get_paper): remove preset_extent. * scm/define-grobs.scm (all-grob-descriptions): remove point_dimension_callback. * lily/dynamic-engraver.cc (acknowledge_grob): attach dynamic textscript to head. This makes no-spacing-rods work on DynamicText. * lily/chord-name.cc: remove props chord, bass, inversion. * Documentation/user/appendices.itely: add Scheme functions, context-properties and layout properties to manual. * scm/part-combiner.scm (determine-split-list): include rests in a solo1/2 sequence. * lily/new-part-combine-iterator.cc (substitute_both): new function. (class New_pc_iterator): add separate Voice=solo context, fixes autobeams going from chords to solo. 2004-02-11 Jan Nieuwenhuizen * Documentation/user/invoking.itexi (Editor support): Fix typo. * Documentation/user/tutorial.itely: * Documentation/user/refman.itely: Add short note about being part of lilypond.tely. * COPYING: Make note more clear with respect to files that are explicitely licenced otherwise (Documention/user/ comes to mind). * Documentation/topdocs/AUTHORS.texi (AUTHORS): Use @,{c}. Remove comment about barfing of @c,{}. * Documentation/user/music-glossary.tely: Add list of authors. * stepmake/stepmake/library-rules.make: Thank Nelson only in source (was: also in build log). 2004-02-11 Han-Wen Nienhuys * lily/side-position-interface.cc (general_side_position): if staff-padding is set, then include staff in support too. * GNUmakefile.in (README_FILES): remove TODO. Put in new CVS module workbook * TODO: Remove. Put in new CVS module /cvsroot/lilypond/workbook/ * lily/tuplet-engraver.cc: remove tupletInvisible * scm/define-translator-properties.scm: cleanup, separate in internal and user props. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): change LyricsVoice -> Lyrics * lily/new-part-combine-iterator.cc (process): only print warning for symbols. 2004-02-11 Jan Nieuwenhuizen * scm/part-combiner.scm: Add proper header. * All but lily/*: The great --2003 --2004 replace; the missing `bits'. * TODO: Fix outline mode. Add book notes. * ROADMAP: Update. 2004-02-11 Han-Wen Nienhuys * scm/part-combiner.scm (make-autochange-music): use accumulator. Fixes stack overflow. * lily/*: rename brew_molecule -> print , molecule-callback -> print-function * scm/define-grob-properties.scm: cleanup. Separate into internal and user properties. * lily/translator-property.cc (updated_grob_properties): new function (execute_pushpop_property): change to new convention: object property inits are stored as (cons ALIST BASED-ON). This storage format allows concurrent tweaks in different contexts. 2004-02-10 Han-Wen Nienhuys * TODO: new file. 2004-02-10 Jan Nieuwenhuizen * debian/: Late Debian update (sorry Anthony). * scripts/lilypond-book.py (do_file): Look for input_file in include path, or ask kpathsea if LATEX. * input/template/GNUmakefile (LILYPOND_BOOK_FLAGS): * input/test/GNUmakefile (LILYPOND_BOOK_FLAGS): * input/regression/GNUmakefile (LILYPOND_BOOK_FLAGS): Use --header=texidoc. * Documentation/user/tutorial.itely (Fine tuning layout): Add lost relative. * scripts/lilypond-book.py: Fixes for make web. Default to stdout only when filtering, default to input_base otherwise. Coding style fixes. 2004-02-10 Han-Wen Nienhuys * lily/include/translator.hh (class Translator): add virtual qualifier. 2004-02-10 Jan Nieuwenhuizen * scripts/lilypond-book.py (compose_ly): Python2.1 workarounds. 2004-02-09 Jan Nieuwenhuizen * scripts/lilypond-book.py (compose_ly): Add kludge for relative. * Documentation/user/refman.itely: Run texinfo-all-menus-update (fixes make web). * GNUmakefile.in (web-clean): Do not remove fonts (they do not live in $(out)-www). * scripts/lilypond-book.py: Small cleanups. Junk hairy include dependencies. Add link to .ly source in HTML output. (Lilypond_snippet.output_html): Handle multiple page picture output. (Lilypond_snippet.output_html, Lilypond_snippet.output_latex): Make usable for output_texinfo again. * Documentation/user/GNUmakefile: Add static dependency for lilypond.tely includes. * Documentation/user/tutorial.itely: Add some lost `relative' ly-options. 2004-02-09 Han-Wen Nienhuys * lily/include/translator-group.hh: move Music_output_def member to Global_translator. * scripts/lilypond-book.py (do_file): fix latex output. * VERSION: release 2.1.20 * scm/part-combiner.scm (determine-split-list): robustness fix * lily/paper-score.cc (process): move gc stat stuff to init.ly * lily/parser.yy (music_output_def_body): plug memory leak. * lily/translator-group.cc (add_fresh_group_translator): plug memory leak: unprotect Translator_group once added. * lily/span-dynamic-performer.cc (process_music): deprecate span-type. * scripts/lilypond-book.py (Lilypond_snippet.notice_include): write .dep file. (Lilypond_snippet.ly): add \renameinput. 2004-02-08 Han-Wen Nienhuys * Documentation/user/refman.itely (Markup command definition): Doc by Nicolas Sceaux. Rewrite by Han-Wen * lily/lyric-hyphen.cc (brew_molecule): remove if hyphen is first thing of the line. (brew_molecule): only remove if hyphen is not at the end of line. (set_spacing_rods): new function: minimum-length specifies distance between syllables. * scm/define-grobs.scm (all-grob-descriptions): add Hyphen_spanner::set_spacing_rods to LyricHyphen * input/regression/lyric-hyphen-break.ly: new file. * input/test/lyric-hyphen-retain.ly: new file. * lily/new-part-combine-iterator.cc (construct_children): add Rest direction. 2004-02-08 Han-Wen Nienhuys * scripts/lilypond-book.py (Snippet.replacement_text): add method. * Documentation/bibliography/engraving.bib (donemus1982): update entry. 2004-02-07 Han-Wen Nienhuys * scripts/lilypond-book.py (Substring.__init__): new class. (Snippet.output_texinfo): add texidoc option. (Include_snippet.replacement_text): new class. (Lilypond_snippet.__init__): new class (Lilypond_snippet.get_hash): bugfix: use full body for hashing. * Documentation/user/refman.itely (Sound): note about number of channels. * scm/music-functions.scm (voicify-music): add \context Staff for << \\ >> polyphony. * lily/parser.yy (verbose_command_req): \skip now creates SkipMusic, and does not lead to spurious staves. * scm/define-music-types.scm (music-descriptions): rename NonEventSkip to SkipMusic * input/no-notation/midi-lyric-barcheck.ly: new file. * input/regression/collision-dots-invert.ly: new file. * lily/note-collision.cc (check_meshing_chords): add stem_to_stem case. * lily/new-lyric-combine-music-iterator.cc (process): let iterator die if melody died too. 2004-02-06 Han-Wen Nienhuys * lily/source-file.cc (load_stdin): add trailing 0. Fixes problem with reading from stdin. * lily/slur-performer.cc (try_music): new file. * lily/melisma-performer.cc (try_music): new file. Handle melismata to help lyrics. * lily/beam-performer.cc (try_music): new file. Handle beam events to help lyrics. * lily/score-performer.cc (one_time_step): reinstate process_music(). * lily/performer.cc (process_music): add to interface. * lily/performer-group-performer.cc (process_music): new function. * lily/dot-column.cc (do_shifts): do collision resolution before dot positioning. * scripts/lilypond-book.py (Snippet.output_print_filename): new file, process printfilename option. (Snippet.__init__): rewrite: do not use global variables h or index. (main): really support -I option. (find_toplevel_snippets): new code. (find_toplevel_snippets): reinstate old version, without global variables. * tex/texinfo.tex: really add file. 2004-02-06 Jan Nieuwenhuizen * scripts/lilypond-book.py (find_toplevel_snippets): Python < 2.3 compatibility. 2004-02-06 Han-Wen Nienhuys * scripts/hw-lilypond-book.py (Snippet.output_print_filename): * scm/define-translator-properties.scm (drumPitchTable): add property. * scripts/lilypond-book.py (simple_toplevel_snippets): new function. (help_summary): docstrings. (do_file): strip the dir of input_base too. 2004-02-05 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Add item about lilypond-book. * Documentation/user/lilypond-book.itely: Update. * make/ly-rules.make: Update lilypond-book commands. * Documentation/user/GNUmakefile: Update makeinfo commands, lilypond-book flags. * scripts/lilypond-book.py: Rewrite (was: filter-lilypond-book.ly). * scripts/old-lilypond-book.py: New file (was: lilypond-book.ly). * scripts/filter-lilypond-book.py: Remove. * Documentation/user/*tely: Update options for new lilypond-book. * tex/texinfo.tex: New file; from texinfo CVS. This fixes build with @macros in @includes. 2004-02-05 Han-Wen Nienhuys * lily/rest-collision-engraver.cc (process_acknowledged_grobs): make rest-collision only. * lily/break-substitution.cc (substitute_one_mutable_property): clear all-elements using scm_assq_remove_x(). * lily/rest-collision.cc (do_shift): shift single rests * flower/include/array.hh (class Array): rename to is_empty () * lily/drum-note-performer.cc: new file: perform drum notes. * VERSION (PACKAGE_NAME): release 2.1.19. 2004-02-05 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py (classic_lilypond_book_compatibility): New function. 2004-02-05 Han-Wen Nienhuys * buildscripts/lilypond.words.py (F): remove drums.scm reference. * Grand 2003 -> 2004 search replace. * lily/parser.yy (chord_body_element): add DRUM_PITCH to chords (i.e. < > ) * ly/performer-init.ly: add DrumStaff * lily/axis-group-engraver.cc (acknowledge_grob): also take lyric-interface; this prevents lines with only extender lines from being junked. * scm/define-grob-interfaces.scm (lyric-interface): new interface * lily/lyric-extender.cc (brew_molecule): get line breaking and extenders right, for once and for all (hopefully). * lily/break-substitution.cc (substitute_one_mutable_property): clear old 'all-elements for System grobs. * lily/new-lyric-combine-music-iterator.cc (find_voice): make sure that associatedVoiceContext is always assigned when music & lyrics are found. * ly/engraver-init.ly: remove Lyrics context. (TabVoice): add noteheads engraver * input/test/improv.ly: update: do not use Thread switching. * lily/pitch-squash-engraver.cc (acknowledge_grob): only squash if squashedPosition is a number * Documentation/user/refman.itely (Automatic note splitting): remove Thread references. * input/no-notation/pc-direction.ly: remove file. * ly/engraver-init.ly: remove Thread * input/regression/tie-chord-partial.ly: remove file. * scripts/convert-ly.py (conv): \harmonic rule * lily/new-fingering-engraver.cc (acknowledge_grob): add new notation for harmonic notes: * lily/lily-guile.cc (alist_to_hashq): new function * scm/lily.scm (alist->hash-table): new function. * Documentation/user/refman.itely (Percussion staves): update doco. * input/regression/drums.ly (timb): updates * lily/note-performer.cc (create_audio_elements): robustness fix. * ly/engraver-init.ly: add DrumStaff and DrumVoice contexts 2004-02-05 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py (find_toplevel_snippets): Do not discard valid matches. 2004-02-04 Han-Wen Nienhuys * lily/drum-note-engraver.cc: new file. * ly/drumpitch-init.ly: move drum definitions * scm/drums.scm: remove file. * lily/*.cc: remove abort-event everywhere. * lily/note-heads-engraver.cc (process_music): robustification. * lily/accidental-engraver.cc (process_acknowledged_grobs): robustification. * lily/parser.yy (simple_element): add \drums mode. (simple_element): remove \pitchnames , \chordmodifiers. Use variables to store this. * lily/lexer.ll (My_lily_lexer): remove support for \PITCHNAME outside \notes. * VERSION: release 2.1.18. * input/test: remove octave-duplicate.ly 2004-02-04 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Speed-up and clean-ups. 2004-02-04 Han-Wen Nienhuys * lily/simultaneous-music-iterator.cc: remove clone() and copy constructor from Music_iterator. Changes throughout. * lily/include/music-iterator.hh (class Music_iterator): remove Music_iterator::skip and Music_iterator::get_pending_events from interface. Rename report_to -> get_outlet * lily/auto-change-iterator.cc: move contents from new-auto-change-iterator.cc from * scm/part-combiner.scm: determine split-list from Scheme. * lily/new-auto-change-iterator.cc (process): new file. * lily/parser.yy (part_combined_music): remove old PC cruft. * ly/engraver-init.ly: remove old PC cruft. * Documentation/user/refman.itely (The Lyrics context): note about extender lines. * lily/multi-measure-rest-engraver.cc (process_music): extra check to allow 0-length mmrest events. * scm/part-combiner.scm (determine-split-list): many bugfixes. * lily/new-part-combine-iterator.cc (kill_mmrest): new function. * lily/spacing-engraver.cc (finalize): robustifications. * input/regression/new-part-combine-solo-global.ly: new file. * scm/part-combiner.scm: rewrite. 2004-02-03 Juergen Reuter * Documentation/user/refman.itely, input/puer-fragment.ly, input/test/vaticana.ly, ly/engraver-init.ly: ancient examples updated for proper use of lyricsto; replaced "(" and ")" -> "\melisma" and "\melismaEnd" * input/test/ancient-font.ly: small updates to reduce compile warnings (TODO: junk this file) * input/test/gregorian-scripts.ly: added comment about bug * lily/gregorian-ligature-engraver.cc, lily/ligature-engraver.cc: tiny robustness fix * mf/parmesan-clefs.mf: exact_center fixes (this broke due to recent changes in the feta code); temporarily mapped mensural g clef to a copy of petrucci g clef until mensural g clef will have been rewritten * mf/parmesan-heads.mf: bugfix: solved character name clashing between mensural and neo-mensural heads (this broke quite a while ago) * mf/parmesan-rests.mf: still more tiny set_char_box() fixes 2004-02-03 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Handle @include. Add progress indication. Fixes for verbatim, multi line comments. 2004-02-03 Han-Wen Nienhuys * input/regression/new-part-combine-solo.ly: more cases. * lily/slur.cc (height): robustness fix. * lily/new-part-combine-iterator.cc (process): add apart-spanner. * input/mutopia/F.Schubert/morgenlied.ly (melody): revert stemUp/stemDown. * scm/music-functions.scm (determine-split-list): further analysis. * lily/script-engraver.cc (try_music): discard duplicate articulations. * input/regression/new-part-combine-solo.ly: new file * input/regression/new-part-combine-a2.ly: new file. * ly/performer-init.ly: add Devnull * scripts/convert-ly.py (FatalConversionError.sub_acc): add rule for \musicglyph #"accidental-*" (conv): \newpartcombine rule. 2004-02-03 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Handle @lilypondfile, bugfixes. 2004-02-02 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Handle verbatim, latex textwidth, --output. 2004-02-02 Han-Wen Nienhuys * scm/new-markup.scm (doubleflat): add accidental markups. * VERSION: release 2.1.17 * Documentation/user/refman.itely (Automatic part combining): revise documentation of the part-combiner. * input/regression/pc-switch-slur.ly (texidoc): remove file. * input/test/part-combine-{moment,staff}.ly: remove file. * input/regression/pc-mmrest.ly (two): remove file. * scm/define-music-types.scm (music-descriptions): add Solo{One,Two}Event and UnisonoEvent * lily/new-part-combine-iterator.cc (unisono): add state_ variable, signal changes with part-combine-event. * input/regression/new-part-combine-text.ly: new file. * lily/part-combine-engraver.cc: new file. 2004-02-02 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Handle snippet options. 2004-02-02 Han-Wen Nienhuys * scm/music-functions.scm (determine-split-list): detect solo1/2 and unisono. * lily/new-lyric-combine-music-iterator.cc (construct_children): revert fix, document why. * lily/tie-performer.cc (process_music): new function. Set melisma property. * lily/tuplet-bracket.cc (make_bracket): make sure that gap is always smaller than bracket size. (make_bracket): oops. Size of the gap was off by factor 2 * input/test/text-rotate.ly: new file. * scm/new-markup.scm (markup): a macro that provides a LilyPond-like syntax in scheme for building markups, in order to help markup command definition. (Nicolas Sceaux) * input/test/lyrics-skip-notes.ly: new example. * lily/parser.yy (post_event): make HYPHEN into postfix event. * lily/new-lyric-combine-music-iterator.cc (find_context_below): use is_alias() iso. == . This fixes lyrics on GregorianTranscriptions. 2004-02-02 Mats Bengtsson * scripts/lilypond.py (ly_paper_to_latexpaper): Add newline before \thispagestyle{lastpage} to avoid that it's printed on the second last page when there's only a single score line on the last page. (The page breaking mechanism in TeX played some ugly tricks to us.) 2004-02-01 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Further development. * input/regression/collision-dots-move.ly: New test. * lily/note-collision.cc (check_meshing_chords): Move dots on left hand side note head of non-merged collision to the right. * lily/new-lyric-combine-music-iterator.cc (start_new_syllable): Construct children before accessing property from emtpy lyrics_context_. (construct_children): Find thread before finding LyricsVoice. Create LyricsVoice one if none found, fixes crash (thanks Erik Sandberg). 2004-01-31 Jan Nieuwenhuizen * cygwin/: Forward port. 2003-10-01 Jan Nieuwenhuizen * buildscripts/install-info-html.sh: Use Bash. * cygwin/mknetrel: Patch from Bert. 2003-09-30 Jan Nieuwenhuizen * cygwin/lily-wins.py: Check whether to run ly2dvi or lilypond. * stepmake/stepmake/topdocs-targets.make (copy-to-top): Do not try to copy *png, index.html (Bertalan Fodor). * cygwin/mknetrel (preinstall): Set webdir (Bertalan Fodor). 2003-09-30 Jan Nieuwenhuizen * lily/note-collision.cc (check_meshing_chords): Do not remove dots (from down head) when merging similar heads (thanks Matthias Kilian). Simplify merge_possible tests and other cleanups * input/regression/collision-merge-differently-dotted.ly: Add test for disappearing dots on similar heads for both voices. 2004-01-30 Mats Bengtsson * Documentation/user/invoking.itexi (Invoking lilypond): Document that tagline overrides copyright for single page scores. Correct the default tagline value. 2004-01-29 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Compile fix (thanks Mats). 2004-01-29 Mats Bengtsson * buildscripts/lilypond-login.sh: Avoid warning about undefined TEXMF if it's previously unset. 2004-01-29 Heikki Junes * scm/chord-name.scm (german-markup): bugfix: use SEMI-TONE. * input/test/trills.ly: fix the unfolding of lineprall. * input/test/figured-bass-alternative.ly: fix accidental. 2004-01-28 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Add note about safe mode. * input/no-notation/dos-guile.ly: * input/no-notation/dos-ps.ly: * input/no-notation/dos-tex.ly: New file. These tests still FAIL. * input/no-notation/safe-include.ly: * input/no-notation/safe-guile.ly: * input/no-notation/safe-ps.ly: * input/no-notation/safe-tex.ly: New file. * scripts/lilypond.py (global_latex_preamble): Add \nofiles for safe mode Add -s,--safe-mode option. Use -S,--set for setting options now. (run_lilypond): When in --safe-mode, pass option to lilypond-bin. When in --safe-mode, set environment openout_any=p[aranoid]. * tex/ltest.tex: * tex/lilyponddefs.tex: Add \nofiles. * python/lilylib.py (get_bbox, make_ps_images): Add -dSAFER to gs options. * mf/GNUmakefile (FETA_LIST_FILES): Install feta*list.lys too. This allows building the user manual using a binary installation and a matching unpacked source tree. * scm/lily.scm (safe-module): New variable. * lily/includable-lexer.cc (new_input): Fix error messages. * lily/parse-scm.cc (internal_ly_parse_scm): Add parameter SAFE. If SAFE, evaluate in safe-module. Change callers. * lily/main.cc (Long_option_init): Reinstate safe-mode. * lily/lexer.ll (embedded_scm): While processing main-input, invoke ly_parse_scm with safe mode if running in safe-mode. (<>): Reset main_input_b_, fixes old-relative chech in init.ly for safe-mode. 2004-01-28 Mats Bengtsson * scripts/lilypond.py (ly_paper_to_latexpaper): Regain compatibility with old versions of geometry.sty (compat2 already implied includehead). Change the page layout slightly so bottom + footskip = top + headheight + headsep = 16mm, the remaining paperheight-32mm are used for the music. Increase footskip to 5mm, so the top of the footer text doesn't touch the music. 2004-01-28 Han-Wen Nienhuys * VERSION: release 2.1.16 * scm/music-functions.scm (determine-split-list): bugfix: only use new-active for both voices if both indexes advance. This fixes the biggest outstanding problem with new-pc. * lily/new-part-combine-iterator.cc (construct_children): set more directions. 2004-01-27 Han-Wen Nienhuys * scripts/convert-ly.py (conv): add instrument rule. * lily/instrument-name-engraver.cc: add Vocal_name_engraver. * lily/side-position-interface.cc: remove add_staff_support () Change all callers to use staff-padding. * lily/auto-beam-engraver.cc (create_beam): opps. Don't use make_spanner(). * lily/a2-engraver.cc (process_acknowledged_grobs): * lily/text-engraver.cc: remove scriptHorizontal property. * lily/beam.cc (least_squares): also set least-squares-dy for special case of slanted 2-stem beam to center. * lily/side-position-interface.cc (out_of_staff): move contents of out_of_staff into aligned_side. remove out_of_staff(). * input/regression/measure-grouping.ly: fix warning. * lily/side-position-interface.cc: add staff-padding support to Side_position_interface::aligned_side. * lily/system-start-delimiter-engraver.cc (process_music): whoops, one get_property too many. * flower/include/drul-array.hh (linear_combination): new function (scale_drul): new function * lily/beam.cc: use Drul_array iso. interval, because *= operations on empty intervals are silly. 2004-01-26 Jan Nieuwenhuizen * lily/note-heads-engraver.cc (process_music): use robust_scm2int (iso gh_scm2int), fixes crash in new part-combiner. * configure.in: Up mftrace to 1.0.27. 2004-01-26 Han-Wen Nienhuys * VERSION: release 2.1.15 * lily/lyric-phrasing-engraver.cc (stop_translation_timestep): align all stanza numbers. 2004-01-26 Heikki Junes * Documentation/user/{introduction.itely,refman.itely, converters.itely}: fix some text inside parentheses; text should be readable (even) if parentheses are either replaced with commas or dropped out. 2004-01-25 Werner Lemberg * buildscripts/lilypond.words.py, input/puer-fragment.ly, input/test/vaticana.ly, input/test/ancient-font.ly, input/test/mensural-ligatures.ly, input/test/gregorian-scripts.ly, lily/include/staff-symbol.hh, lily/breathing-sign.cc, ly/params-as-init.ly, scm/define-grobs.scm, scm/define-grob-properties.scm: s/stafflinethickness/linethickness/. * ly/params-as-init.ly: Removed. Obsolete. * buildscripts/lilypond.words.py: Updated. 2004-01-25 Han-Wen Nienhuys * mf/parmesan-clefs.mf: switch off mensural G clefs. * mf/feta-din{4,5,7,9}.mf: remove. * lily/engraver.cc (internal_make_item): centralize item/spanner factory. * scripts/convert-ly.py (FatalConversionError.sub_durs): bugfix: do correct chord conversion for ^"sim." (backportme) (FatalConversionError.sub_articulations): substitute ^"foo" in chords too. (backportme) * scm/define-grobs.scm (all-grob-descriptions): use staff-padding for Fingering. * lily/side-position-interface.cc (out_of_staff): don't do anything if staff-padding not defined. * mf/feta-params.mf (stafflines): introduce linethickness as general blackness of the font. * lily/stem.cc (position_noteheads): rounding error robustness. * input/regression/rest-collision-beam.ly: move beam/rest stuff from beam-collision.ly * lily/beam.cc (rest_collision_callback): remove direction. * scm/define-grobs.scm (all-grob-descriptions): remove enclose-bounds in OttavaBracket and PianoPedalBracket * scm/new-markup.scm (def-markup-command) new macro, which takes care of defining the COMMAND-markup and make-COMMAND-markup procedures, setting markup-signature and keyword-signature object properties, and pushing the markup command in markup-function-list. All markup commands are defined thanks to it. Users may also use it to define their own markup commands. (Nicolas Sceaux) * scm/new-markup.scm: Scheme style clean-up: there should be no parenthesis alone on a line; LET* should not be used where LET is enough. (Nicolas Sceaux) 2004-01-25 Jan Nieuwenhuizen * scripts/filter-lilypond-book.py: Add script. 2004-01-23 Jan Nieuwenhuizen * ly/engraver-init.ly: Set enclose_bounds to #1 (was: ##t). 2004-01-24 Han-Wen Nienhuys * Documentation/user/refman.itely (Fingering instructions): add single note chords. * lily/multi-measure-rest-engraver.cc: use a single MultiMeasureEvent for mm rests. This prevents problems with the new part combiner. * scm/music-functions.scm (determine-split-list): analysis has global effect: a difference halfway a phrase makes the entire phrase be typeset as apart. (make-multi-measure-rest): make mmrest as a single rhythmic event. 2004-01-23 Han-Wen Nienhuys * ly/performer-init.ly: add Devnull. * Documentation/user/refman.itely (Font selection): remove paper20 ref. 2004-01-22 Jan Nieuwenhuizen * scripts/convert-ly.py (1.9.0): Handle phrasing slur. 2004-01-22 Han-Wen Nienhuys * scm/music-functions.scm (determine-split-list): bugfixes. * scm/lily.scm (uniq-list): new implementation, O(1) stack. * input/test/scales-greek.ly: use C as base, results in different alterations at the clef. * input/regression/pedal-ped.ly: new file. * input/regression/pedal-bracket.ly: new file. * lily/piano-pedal-bracket.cc (brew_molecule): new function; replace after_line_breaking() * lily/line-interface.cc (line): read thickness. (line): dash-fraction = 0 always for dotted-line style. * input/test/staff-lines.ly (lower): bugfix. * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): move \accepts Devnull into Score. * scm/lily.scm: remove bla.scm load. 2004-01-21 Han-Wen Nienhuys * VERSION: release 2.1.14 * Documentation/topdocs/INSTALL.texi (Top): fix FTP url. * lily/side-position-interface.cc (general_side_position): add Staff_symbol_referencer::staff_space (). * lily/include/context-def.hh: rename from translator-def.hh 2004-01-21 Mats Bengtsson * input/template/piano-dynamics.ly (pedal): Updated definition of Dynamics such that \cresc works, for example. 2004-01-21 Han-Wen Nienhuys * lily/stem.cc (calc_stem_info): use Staff_symbol_referencer::staff_space * lily/beam-quanting.cc (quanting): scale Stem_info * lily/beam.cc (rest_collision_callback): use minimum-distance property for rest/beam collisions. (rest_collision_callback): bugfixes. * lily/system.cc (post_processing): extra-offset is now relative to the size of the current staff. * scm/music-functions.scm (notice-the-events-for-pc): record all voices, only analyze "one" and "two". * lily/recording-group-engraver.cc (finalize): bugfix: want self, not parent. * lily/new-part-combine-iterator.cc (construct_children): create Devnull from Voice context * scm/music-functions.scm (determine-split-list): bugfixes. * lily/lily-guile.cc (robust_scm2int): new function * lily/staff-symbol-referencer.cc (line_thickness): new function. Use throughout. * lily/font-size-engraver.cc (acknowledge_grob): only process grob in its own context. Add to preset font-size. * lily/stem.cc (thickness): new function. * lily/staff-symbol.cc (get_ledger_line_thickness): new function: compute thickness from ledger-line-thickness. * lily/note-head.cc (brew_ledger_lines): use Staff_symbol::get_ledger_line_thickness (). * lily/beam.cc (rest_collision_callback): use Staff_symbol_referencer::staff_space(). * lily/parser.yy (My_lily_lexer): change syntax: \newpartcombine Mus1 Mus2 * lily/include/translator.hh (class Translator): add accepts_list_ so \with { \denies / \accepts } also works. * scm/music-functions.scm (determine-split-list): determine split list from music events. * lily/new-part-combine-iterator.cc: more states. * lily/moment.cc (LY_DEFINE): new function ly:moment * lily/system.cc (set_loose_columns): use the right prebroken cols for interpolating loose column position. * lily/text-spanner.cc (brew_molecule): default to no vertical lines. * lily/ottava-bracket.cc (brew_molecule): vertical line doesn't take space. * scm/define-grobs.scm (all-grob-descriptions): less padding. 2004-01-20 Jan Nieuwenhuizen * scripts/convert-ly.py: Do not test filename when processing stdin. * lily/axis-group-engraver.cc: Include warn.hh (compile fix). 2004-01-20 Han-Wen Nienhuys * lily/axis-group-engraver.cc (finalize): extra check; if process_music () is never called, then staffline_ == 0. * lily/simultaneous-music-iterator.cc (pending_moment): don't check run_always (). * VERSION: release 2.1.13 * input/regression/note-head-style.ly (pattern): cleanup. * mf/GNUmakefile ($(outdir)/$(redhat-package)): use http for downloading. * scm/output-lib.scm (shift-right-at-line-begin): new function: kludge rehearsalmark placement. * lily/grob-scheme.cc (LY_DEFINE): add ly:item-break-dir , ly:item? , ly:spanner? * lily/note-head.cc (internal_brew_molecule): only shorten ledger close to note head for accidentals. * lily/tuplet-bracket.cc (get_default_dir): new algorithm for tuplet direction. * mf/parmesan-heads.mf (overdone_heads): enlarge harmonic head. 2004-01-19 Han-Wen Nienhuys * lily/include/music-iterator.hh (class Music_iterator): add substitute_outlet() to iterator API. * lily/new-part-combine-iterator.cc (construct_children): New_pc_iterator: new class, better part combining. * lily/tie-column.cc (werner_directions): new function * lily/tie.cc (set_direction): call Tie_column::set_direction () * lily/axis-group-engraver.cc (process_acknowledged_grobs): give empty objects group spanner as parent * lily/tuplet-bracket.cc (calc_position_and_height): check musical slope against graphical slope. * lily/ottava-bracket.cc (brew_molecule): support minimum-length for ottava bracket. * lily/side-position-interface.cc (general_side_position): opps. reinstate *dir. * lily/parser.yy: plug many memory leaks. We're down to 4 for each parser run. * lily/tuplet-bracket.cc: remove calc_dy (). * Documentation/user/refman.itely (Balloon help): document balloon help 2004-01-19 Jan Nieuwenhuizen * scm/document-backend.scm (check-dangling-properties): Grob properties are defined define-grob-properties.scm. 2004-01-19 Han-Wen Nienhuys * VERSION: release 2.1.12 * scm/define-grobs.scm (all-grob-descriptions): larger font for ChordName * scm/new-markup.scm (sub-markup): sup & super: make smaller in relation to surroundings. * lily/tuplet-bracket.cc (calc_position_and_height): add staff Y-extent to the note-extents: stay clear of the staff. 2004-01-18 Han-Wen Nienhuys * Documentation/user/GNUmakefile ($(outdir)/lilypond/lilypond.html): posix conforming globs. Link iso. copy. * stepmake/stepmake/metafont-rules.make: remove --keep-trying. * lily/separating-group-spanner.cc (set_spacing_rods): add padding. * mf/,scripts/,make/,ly/,scm/: remove AsciiScript remnants. * lily/lily-guile.cc (robust_scm2double): new function. Use throughout. * lily/line-interface.cc (line): remove thickness from calling interface. * lily/hairpin.cc: use Line_interface * lily/line-interface.cc: new file. Line_interface for everything with dotted/dashed lines. * lily/tuplet-bracket.cc (make_bracket): use Line_interface. * lily/ottava-bracket.cc (brew_molecule): new file, separate routine for constructing ottava brackets. * lily/ottava-engraver.cc (acknowledge_grob): hang the bracket on the note heads. * Documentation/user/internals.itely (Engravers and performers): fix broken link. * scm/music-functions.scm (make-mark-set): new function. * lily/lookup.cc: remove Lookup::horizontal_slope (): it is functionally identical to beam. * lily/mensural-ligature.cc (brew_flexa): replace horizontal_slope () with beam (). * Documentation/user/refman.itely (Rehearsal marks): document new functionality. * input/regression/rehearsal-mark-number.ly: new file. * input/regression/rehearsal-mark-letter.ly: new file. * scm/translation-functions.scm (number->mark-string): new function (format-mark-letters): new function (format-mark-numbers): new function * lily/mark-engraver.cc (process_music): rehearsalMark is now integer; formatting is done through markFormatter property. * scm/define-translator-properties.scm: fold all *-done properties into positioning-done. * lily/beam.cc (position_beam): new function (brew_molecule): make sure that positions are calced before making the molecule. * scm/output*.scm (beam): take 4th argument for function. * ps/music-drawing-routines.ps: take blot as 4th argument. * lily/beam.cc (brew_molecule): fix beam offsets: overlap with the stem to avoid small dents. 2004-01-17 Han-Wen Nienhuys * VERSION: release 2.1.11 * input/regression/balloon.ly: new file. * lily/balloon.cc (brew_molecule): new file: draw boxes around objects, and make help texts. * scm/new-markup.scm (parse-simple-duration): parse duration string to log & dots. (Thanks Nicolas!) * scripts/convert-ly.py (FatalConversionError.sub_note): add \note rule. 2004-01-17 Heikki Junes * buildscripts/lilypond.words.py: remove unused files (THANKS Werner Lemberg). * THANKS: alphabetic order. 2004-01-16 Han-Wen Nienhuys * input/regression/note-head-harmonic.ly: new file. * Documentation/user/internals.itely (Technical manual): explain difference between music, translation, layout. * mf/parmesan-heads.mf (overdone_heads): add 0harmonic head. * scm/output-ascii-script.scm (bracket): rounding bfs. * scripts/convert-ly.py (conv): add \include "paper" rule. * ly/paper*.ly: remove files. * scm/paper.scm (set-staff-size): new function: set default staff-size. * scripts/convert-ly.py (conv): add conversion rule. * lily/music-output-def.cc (LY_DEFINE): ly_output_def_scope: new function. * scm/paper.scm: new file. (set-staff-size): new function (set-paper-size): new function * lily/parser.yy (music_output_def_body): restructure definition, so first Scheme statement in \paper also happens in new scope. * lily/system.cc (post_processing): move uniquify_list () to dumping molecule stage. * ly/engraver-init.ly: set barCheckSynchronize to #f. Warning: this will mess up scores that use barchecks to shorten measures. * mf/feta-bolletjes.mf (overdone_heads): make note heads rounder at 20pt too. * Documentation/user/tutorial.itely (Printing lyrics): document \lyricsto * lily/my-lily-lexer.cc: \newaddlyrics -> \lyricsto * Documentation/user/refman.itely (Fermatas): document \lyricsto * lily/new-lyric-combine-music-iterator.cc (process): don't crash if Voice is not found. * VERSION: release 2.1.10 * input/{test,regression}/: remove old-relative * lily/lexer.ll: add empty markup signature. * scm/new-markup.scm (markup-functions-and-signatures): reinstate strut markup * lily/parser.yy (markup): MARKUP_HEAD_EMPTY * scm/define-translator-properties.scm: update melismata property doco. * lily/system.cc (output_lines): revert uniquify_list() patch, strange side effects seen. * lily/line-spanner.cc (dashed_line_molecule): return nothing if dash-period < 0. * scm/midi.scm (instrument-equalizer-alist): fix equalizer setting for flute. 2004-01-15 Han-Wen Nienhuys * input/regression/*.ly: use newaddlyrics iso. addlyrics * input/regression/lyrics-multi-stanza.ly (texidoc): remove file. * lily/lyric-extender.cc (brew_molecule): behave decently in case of line breaks. (brew_molecule): add padding to left, not right. * lily/system.cc (uniquify_list): new function (output_lines): uniquify_list () on all-elements. This fixes double symbols in the output. * lily/beam.cc (rest_collision_callback): don't move anything if staff-position is set. * input/regression/rest-pitch.ly (texidoc): add rest under beam. * lily/system.cc (typeset_grob): warn if adding twice. * lily/sequential-iterator.cc (run_always): implement run_always(). (also in other files.) * input/mutopia/F.Schubert/standchen.ly: use newaddlyrics. * lily/event.cc (to_relative_octave): add octave-check. * Documentation/user/refman.itely (Line breaking): add noBreak. * scm/new-markup.scm (normalsize-markup): add function. (sans-markup): new function. * lily/beam-engraver.cc (valid_end_point): opps, beam-stop-events come earlier nowadays. This fixes beams on grace notes. * scm/music-functions.scm (direction-polyphonic-grobs): new variable, share between override and revert. This fixes script directions in polyphonic sections. (backportme) 2004-01-14 Han-Wen Nienhuys * lily/text-spanner.cc (brew_molecule): don't do shorten-pair for breakpoints. * lily/break-align-interface.cc: add doco * Documentation/user/refman.itely (Rehearsal marks): add index marks. 2004-01-13 Han-Wen Nienhuys * VERSION: release 2.1.9 * scm/document-markup.scm (markup-doc-node): add note about naming. * scm/new-markup.scm (left-align-markup): bugfix. * Documentation/user/refman.itely (Ottava brackets): more doco for ottava. * lily/side-position-interface.cc (out_of_staff): also do out_of_staff() correctly for d == DOWN. * lily/text-spanner.cc (brew_molecule): only put vertical line and horizontal line if they move to the right. * scm/define-grobs.scm (all-grob-descriptions): set text-repeat-if-broken for ottava spanner * lily/text-spanner.cc (brew_molecule): text-repeat-if-broken property. * mf/feta18.mf: design size is 18 not 22.5 * lily/new-lyric-combine-music-iterator.cc (process): new file. Add a single LyricsVoice to a melody. Melismata may be set individually. * input/regression/lyric-combine-new.ly: new file. Demo \newaddlyrics. * lily/dot-column.cc: add stdio.h 2004-01-12 Han-Wen Nienhuys * lily/item.cc: documentation for break-visibility (Thanks, John). 2004-01-11 Han-Wen Nienhuys * lily/bar-line.cc (compound_barline): add bartype : (dotted). * lily/translator-def.cc: rename Translator_def to Context_def. * Documentation/user/internals.itely (Lexical details): clarify string def. * Documentation/user/refman.itely (Rhythmic music): add link to RhythmicStaff 2004-01-10 Han-Wen Nienhuys * lily/translator.cc: document start_translation_timestep() * scm/output-tex.scm (tex-encoded-fontswitch): use round for rounding (inexact->exact yields rationals) * lily/*.cc: remove superfluous start_translation_timestep() calls. * lily/translator-group.cc (get_simple_trans_list): new function; construct simple_trans_list_ lazily. 2004-01-10 Jan Nieuwenhuizen * lily/paper-outputter.cc (output_scope): Check if number before checking exact (guile cvs). * scm/*: Escape backslashes in scheme strings (guile cvs). 2004-01-10 Han-Wen Nienhuys * Documentation/user/refman.itely (Tablatures basic): annotate seealso sections. * lily/*.cc: cleanup of engraver initialize() functions. * lily/repeat-acknowledge-engraver.cc (start_translation_timestep): remove first_b_ * lily/tab-note-heads-engraver.cc: listen to string number events inside < > too. (backportme). * Documentation/user/refman.itely (Text scripts): add fatText to index. 2004-01-09 Han-Wen Nienhuys * VERSION: 2.1.8 * stepmake/bin/add-html-footer.py (built): add Wiki links to footer. * lily/parser.yy (translator_mod): allow \with { \remove .. } * lily/bar-check-iterator.cc (process): only warn if barCheckLastFail was changed. * scm/define-translator-properties.scm (barCheckLastFail): add property. * lily/main.cc (main_prog): print summary of failed files. * lily/axis-group-engraver.cc: move all spanner creation to process_music (). Now staffs can be adjusted with \override too. (Jan, you are a brilliant programmer!) * lily/chord-tremolo-engraver.cc (try_music): fix spurious warning. 2004-01-09 Mats Bengtsson * Documentation/user/tutorial.itely (Integrating text and music): Show the commands to produce a PDF as well. 2004-01-08 Han-Wen Nienhuys * lily/translator-def.cc (get_translator_names): accept user tweaks too. * mf/feta-bolletjes.mf (overdone_heads): oops, slashes are twice as big as normal heads. * input/*ly: run convert-ly * lily/tuplet-bracket.cc (brew_molecule): call after_line_breaking () if dependencies are fluked. * scm/document-translation.scm (engraver-doc-string): update on latest string/symbol conventions. * lily/translator-ctors.cc: use Scheme_hash_table. * lily/translator-def.cc (get_translator_names): new function (add_context_mod): new function (get_accepted): new function * lily/parser.yy (context_mod): put all modifications of \translator { } in a single production, encode as SCM. * lily/translator-def.cc (add_context_mod): rewrite Translator_def to use read-only lists, so additions to the definition can be prepended easily. * Documentation/user/invoking.itexi (Editor support): add node on editor support. * Documentation/user/refman.itely (Bar check): add lyrics example of bar checks. * input/mutopia/F.Schubert/morgenlied.ly: add bar checks. * scripts/convert-ly.py (conv): add conversion rule. * lily/parser.yy: use \change iso. \translator for staff switch. * lily/my-lily-lexer.cc: add \change. * scm/define-translator-properties.scm (default-melisma-properties): add definition. 2004-01-07 Han-Wen Nienhuys * Documentation/user/refman.itely (Bar lines): clarification of systemStartDelimiter. * input/test/slur-shape.ly (x): remove file. * lily/translator-group.cc (apply_property_operations): new function. 2004-01-06 Han-Wen Nienhuys * lily/parser.yy (optional_prop_ops): allow \with { PROPERTYSETTINGS } following \context or \new. * lily/my-lily-lexer.cc: add \with. * lily/parser.yy (property_operation): clean up definition of property operations. (property_op_to_music): new function. (context_spec_music): new function * VERSION: 2.1.7 released. * input/regression/collision-merge-dots.ly: new file. * lily/note-collision.cc (check_meshing_chords): if merging heads, then kill the dots too. * lily/separating-line-group-engraver.cc (acknowledge_grob): set/unset breakableSeparationItem * lily/separation-item.cc (relative_width): add function. * scm/define-grob-interfaces.scm (only-prebreak-interface): add only-prebreak-interface * lily/system.cc (output_lines): only junk only-prebreak-interface grobs. * lily/multi-measure-rest-engraver.cc (stop_translation_timestep): read breakableSeparationItem * input/regression/multi-measure-rest-multi-staff-center.ly: new file. * lily/system.cc (output_lines): don't suicide Spacing_items. * lily/dot-column.cc (dot_config_badness): new function: select the best scoring dot configuration: dots should go close to the note heads, but be shifted up or down according to conventions. (print_dot_configuration): idem. (shift_one): idem (remove_collision): idem. * input/regression/dots.ly: add more test cases. 2004-01-06 Han-Wen Nienhuys * lily/include/scm-hash.hh (class Scheme_hash_table): idem. * flower/include/interval.hh: rename elem_b to contains * lily/tie.cc: change 'heads to 'head-pair. * lily/lyric-phrasing-engraver.cc (process_acknowledged_grobs): fill in 'heads field. * lily/lyric-extender.cc (brew_molecule): use heads for width, use minimum-length for short ones, and shorten so collisions with the next syllable are avoided. * lily/beam-quanting.cc (score_slopes_dy): add extra points for near-zero slopes. Only do DAMPING_DIRECTION_PENALTY for non-horizontal dy * lily/dots.cc: remove quantized_position callback. All Y positioning is done by dot-column.cc * lily/dot-column.cc (do_shifts): rewrite shifting routine: do exhaustive test of all dot positions. This fixes disappearing dots in dotted chords. 2004-01-05 Han-Wen Nienhuys * mf/feta-klef.mf (test_staff): fatten up G clef (test_staff): fatten up f clef. 2004-01-05 Jan Nieuwenhuizen * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: * input/les-nereides.ly: Use latin1 characters for title, like Morgenlied. 2004-01-05 Han-Wen Nienhuys * scm/font.scm (paper20-font-vector): add bold-narrow series (only cmb10). * lily/lyric-extender.cc (brew_molecule): add little space before extender line. * lily/beam-quanting.cc (score_forbidden_quants): check if outer stafflines fall in any beam gaps. * scm/define-grobs.scm (all-grob-descriptions): use bold-narrow for lyric texts. 2004-01-04 Han-Wen Nienhuys * VERSION: 2.1.6 released. * lily/beam-quanting.cc (quanting): add inspect-quants property: this shows the demerits of a user-defined beam position pair. * scm/define-grobs.scm (all-grob-descriptions): set beamed-extreme-minimum-free-lengths to a different value. * lily/scm-option.cc: add debug-beam scm-option * mf/feta-bolletjes.mf (overdone_heads): fix stem attachments. 2004-01-03 Han-Wen Nienhuys * lily/beam.cc (brew_molecule): rewrite debug output: split up scores. * scm/define-grobs.scm (all-grob-descriptions): use semi-fixed space after barline. * mf/feta-eindelijk.mf (tracingvariables): make top of 8th rest fatter. * lily/spacing-spanner.cc (breakable_column_spacing): take average of spacing wishes, not maximum. Only do this for delta-t == 0. In the other case, take standard column-breakable spacing. Do not warn about "no spacing wishes". This fixes wide spaces after barlines in very loose lines. * lily/multi-measure-rest.cc (big_rest): bugfix for blots. 2004-01-02 Han-Wen Nienhuys * lily/stanza-number-engraver.cc (acknowledge_grob): bugfix: acknowledge_grob lyric-syllable, not lyric-text. * lily/hyphen-spanner.cc (brew_molecule): rewrite. Make multiple dashes of length #'length separated by #'dash-period. * lily/lyric-extender.cc (brew_molecule): idem * lily/multi-measure-rest.cc (big_rest): idem * lily/system-start-delimiter.cc (simple_bar): idem * lily/bar-line.cc (simple_barline): use rounded box * VERSION: release 2.1.5 * Documentation/user/lilypond-book.itely (Integrating LaTeX and music): move note about dvips to more visible place. * lily/lyric-phrasing-engraver.cc: move from new-phrasing-engraver.cc, remove old cruft (syllable-group, lyric-phrasing-engraver.hh) * lyric-align.ly: remove file * scripts/convert-ly.py (FatalConversionError.func): add removal rule for automaticMelismata * ly/engraver-init.ly (ScoreContext): switch on New_phrasing_engraver by default. * lily/slur-engraver.cc (class Slur_engraver): process_acknowledged_grobs -> process_music. (try_music): signal melismata correctly. * lily/lyric-extender.cc (brew_molecule): cleanup. Junk word-space, right-trim-amount, and extend past right bound only for note heads. * lily/new-phrasing-engraver.cc (acknowledge_grob): add lyric-extender support: add note-heads to the extender automatically. * lily/parser.yy: extender is now post_event. * lily/accidental-engraver.cc (number_accidentals): remove spurious warning about non-parent contexts. * lily/music-output-def.cc (assign_translator): \translator { } for a Foo context implicitly redefines \FooContext. * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): many layout fixes. * lily/slur.cc (brew_molecule): don't use stafflinethickness doubly in slur weight. * input/regression/prefatory-spacing-matter.ly (TODO): add clef :| combination. * scm/define-grobs.scm (all-grob-descriptions): change clef - staffbar distance. * scripts/lilypond.py (global_latex_preamble): crank down size of the margins. Now there is a 12 mm top and bottom margin, which should correspond with the printable area of modern printers. This enlarges the music height of the printable page a little. * mf/feta-accordion.mf (accreg_pen): remove circled-R, BB and SB signs. Use \markup instead. (accreg_pen): tweak for accordeon asterisk. 2003-12-31 Han-Wen Nienhuys * lily/melisma-engraver.cc (try_music): use melisma_busy() * lily/lyric-engraver.cc (process_music): remove alignment kludge * lily/lyric-combine-music-iterator.cc (melisma_busy): new function. * lily/stanza-number-engraver.cc (acknowledge_grob): rewrite * scm/define-grobs.scm (all-grob-descriptions): change StanzaNumber description: make side support, i.s.o. breakable. use Instrument_name_engraver for texts in the margin. * scm/define-translator-properties.scm: remove melismaEngraverBusy, stz property. * *.cc: naming: change empty_b () into is_empty () * lily/self-aligment-interface.cc (aligned_on_parent): new function. * input/regression/lyric-phrasing-new.ly: new file. * lily/new-phrasing-engraver.cc (process_acknowledged_grobs): new engraver, redo lyric phrasing, but cleaner and simpler. Lyrics on melismata are now left-aligned. 2003-12-30 Han-Wen Nienhuys * input/mutopia/F.Schubert/GNUmakefile: add morgenlied.ly * mf/feta19.mf: remove. * mf/feta-klef.mf (test_staff): more tweaks * mf/feta-toevallig.mf: more small size tweaks. * mf/feta-eindelijk.mf (lower_brush): adjust quarter and shorter rests for smaller sizes. * mf/feta-bolletjes.mf: fix cross heads. * VERSION: release 2.1.4 * scripts/convert-ly.py (FatalConversionError.func): add rule for deprecated #'ancient font family * lily/mark-engraver.cc (process_music): only set rehearsalMark if it is a string or number. * scm/output-lib.scm (note-head-style->attachment-coordinates): change calling convention of stem-attachment function. * buildscripts/mf-to-table.py: read and dump WX/WY fields * mf/feta-autometric.mf: dump WX/WY fields too * mf/parmesan-heads.mf: idem. * mf/feta-bolletjes.mf (slash_slope): set WX/WY fields for attachment coordinates. * lily/note-head.cc (stem_attachment_coordinate): read stem attachment from the notehead glyphs WX/WY fields. * lily/include/font-metric.hh (struct Font_metric): add methods get_indexed_wxwy (), make a distinction between looking up by index and ASCII * mf/feta-bolletjes.mf: rewrite note head MF code. (test_outlines): make heads more rotund for smaller sizes. 2003-12-29 Han-Wen Nienhuys * mf/feta-params.mf (stafflines): fix stafflinethickness at 0.5 pt throughout. Font scaling fixes throughout. * mf/feta-sleur,slur.mf: remove. * mf/feta-slag.mf: rewrite. 2003-12-24 Han-Wen Nienhuys * VERSION: release 2.1.3 * stepmake/stepmake/toplevel-targets.make: remove pfa targets * make/lilypond.redhat.spec.in (Group): remove MAKE_PFA_FILES * lily/mark-engraver.cc (process_music): fix mark \default. (backportme) * stepmake/stepmake/automatically-generated.sub.make (default): use -n for head/tail commands. * lily/tie-engraver.cc (acknowledge_grob): make ties only for note heads with the same pitch. 2003-12-20 Han-Wen Nienhuys * lily/recording-group-engraver.cc (finalize): set protected_scm member to '() before finalizing. * lily/translator-group.cc (finalize): remove removal_processing () * lily/recording-group-engraver.cc: new engraver: record synchronized start & end times for each music object. * lily/parser.yy (toplevel_expression): execute score rendering during parsing. Cleanup output-filename handling; this is no longer done with global variables. (translator_spec_body): allow \type modification too. * lily/score.cc: ly:run-translator: new function (LY_DEFINE): ly:render-output new function. Separate interpreting and rendering, and make available as functions at Scheme level. 2003-12-17 Jan Nieuwenhuizen * scm/to-xml.scm (): New class to build xml-doc. (musicxml-node->string): (xml-node->string): (music-to-musicxml): New function. 2003-12-17 Han-Wen Nienhuys * VERSION: 2.1.2 released * lily/include/lily-guile.hh (SCM_VECTOR_REF): compat glue * scm/font.scm (paper20-font-vector): discouple font design sizes from sizes specified in .ly file: store all design sizes of a font in a single vector. * lily/font-select.cc (get_font_by_design_size): new function * mf/feta*,parmesan*: use 2^{1/6} as scaling factor for fonts. add parmesan,feta in sizes 14 and 18. * mf/feta-toevallig.mf: use blot diameter for double sharp. * lily/font-size-engraver.cc (acknowledge_grob): change definition of fontSize: this now sets font-size 2003-12-16 Han-Wen Nienhuys * VERSION: 2.1.1 released * Documentation/user/refman.itely (Tuning objects): add note about concurrent tweaks in different contexts. * lily/tie-engraver.cc (acknowledge_grob): use Staff_symbol_referencer::get_position iso. reading staff-position directly. * lily/piano-pedal-engraver.cc (create_bracket_grobs): don't take currentMusicalColumn as left span-point for bracket. The bracket is too long when there are accidentals. 2003-12-03 Mats Bengtsson * buildscripts/lilypond-profile.sh, buildscripts/lilypond-login.sh: Only set $TEXMF if necessary. Thanks to Reuben Thomas 2003-12-03 Heikki Junes * ly/italiano.ly: additions for semi-sharps and semi-flats by Eric Wurbel . 2003-11-17 Mats Bengtsson * scripts/midi2ly.py: Add space after chords. 2003-11-07 Heikki Junes * input/regression/{many}: add few @code{ ... }. 2003-11-05 Mats Bengtsson * mf/GNUmakefile (SAUTER_FONTS): Added cmss14, cmbxti6, cmcsc8, cmss14, cmtt5 and cmtt7. Removed cmbx5, cmbx6 (which are included in teTeX) and cmbxti14 which is not used in fonts.scm. 2003-11-04 Heikki Junes * lily/midi-item.cc: fine tune quarter tones. 2003-11-03 Heikki Junes * lily/midi-item.cc lily/include/midi-item.hh (get_fine_tuning): new function, warn how many cents are missing in fine tuning. 2003-11-01 Heikki Junes * input/bugs/rhytmicstaff-tie.ly: add file. * THANKS: Create skeleton for 2.1. 2003-10-31 Heikki Junes * input/test/bar-lines.ly (TODO): dashed "|". 2003-10-30 Heikki Junes * Documentation/user/refman.itely, input/regression/tie-accidental.ly, input/regression/tie-chord.ly: Fix spell for tying. * input/test/ly2dvi-testpage.ly: removed (renamed, see below). * input/test/lilypond-testpage.ly, Documentation/user/invoking.itexi: new file (renamed, see above). * Documentation/user/lilypond-book.itely * buildscripts/lilypond-login.sh elisp/lilypond-mode.el * input/example-1.ly input/example-2.ly input/example-3.ly * input/les-nereides.ly input/test/fill-a4.ly input/test/spacing-2.ly * input/test/title.ly po/cs.po po/da.po po/de.po po/es.po po/fi.po * po/fr.po po/it.po po/ja.po po/lilypond.pot po/nl.po po/ru.po * po/sv.po scm/output-pdftex.scm scm/output-tex.scm * scripts/lilypond-book.py scripts/lilypond.py * stepmake/bin/package-zip32.sh tex/lilyponddefs.tex tex/titledefs.tex * vimrc: replace ly2dvi with lilypond and remove silly comments. * Documentation/user/lilypond.tely: update version. * Documentation/user/{appendices,introduction,refman,tutorial}.itely: Remove extra spaces in each @node, fixes spaces. 2003-10-29 Mats Bengtsson * scripts/lilypond-book.py (output_dict): Add definition of \lilypondbook also for LaTeX output. Solves several bug reports. 2003-10-29 Heikki Junes * input/test/follow-thread.ly, input/test/polymetric.ly: Fix typos. 2003-10-24 Heikki Junes * input/test/transposition.ly: Fix key signatures, given in comments. 2003-10-23 Mats Bengtsson * scm/midi.scm (instrument-names-alist), Documentation/user/appendices.itely: Correct spelling of shakuhachi 2003-10-14 Mats Bengtsson * input/test/temporary-stave.ly (texidoc): New example based on an email question from Ralph Little. 2003-10-11 Han-Wen Nienhuys * VERSION: release 2.1.0 * lily/note-performer.cc (try_music): accept busy-playing-event. * lily/swallow-perf.cc (try_music): return false for busy-playing-event and melisma-playing-event. 2003-10-09 Han-Wen Nienhuys * scripts/etf2ly.py: Patch by Arvid Grotting for minor keys and << >> in \score. 2003-10-05 Jan Nieuwenhuizen * scripts/convert-ly.py (sub_chords): Bugfix: convert to -[, so that articulation_substitute will not move beam start again. (articulation_substitute): Bugfix: remove stray space so that new old chords ending '>>' does not get broken up. (sub_chord): Use TAB for indentation (not spaces). * elisp/lilypond-font-lock.el (LilyPond-mode-set-syntax-table): Bugfix for startup: Use ?^ instead of ?\^. 2003-10-02 Han-Wen Nienhuys * lily/lyric-combine-music-iterator.cc (Lyric_combine_music_iterator): change init order, to prevent GC segfaults. * lily/context-specced-music-iterator.cc (construct_children): only change translator if found. This fixes a core dump problem. 2003-09-30 Han-Wen Nienhuys * scm/slur.scm (default-slur-extremity-rules): use equal? for comparison. * mf/feta-bolletjes.mf: make hole in half note little smaller for stem attachment. * lily/stem.cc (brew_molecule): tweaks for new flag layout. * mf/feta-banier.mf: don't draw stem with flag, just small square attachment. * mf/feta-bolletjes.mf (slash_slope): remove ledger ending * mf/feta-banier.mf: remove upstem/downstem characters. * mf/feta-params.mf (stafflines): stems are 1.3 SLT. * ly/params-init.ly (blotdiameter): set blotdiameter to 2/3 of stafflinethickness (in the default) * lily/stem.cc (brew_molecule): use round_filled_box for stem. * lily/lily-guile.cc (parse_symbol_list): strip spaces at the end. * Documentation/topdocs/INSTALL.texi (Top): reorder. * scripts/convert-ly.py (conv): add up-to-staff conversion rule. * lily/include/directional-element-interface.hh: junk class, make {get,set}_grob_direction functions. * lily/slur.cc (get_attachment): do something sensible when attaching to stem without heads (eg. a rest). * lily/stem.cc: remove #'up-to-staff ; use #'stem-end-position for forcing up to staff. remove #'support-head property (brew_molecule): small cleanup. (flag): remove #'grace property. 2003-09-29 Jan Nieuwenhuizen * cygwin/postinstall-lilypond.sh: * cygwin/postremove-lilypond.sh: Bugfix for fonts remove command (Volker Zell). 2003-09-29 Han-Wen Nienhuys * scripts/lilypond-book.py: resurrect 'eps' option. (TexiPaper.to_eps): use -Ppdf for EPS files. * VERSION (PATCH_LEVEL): branch off 2.0, go to 2.1 in HEAD * scripts/lilypond.py (run_dvips): use -Ppdf for preview. * VERSION: release 2.0.1 * lily/bezier.cc (get_other_coordinate): change assert into warning. * lily/note-head.cc (internal_brew_molecule): make left protusion smaller, to accomodate for natural sign. (internal_brew_molecule): only do this when the accidental is close enough. (extent): new function * lily/skyline.cc (merge_skyline): new function (heighten_skyline): new function * lily/accidental-placement.cc (position_accidentals) (position_accidentals): fix todo. 2003-09-28 Han-Wen Nienhuys * input/test/+.ly (texidoc): put version number inline. * GNUmakefile.in: remove rsync-web target. * input/regression/bar-scripts.ly (onestaff): raggedright 2003-09-28 Han-Wen Nienhuys * lily/*.cc: remove #if 0'd code in couple of places. * lily/midi-stream.cc (operator <<): rewrite. * lily/note-head.cc (internal_brew_molecule): only make ledgers when the Staff symbol has lines. * ly/property-init.ly (arpeggioBracket): simplify * lily/translator-group.cc (execute_pushpop_property): use SCM_EQ_P for comparing keys. This fixes reverting auto-beam-settings. 2003-09-28 Jan Nieuwenhuizen * * lily/midi-stream.cc (operator <<): Also write MIDI string when midi_debug_global_b. (operator <<): Normalise loop. 2003-09-27 Han-Wen Nienhuys * scripts/lilypond.py (escape_path): revise. * scm/music-functions.scm (set-output-property): new function. 2003-09-27 Jan Nieuwenhuizen * cygwin/mknetrel: Next try in building doc on Cygwin natively; use addmakeflags again. * cygwin/lily-wins.py (escape_shell): New function; use it. * scripts/lilypond.py (escape_shell): Escape quotes and other spaces too. Do not escape escaping backslashes. * make/srcdir.make.in (web-install): Must call install-WWW now. * mf/GNUmakefile: resolve conflict: %list.ly is a target, not a dependency 2003-09-27 Han-Wen Nienhuys * scripts/lilypond.py (escape_path): escape quotes too. * Documentation/user/lilypond.tely (Unified index): rename Index to accomodate Windows breakage. * make/lilypond.redhat.spec.in (Group): remove out=www for web-install * mf/GNUmakefile ($(outdir)/%.afm $(outdir)/%.enc $(outdir)/%.tex $(outdir)/%.dep $(outdir)/%list.ly): list.ly is a target not a source. 2003-09-27 Jan Nieuwenhuizen * cygwin/mknetrel: Use EXTRABUILDARGS, EXTRAINSTALLARGS instead of addmakeflags. Build and install doc and web also when building on Cygwin. * mf/GNUmakefile: Bugfix. * GNUmakefile.in (web-install): Bugfix: set out prefix Similar to target web. * cygwin/lily-wins.py: Quote filename. 2003-09-26 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/$(redhat-package)): use passive ftp. 2003-09-25 Jan Nieuwenhuizen * cygwin/bug-lilypond-cygwin.sh: Add tests for registry settings. * configure.in: Require g++ > 3.0.4. * mf/GNUmakefile: Bugfix: Add list.ly target. * Documentation/user/GNUmakefile: Bugfix: list.ly target. * stepmake/stepmake/omf-targets.make (omf-local-install): Buxfix: make omf directory, add uninstall targets. 2003-09-25 Han-Wen Nienhuys * lily/tie-performer.cc (initialize): init prev_event * make/lilypond.redhat.spec.in: move site-start back to /usr/share. * lily/script-engraver.cc (make_script_from_event): don't crash on non-string articulation-type. * lily/new-fingering-engraver.cc (add_script): don't crash on 0 scripts (acknowledge_grob): warn about text script events. 2003-09-24 Heikki Junes * buildscript/lilypond.words: fix path for drums.scm. 2003-09-24 Han-Wen Nienhuys * lily/spacing-spanner.cc (note_spacing): don't make longer durations than measure-length. * VERSION: release 2.0.0 * GNUmakefile.in (rsync-web): version independent rsync target. * input/test/+.ly (texidoc): idem. * input/regression/+.ly: print version number. * input/regression/accidentals.ly (mel): shorten. * input/regression/accidental-octave.ly (texidoc): shorten. * input/regression/hairpin-dashed.ly (texidoc): docstring. * input/regression/completion-heads-polyphony.ly: octave * input/regression/beam-manual.ly: remove * input/regression/beam-chord.ly: remove * input/regression/grace-dynamic.ly: remove * input/regression/grace-volta-repeat.ly: octave fixes. * input/regression/hairpin-dashed.ly (texidoc): doc string. * lily/parser.yy (step_number): semitones for chord entry too. (make_chord_step): more robust code, semitones. * input/regression/breathing-sign-ancient.ly (texidoc): new file. * input/regression/breathing-sign.ly (texidoc): split ancient and normal breathing signs. * scm/define-grobs.scm (all-grob-descriptions): swap beamed-extreme-minimum-free-lengths and beamed-minimum-free-lengths; the 'extreme' case should allow shorter stems. This fixes forced directions on beamed 32nd and shorter notes. * ly/engraver-init.ly (ScoreContext): keyAccidentalOrder is in quartertones, not semitones. (NoteNamesContext): swallow more event types * Documentation/topdocs/NEWS.texi (Top): insert close brace. * VERSION (PACKAGE_NAME): release 1.9.10 2003-09-23 Han-Wen Nienhuys * lily/rhythmic-column-engraver.cc (process_acknowledged_grobs): set note head as cause of note-column. This gives a better error message. 2003-09-23 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi: Update emacs mode. 2003-09-23 Han-Wen Nienhuys * mf/GNUmakefile (pfa_warning): instruct * stepmake/aclocal.m4: typo. * Documentation/user/cheatsheet.itely: more verbose examples. * input/regression/clefs.ly: remove bogus docstring. 2003-09-23 Jan Nieuwenhuizen * GNUmakefile.in (SUBDIRS): Add elisp. * elisp/lilypond-mode.el: * elisp/lilypond-init.el: * elisp/lilypond-indent.el: * elisp/lilypond-font-lock.el: Move from top dir. * stepmake/stepmake/elisp-vars.make: New file. * config.make.in (elispdir): Add. * Documentation/topdocs/INSTALL.texi: Typo. * make/ly-rules.make: Test for files instead of touching void and ignoring errors. * GNUmakefile.in: * make/lilypond.redhat.spec.in: * debian/rules: Fix lilypond.words stuff a bit. For running from , adding (push "/share/lilypond/elisp" load-path) to your ~/.emacs.el should give you LilyPond-mode again. * scripts/lilypond-book.py (re_dict): Only fix texinfo @mbinclude regexp for DOS/Windows, we are too paranoid to fix others. 2003-09-23 Han-Wen Nienhuys * scm/chord-name.scm (natural-chord-alteration): no quarter tones. * input/test/chord-names-jazz.ly (banterProperties): fix * lily/parser.yy (bass_mod): bass figure alterations are semi tones, not quarter tones * lily/beam.cc (set_stem_lengths): only lengthen stems for gapped beams. * lily/beam-quanting.cc (score_forbidden_quants): divide demerit by beamcount. * buildscripts/lilypond-profile.sh (Error): more zsh stuff: print a warning that the warning may erroneous. * Documentation/topdocs/INSTALL.texi (Top): add note about get-pfa target. * mf/GNUmakefile: add get-pfa, get-debian-pfa, get-rpm-pfa targets. * GNUmakefile.in ($(config_h)): config.h should depend on config.hh.in . (lilypond.words): remove fontball stuff. * stepmake/aclocal.m4: only print config.cache warning if it exists. * configure.in: remove pktrace reference. * GNUmakefile.in (rsync-web): permissions and ownership for website. * lily/volta-engraver.cc (staff_eligible): new function. (stop_translation_timestep): kill off spanners if not eligible. * VERSION (PATCH_LEVEL): release 1.9.9 * input/regression/beam-quanting-32nd.ly (texidoc): new file * lily/beam-quanting.cc: tune down SECONDARY_BEAM_DEMERIT, so stem length is more important than forbidden quants. 2003-09-23 Heikki Junes * buildscripts/lilypond.words: order words in search order, add lilypond.words.vim to be generated. * lilypond.vim: use lilypond.words.vim for keyword matching. * lilypond-mode.el: use search order. fix word selection rules. * lilypond-font-lock.el: fix fontifying long durations. * Documentation/topdocs/INSTALL.texi: doc lilypond.words.vim. 2003-09-22 Jan Nieuwenhuizen * cygwin/mknetrel: Remove PYTHONPATH and manpage workarounds. * stepmake/stepmake/generic-targets.make: * stepmake/stepmake/bin/make-version.py: * stepmake/aclocal.m4: * make/stepmake.make: * make/toplevel-version.make: Build fixes: remove last traces of VERSION/PACKAGE_NAME/LILYPONDPREFIX experiment. * lily/beam.cc: Add gap-count property. 2003-09-22 Han-Wen Nienhuys * scm/define-grob-properties.scm (gap-count): add gap-count * make/lilypond-vars.make: add /lilypond to LILYPONDPREFIX 2003-09-22 Jan Nieuwenhuizen * cygwin/mknetrel.doc: Typo. * buildscripts/make-font-dir.py (Font_info): Build fix: add 'ss' * make/lilypond-vars.make (PYTHONPATH): srcdir build fix. 2003-09-22 Mats Bengtsson * scripts/lilypond.py: add support for 'legal' and 'tabloid' paper sizes. Remove support for 'ledger'(=tabloid+landscape). 2003-09-22 Han-Wen Nienhuys * mf/GNUmakefile ($(outdir)/%.pfa): break apart one-big-rule for sauter PFAs. * configure.in: remove VERSION stuff once again. * scm/font.scm (paper20-style-sheet-alist): add cmss entries. * scm/define-grobs.scm (all-grob-descriptions): use sans family for chord names. * mf/GNUmakefile: always trace pfa fonts. (SAUTER_FONTS): add cmss[567] too fonts * configure.in: require mftrace. * lily/staff-performer.cc (new_instrument_string): don't look at instrument property. * lily/lily-guile.cc: renaming, ly_dir_p is the Scheme function, is_direction is the C++ one. Similar for ly_axis_p and ly_number_pair_p 2003-09-21 Jan Nieuwenhuizen * lily/beam.cc (brew_molecule): read gap-count to determine number of tremolo (gapped) beams. * lily/chord-tremolo-engraver.cc (acknowledge_grob): repeats shorter than 1/8 * flower/include/array.hh (default_compare): new function * cygwin/mknetrel: Native fixes. * cygwin/GNUmakefile (EXTRA_DIST_FILES): Add mknetrel.* 2003-09-20 Jan Nieuwenhuizen * Documentation/topdocs/NEWS.texi: Add note about .ly double click feature for Windows. * stepmake/stepmake/generic-vars.make: Cygwin fix from stable. * cygwin/mknetrel: Updates for native use on Cygwin. * lily/parser.yy: Compile fix: add stdio.h for snprintf. * stepmake/stepmake/help2man-rules.make: * cygwin/mknetrel: Bugfix for manpages. * GNUmakefile.in (SUBDIRS): Use plain srcdir stepmake instead of $(builddir). Stepmake is a normal subdirectory now, that is not configured. Another srcdir build fix. * Documentation/topdocs/INSTALL.texi, buildscripts/lilypond.words.py, lilypond-font-lock.el, lilypond-init.el, lilypond-mode.el, debian/rules, make/lilypond.{redhat,madrake,suse}.spec.in, vimrc: rename generated file lilypond.words to lilypond.words.el. 2003-09-20 Heikki Junes * ly/chord-modifiers-init.ly, lilypond.vim: updates for vim. * GNUmakefile.in, buildscripts/lilypond.words: give only path in GNUmakefile.in. 2003-09-19 Jan Nieuwenhuizen * stepmake/stepmake/help2man-rules.make: Allow manpages to fail when cross building. * configure.in: srcdir build fix. * cygwin/GNUmakefile: * cygwin/lily-wins.py: * cygwin/postremove-lilypond.sh: * cygwin/postinstall-lilypond.sh: Merge from stable. * cygwin/bug-lilypond-cygwin.sh: s/lilypond/lilypond-bin, s/ly2dvi/lilypond/. 2003-09-19 Han-Wen Nienhuys * lily/slur.cc (after_line_breaking): only set control points if none supplied yet. * input/test/slur-manual.ly: new file. * scripts/convert-ly.py (FatalConversionError.sub_chords): convert << >> chords too. * VERSION (PACKAGE_NAME): release 1.9.8 * scripts/lilypond.py (escape_path): escape spaces in directory names * input/test/text-spanner.ly: fixes. 2003-09-19 Heikki Junes * buildscripts/lilypond.words.py: add drum names as note names to Emacs-mode. 2003-09-19 Han-Wen Nienhuys * input/regression/hairpin-dashed.ly: new file. * scripts/convert-ly.py (conv): warn about dash-length. * lily/dynamic-engraver.cc (try_music): end (de)crescendo automatically if we get a new one. * lily/lookup.cc (dashed_line): new function * lily/line-spanner.cc (dashed_line_molecule): cleanups. Use dash-fraction. 2003-09-18 Heikki Junes * buildscripts/lilypond.words.py: extract note names. * lilypond-mode.el: take note names from lilypond.words -file. small fix in the use of string-match. * lilypond-font-lock.el: use lilypond.words for note names, add maxima to note a duration. 2003-09-18 Han-Wen Nienhuys * lily/breathing-sign.cc: remove railtracks() function. * input/regression/arpeggio-bracket.ly (texidoc): add file. * lily/arpeggio.cc (brew_chord_bracket): clean-up (brew_molecule): bugfix don't make arpeggio shorter when arpeggio-direction is set. * debian/rules: small corrections in the (Pedro K) * Documentation/user/tutorial.itely (Tutorial): use lyinc in examples. * lily/auto-beam-engraver.cc (process_music): end/junk beam if special (repeat) bar comes along. * input/regression/auto-beam-bar.ly: update. * scripts/lilypond-book.py (output_dict): remove support for the EPS option. * scm/define-grobs.scm (all-grob-descriptions): add X-extent for VerticalAlignment and VerticalAxisGroup this fixes the size computations for the entire system. * input/les-nereides.ly (bass): remove superfluous fontSize. * scripts/lilypond-book.py (make_lilypond_file): \lilypondfile{} causes directory of file to be added to include path. * input/regression/beam-break.ly: test single stem beams. * input/regression/system-start-bracket.ly: fix. * lily/beam.cc (set_stem_lengths): single-stem-beam fix. * stepmake/stepmake/c-rules.make ($(outdir)/%.c): use -o for flex. * lily/beam-quanting.cc (quanting): check french-beaming per stem. (score_stem_lengths): do something sensible for single stem beams. * lily/beam.cc (least_squares): add kludge for single stem beams. * scripts/convert-ly.py (FatalConversionError.sub_alteration): add keySignature to list of broken things. * input/regression/keys.ly: fix. * VERSION (PACKAGE_NAME): release 1.9.7 * Documentation/topdocs/NEWS.texi (Top): add quarter tones. * Documentation/user/refman.itely (Pitches): doc quarter tones. * lily/pitch.cc (LY_DEFINE): ly:pitch-quartertones: new function (quartertone_pitch): new function * mf/feta-toevallig.mf: add 3/4 sharp, 1/4 sharp, 1/4 flat, 3/4 flat. WARNING: FONT CHANGED. * ly/nederlands.ly: add -eh and -ih for quarter tones. * lily/accidental-placement.cc (add_accidental): support for quarter tones. * ly/LANGUAGEs.ly: use symbols for alterations. * mf/feta-toevallig.mf: change accidental codes. * scm/lily.scm (ly:get-option): switch on debugging only for --verbose. * lily/lily-guile.cc: remove ly:verbose? * lily/scm-option.cc (LY_DEFINE): add verbose to get-option. * lily/parser.yy (TODO): only do gh_call() for apply with procedure argument. * lily/tie-engraver.cc (start_translation_timestep): move melisma stuff in accordance with new timing of tie-events. * lily/my-lily-lexer.cc: remove \outputproperty * lily/melisma-engraver.cc (try_music): use melismaBusyProperties. * scm/define-translator-properties.scm (melismaBusyProperties): add melismaBusyProperties property. 2003-09-17 Han-Wen Nienhuys * input/test/ambitus-mixed.ly (texidoc): new file. * buildscripts/mutopia-index.py (find): prune debugging * lily/side-position-interface.cc: doc updates * Documentation/user/refman.itely: updates, tweaks. * lily/parser.yy (Simple_music): remove outputproperty * make/stepmake.make: use VERSION again; importing VERSION via autoconf dependencies is too hairy. 2003-09-17 Heikki Junes * lilypond-mode.el: allow `-' for keywords and identifiers. 2003-09-16 Han-Wen Nienhuys * VERSION: release 1.9.6 * lilypond-mode.el (LilyPond-command-alist): invoke lilypond iso. ly2dvi. * Documentation/user/*.itely: fixes everywhere * lily/completion-note-heads-engraver.cc: rewrite engraver: produce ties from the engraver itself, do not broadcast TieEvent. * lily/my-lily-lexer.cc: remove pitch & duration. * lily/parser.yy (TODO): remove \pitch and \duration * input/test/explicit.ly: remove file. * Documentation/user/refman.itely (Pitches): remove \pitch \duration command. 2003-09-16 Heikki Junes * buildscripts/lilypond.words.py: add all slur types to Emacs insertion menu, suppose everything is postfixed by dropping unnecessary `-' -marks. 2003-09-15 Han-Wen Nienhuys * lily/stem.cc (get_default_stem_end_position): lengthen stems for tremoloed stems. * lily/stem-tremolo.cc (brew_molecule): position tremolo next to head for flagged stems. * lily/stem.cc (get_default_stem_end_position): futz with extra stem length if there is a stem tremolo. * lily/tuplet-bracket.cc (brew_molecule): don't print bracket when it would be too small. * lily/font-metric.cc: return #f for non-existent glyph. * VERSION (MY_PATCH_LEVEL): read VERSION; version number is now exported through config.make. * input/regression/clef-oct.ly: new file. * scm/clef.scm (make-clef-set): use regexps, support arbitrary transposition. * input/template/*.ly: remove old relative. * ly/english.ly: add X names for double sharp. 2003-09-14 Han-Wen Nienhuys * lily/font-select.cc: new file handle font selection routines. * lily/parser.yy: add ; (Patrick Atamaniuk) * input/test/time-signature-double.ly: use markups for double time sigs. * scm/chord-name.scm: remove new-chord-name-brew-molecule ; use ChordNames.SeparationItem #'padding for adjusting space after chords. * lily/music-output-def.cc (LY_DEFINE): new function ly:paper-lookup. * mf/parmesan-clefs.mf: use # quantities for char_box offsets. Fixes overflow errors in the PFA. * scm/new-markup.scm (strut-markup): change calling interface for markup. Pass paper-def, not grob. This would allow \markup to be used separately from grobs. * lily/paper-def.cc: new function ly:paper-font; this function replaces ly:get-font. * lily/include/font-interface.hh (struct Font_interface): take Paper_def iso. Grob for get_font(). 2003-09-14 Graham Percival * Documentation/user/ tutorial.itely, refman.itely: add warning about \key and accidentals. 2003-09-14 Han-Wen Nienhuys * scm/new-markup.scm (musicglyph-markup): undefine font-name. * Documentation/user/*.itely: manual tweaks 2003-09-13 Juergen Reuter * mf/parmesan-clefs.mf: still more set_char_box() fixes and code cleanup; bugfix: exact_center * Documentation/user/refman.itely: added more documentation on ambitus according to recent questions on lilypond-user list 2003-09-12 Han-Wen Nienhuys * input/regression/ottava.ly (texidoc): demo 15ma too. * GNUmakefile.in ($(outdir)/VERSION): add VERSION target * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly (sarabandeA): octave fixes. 2003-09-10 Han-Wen Nienhuys * lily/lexer.ll: add \r to the rules for newlines; this fixes problems on older Mac editors. 2003-09-12 Juergen Reuter * mf/parmesan-clefs.mf: more set_char_box() fixes and code cleanup 2003-09-11 Juergen Reuter * mf/parmesan-custodes.mf, mf/parmesan-heads.mf, mf/parmesan-clefs.mf: added comments on character alignment and set_char_box() conventions * mf/parmesan-custodes.mf, mf/parmesan-clefs.mf: fixed more set_char_box()'s * mf/parmesan-clefs.mf: vaticana: adjusted stem width 2003-09-10 Heikki Junes * spec/lilypond.{mandrake,suse}.spec.in: update lilypond.words path. 2003-09-10 Juergen Reuter * mf/parmesan-custodes.mf: vaticana custos: bugfix: slightly shortened to avoid almost-collision with staff line; code cleanup; other custodes: fixed char boxes; code cleanup 2003-09-09 Han-Wen Nienhuys * configure.in: release 1.9.5 * scripts/lilypond.py (global_latex_preamble): only set twosideshift if 'twoside' is in latexoptions * stepmake/GNUmakefile.in: remove nested stepmake packaging stuff. * VERSION: remove * scripts/*2ly.py: update <> syntax 2003-09-09 Han-Wen Nienhuys * lily/chord-name-engraver.cc (process_music): add origin for chord name. * input/regression/chord-name-exceptions.ly (theMusic): add base too. * scm/chord-ignatzek-names.scm (ignatzek-chord-names): bugfix: do bass notes for exceptions too. * scm/define-grobs.scm (all-grob-descriptions): rename HaraKiriVerticalGroup to RemoveEmptyVerticalGroup * scm/define-grob-properties.scm (remove-first): add remove-first property for orchestral scores. * Documentation/user/*.itely: switch <<>> and <> * lily/glissando-engraver.cc (process_music): bugfix: move line to last_line only once. This fixes the two consecutive glissandi problem. 2003-09-09 Juergen Reuter * lily/vaticana-ligature-engraver.cc: bugfix: fixed programming error message "flexa-width undefined" * lily/vaticana-ligature-engraver.cc, lily/gregorian-ligature.cc, lily/include/gregorian-ligature.hh: print warning when ignoring head prefixes on flexa shapes * lily/vaticana-ligature-engraver.cc: bugfix: always add an extra space before a series of inclinatum heads * lily/vaticana-ligature-engraver.cc, lily/gregorian-ligature.cc, lily/include/gregorian-ligature.hh: junked AFTER_VIRGA; small cleanups * mf/parmesan-custodes.mf: redesigned custos; fixed stem length and char_box 2003-09-08 Juergen Reuter * input/regression/breathing-sign.ly: tiny fixes * lily/mensural-ligature.cc: renamed stem->cauda/join to avoid semantical collision with vaticana ligatures * lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc, scm/define-grob-properties.scm: bugfix: semantics of delta_pitch now consistent with mensural ligatures * lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc, mf/parmesan-heads.mf: bugfix: length of cauda of flexa depends on context pitches and staff position; dto. for virga stem; removed obsolete virga and clivis characters from parmesan font (WARNING: font changed) * mf/parmesan-heads.mf, mf/parmesan-clefs.mf, mf/parmesan-timesig.mf: fixed several set_char_box ()'s * lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc, scm/define-grob-properties.scm: consistency fix: renamed join_left->add_cauda * mf/parmesan-heads.mf: bugfix: cephalicus head: corrected appendix length; bugfix: yoffs_bt for reverse direction punctum characters * lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc: small cleanups; added more docu * lily/mensural-ligature-engraver.cc, lily/vaticana-ligature-engraver.cc, lily/coherent-ligature-engraver.cc: cleanup: moved delta-pitch computation to CoherentLigatureEngraver * ly/gregorian-init.ly, lily/gregorian-ligature.cc, scm/define-grob-properties.scm: bugfix: added missing linea and cavum properties; bugfix: removed dead semivocalis property * mf/parmesan-heads.mf: bugfix: linea punctum: vertical lines length; redesigned quilisma, stropha and auctum * ly/engraver-init.ly, scm/define-grobs.scm: use 0.6 as default line thickness * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf, Documentation/user/refman.itely: bugfix: introduced shifted epiphonus head to avoid collision with adjacent plica 2003-09-07 Han-Wen Nienhuys * scm/font.scm (paper20-style-sheet-alist): add smaller font sizes. * mf/GNUmakefile (SAUTER_FONTS): add smaller sizes. 2003-09-05 Han-Wen Nienhuys * Documentation/user/tutorial.itely (A lead sheet): remove duplicate chords. * Documentation/bibliography/computer-notation.bib (pages): reorganise. 2003-09-03 Han-Wen Nienhuys * Documentation/bibliography/computer-notation.bib (isbn): add xivcim publication. 2003-09-05 Heikki Junes * GNUmakefile.in: drop lilypond.words for generation. 2003-09-03 Heikki Junes * buildscripts/lilypond.words.py: take filename (also) from an arg. * GNUmakefile.in (README_FILES): put lilypond.words to $(outdir). 2003-09-02 Han-Wen Nienhuys * input/test/figured-bass-alternate.ly (fl): new file. * Documentation/topdocs/README.texi (Top): clarifications. * Documentation/bibliography/computer-notation.bib (isbn): add phd theses of Gieseking and Renz. * GNUmakefile.in (README_FILES): remove README.mandrake. 2003-09-01 Heikki Junes * buildscripts/lilypond.words.py: add file. Creates lilypond.words from source files and search patterns listed in the script. * GNUmakefile.in: add target `lilypond.words'. * lilypond.words: remove file, generated by `make lilypond.words'. * make/lilypond.{mandrake,redhat,suse}.spec.in: make lilypond.words. 2003-08-31 Heikki Junes * lily/parser.yy, lily/my-lily-lexer.cc: spell it acciaccatura. 2003-08-31 Han-Wen Nienhuys * VERSION: 1.9.4 released * scripts/convert-ly.py (FatalConversionError.figures_replace): rule for < > <-> << >> substitution * lily/lexer.ll: exchange meaning of << >> and < > * VERSION (PACKAGE_NAME): 1.9.3 released * stepmake/stepmake/help2man-rules.make ($(outdir)/%.1): build man pages unconditionally. 2003-08-30 Han-Wen Nienhuys * Documentation/user/music-glossary.tely (Top): small syntax fixes. * scm/music-functions.scm (remove-tag): filter \tagged music expressions. * input/regression/tag-filter.ly (texidoc): new file. * lily/parser.yy (post_event): add \tag #'symbol / \tag #'(symbol1 symbol2 .. ) etc. * scripts/convert-ly.py (FatalConversionError.conv): fingering convert rule. * Documentation/user/refman.itely (Fingering instructions): adjust manual. * lily/new-fingering-engraver.cc (position_scripts): don't crash for borderline cases (e.g. 1 fingering.) (position_scripts): revise interface, use fingerOrientations to set fingering positions. * scm/document-translation.scm (context-doc): add aliases to automated documentation. * make/lilypond-vars.make: remove stepmake compat glue. * make/generic-vars.make: remove cruft. * lily/main.cc (main): don't identify binary. 2003-08-29 Han-Wen Nienhuys * lily/include/translator.hh (class Translator): remove type_string_ , use symbol for context name throughout. Changes through whole source tree. * scripts/lilypond.py: rename ly2dvi.py to lilypond.py set PDF as default, and always make PDF. * lily/GNUmakefile (SUBDIRS): rename binary to lilypond-bin 2003-08-29 Heikki Junes * ChangeLog lilypond.words Documentation/topdocs/NEWS.texi Documentation/user/refman.itely input/regression/allfontstyle.ly input/regression/grace-types.ly: fix spelling for acciaccatura (Webster's 1913). 2003-08-29 Han-Wen Nienhuys * lily/main.cc (usage): adjust blurb, include url. * input/regression/breathing-sign.ly (texidoc): transpose up 2003-08-28 Juergen Reuter * input/regression/breathing-sign.ly: changed ancient examples to be relevant (by request of Han-Wen); updated BreathingSign text property according to new syntax. * ly/gregorian-init.ly: updated BreathingSign text property according to new syntax 2003-08-28 Han-Wen Nienhuys * Documentation/user/refman.itely (Clef): give example of G_8 clef. (Clef): index entries for clefs. * python/lilylib.py (system): remove errorlog files. 2003-08-28 Heikki Junes * lilypond.words: add \new and new graces. Add dynamics to menus keeping 1.8.x compatibility; after all the engraving relating to notes becomes postfixed `-' marks will be removed. 2003-08-28 Han-Wen Nienhuys * lily/molecule.cc (align_to): idem. * lily/molecule-scheme.cc: ly_align_to_x takes continuous dir argument. * ly/grace-init.ly (stopAcciaccaturaMusic): correct misspelling of accacciatura everywhere. * VERSION (PACKAGE_NAME): released 1.9.2 * GNUmakefile.in (EXTRA_DIST_FILES): dist lilypond.vim too. * scm/document-markup.scm (markup-doc-node): sort markup function list. * lily/paper-outputter.cc (output_version): change "Lily was here" into "Engraved by LilyPond" * lily/my-lily-lexer.cc (My_lily_lexer): don't crash on unquoted strings before \notenames. * lily/parser.yy (lyric_element): allow markup as lyric text. This increases the number of s/r reductions to 4. * scm/new-markup.scm (fraction-markup): \fraction command. * lily/lexer.ll: allow any string without \ { } # and " in \markup mode * lily/lookup.cc (round_filled_box): rename function. (LY_DEFINE): round-filled-box: change signature. * Documentation/user/refman.itely: revise section explaining grace notes. * lily/translator-scheme.cc (LY_DEFINE): add ! to ly:set-context-property * input/*/*.ly (vmus): use \new everywhere. * lily/my-lily-lexer.cc: add \accacciatura and \appoggiatura * ly/grace-init.ly (stopGraceMusic): add slurs on grace note by default * scm/music-functions.scm (set-stop-grace-properties) (set-start-grace-properties, add-grace-property): new functions for modular grace tweak control. * ly/engraver-init.ly (ScoreContext): new property graceSettings. 2003-08-28 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi: Explain install-pfa-fonts. * GNUmakefile.in (install-pfa-fonts): (get-pfa-fonts): New target. * stepmake/stepmake/toplevel-targets.make: Add pfa-fonts and install-pfa-fonts help. 2003-08-27 Han-Wen Nienhuys * lily/translator-scheme.cc (LY_DEFINE): ly:context-pushpop-property new function. (LY_DEFINE): new function ly:translator-find new function ly:translator? (LY_DEFINE): new function ly:context? * lily/translator-def.cc: remove Translator_def::apply_pushpop_property(). * python/lilylib.py (read_pipe): only store and display error log if verbose not set. (read_pipe): only display log if it contains something. 2003-08-27 Jan Nieuwenhuizen * Documentation/misc/GNUmakefile: Re-add. (TEXTS): Add CHANGES. 2003-08-27 Heikki Junes * lilypond.words: add \newcontext. 2003-08-27 Han-Wen Nienhuys * lily/tie-performer.cc (stop_translation_timestep): only flush tied_notes when we have actually made a tie. Fixes bugs with ties in polyphonic scores. 2003-08-26 Jan Nieuwenhuizen * stepmake/autogen.sh: Bugfix: copy aclocal.m4, autogen.sh also if they do not exist. 2003-08-26 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): released 1.9.1 * ly/engraver-init.ly (RemoveEmptyStaffContext): don't add Instrument_name_engraver * lily/tie-performer.cc (create_audio_elements): bugfix * Documentation/user/music-glossary.tely (Top): comment out font-style statements. * input/test/force-hshift.ly: revise example. * Documentation/bibliography/engraving.bib (note): typos. * configure.in: bump GCC requirements to 3.x * lily/include/audio-item.hh (class Audio_tie): rename note_l_drul_ to note_drul_ * lily/tie-performer.cc (class Tie_performer): patch for new ties. * lily/parser.yy (relative_music): whoops. All \relative were off by ... a lot .... Ahem. * scm/define-music-types.scm (music-descriptions): idem. * lily/beam-engraver.cc: move new-beam-event to beam-event * lily/tie-engraver.cc (class Tie_engraver): move New_tie_engraver to Tie_engraver * input/regression/bar-number.ly: remove unnecessary old-relative options. * Documentation/user/internals.itely (Creating contexts): document \newcontext * lily/parser.yy (Composite_music): add \newcontext * Documentation/user/refman.itely (MIDI block): add note about dotted tempos. * scm/font.scm: remove old markup legacy * GNUmakefile.in (web-clean): remake share/ after web-clean. * lily/breathing-sign.cc (brew_molecule): remove function * lily/text-item.cc: remove old-style markups. (interpret_markup): C++ version of markup function (brew_molecule): idem. * lily/my-lily-lexer.cc (start_main_input): define input-file-name as Scheme variable. * scripts/convert-ly.py (conv): dashes rule. Apply rule. * Documentation/user/lilypond-book.itely: syntax fixes. 2003-08-25 Han-Wen Nienhuys * VERSION (PACKAGE_NAME): release 1.9.0 * Documentation/user/lilypond-book.itely (Invoking lilypond-book): note about dvips. (Should backport.) * scripts/convert-ly.py (FatalConversionError.articulation_substitute): add convert-new-chords code. Remove convert-new-chords.py * Documentation/user/refman.itely (Octave check): document \octave. * Documentation/topdocs/NEWS.texi: add \octave, postfix and \relative changes. * lily/parser.yy (command_element): octave check: \octave PITCH checks that PITCH (without octave) yields PITCH (with octave) in \relative * lily/relative-octave-music.cc (to_relative_octave): octave check. * lily/scm-option.cc: ly:set-option now has the default argument #t. * lily/lexer.ll: add \renameinput * python/lilylib.py (command_name): robustifications. * scripts/ly2dvi.py (run_latex): use >& for redirection iso. of /dev/stderr. This is ash compatible. * ly/init.ly: add warning if compatibility was not necessary. * lily/scm-option.cc (LY_DEFINE): add ly:get-option * flower/include/string-handle.icc: formatting cleanups, rename references by ref_count_. 2003-08-25 Heikki Junes * make/lilypond.mandrake.spec.in: syncronize the spec file with Torbjorn Turpeinen (tobbe@nyvalls.se): fix group, update reqs, package libs separately, fix conflicting php variable out=/dev/vc/ invoking `unset out', declare menus, use only one icon-file, fix doc-path in menu. 2003-08-23 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.conv): typo * Documentation/misc/GNUmakefile: restore misc directory. * input/mutopia/J.S.Bach/bwv940.ly: add 1 petite prelude * input/mutopia/J.S.Bach/GNUmakefile (EXTRA_DIST_FILES): remove Petites-Preludes * input/test/partial-blank.ly (quickmeasure): syntax * lily/slur.cc (get_attachment): bugfix: don't crash on non-cons attachment property. * Documentation/user/refman.itely: remove superfluous -'s (Grace notes): ) fixes. * lily/music.cc: generic compress(), transpose() functions. Remove others. * lily/parser.yy (gen_text_def): remove support for #'(italic ) style markup entry. * lily/parser.yy: all articulations postfix; remove obligatory - for [, ) and \! * lily/music.cc (to_relative_octave): write generic to_relative_octave function; various relative cleanups. Hmmm. * lily/scm-option.cc: add options new-relative and old-relative * po/sv.po: new po file. * Documentation/user/refman.itely (Dynamics): website fixes. (should backport!) 2003-08-22 Heikki Junes * make/lilypond.mandrake.spec.in: declare version only once. 2003-08-22 Han-Wen Nienhuys * lily/simultaneous-music.cc (to_relative_octave): undo relative meaning for now. 2003-08-21 Han-Wen Nienhuys * input/mutopia/J.S.Bach/wtk1-fugue1.ly: updates * input/mutopia/J.S.Bach/wtk1-prelude1.ly: remove file * input/mutopia/F.Schubert/standchen.ly (trebleThrough): fixes * lily/simultaneous-music.cc (to_relative_octave): add Event_chord. * lily/music.cc (var): add ly:music-transpose function. * lily/parser.yy (pre_events): remove prefix articulations. * lily/music-sequence.cc (do_relative_octave): change relative meaning. * VERSION (MY_PATCH_LEVEL): open HEAD/1.9 branch. * Documentation/user/refman.itely (Text markup): add comment about markup in header. 2003-08-20 Han-Wen Nienhuys * lily/paper-outputter.cc (write_header_fields_to_file): only dump value if it is a string. * flower/include/dictionary.hh: remove. * Documentation/ChangeLog-1.5: add back old log. * Documentation/topdocs/INSTALL.texi (Top): explain how to get .pfas from a .deb. 2003-08-19 Han-Wen Nienhuys * Documentation/bibliography/engraving.bib: add entry for Jaschinski's Notation 2003-08-18 Han-Wen Nienhuys * Documentation/user/refman.itely (Beaming): add note about allowBeamBreak 2003-08-18 Juergen Reuter * lilypond.words, ly/engraver-init.ly, ly/params-init.ly: added GregorianTranscription contexts * ly/engraver-init.ly: vaticana contexts: minor fixes * Documentation/user/refman.itely (Ancient notation): added note on appendix length bug * input/puer-fragment.ly, input/test/gregorian-scripts.ly, input/test/vaticana.ly: use vaticana contexts; small fixes 2003-08-17 Jan Nieuwenhuizen * flower/hash.cc: Remove. * flower/include/dictionary.hh (V>): Compile fix: Remove assignment to (nonexistent?) hash_func_ identifier. * python/midi.c (midi_error, midi_warning): Use char const* for __FUNCTION__ argument. * python/gettext.py: Remove. We already require python 2.1, which includes gettext.py. * configure.in: Require python 2.1, as INSTALL.texi says. it. * Documentation/topdocs/INSTALL.texi: Add note to avoid bison versions 1.50 and 1.75. Remove note about lexer patch. 2003-08-16 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi: Update type1 font description to actual situation. Add comment about new font ball layout. * GNUmakefile.in (pfa-fonts): Create font-ball so that untar in $LILYPONDPREFIX suffices for installation. 2003-08-11 Jan Nieuwenhuizen * debian/control (Build-Depends): Add flex-old as alternative to flex. Deprecate bison 1.75. 2003-08-17 Juergen Reuter * lilypond.words, ly/engraver-init.ly, ly/params-init.ly: added Vaticana contexts * Documentation/user/refman.itely (Ancient notation): documented some bugs; tiny fixes; added docu on Vaticana contexts * gregorian-init.ly, ly/script-init.ly: moved ancient articulation scripts 2003-08-16 Juergen Reuter * Documentation/user/refman.itely (Ancient notation): added some introductory words; added section on ancient time signatures; added some @seealso and @refcommands; small fixes and beautifications 2003-08-15 Juergen Reuter * input/regression/note-head-style.ly: many fixes and updates * Documentation/user/refman.itely: added small sections on ancient accidentals, rests and flags; revised ancient note head section; small wording/spelling fixes * input/test/rests.ly: layout fixes 2003-08-14 Juergen Reuter * input/puer-fragment.ly: bugfix: central C position of do clef * ly/gregorian-init.ly: workaround: add small padding space before divisiones (the correct fix would be the spacing engine to handle this) 2003-08-13 Graham Percival * input/test/bar-lines-lyric-only.ly, boxed-molecule.ly, cue-notes.ly: minor fixes. 2003-08-13 Juergen Reuter * Documentation/user/refman.itely: bugfix: remove obsolete link to input/test/custos-style.ly * Documentation/index.html.in: bugfix: link to Tutorial.html * input/puer-fragment.ly: bugfix: assigment of syllables "no-bis" to neumes; bugfix: "et": epiphonus, not just a simple pes 2003-08-12 Heikki Junes * lilypond-mode.el: split `Insert Tag' if it is long enough. * lilypond.words: add new features: markup, column, center, \[ \]. 2003-08-10 Heikki Junes * Documentation/topdocs/NEWS.texi, DEDICATION, stepmake/bin/add-html-footer.py input/mutopia/J.S.Bach/baerenreiter-sarabande.ly input/mutopia/J.S.Bach/wtk1-fugue1.ly input/mutopia/J.S.Bach/wtk1-prelude1.ly Documentation/topdocs/INSTALL.texi: `bug'fix: a colon `:' is added (only) after a sentence which is complete; if the sentence is not ended a comma `,' or nothing is used. fix also spaces. 2003-08-08 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): change GUILE requirements to plain 1.6. * buildscripts/mutopia-index.py (read_lilypond_header): update mutopia-index.py to 1.4 syntax [sic] 2003-08-07 Heikki Junes * make/lilypond.mandrake.spec.in: remove menu, sync with redhat-spec. 2003-08-07 Han-Wen Nienhuys * Documentation/index.html.in: url for regression pdf * Documentation/user/cheatsheet.itely (Cheat sheet): single staff. * Documentation/user/tutorial.itely (Piano staves): s/staffs/staves/g * make/lilypond.redhat.spec.in (Buildrequires): texinfo >= 4.6 reqd. * VERSION: 1.8.0 released * GNUmakefile.in (local-WWW-post): footify build fix. * configure.in: require GUILE 1.6.4 * Documentation/user/GNUmakefile: don't copy *.png for lilypond-internals * GNUmakefile.in (local-WWW-post): move mutopia-index to toplevel local-WWW-post target. (rsync-web): add rsync-web target * Documentation/user/introduction.itely (Music notation and engraving): add neume example * input/puer-fragment.ly (cantus): add puer-fragment 2003-08-06 Jan Nieuwenhuizen * input/no-notation/midi-volume-equaliser.ly: Add volume setting to notes, so that equalizer is actualy being used. * scm/midi.scm (instrument-equalizer-alist): (absolute-volume-alist): Define public, so that user can copy or override. * lily/key-performer.cc (create_audio_elements): Check for minor key. Only if key is minor, set MIDI key to minor. 2003-08-06 Han-Wen Nienhuys * Documentation/user/refman.itely (Hiding staffs): fixes. * mf/feta-eindelijk.mf (tracingvariables): add TODO. * lily/system-start-delimiter.cc (after_line_breaking): retrieve vertical extents to deal with Hara kiri correctly. * input/regression/hara-kiri-short.ly: remove * input/regression/hara-kiri-pianostaff.ly: update test. * Documentation/user/*.tely: remove WEBTITLE * scm/output-tex.scm (comment): idem. * scm/output-pdftex.scm: remove GUILE 1.4 glue * scm/music-functions.scm (make-lyric-event): new function * scm/lily.scm (lilypond-version): new function * input/test/version-output.ly: new file. * Documentation/user/lilypond.tely: add version number to front-page. 2003-08-05 Jan Nieuwenhuizen * input/test/midi-scales.ly: Reformat to match midi2ly output again. 2003-08-05 Han-Wen Nienhuys * input/template/gregorian-transcription.ly (barTwo): syntax update. * Documentation/user/refman.itely (Hiding staffs): rename node. 2003-08-04 Han-Wen Nienhuys * input/regression/new-markup-syntax.ly (texidoc): remove molecule-callback override. 2003-08-04 Jan Nieuwenhuizen * input/les-nereides.ly: Mark tweaks with %tweak. * Debian patch, see debian/changelog (Anthony Fok). 2003-08-04 Jan Nieuwenhuizen * buildscripts/lilypond-profile.sh: Add workaround for zsh posix problem. 2003-08-04 Mats Bengtsson * Documentation/user/refman.itely (Text markup): Fix language bug. 2003-08-04 Han-Wen Nienhuys * input/* : postfix syntax fixes. * Documentation/user/refman.itely (Text markup): add note about raise/lower with ^ or _ . * po/fi.po: fix \\apply strings. * lily/parser.yy (open_event): warn for prefix articulations. 2003-08-04 Juergen Reuter * lily/all-font-metrics.cc (find_font): bugfix: apply Han-Wen's last fix also on parmesan font. 2003-08-03 Han-Wen Nienhuys * VERSION 1.7.30 released * GNUmakefile.in (EXTRA_DIST_FILES): remove lexer GCC patch. * buildscripts/mutopia-index.py (headertext): rewording 2003-08-02 Han-Wen Nienhuys * scm/new-markup.scm (strut-markup): new markup function. * scm/bass-figure.scm (make-bass-figure-markup): insert vertical space also when no accidental is there. 2003-08-02 Jan Nieuwenhuizen * input/les-nereides.ly: Updates. 2003-08-02 Heikki Junes * lilypond-mode.el (LilyPond-insert-tag-current): new function, which repeats the tag insertion selected from "Insert tag" menu. 2003-08-02 Han-Wen Nienhuys * lily/all-font-metrics.cc (find_font): load AFM files first only for feta fonts. This fixes problems with TeXlive and other TeX distros that include AFM files for the CM fonts. * scm/font.scm (qualifiers-to-font-name): remove. * lily/paper-def.cc: remove get_var. * input/trip.ly: remove file. * input/regression/spacing-note-flags.ly (raggedright): remove stafflinethickness * input/les-nereides.ly: update to new syntax, cleanups. 2003-08-01 Jan Nieuwenhuizen * Documentation/user/refman.itely: Clarify shortest-note problem of autobeamer. 2003-08-01 Heikki Junes * lilypond-mode.el: Add each word to regexps only once. * lilypond-mode.el (LilyPond-insert-tag): add new function, which is based on the syntax definitions in lilypond.words. Remove all LilyPond-insert-tag-* functions. Restructure LilyPond menu. LilyPond->Insert menu is generated by the entries in lilypond.words to which have been given a syntax definition. * lilypond.words: give syntax definitions (LilyPond-insert-tag) for \notes, \relative, \score, \simultaneous, \transpose. * lilypond-mode.el: allow non-alpha characters only in menu keywords. * lilypond.words: add useful `\context Staff =' and `\context Voice ='. * lilypond-mode.el: add menu keywords separately. * lilypond.words: post-syntaxed slur pairs and syntax for \times. 2003-08-01 Mats Bengtsson * Documentation/topdocs/INSTALL.texi (Top): Documentation of the current ugly installation method for PFA fonts. 2003-07-31 Heikki Junes * lilypond-mode.el: Junk LilyPond-quick-notes-insert; instruct to use LilyPond Quick Insert Mode by Nicolas Sceaux, instead. * Documentation/user/music-glossary.tely: update legato. 2003-07-30 Jan Nieuwenhuizen * lexer-gcc-3.0.patch: Remove. * lexer-gcc-3.1.sh: Disable FlexLexer.h massaging. 2003-07-30 Han-Wen Nienhuys * debian/rules (binary-arch): remove NEWS. 2003-07-30 Heikki Junes * buildscripts/{ many }, lily/main.cc, po/{ all }, scripts{ many }, stepmake/bin{ many }: polish the `--help's of different scripts; model taken from the core-utils of Linux. * flower/getopt-long.cc, python/lilylib.py: add space, see above. 2003-07-29 Han-Wen Nienhuys * flower/parse-afm.cc (parseCharMetrics): add warnings. * flower/libc-extension.cc: idem. * flower/include/libc-extension.hh: protect against isinf macros. 2003-07-29 Heikki Junes * { many }: Use two uppercase letters in LilyPond. * lily/main.cc, po/{ many }, scripts/{ many }: add verbs. * VERSION: 1.7.29 released. 2003-07-29 Han-Wen Nienhuys * lily/tie.cc: add TODO comment. * lily/bezier.cc: replace bezier-bow with bezier-sandwich. * scm/*.scm: remove bezier-bow. Use bezier-sandwich with rounded linejoins and linecaps. This fixes problems with occasional spikes on slur/tie endings. * input/regression/font-name.ly: don't use PS fonts for compatibility reasons. * mutopia/claop.py (accents): update to 1.8 * Documentation/user/music-glossary.tely (Top): remove 13pt. * Documentation/user/macros.itexi: don't color glossary links. * Documentation/user/invoking.itexi (Error messages): new section 2003-07-28 Han-Wen Nienhuys * input/regression/font-name.ly: add file. * scm/document-backend.scm (grob-doc): remove
from lilypond-internals * Documentation/topdocs/INSTALL.texi (Top): bump GUILE reqd version to 1.6.4 * lily/font-interface.cc (get_font): bugfix: take font-name from alist chain too. This fixes font-name override for \markup. 2003-07-28 Jan Nieuwenhuizen * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Remove icon. * input/test/polymetric-differing-notes.ly: Compile fix. 2003-07-28 Juergen Reuter * Documentation/user/refman.itely: fixed typo * lily/vaticana-ligature-engraver.cc: bugfix: insert extra space before flexa 2003-07-27 Heikki Junes * input/test/{ many }: search & fix some typos. 2003-07-27 Han-Wen Nienhuys * scripts/ly2dvi.py (include_path): use preview_resolution for PNG images. * scm/music-functions.scm (make-voice-props-set): set Script / TextScript dir for polyphony too. * scm/define-grobs.scm (all-grob-descriptions): decrease space before clef. * flower/libc-extension.cc (my_round): ANSI-C compatible rounding. 2003-07-27 Rune Zedeler * Documentation/user/refman.itely (Percussion): Small clarifications and fixes. * scm/drums.scm: Bugfix: Use string instead of symbol when naming threads. This fixes different heads playing simultaneously. 2003-07-27 Heikki Junes * Documentation/user/{ many }: increase readability (read through User manual from `one big page'). 2003-07-26 Han-Wen Nienhuys * input/test/polymetric-differing-notes.ly: add example with disparate note values. * input/test/polymetric.ly: rename from poly-metric * scripts/ly2dvi.py (include_path): bugfix: use outbase iso. outname. * mf/feta-klef.mf: clef fixes, remove left/right spacing. set G-clef bbox to real char extents. This fixes the G-clef being offset too much to the right. document perc clef offset. WARNING: FONT CHANGED. * Documentation/user/tutorial.itely (Tutorial): move menu. 2003-07-25 Han-Wen Nienhuys * buildscripts/lilypond-profile.sh (Error): trim error message. * Documentation/user/invoking.itexi (Invoking the lilypond binary): add note about path. * Documentation/user/macros.itexi: add @c at EOL, hopefully suppresses superfluous spaces. 2003-07-25 Jan Nieuwenhuizen * buildscripts/lilypond-profile.sh: Add documentation to error message. * make/srcdir.make.in (web-install): Use SRCMAKE, set outdir. 2003-07-25 Han-Wen Nienhuys * scripts/lilypond-book.py: HTML fixes (by Michael Ossmann ) * Documentation/bibliography/computer-notation.bib (pages): prune unscientific language. * Documentation/user/GNUmakefile: copy unsplit file to lilypond.html (idem for lilypond-internals). * buildscripts/mutopia-index.py (read_dict): remove "example file:" * Documentation/topdocs/NEWS.texi (Top): rewrite NEWS in texinfo. * python/lilylib.py (lilypond_version): 2.1 proof version check. * lily/staff-symbol-referencer.cc (LY_DEFINE): lrint, the final fix. 2003-07-25 Heikki Junes * Documentation/user/{ various }: bind text snippets with their examples, e.g. by punctuation: This is an example. 2003-07-25 Jan Nieuwenhuizen * ly/performer-init.ly (VoiceContext): Typos. * stepmake/stepmake/toplevel-targets.make (install): For srcdir builds, leave final-install to toplevel srcdir makefile. * make/srcdir.make.in (install): New target. 2003-07-24 Jan Nieuwenhuizen * ly/performer-init.ly (TabStaffContext, TabVoiceContext): Add. This fixes core dump on MIDI output (Simon Weatherill). * stepmake/stepmake/generic-targets.make (WWW-post): Oops, depend on local-WWW-post. 2003-07-24 Han-Wen Nienhuys * make/lilypond.redhat.spec.in: add dvips to reqs. 2003-07-24 Jan Nieuwenhuizen * make/srcdir.make.in (web): Add special web target. * stepmake/stepmake/generic-targets.make (WWW): Remove $(MAKE) from inner $(LOOP). * cygwin/mknetrel: Override $(webdir) (was: $(docdir)). * stepmake/stepmake/generic-targets.make (www-targets-help): * GNUmakefile.in (web-install): Install in $(webdir). * input/test/smart-transpose.ly (texidoc): texidoc compile fix. * cygwin/changelog: * cygwin/mknetrel: Update. * GNUmakefile.in (web-install): Rename (was: install-html-doc). (html-doc): Remove (use: web). * stepmake/stepmake/script-rules.make: * stepmake/stepmake/python-module-rules.make ($(outdir)/%.py): Fix $(config_make) dependencies for srcdir build. * stepmake/stepmake/generic-targets.make ($(config_make)): Fix target for srcdir build. * stepmake/make/stepmake.make: * make/srcdir.make.in: * GNUmakefile.in: * make/stepmake.make (config_make): Rename variable (was: configuration). 2003-07-24 Han-Wen Nienhuys * Documentation/user/internals.itely (Manipulating music expressions): run lilypond on example too. * flower/include/libc-extension.hh: move lrint define to header. bugfix. 2003-07-24 Jan Nieuwenhuizen * stepmake/GNUmakefile.in (STEPMAKE_TEMPLATES): * stepmake/stepmake/GNUmakefile (STEPMAKE_TEMPLATES): Add www (why do we recurse whole tree?). * GNUmakefile.in (html-doc): Resurrect. * Documentation/pictures/GNUmakefile (default, local-dist): Remove obsolete $(package-icon) dependency. 2003-07-24 Han-Wen Nienhuys * Documentation/user/refman.itely (Automatic staff changes): add seealso * Documentation/index.html.in: link to bigpage. * Documentation/user/tutorial.itely (Tutorial): streamline. * Documentation/index.html.in: url typo. * VERSION (PACKAGE_NAME): release 1.7.28 * python/lilylib.py (error_log): remove '/' from name. * input/regression/pedal.ly: remove; dups input/test/ * stepmake/stepmake/texinfo-rules.make: remove footify everywhere. * Documentation/index.html.in: python style doco index. * Documentation/{footer,header}.html.in (src): remove, * Documentation/pictures: remove all but lelie-logo.xpm. * stepmake/stepmake/texinfo-vars.make (MAKEINFO): unset LANG before running makeinfo. * lily/include/music-iterator.hh (IMPLEMENT_CTOR_CALLBACK): add @code{} 2003-07-23 Han-Wen Nienhuys * input/test/bar-number-regular-interval.ly: rename. * Documentation/user/*: various fixes. 2003-07-24 Heikki Junes * Documentation/{ many }: polish for update-all-menus. typos. * po/fi.po: fixes. * Documentation/topdocs/{README.texi,INSTALL.texi}: update links. * buildscripts/mutopia-index.py: polish. * input/regression/{ many }, input/test{ many }: polish texidocs. 2003-07-23 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.conv): rule for pedal-style * lily/text-spanner.cc (brew_molecule): use bracket-flare iso. edge-widen. * lily/piano-pedal-engraver.cc (process_music): change from process_acknowledged () * lily/piano-pedal-bracket.cc: new file. Change setup_pedal_bracket in after_line_breaking callback. Thoroughly cleaned up. * lily/text-spanner.cc (setup_pedal_bracket): cleanup. * input/regression/tuplets.ly (texidoc): rename file. * po/fr.po: update * buildscripts/lilypond-profile.sh: error message if script is not sourced. * lily/tuplet-bracket.cc (make_bracket): change edge-widen to bracket-flare (make_bracket): simplify code. * lily/parser.yy (verbose_command_req): catch typos in \key scale argument. * python/lilylib.py (lilypond_version_check): new function * scripts/lilypond-book.py (TexiPaper.incl_opt): idem * scripts/ly2dvi.py (run_lilypond): add version check. * scripts/lilypond-book.py (option_definitions): typo * scripts/ly2dvi.py (include_path): typo * make/lilypond.redhat.spec.in (Group): add INSTALL.txt * lily/parse-scm.cc (parse_handler): typo * Documentation/user/macros.itexi: use @heading for headings. * Documentation/user/refman.itely: updates, fixes. 2003-07-23 Heikki Junes * po/fi.po: add Finnish translations. fixes. * stepmake/stepmake/toplevel-targets.make: rpm-mandrake -> rpm-mdk. * lily/piano-pedal-engraver.cc: fixed warnings, got working syntax from lily/glissando-engraver.cc. 2003-07-23 Han-Wen Nienhuys * lily/volta-bracket.cc (brew_molecule): opps: only wipe number for non-first _broken_ bracket. * Documentation/user/refman.itely: corrections. 2003-07-22 Han-Wen Nienhuys * lily/new-fingering-engraver.cc (position_scripts): add heads to support of the fingerings. * po/fr.po: French translation update. * lily/parser.yy (Composite_music): add extra \ for "\apply" in strings. 2003-07-22 Jan Nieuwenhuizen * Documentation/user/introduction.itely: Small fixes. 2003-07-22 Heikki Junes * Documentation/topdocs/AUTHORS.texi: polish. 2003-07-22 Han-Wen Nienhuys * Documentation/user/introduction.itely: revise * Documentation/user/tutorial.itely: reorganise. * Documentation/topdocs/index.tely: remove. * Documentation/header.html.in: prune. * GNUmakefile.in: clean up web building. * stepmake/stepmake/generic-targets.make (WWW): add WWW as generic target. 2003-07-21 Heikki Junes * lilypond-font-lock.el: do not try to match two-char slurs \) \]. * lilypond-mode.el: turn on blink-matching-paren. 2003-07-21 Jan Nieuwenhuizen * scm/output-sodipodi.scm (svg-header): Fix typo. 2003-07-21 Han-Wen Nienhuys * python/lilylib.py (error_log): use mktemp iso. temp_dir. This fixes a security hole. * scripts/lilypond-book.py (original_dir): remove temp_dir * scm/document-translation.scm: use @code tags. 2003-07-20 Heikki Junes * lilypond-font-lock.el: do not try to match two-char slurs \( \[. * lilypond-mode.el: add a buffer-local post-command-hook to set context dependent syntax-table after each cursor event. Remove old stuff. XEmacs: turn on parenthesis highlighting in LilyPond-mode. * lilypond-indent.el: update comments. * Documentation/footer.html.in: add period. 2003-07-20 Han-Wen Nienhuys * make/lilypond.redhat.spec.in (Group): don't strip binary. * scm/document-translation.scm (document-property-operation): add @code{} tags. * VERSION (PACKAGE_NAME): release 1.7.27 * config.make.in: add PAPER variable * buildscripts/new-chords.py (help): add help text * Documentation/user/introduction.itely (Typography and program architecture): fixes. * Documentation/user/GNUmakefile (DVIPS_PAPERSIZE): set A4 paper for texinfo and dvips. This fixes problems with PDF output of the wrong size. * stepmake/stepmake/tex-rules.make ($(outdir)/%.ps): add DVIPS_PAPERSIZE variable * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add TEXINFO_PAPERSIZE variable 2003-07-19 Han-Wen Nienhuys * mf/feta-macros.mf: whoops: only draw lines for test situations. * mf/feta-toevallig.mf: lowres fixes. 2003-07-19 Jan Nieuwenhuizen * NEWS: Typo and fill-paragraph fixes. * flower/libc-extension.cc (lrint)[!HAVE_LRINT]: Use round () and cast #define. * configure.in: * config.hh.in: Check for lrint. 2003-07-19 Han-Wen Nienhuys * VERSION: 1.7.26 released * lily/separation-item.cc: add padding property. * input/test/*.ly: various fixes, remove solo-a2.ly * scm/new-markup.scm (brew-new-markup-molecule): arg order bugfix. Fixes old-style markup compatibility. * Documentation/user/introduction.itely (Introduction): historical elucidations * Documentation/user/music-glossary.tely (Top): linewidth fix. * Documentation/topdocs/AUTHORS.texi (AUTHORS): cleanup. * Documentation/index.texi (Top): cleanup. * Documentation/user/introduction.itely (Introduction): rewrite introduction, (Music notation and engraving): about notation. Add flat-picture 2003-07-18 Han-Wen Nienhuys * ly/engraver-init.ly (LyricsVoiceContext): add padding for separation items. This keeps lyrics from bumping into each other. 2003-07-18 Jan Nieuwenhuizen * GNUmakefile.in (topdocs-web): New target. (local-web): Depend on topdocs-web; fixes html-doc. 2003-07-18 Han-Wen Nienhuys * po/lilypond.pot: run po-replace * Documentation/GNUmakefile (SUBDIRS): remove windows/ directory * scm/drums.scm (reset-drum-kit): new function. * Documentation/GNUmakefile (SUBDIRS): remove misc/ directory. * scripts/update-lily.py: remove * VERSION: release 1.7.25 * Documentation/user/introduction.itely (Introduction): rewrite start of introduction. 2003-07-18 Juergen Reuter * lily/all-font-metrics.cc: fixed typo 2003-07-18 Heikki Junes * lilypond-font-lock.el (LilyPond-mode-set-syntax-table, LilyPond-mode-context-set-syntax-table): new functions to define the syntax table according to context. * lilypond-mode.el: use LilyPond-mode-set-syntax-table. 2003-07-17 Han-Wen Nienhuys * Documentation/user/refman.itely (Figured bass): language nit courtesy http://www.vocabula.com * GNUmakefile.in: remove no kpathsea hack. * Documentation/topdocs/INSTALL.texi (Top): remove web-doc from doco. * GNUmakefile.in: remove web-doc target. * lily/all-font-metrics.cc (find_afm): add message about buildscripts/clean-fonts.sh * scm/define-music-properties.scm (figure): use string for 'figure * lily/parser.yy (bass_number): allow strings for bassfigure too. * input/regression/ : add raggedright = ##t where applicable. * scm/bass-figure.scm (make-bass-figure-markup): add alignBassFigureAccidentals property. * lily/volta-bracket.cc (brew_molecule): only put text on 1st bracket. * lily/hyphen-spanner.cc (set_spacing_rods): new function: take syllables widths into account for minimum-length. * input/test/staff-container.ly: update file * input/test/stem.ly: remove * lily/event.cc (LY_DEFINE): add ly: prefix. * input/test/clef-manual-control.ly: from manual-clef * input/test/repeat-shorter-bracket.ly: move from coda-kludge * input/test/different-time-signatures.ly: move to poly-metric.ly * input/test/hara-kiri*,scales.ly: remove * input/test/chord-names-dpnj.ly (efullmusic): remove file (merged with chord-names-jazz.ly) * make/mutopia-rules.make ($(outdir)/%.pdf): use +lilypond.map to get scalable cm fonts too. * stepmake/stepmake/metafont-rules.make (ENCODINGOPTION): add --encoding for mftrace if present. * input/regression/slur-area.ly: move from test/ * input/test/: remove simple-slur-endings slur-attachment slur-broken-cross-staff slur-broken.ly slur-damping.ly slur-follow-music.ly slur-position.ly slur-proof.ly slur-shape.ly slur-symmetry slur-symmetry tie-broken.ly * scm/drums.scm (set-drum-kit): add function. * Documentation/user/refman.itely (Percussion staves): use set-drum-kit * scripts/etf2ly.py (interpret_finale_key_sig): handle minor keys too (Global_measure.set_timesig): handle 3/8 time sig too. * scm/output-lib.scm (note-head-style->attachment-coordinates): note about triangle note heads. * scm/drums.scm: use alist for instrument-settings. This fixes the bug with assigning to drums in the .ly file. * mf/feta-autometric.mf (code): start font at 32. WARNING: FONT CHANGED. * scm/define-grob-interfaces.scm (cluster-beacon-interface): add cluster-beacon-interface * scm/define-grobs.scm (all-grob-descriptions): default to ramp. * scripts/convert-ly.py (FatalConversionError.conv): add cluster rule. * ly/spanners-init.ly (stopGroup): remove start/stopCluster. * lily/cluster.cc (brew_molecule): examine ClusterSpannerBeacons to get positions. * lily/cluster-engraver.cc: rewrite: catch cluster-note-events, make ClusterSpannerBeacon to record Y positions. This removes the need to switch off notes. Use \apply #notes-to-clusters { .. } to make cluster-note-events. 2003-07-17 Jan Nieuwenhuizen * stepmake/aclocal.m4: Do AC_PATH_PROG for python. * configure.in: Use lily/main.cc as identifying source file. * lily/accidental-engraver.cc: Compile fix: include protected-scm.hh. * config.hh.in: * python/midi.c: Remove /Python.h ifdef tree. * configure.in: Require PYTHON >= 2.0. * stepmake/aclocal.m4 (STEPMAKE_PYTHON_DEVEL): Rewrite. Ask $PYTHON for include dir location. (STEPMAKE_PYTHON): New function. Use PYTHON=foo ./configure to override. 2003-07-17 Han-Wen Nienhuys * lily/translator-scheme.cc (LY_DEFINE): bugfix: always return something. * make/lilypond.redhat.spec.in (Group): change ftp.cs.uu.nl to ftp.lilypond.org everywhere. 2003-07-16 Han-Wen Nienhuys * lily/text-item.cc (interpret_new_markup): do only if new-markup detected. * Documentation/user/refman.itely (Grace notes): note on explicit contexts 2003-07-16 Heikki Junes * lilypond-font-lock.el: add a comment about LilyPond specific escape characters: ^, - and _, in the syntax table. * Documentation/user/appendices.itely: a majuscule fix. 2003-07-15 Han-Wen Nienhuys * input/test/trills.ly (endHorizScript): fixes. * input/test/chord-names-jazz.ly: merge in alternate Jazz notation, move from regression. * input/test/script-stack.ly: change name from stacked-scripts * input/test/ossia.ly: octave errors. * input/no-notation/midi-tuplets.ly: move from input/test/, idem for midi-volume-equaliser m2003-07-15 Han-Wen Nienhuys * scm/output-ps.scm (lily-traced-cm-fonts): substitution for lily cm fonts. * mf/feta-beugel.mf: don't multiply font_count by 10. * lily/lookup.cc (horizontal_line): new function. Use horizontal-line in output backends. * Documentation/user/tutorial.itely (An orchestral part): new section on orchestral stuff and identifiers. 2003-07-14 Heikki Junes * lilypond-mode.el: comment-out paren-highlighting, it still causes some interference to other modes. 2003-07-14 Han-Wen Nienhuys * lily/spacing-spanner.cc (musical_column_spacing): use average, not maximum of spacing wishes in polyphonic situations. * scm/define-grobs.scm (all-grob-descriptions): bold tuplet number * lilypond-indent.el: remove paren matching. * lily/text-item.cc (interpret_new_markup): new function use iso. text2molecule. * lily/main.cc (notice): change FSF address * po/de.po: update PO file to 1.6. 2003-07-13 Heikki Junes * Documentation/user/ {many}: Add periods and remove spaces. 2003-07-11 Heikki Junes * lilypond-indent.el (LilyPond-paren-set-mode): From XEmacs' paren.el: Disable buffer-locally default paren hook and make a new one. * lilypond-mode.el: Turn off locally paren-mode, but turn on locally LilyPond-paren-mode. Add todo for mouse double-click. 2003-07-10 Heikki Junes * lilypond-indent.el (LilyPond-show-paren-mode): From Emacs' paren.el: Disable buffer-locally default paren idle timer and make a new one. * lilypond-mode.el: Turn off locally show-paren-mode, but turn on locally LilyPond-show-paren-mode. Add to menu a toggle for LilyPond-show-paren-function. 2003-07-08 Han-Wen Nienhuys * input/template/jazz-combo.ly (drumNotes): 1.7 fixes 2003-07-09 Heikki Junes * Documentation/user/refman.itely: spelling fix. * lilypond-mode.el, lilypond-indent.el: restrusture and comment paren highlight function definitions. add todo for LilyPond-show-paren-mode. 2003-07-07 Han-Wen Nienhuys * input/template/jazz-combo.ly: new file. 2003-07-06 Han-Wen Nienhuys * mf/feta-toevallig.mf: tweak for bottom of flat sign. lo-res fixes. * mf/feta-schrift.mf: bugfix in varcoda sign. WARNING: FONT CHANGED * lily/my-lily-lexer.cc (lookup_identifier): return SCM_UNDEFINED, in accordance with lexer.ll. 2003-07-05 Jan Nieuwenhuizen * Documentation/user/tutorial.itely: Edit introduction. 2003-07-05 Han-Wen Nienhuys * lily/staff-symbol-referencer.cc (LY_DEFINE): add ly:grob-staff-position 2003-07-04 Han-Wen Nienhuys * scm/to-xml.scm: import srfi-1 * VERSION (MAJOR_VERSION): release 1.7.24 * python/lilylib.py (make_ps_images): make multipage _really_ work. * scripts/lilypond-book.py (do_file): put texidoc before image. (TexiPaper.process_ly2dvi_block): make multipage _really_ work. * input/regression/*.ly: fix snippet octaves * input/test/spanner-after-break-tweak.ly: import broken-spanner-adjustment * input/no-notation/midi-transposing.ly: move from input/test/ * input/test/: remove chord-markup * input/regression/instrument-name-partial.ly: move from input/test. * input/test/vertical-text.ly: remove * ly/engraver-init.ly (LyricsVoiceContext): add more vertical space above lyrics lines. * input/test/uniform-breaking.ly: remove file. * lily/gourlay-breaking.cc (combine_demerits): add comment about uniform spacing density. * input/test/chords.ly (keys): remove file. * scm/documentation-lib.scm (oop): use srfi-1 too. * input/regression/*.ly: add \version * Documentation/user/*.itely: various fixes. * buildscripts/mf-to-table.py (base): break table every three symbols. * input/: remove %% new-chords-done %% . * input/tutorial: remove os-flute-2.ly os-score.ly miniatures.ly os-music.ly 2003-07-03 Han-Wen Nienhuys * make/lilypond.redhat.spec.in: require GUILE >= 1.6.4-7 * scm/new-markup.scm (box-markup): new function. (box-markup): new function. Contributed by Dick Schoeller * scm/lily.scm: remove reduce-no-unit (list-insert-separator): use fold-right * lily/molecule-scheme.cc (ly_molecule_add): take variable number of arguments. * NEWS: more neutral language for ancient notation * lily/chord-tremolo-engraver.cc (acknowledge_grob): only set inside pointing beaming for chord tremolo. * Documentation/user/lilypond-book.itely: minor editing 2003-07-03 Juergen Reuter * NEWS: added news for 1.8 regarding ancient notation * Documentation/user/refman.itely (Gregorian square neumes ligatures): fixed typo * lily/vaticana-ligature-engraver.cc, lily/include/vaticana-ligature.hh: bugfix: use special heads for lower/upper head of Pes only when heads are stacked * lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc, scm/define-grob-properties.scm: cleanup: make "join-left" a boolean grob property and save delta pitch in grob property "delta-pitch" instead * lily/include/gregorian-ligature.hh: bugfix: corrected comments 2003-07-02 Han-Wen Nienhuys * lily/parser.yy (Repeated_music): bug fix, beam multiplicity was completely borked * lily/chord-tremolo-engraver.cc (try_music): warnings for user-errors. (try_music): bug fix: beam multiplicity was completely borked. * scm/lily.scm: remove tail, filter-list, filter-out-list, first-n, butfirst-n in favor of srfi-1 functions. remove string-join, string-pad in favor of srfi-13 functions. * mf/parmesan-custodes.mf (dir_down): remove _ from glyph names. * NEWS: use complete sentences. * Documentation/user/introduction.itely (Example applications): add note about databases and lilypond-book. * input/test/volta.ly: remove file * input/regression/volta-broken-left-edge.ly: simplify file 2003-07-01 Han-Wen Nienhuys * Documentation/user/refman.itely (Constructing a tweak): new subsection. * Documentation/user/tutorial.itely (Fine tuning layout): add common tweaks. * scm/define-grobs.scm (TextScript): use new brewer. 2003-06-30 Han-Wen Nienhuys * VERSION: release 1.7.23 * scm/new-markup.scm (brew-new-markup-molecule): bugfix * python/lilylib.py (make_ps_images): bugfixes. * input/regression/volta-multi-staff.ly: new file. * Documentation/user/macros.itexi: refcommands, refcommand macros. * Documentation/user/tutorial.itely (Piano staffs): new section. (Setting variables): new section (Fine tuning layout): new section * input/just-friends.ly: remove file. Superseeded by input/test/chords-without-melody.ly * ly/property-init.ly: add all commands to refman. * scm/define-translator-properties.scm: remove graceAccidentalSpace, graceAlignPosition, keyOctaviation * mf/parmesan-custodes.mf (dir_down): remove underscore from glyph name. Underscores botch up PS output. * scm/define-translator-properties.scm: remove textNonEmpty, oneBeat, regularSpacingDelta * scripts/convert-ly.py (FatalConversionError.conv): conversion rule for automaticBars. * lily/timing-engraver.cc (start_translation_timestep): change barNonAuto to automaticBars 2003-06-30 Graham Percival * input/test/perform-tie.ly: delete file. 2003-06-29 Juergen Reuter * Documentation/user/refman.itely (Gregorian square neumes ligatures): bugfix: do not show ledger lines in neumes table (fixed by setting staff symbol to transparent rather than removing it from staff context) 2003-06-29 Han-Wen Nienhuys * scm/new-markup.scm (brew-new-markup-molecule): move old markup glue into brew-new-markup-molecule. * input/mutopia/J.S.Bach/Petites-Preludes/*.ly: syntax updates. * Documentation/user/introduction.itely (Computerized typography): new section * Documentation/user/tutorial.itely (An orchestral part): remove pc example from tutorial. * input/tutorial/lilbook.tex: use screech-boink * scripts/lilypond-book.py (compile_all_files): split formatting output body and scheduling lilypond compilation. (format_lilypond_output_bodies): new function (format_lilypond_block): new function (html_pages): allow multi-page images in HTML * python/lilylib.py (make_ps_images): rename function from make_preview, merge with make_page_images 2003-06-28 Graham Percival * input/test/key-clefs.ly: moved to regression. * input/test/perform-grace.ly: moved to to no-notation/midi-grace.ly * input/no-notation/README: added note about midi-*.ly files. * input/test/two-key.ly: moved to no-notation/parse5.ly * input/test/ short-part-combine.ly sketch.ly system-start-brace.ly system-start-bracket.ly two-slurs.ly voice-switch.ly : deleted * input/test/ {various}: modified comments, marked some for deletion. * input/test/lines.ly: deleted file; duplicate of embedded-postscript.ly * input/test/mmrest-collision: moved to regression. 2003-06-28 Han-Wen Nienhuys * scm/chord-name.scm (note-name->markup): don't superscript root alterations in chordnames. 2003-06-23 Han-Wen Nienhuys * Documentation/user/refman.itely (Multi measure rests): more index/cross-referencing. * lily/line-spanner.cc (line_molecule): bugfix for trill style. * scm/font.scm: remove properties-to-font-name code. * scm/define-grob-properties.scm: remove 'type * scripts/convert-ly.py (FatalConversionError.conv): type -> style conversion * lily/text-spanner.cc: change 'type grob prop to 'style * lily/unfolded-repeat-iterator.cc (process): bugfix: use a "first" flag to decide whether to make a start-repeat * input/regression/grace-volta-repeat-2.ly: new file. 2003-06-22 Han-Wen Nienhuys * lilypond-indent.el: rename generic functions to LilyPond-* 2003-06-22 Graham Percival * input/test/thumb.ly: delete, merged into refman. * Documentation/user/refman.itely: added thumb info to Fingering. * input/test/ follow-break.ly multi-slope.ly note-shift.ly notemode-chords.ly orchestalpart.ly rhythmic-staff.ly vertical-align.ly : deleted files. 2003-06-21 Han-Wen Nienhuys * lily/align-interface.cc (find_fixed_alignment_parent): new function. * lily/line-spanner.cc (broken_trend_offset): remove function. (get_broken_offset): idem. (brew_molecule): rewrite the line-break case. * input/regression/follow-voice-break.ly: new file. * lily/line-spanner.cc (after_line_breaking): remove lines at the start of a system. 2003-06-20 Graham Percival * input/test/tuplet-rest.ly: moved to regression. * input/test/ script-horizontal.ly tuplet-spanner-duration.ly: deleted file. * input/test/ {many} : marked file for possible deletion. 2003-06-20 Han-Wen Nienhuys * input/regression/beam-funky.ly: add note about (disputed) correct beaming. * ly/engraver-init.ly (ScoreContext): put key-signature after staff-bar 2003-06-20 Graham Percival * input/test/ broken.ly lyric-phrasing.ly: deleted. * input/test/slur-mininum.ly: renamed to slur-minimum-length.ly. * input/test/staff-line-leading.ly: renamed to staff-space.ly. * input/test/no-stem-extend.ly: moved to stem-extend.ly; previous stem-extend was deleted (it was duplicate example, and not as good). * input/test/[s-z]*.ly: add texidoc index. 2003-06-20 Han-Wen Nienhuys * lily/slur.cc (get_boundary_notecolumn_y): change name from get_first_notecolumn_y * lily/spanner.cc (broken_spanner_index): new function. 2003-06-19 Graham Percival * input/test/ beam-damp.ly grace-end.ly lyric-extender.ly lyric-hyphen.ly : moved to regression. * input/test/ beam-stem-test.ly beamed-slur-endings.ly diverse-spacing.ly duration-check.ly knee.ly lyrics.ly : deleted. * input/test/instrument-name-mmrest.ly: moved to ../regression/multi-measure-rest-instr-name.ly * input/test/knee-sym.ly: moved to ../regression/beam-knee-symmetry.ly. * input/test/hymn.ly: change comments. * input/test/[p-r]*.ly: add texidoc index. 2003-06-19 Han-Wen Nienhuys * input/mutopia/J.S.Bach/Petites-Preludes/*.ly (opus): update to postfix syntax * input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly (romanze): new syntax. * VERSION: release 1.7.22 2003-06-18 Graham Percival * input/test/[h-k]*.ly: added texidoc index. * input/test/knee-mult.ly: removed file (duplicate of beam-isknee.ly) * input/test/equaliser.ly: renamed to midi-volume-equaliser.ly. * input/test/ various : mark files for deletion or moving to regression. * input/test/note-chords.ly: renamed to chord-names-no-inversions.ly. * input/test/[l-o]*.ly: added texidoc index. 2003-06-17 Han-Wen Nienhuys * scm/music-functions.scm (make-ottava-set): only do ottavation if centralCPosition is set. * lily/translator-scheme.cc (ly:context-property-where-defined): return '() if not found. 2003-06-17 Heikki Junes * lilypond-mode.el (LilyPond-un-comment-region): removed. Use one command for both commenting and uncommenting. * lilypond-indent.el (LilyPond-comment-region): new function, (un)comments each line separately. * lilypond-mode.el, lilypond-indent.el: fix XEmacs paren-match. * lilypond-mode.el (LilyPond-add-imenu-menu): new function, imenu is not added by default; adapted from f90.el, makes Help-menu, which does not fit, visible in XEmacs. 2003-06-16 Heikki Junes * lilypond-mode.el: Set show-paren-mode local; minor-mode show-paren-mode sets blink-matching-paren-on-screen local. Try to make show-paren-function to paren-highlight local. * lilypond-indent.el (LilyPond-scan-sexps): new function. Copy definitions of Emacs' show-paren-function and XEmacs' paren-highlight and make minimal changes; add comments about locality. Fix matching first open-paren-char in '<< .. >>'. 2003-06-16 Graham Percival * input/test/g*: added texidoc index. * input/test/[a-g]*: added raggedright==#t when it seemed appropiate. * input/test/ fake-grace.ly figured-bass.ly : removed file. * Documentation/topdoc/INSTALL.texi: removed false warnings about gcc 3.3. 2003-06-16 Han-Wen Nienhuys * input/test/spanner-after-break-tweak.ly (texidoc): new file. * input/test/chords-without-melody.ly (texidoc): add from input/just-friends.ly * input/regression/size{13--26}.ly: move from input/ * input/{opus-130,praeludium-fuga,scarlatti-*}.ly input/{star-spangled-banner,twinkle}.ly: remove * lily/slur.cc: remove slur over rest warnings. * lily/note-spacing.cc (get_spacing): include left part of right object in fixed space. This fixes stretched space before accidentals. * input/regression/spacing-accidental-stretch.ly: new file. 2003-06-16 Rune Zedeler * input/mutopia/R.Schumann/romanze-op28-2.ly: Minor fixes. Reduce to 16pt. 2003-06-15 Han-Wen Nienhuys * input/regression/spacing-knee.ly: docstring * input/regression/spacing-multi-tuplet.ly (multipart): docstring * input/tutorial/{gallupi,minuet,sammartini,singing-saw}.ly input/tutorial/{test,solar,flowing}.ly: remove * input/rhythm.ly: remove * input/mutopia/F.Schubert/standchen.ly: update syntax. * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (global): update syntax. * scm/define-grobs.scm (all-grob-descriptions): set knee-spacing-correction to 1.0 * lily/note-spacing.cc (stem_dir_correction): compute knee correction using stem-thickness and head width. * input/regression/beam-quanting-horizontal.ly: update texidoc * scm/define-grobs.scm (all-grob-descriptions): set beamed-extreme-minimum-free-lengths to 1.25 for 32nd beams. This fixes 32nd beams for noteheads in spaces quants. * scripts/lilypond-book.py (process_lilypond_blocks): opps. 2003-06-15 Heikki Junes * README.mandrake: Change lilypond-extras to lilypond-documentation. 2003-06-14 Han-Wen Nienhuys * input/test/dpncnt.ly,part-combine-score.ly: remove. * VERSION (PACKAGE_NAME): release 1.7.21 * input/regression/stem-shorten.ly: new file. * lily/stem.cc (get_default_stem_end_position): revise stem shortening code. * input/regression/spacing-multi-tuplet.ly: move from input/test/ * input/test/{scripts,volta-start,sleur}.ly: remove * input/regression/span-bar.ly: smaller file. * input/regression/spacing-{natural,tight,loose}.ly: remove * input/test/markup.ly: remove * scripts/lilypond-book.py: put printfilename in separate chunk, so texidoc is printed after the filename. 2003-06-12 Heikki Junes * make/lilypond.mandrake.spec.in: fix docdirs. 2003-06-13 Han-Wen Nienhuys * input/regression/beam-french.ly: bugfix. * buildscripts/lys-to-tely.py (name2line): sort filenames. * input/regression/(various).ly: add raggedright = #t. * input/regression/auto-beam.ly: move from abe.ly 2003-06-13 Graham Percival * input/test/f*.ly: added texinfo index. * input/test/broken-thread-line.ly: renamed to follow-break.ly. 2003-06-13 Han-Wen Nienhuys * lily/beam-quanting.cc (score_forbidden_quants): also add inter quant penalty for beam just outside staff. * input/regression/beam-quanting-horizontal.ly (texidoc): move from beam-pos.ly, remove non-horizontal tests. * input/test/(various): cleanup header info. * input/test/tchaikovsky.ly: remove file. * scm/chord-generic-names.scm: move from double-plus-new-chord-name.scm * input/test/orchestscore.ly: remove file * Documentation/user/refman.itely (Vocal music): update documentation. * scm/define-translator-properties.scm (chordNoteNamer): remove chordNameStyle, use chordNameFunction * scm/chord-name.scm (set-chord-name-style): remove set-chord-name-style. Use \property chordNameFunction. 2003-06-12 Han-Wen Nienhuys * Documentation/user/lilypond-book.itely (Integrating LaTeX and music): remove @TeX{} command. 2003-06-12 Jan Nieuwenhuizen * lilypond-indent.el (scan-sexps): Renamed to aargh-this-breaks-other-emacs-modes-scan-sexps. 2003-06-12 Heikki Junes * lilypond-indent.el: Fix: match concurrent one-char opening and closing slurs: '()', etc. Add comments. * Documentation/user/music-glossary.tely: fix: change ä to @"a. * lilypond-font-lock.el: match unending string at eof. * make/lilypond.mandrake.spec.in: refreshed packed file list. 2003-06-10 Graham Percival * input/test/beam-abbrev.ly input/test/default-neutral-dir.ly input/test/beam-dir.ly input/test/beam-position.ly input/test/beam-suspect.ly input/test/beam-trend.ly input/test/beams.ly input/test/crescendo-text.ly : deleted * input/test/beam-chord.ly: moved to input/regression/beam-chord.ly * input/test/ beam-pos.ly beam-second.ly : moved to input/regression/ * input/test/default-bars.ly: moved to bar-always.ly * input/test/ {many}: deleted old "renamed from foo to bar" comments. 2003-06-10 Han-Wen Nienhuys * input/test/chord-names-dpnj.ly (texidoc): bugfix. 2003-06-04 Han-Wen Nienhuys * scm/chord-ignatzek-names.scm (remove-step): rename file. 2003-06-10 Heikki Junes * lilypond-indent.el: Match better slurs in scheme expressions. Refontify buffer if a block-comment-ender, '}' after '%', is inserted. * Documentation/user/invoking.itexi: document Emacs' paren matching. 2003-06-10 Jan Nieuwenhuizen * scm/chord-name.scm (set-chord-name-style): Update for 'ignatzek. * input/ac-extra-voice.ly: Add texidoc. * ly/chord-modifiers-init.ly: * ly/engraver-init.ly (ScoreContext): Add chordNameExceptionsFull and chordNameExceptionsPartial for new chord names. * input/test/chord-names-dpnj.ly: * input/test/dpncnt.ly: Update. * scm/chord-name.scm: * scm/double-plus-new-chord-name.scm: Add compatibility for new chord selection and options. * ly/chord-modifiers-init.ly: Add exceptions * scm/define-translator-properties.scm (chordNameStyle) (chordNameExceptionsFull, chordNameExceptionsPartial): Add. 2003-06-10 Rune Zedeler * ly/property-init.ly (germanChords): Added. (semiGermanChords): Added. * input/test/chord-names-german.ly: Use new macros 2003-06-09 Heikki Junes * lilypond-indent.el: Use similar parenthesis highlighting for Emacs and XEmacs through redefinitions of parenthesis highlighting functions; removed LilyPond-show-paren-function. Fix indenting. Turn paren-matching on also in XEmacs. * lilypond-font-lock.el: Set brackets' syntax to open/close-chars, as needed by parenthesis highlighting functions (in scan-sexp). 2003-06-08 Jan Nieuwenhuizen * stepmake/aclocal.m4 (STEPMAKE_CHECK_VERSION_UNSUPPORTED): New function. (STEPMAKE_GETTEXT): If g++ >= 3.3, use gcc for gettext checking. 2003-06-08 Heikki Junes * lilypond-indent.el: tune regexp for show-paren-function. 2003-06-07 Jan Nieuwenhuizen * scripts/ly2dvi.py (run_latex, run_dvips, 'main'): Make preview for all LilyPond-produced tex snippets. * tex/lilyponddefs.tex: Allow overriding of interscoreline. This fixes one line --preview output of ly2dvi. 2003-06-07 Heikki Junes * lilypond-indent.el: match only one type of slurs in LilyPond-show-paren-function. 2003-06-05 Jan Nieuwenhuizen * debian/GNUmakefile (EXTRA_DIST_FILES): * debian/lilypond1.7.dirs: * debian/lilypond1.7-doc.dirs: New file. * input/regression/chord-name-exceptions.ly: Add parameter for ignatzekExceptions. Quote hash in docstring. 2003-06-06 Heikki Junes * lilypond-indent.el (show-paren-function): define show-paren-function as LilyPond-blink-matching-open and use it for closing parens. Let LilyPond-blink-matching-open know whether a bracket was inserted. * lilypond-indent.el: renamed LilyPond-beginning-of-containing-sexp to LilyPond-scan-containing-sexp and LilyPond-blink-matching-open to LilyPond-blink-matching-paren in order to match both open and close brackets. 2003-06-05 Heikki Junes * lilypond-indent.el (LilyPond-show-paren-function): introduce for testing by modifying the code from FSF Emacs paren.el. Add comments. 2003-06-04 Jan Nieuwenhuizen * input/test/dpncnt.ly: Transpose example to match new default \chords octave. Add comment. * scm/chord-name.scm (sequential-music-to-chord-exceptions): Add comment about octave change. 2003-06-04 Graham Percival * input/test/[d,e]: added texinfo index tags. * input/test/empty-staffs.ly: renamed to blank-paper-tab.ly. 2003-06-04 Graham Percival * Documentation/topdocs/INSTALL.texi: added warning about gxx-3.3. 2003-06-04 Heikki Junes * lilypond-indent.el (LilyPond-blink-matching-open): use no argument, as in blink-matching-open. 2003-06-03 Graham Percival * input/test/[a-c]: more comments in files. * input/test/ac-extra-voice.ly beam-abbrev.ly beam-chord.ly beam-dir.ly beam-pos.ly beam-position.ly beam-second.ly beam-suspect.ly beam-trend.ly beams.ly crescendo-text.ly default-neutral-dir.ly : mark file for proposed deletion. * input/test: renaming files: auto-beam-4-8.ly to beam-auto-4-8.ly auto-beam-override.ly to beam-auto-override.ly auto-beam.ly to beam-auto.ly blank.ly to blank-paper.ly absolute-volume.ly to dynamic-absolute-volume.ly 2003-06-03 Jan Nieuwenhuizen * input/test/dpncnt.ly: * input/test/chord-names-dpnj.ly: Resurrect. * lily/my-lily-lexer.cc: Remove chordnames keyword. * ly/chord-modifiers-init.ly (ignatzekExceptions): Update, tidy up. * scm/chord-name.scm (sequential-music-to-chord-exceptions): Better docstring, add parameter OMIT-ROOT, tidy up. 2003-06-03 Heikki Junes * lilypond-indent.el: match two-char slurs \[ ... \] and \( ... \). 2003-06-02 Jan Nieuwenhuizen * scm/output-ascii-script.scm (as-font-alist-alist): (as-properties-to-font-name): (as-make-style-sheet): Remove. * scm/font.scm (as-make-font-list): New function. (as-font-sheet-alist): New variable. * ly/paper-as9-init.ly: * ly/paper-as5-init.ly: Update. * ly/paper-as5.ly: * ly/paper-as9.ly: New file. 2003-05-29 Jan Nieuwenhuizen * mf/GNUmakefile (AFM_FILES): Add AF_FILES. 2003-05-28 Graham Percival * input/sondag-morgen/*: removed due to copyright concerns. * input/[a,b]*.ly: added a newline at the end of the texinfo doc string (produces better output in HTML version). * input/c*.ly: added texinfo index and added comments to aid in future changes to input/test/ files. 2003-05-28 Graham Percival * Documentation/user/refman.itely: fixed build problem (missing file) caused by previous renaming. 2003-05-28 Graham Percival * input/test/[a,b]*.ly: added texinfo index and added comments to aid in future changes to input/test/ files. * input/test/bar-number-every-5-reset.ly: renamed to bar-number-every-five-reset.ly * input/test/bar-script-visibility.ly: renamed to bar-number-show-all.ly 2003-05-28 Han-Wen Nienhuys * ly/engraver-init.ly (VoiceContext): move Note_head_line_engraver to Voice. * lily/glissando-engraver.cc (acknowledge_grob): new file: split out note-line and glissando functionality. * lily/line-spanner.cc (brew_molecule): cleanup. 2003-05-27 Jan Nieuwenhuizen * scripts/as2text.scm: Use rdelim module. (start-system): Rename from start-line. (stop-system): Rename from stop-line. (af-gulp-file): Use string iso symbol for getenv. * scm/output-ascii-script.scm: Add guile and lily modules. (font-name-alist): New variable. (draw-line): New function. * scm/output-lib.scm (func, arg->string): Re-add from archive. (Were these silently removed, without ChangeLog entry?) 2003-05-27 Han-Wen Nienhuys * scm/music-functions.scm (make-ottava-set): bugfixes: also process 2nd ottava correctly. 2003-05-27 Heikki Junes * lilypond-indent.el: allow strings in LilyPond-parens-alist. 2003-05-26 Jan Nieuwenhuizen * Documentation/user/converters.itely (Invoking midi2ly): Update. 2003-05-26 Han-Wen Nienhuys * VERSION: release 1.7.20 * lily/text-spanner.cc (brew_molecule): clean up function. This fixes bugs with broken 8va spanners. * lily/simple-spacer.cc (solve): also compute force for raggedright. This prevents spurious line-breaks with raggedright 2003-05-25 Han-Wen Nienhuys * lily/key-performer.cc (create_audio_elements): always use major key * Documentation/user/internals.itely: updates * input/regression/beam-break.ly: new file. * lily/beam.cc (brew_molecule): handle broken beams (i.e. print beams if starting or terminating stems have 'beaming set.) * lily/beam-engraver.cc (process_music): add forbidBeamBreak property. * lily/parser.yy (verbose_command_req): add comment about scales. 2003-05-25 Heikki Junes * lilypond-indent.el: adjust regexps in bracket-matching. 2003-05-24 Juergen Reuter * Documentation/user/refman.itely: more tiny fixes * Documentation/user/refman.itely: bugfix: "Chord namess" -> "Chord names"; added table with input syntax for solesmes neumes table; added some words about rationale on input syntax design * lily/gregorian-ligature-engraver.cc, lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc, lily/include/gregorian-ligature.hh: bugfix: horizontal head alignment of Pes Initio Debilis * Documentation/user/refman.itely, lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc, mf/parmesan-heads.mf: fixed most of the head selection/alignment bugs in the solesmes neumes table 2003-05-24 Heikki Junes * lilypond-indent.el: Match '(' and ')' by skipping '\(' and '\)'. Similarly, match '[' and ']' by skipping '\[' and '\]'. * lilypond-mode.el: fix tag-score. small improvements. 2003-05-23 Jan Nieuwenhuizen * .cvsignore: Add aclocal.m4. * lily/music-constructor.cc: Include . 2003-05-23 Han-Wen Nienhuys * ly/engraver-init.ly (HaraKiriStaffContext): use RemoveEmptyStaffContext instead. * Documentation/user/refman.itely: updates 2003-05-23 Juergen Reuter * Documentation/user/refman.itely: added solesmes neumes table; bugfix: make section "More Stanzas" a subsection of "Vocal Music"; bugfix: "Ornaments" -> "Articulations" * ly/gregorian-init.ly: junked "aucta" and "semivocalis" 2003-05-22 Heikki Junes * lilypond-indent.el: Add a message about trying to match \] or \). 2003-05-22 Juergen Reuter * input/test/gregorian-scripts.ly, input/test/vaticana.ly: removed obsolete "arithmetic_*" * input/bugs/ligatures.ly: removed (will be put into a different directory later) 2003-05-22 Jan Nieuwenhuizen * stepmake/aclocal.m4: Add tetex-devel as package suggestion for libkpathsea (Maurizio Tomasi). 2003-05-22 Han-Wen Nienhuys * input/regression/repeat-slash.ly (texidoc): new file * lily/slash-repeat-engraver.cc (try_music): new file, handle slash repeats separately. Slash repeats and % repeats can now be nested. 2003-05-22 Heikki Junes * lilypond-indent.el: Add preliminary test for closing \] and \). 2003-05-21 Juergen Reuter * lily/gregorian-ligature-engraver.cc, lily/vaticana-ligature-engraver.cc, lily/include/gregorian-ligature.hh, ly/gregorian-init.ly, mf/parmesan-heads.mf: various semivocalis related bugfixes * input/bugs/ligatures.ly: new file demonstrating problems with ligatures 2003-05-21 Heikki Junes * lilypond-mode.el, lilypond-font-lock.el, lilypond-indent.el: Move all paren matching to lilypond-indent.el. 2003-05-20 Heikki Junes * lilypond-mode.el: Remove outdated code. Stress the difference between Emacs and XEmacs definitions. * lilypond-mode.el, lilypond-indent.el: Define a function interactive only when necessary. 2003-05-19 Heikki Junes * lilypond-mode.el: Use temp-dir for Commands on Buffer/Region. Use inactive regions also in XEmacs. 2003-05-18 Han-Wen Nienhuys * Documentation/user/refman.itely (Repeat syntax): more updates * lily/simple-spacer.cc (solve): move solution process into solve(). This fixes a bug with collisions and raggedright = ##t. * scm/lily.scm (scm): remove output-pysk.scm, music-types.scm * ly/engraver-init.ly: remove GraceContext. Update examples. 2003-05-18 Jan Nieuwenhuizen * GNUmakefile.in (fonts): Also make fontball. * Website fixes: * ly/engraver-init.ly (GraceContext): Add. * run: convert-ly $(find . -name *.ly) * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): Hmm: fix new chords. 2003-05-18 Han-Wen Nienhuys * VERSION: 1.7.19 released * scm/music-functions.scm (set-octavation): new function. * input/regression/ottava.ly: new file * lily/translator-scheme.cc (LY_DEFINE): new function ly:unset-context-property (LY_DEFINE) new function ly:context-property-where-defined: 2003-05-18 Heikki Junes * lilypond-font-lock.el: Add postfix syntax for horizontal groups. * lilypond.words: add few. * input/test/script-chart.ly: fix typo. 2003-05-17 Han-Wen Nienhuys * scm/define-grobs.scm: uniform naming for definitions and output routine files. * ly/engraver-init.ly (ChoirStaffContext): add \description from scm/context-description.scm * lily/parser.yy (translator_spec_body): add \description to the \translator{} body syntax. * lily/ottava-engraver.cc: new file. * scm/chord-name.scm (natural-chord-alteration): replace old chord stuff. * input/mutopia/R.Schumann/romanze-op28-2.ly: syntax updates. * Documentation/user/refman.itely (Metronome marks): update doco. * input/regression/markup-note.ly: new file * input/regression/metronome-marking.ly: new file * lily/metronome-engraver.cc: new file. Print \tempo markings. * scm/new-markup.scm (note-markup): make a note glyph, useful for metronome marks. 2003-05-17 Jan Nieuwenhuizen * Documentation/user/GNUmakefile: Compatibility fix for new makeinfo. Please upgrade to texinfo CVS or pretest > 4.5.90 (rsn) for making binary packages; info splitting bug has been fixed. * Documentation/user/refman.itely: Compile fixes. 2003-05-16 Heikki Junes * lilypond-mode.el: XEmacs-fix: Use (mark) to find active-mark. Count \midi -keywords also for a region. 2003-05-15 Han-Wen Nienhuys * lily/lookup.cc (LY_DEFINE): new function * Documentation/user/tutorial.itely: updates 2003-05-15 Heikki Junes * lilypond-mode.el: Allow Midi on buffer. Use only '.ly'-extension, remove '.sly' and '.fly'. Allow use of inactive regions. Invoke next Command on Master file, Buffer or Region, if C-cc, C-cb, or C-cr, accordingly, was pressed. 2003-05-14 Han-Wen Nienhuys * Documentation/user/tutorial.itely: updates. 2003-05-14 Heikki Junes * lilypond-mode.el: Show messages in one line only, as in XEmacs. 2003-05-13 Juergen Reuter * lily/coherent-ligature-engraver.cc: fixed typo * lily/coherent-ligature-engraver.cc, lily/gregorian-ligature-engraver.cc, lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc, lily/mensural-ligature-engraver.cc, lily/note-heads-engraver.cc, lily/vaticana-ligature-engraver.cc, lily/include/ligature-engraver.hh, ly/gregorian-init.ly, scm/grob-description.scm: cleanup: junked LigatureHead grob and removed all ligature specific stuff from NoteHead code * lily/ligature-head.cc, lily/include/ligature-head.hh: removed; ligatures now use regular noteheads * lily/vaticana-ligature.cc: tiny code cleanups * lily/vaticana-ligature-engraver.cc: bugfix: insert additional space between two adjacent noteheads of the same pitch * scm/grob-description.scm: bugfix: VaticanaLigature: interface description; cleanup: removed obsolete font-family settings 2003-05-11 Juergen Reuter * lily/coherent-ligature-engraver.cc, lily/gregorian-ligature-engraver.cc, lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc, lily/mensural-ligature-engraver.cc, lily/vaticana-ligature-engraver.cc, lily/include/gregorian-ligature-engraver.hh: updated for new Coherent_ligature_engraver; added comments that describe the basic design ideas of the ligature implementation * lily/coherent-ligature-engraver.cc, lily/include/coherent-ligature-engraver.hh: new file: shared code between mensural ligatures and Gregorian chant notation ligatures 2003-05-11 Heikki Junes * lilypond-mode.el: XEmacs fixes: include two definitions for the key for autocompletion XEmacs [iso-left-tab], Emacs [iso-lefttab], use only two arguments in sit-for, use no arguments in read-char-exclusive, backspace is not a character (127) in XEmacs. * lilypond-font-lock.el: XEmacs: small fix to scheme-fontifying. 2003-05-06 Heikki Junes * lilypond-mode.el: un-commenting works after syntax-table fix. * lilypond-font-lock.el: fontify \[- and \]-slurs as horizontal group, verbose commenting for syntax table. * lilypond-indent.el: add TODO for ligature slurs. 2003-05-05 Heikki Junes * lilypond-mode.el: Move comments of parenthesis matching away, (blink-matching-paren-on-screen) fix blinking in Emacs. * lilypond-font-lock.el: Fix parent-matching for Emacs: Emacs syntax-table knows only "13"-style, XEmacs knows also "1b3b". * lilypond-indent.el: Add TODO for parenthesis matching. 2003-05-03 Heikki Junes * lilypond-mode.el: Fix XEmacs: changed [S-iso-lefttab] to [(shift iso-lefttab)], invoke explicitly easy-menu-add (in Emacs done automatically). * lilypond.words: Add few words from input/*/*.ly. 2003-05-02 Han-Wen Nienhuys * VERSION (PATCH_LEVEL): release 1.7.18 * scripts/lilypond-book.py: only print basename for printfilename option * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly: corrections and syntax updates. 2003-05-01 Han-Wen Nienhuys * mf/feta-toevallig.mf: revamp flat symbol: use less points, better parametrisation. Move fatness of bulb downward. * mf/parmesan-custodes.mf (dir_down): remove underscores from glyph names. Underscores are not allowed .ps encoding files. 2003-04-30 Juergen Reuter * lily/spacing-spanner.cc, ly/paper-init.ly: introduced paper variable "packed" for packed right-ragged mode * lily/spacing-spanner.cc: fixed typo: colunm -> column; removed unused variable ragged; fixed indentation * Documentation/user/refman.itely: tiny cleanups in ancient clef and custos section 2003-04-30 Han-Wen Nienhuys * lily/parser.yy (Simple_music): add \applyoutput, syntax \applyoutput PROCEDURE * lily/my-lily-lexer.cc: add \applyoutput. * scm/music-types.scm (music-descriptions): add ApplyOutputEvent. * lily/text-item.cc: clean text-interface description 2003-04-27 Han-Wen Nienhuys * input/{regression,test}/: use postfix for slur endings and beam begins. * lily/beam-engraver.cc (acknowledge_grob): set melismata for new style beams too. * input/regression/lyrics-melisma-beam.ly: new file. * lily/lyric-engraver.cc (process_music): change from process_acknowledged_grobs() * scm/auto-beam.scm (override-auto-beam-setting): write Scheme functions to set and revert auto-beam settings. 2003-04-26 Han-Wen Nienhuys * lily/*.cc (number_accidentals): gh_assoc -> scm_assoc. 2003-04-24 Juergen Reuter * ChangeLog, Documentation/topdocs/AUTHORS.texi, Documentation/user/lilypond.tely: fixed some typos; updated author info * Documentation/user/music-glossary.tely: bugfix: #'flag-style = #"" -> #'flag-style = #'() * lily/cluster-engraver.cc, lily/ligature-bracket-engraver.cc: cleanup: removed dead #includes * lily/gregorian-ligature-engraver.cc, lily/include/gregorian-ligature.hh, scm/grob-property-description.scm: small cleanups, small spacing fixes * lily/gregorian-ligature-engraver.cc, lily/parser.yy, lily/vaticana-ligature.cc, lily/include/gregorian-ligature-engraver.hh, scm/grob-property-description.scm, scm/music-types.scm: "porrectus" -> "pes or flexa" * ly/engraver-init.ly, scm/grob-description.scm, scm/grob-property-description.scm: junked porrectus, now handled by ligature code * scm/grob-description.scm: bugfix: added space-alist entry for breathing sign/custos 2003-04-24 Jan Nieuwenhuizen * Another grand 2003 update. * Remove mentioning of `mudela'; There's no such thing. 2003-04-24 Han-Wen Nienhuys * Documentation/user/preface.itely (Preface to version 1.8): update * Documentation/user/invoking.itexi (Invoking LilyPond): revise * Documentation/user/converters.itely (Invoking convert-ly): revise * scripts/convert-ly.py (outfile_name): remove --assume-old. * scripts/lilypond-book.py (schedule_lilypond_block): remove --read-lys 2003-04-24 Han-Wen Nienhuys * Documentation/user/internals.itely: more updates. 2003-04-23 Han-Wen Nienhuys * Documentation/user/refman.itely: revise * Documentation/user/internals.itely: revise * lily/music.cc (LY_DEFINE): add function ly:music-deep-copy 2003-04-23 Juergen Reuter * Documentation/user/refman.itely: bugfix: fixed broken @ref{}; beautification: reformatted ancient clefs section; cleanup: small wording fixes 2003-04-22 Heikki Junes * lilypond.words: added words for chant notation, sorted alphabetically through "sort lilypond.words" 2003-04-22 Juergen Reuter * ly/gregorian-init.ly, ly/script-init.ly, mf/parmesan-scripts.mf, scm/script.scm, input/test/gregorian-scripts.ly: added scripts for chant notation 2003-04-21 Juergen Reuter * buildscripts/mf-to-table.py: bugfix: "--" in glyph names: prevent TeX from interpreting them as long dash * input/test/vaticana.ly: updated * mf/parmesan-accidentals.mf, mf/parmesan-clefs.mf, mf/parmesan-custodes.mf, mf/parmesan-flags.mf, mf/parmesan-heads.mf, mf/parmesan-rests.mf, mf/parmesan-scripts.mf, mf/parmesan-timesig.mf: more set_char_box fixes * mf/parmesan-heads.mf: ledger endings: removed dead code 2003-04-21 Han-Wen Nienhuys * VERSION: 1.7.17 released * Documentation/user/GNUmakefile ($(outdir)/lilypond-internals/lilypond-internals.html): copy ly files too. * scm/document-markup.scm: new file: document all markup functions. * scm/documentation-generate.scm: rename all documentation modules to document-*.scm * scripts/lilypond-book.py: generate link to .ly file iso. link to .png * input/test/divisiones.ly: added * input/regression/output-property.ly: new file * lily/cluster.cc: change cluster-interface to use style property 2003-04-20 Rune Zedeler * input/test/chord-names-german.ly: modified. * scm/chords-ignatzek.scm: chord-name->german-markup: Added note-name->german-markup: Changed (now producing lowercase notenames) * lily/chord-name-engraver.cc: Reads property chordNoteNamer 2003-04-20 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.conv): divisiominima -> divisioMinima, etc. * ly/engraver-init.ly (FiguredBassContext): add Separating_line_group_engraver to Figured bass context. * ly/german-chords-init.ly: remove file * input/test/chord-names-german.ly (scm): new file. * ly/engraver-init.ly (ScoreContext): add chordRootNamer property. * lily/chord-name-engraver.cc: move New_chord_name_engraver to Chord_name_engraver * Documentation/user/refman.itely: lots of updates. * input/regression/chord-name-exceptions.ly (chExceptionMusic): new file * input/test/bar-number-every-5-reset.ly: new file. 2003-04-19 Han-Wen Nienhuys * input/regression/chord-name-major7.ly: new file * scm/chord-entry.scm (construct-chord): bugfix: don't remove 11 if specced explicitly. * input/regression/chord-name-entry-11.ly: new file. * input/test/slur-beautiful.ly: new file. * Documentation/user/refman.itely: updates. * input/regression/collisions.ly (threevoice): cleanup. * scripts/convert-ly.py: linewidth = -1 -> raggedright = ##t. 2003-04-18 Han-Wen Nienhuys * Documentation/user/*.itely: various updates. * ly/spanners-init.ly: enddecr/ endcr. * Documentation/user/tutorial.itely (Fine tuning a piece): editing of tutorial 2003-04-16 Han-Wen Nienhuys * scripts/ly2dvi.py (extra_init): add compat2 to latex options. * lily/new-chord-name-engraver.cc (process_music): use octavation (a number) instead of original-pitch to store inversions. This fixes a problem with transposed chords with inversions. 2003-04-14 Jan Nieuwenhuizen * stepmake/aclocal.m4: Include compile fix for broken flex, as used in includable-lexer.hh. * lily/includable-lexer.cc: Bugfix: include config.h. * stepmake/aclocal.m4: Check for $GUILE_CONFIG; allows circumvention of Debian packaging bug. 2003-04-13 Jan Nieuwenhuizen * flex-2.5.31 hits Debian/unstable. Fixes below. * lily/lexer.ll (avoid_silly_flex_induced_gcc_warnings): Disable. * lily/includable-lexer.cc [!HAVE_FLEXLEXER_YY_CURRENT_BUFFER] (yy_current_buffer): New macro, compile hacks for flex 2.5.29. * lily/include/includable-lexer.hh: * lily/lexer.ll: Hack for multiple include of FlexLexer.h. * config.hh.in (HAVE_FLEXLEXER_YY_CURRENT_BUFFER): Add. * aclocal.m4: Regenerate. * stepmake/aclocal.m4 (STEPMAKE_FLEXLEXER): Check for yyFlexLexer.yy_current_buffer, which was removed in flex-2.5.29. * scm/pdf.scm (use-modules): Include lily. * scm/pdftex.scm (start-system): Bugfix: add closing brace (Beernd Noordkamp). (use-modules): Include lily. (lily-def): Bugfix: include tex-val in let. 2003-04-12 Heikki Junes * lilypond-mode.el: sensible error if lilypond.words not found. * lilypond.words: add few words. 2003-04-11 Juergen Reuter * mf/parmesan-clefs.mf: bugfix: char boxes corrected * mf/parmesan-scripts.mf: fixed typo in char name 2003-04-11 Han-Wen Nienhuys * VERSION: 1.7.16 released * python/lilylib.py (setup_temp): temporary directories are mode 700. (this is a security vulnerability). * Documentation/user/lilypond.tely: remove abbreviations (n't, 's) * lily/multi-measure-rest-engraver.cc (stop_translation_timestep): add staff support. 2003-04-10 Juergen Reuter * mf/parmesan-scripts.mf, Documentation/user/refman.itely, ly/script-init.ly, scm/script.scm: bugfix: renamed fermata->signumcongruentiae to fix naming clash with feta font 2003-04-10 Han-Wen Nienhuys * input/regression/multi-measure-rest-grace.ly (texidoc): new file * lily/multi-measure-rest-engraver.cc (start_translation_timestep): use grace timing too for determining when to make mmrest. (start_translation_timestep): clear numbers too. 2003-04-09 Juergen Reuter * scm/music-types.scm: compile fix: escape braces * buildscripts/mf-to-table.py: replaced \char -> \musicglyph to work around font selection problem * Documentation/user/refman.itely: BreathingSign: added docu for property "text" 2003-04-09 Mats Bengtsson * Documentation/topdocs/AUTHORS.texi (AUTHORS): Updated contact information. 2003-04-09 Han-Wen Nienhuys * lily/multi-measure-rest-engraver.cc (class Multi_measure_rest_engraver): make multiple Number objects, one for each MultiMeasureTextEvent. * scm/music-functions.scm (glue-mm-rest-texts): use MultiMeasureTextEvent * scm/music-types.scm (music-descriptions): add MultiMeasureTextEvent * Documentation/user/refman.itely (Multi measure rests): update. 2003-04-08 Han-Wen Nienhuys * lily/ly-module.cc (ly_copy_module_variables): use scm_internal_hash_fold() for iterating modules. 2003-04-08 Juergen Reuter * Documentation/user/refman.itely: Section Custodes: added more example code * mf/feta-eindelijk.mf, mf/parmesan-rests.mf: cleanup: moved neo-mensural rests to parmesan font * mf/parmesan-heads.mf, mf/parmesan-timesig.mf: updated file header 2003-04-07 Han-Wen Nienhuys * Documentation/user/macros.itexi: @fileref macro. * buildscripts/lys-to-tely.py (name2line): add tags for each file. 2003-04-04 Juergen Reuter * lily/include/custos.hh, make/lilypond.suse.spec.in, Documentation/topdocs/AUTHORS.texi: updated my email address * Documentation/user/refman.itely: updated custos documentation; beautified divisiones example; beautified articulations table * lily/breathing-sign.cc: bugfix: finalis molecule 2003-04-03 Juergen Reuter * Documentation/user/refman.itely: added docu for contemporary fermata symbols, gregorian breathing signs; small fixes * ly/gregorian-init.ly: removed obsolete #'type props 2003-04-01 Mats Bengtsson * lily/multi-measure-rest.cc (set_spacing_rods): Handle the minimum-length property correctly. 2003-03-31 Han-Wen Nienhuys * scm/music-functions.scm (make-multi-measure-rest): set input locations for multimeasure rests. 2003-03-31 Juergen Reuter * input/regression/breathing-sign.ly: updated to for ancient notation 2003-03-31 Jan Nieuwenhuizen * scripts/ly2dvi.py: Add newline. 2003-03-30 Jan Nieuwenhuizen * scripts/ly2dvi.py (dependency_files): Compile fix. 2003-03-28 Han-Wen Nienhuys * scripts/ly2dvi.py (find_pfa_fonts): add --png option (make_html_menu_file): --html menu. 2003-03-27 Han-Wen Nienhuys * scripts/ly2dvi.py (run_dvips): +add the .map file 2003-03-24 Han-Wen Nienhuys * input/screech-boink.ly: new file. 2003-03-22 Han-Wen Nienhuys * scripts/lilypond-book.py (make_lilypond_file): convert lilypond-file to lilypond block directly, without going through begin/end lilypond text. 2003-03-21 Juergen Reuter * lily/breathing-sign.cc, lily/include/breathing-sign.hh, scm/grob-description.scm: moved Michael's original breathing sign code in brew_molecule() to divisio_minima(); provided new brew_molecule() that effectively replaces the Text_item::brew_molecule callback (with additional fallback to Michael's original code); added callbacks for brewing divisio maior/maxima and finalis * gregorian-init.ly: added breathing sign shortcuts for virgula, caesura, divisiominima, divisiomaior, divisiomaxima, and finalis * script-init.ly: added shortfermata, longfermata, verylongfermata, varcoda * scm/script.scm, mf/feta-schrift.mf: added shortfermata, longfermata, verylongfermata, varcomma, varcoda 2003-03-19 Mats Bengtsson * Documentation/user/{tutorial.itely,refman.itely,internals.itely}: Remove all noquote and insert a few quote. * Documentation/user/lilypond-book.itely (Music fragment options), scripts/lilypond-book.py: Don't include quotation blocks by default. Introduce option quote instead of noquote 2003-03-17 Han-Wen Nienhuys * VERSION: 1.7.15 released * Documentation/user/lilypond.tely: omf updates. * buildscripts/texi2omf.py (omf_vars): include version.date * make/lilypond.redhat.spec.in: fixes for spec file. * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): replace var by function definition: lily now requires a recent GNU Make. * scripts/lilypond-book.py (write_deps): remove .tex dependency writing. * make/ly-rules.make: remove .ly -> .tex rule * Documentation/user/refman.itely (Figured bass): revised figured bass example. 2003-03-16 Han-Wen Nienhuys * stepmake/stepmake/omf-targets.make (local-install): add scrollkeeper-update message. * scripts/lilypond-book.py (lilypond_binary): explicity add path to binary. (TexiPaper.process_ly2dvi_block): idem for ly2dvi * scripts/ly2dvi.py (lilypond_binary): explicity add path to binary. * Documentation/user/converters.itely (Invoking midi2ly): add track/channel notice. 2003-03-15 Han-Wen Nienhuys * stepmake/stepmake/omf-targets.make (omf-local-install): bugfixes * lily/parser.yy (scalar): DIGIT is also a scalar. * Documentation/user/music-glossary.tely: add @omf tags * Documentation/user/lilypond.tely: add @omf tags * scm/generate-documentation.scm (string-append): add @omf tags. * stepmake/stepmake/omf-*: new files * input/regression/multi-measure-rest.ly (texidoc): add doco * GNUmakefile.in (web-doc-install): add web-doc-install target * lily/scm-hash.cc (remove): prevent underflow of elt_count_. This fixes crashes while dumping MIDI. * ly/performer-init.ly (FiguredBassContext): add Figured bass for midi 2003-03-11 Han-Wen Nienhuys * buildscripts/texi2omf.py: new file. * mf/feta-beugel.mf: include font count, not staffsize (16) in font-name 2003-03-09 Han-Wen Nienhuys * input/regression/beam-manual-beaming.ly (texidoc): new file. * lily/sequential-iterator.cc (descend_to_child): call descend_to_child() for all types of music. 2003-03-08 Jan Nieuwenhuizen * scm/translator-property-description.scm: Add bassFigureFormatFunction. Replace some entries. 2003-03-04 Jan Nieuwenhuizen * cygwin/post-lilypond.sh: Add FHS-specified path for fonts to clean out. 2003-03-08 Han-Wen Nienhuys * scripts/midi2ly.py (Note.dump): never dump duration for dump_dur=0. * scm/chords-ignatzek.scm (alteration->text-accidental-markup): new function * scm/bass-figure.scm (make-bass-figure-markup): reimplement bass figures using new markups. Much simpler, and should improve layout a little. * mf/feta-nummer-code.mf (code): insert space in location 32, not 33. 2003-03-06 Han-Wen Nienhuys * ly/engraver-init.ly: use Hara kiri by default for ChordNames, FiguredBass and Lyrics(Voice) context. * lily/axis-group-engraver.cc (acknowledge_grob): use rhythmic-grob-interface for selecting items not to hara-kiri'd * scm/new-markup.scm (markup-function-list): add bracket, vbracket. * ly/engraver-init.ly (ChordNamesContext): set minimumVerticalExtent 2003-03-05 Han-Wen Nienhuys * input/test/time-signature-double.ly: new file * input/regression/collision-head-chords.ly (texidoc): new file. * lily/type-swallow-translator.cc: add note swallow translator * input/test/time-signature-double.ly: new file. * lily/type-swallow-translator.cc: add Rest_swallow_translator * ly/engraver-init.ly (ChordNamesContext): add Rest_swallow_translator (FiguredBassContext): idem. * VERSION (MY_PATCH_LEVEL): 1.7.14 released * input/mutopia/W.A.Mozart/*.ly (romanze): markup syntax updates. * buildscripts/mf-to-table.py: add .pfa, .pfb target dependency. * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb): remove .afm dependency * buildscripts/mf-to-table.py (write_fontlist): use new markup syntax * python/lilylib.py (make_page_images): add function. * scripts/ly2dvi.py (run_latex): include title in preview image. * scripts/lilypond-book.py (process_ly2dvi_blocks): call ly2dvi from lilypond-book for tags in HTML. * scripts/ly2dvi.py (option_definitions): add --debug option to print out environment. * input/regression/tie-chord-partial.ly: new file. 2003-03-05 Heikki Junes * lilypond.words: add 3 2003-03-05 Han-Wen Nienhuys * scm/new-markup.scm (markup-function-list): add finger-markup * input/tutorial/brahms-tweaked.ly: new markup * scm/bass-figure.scm (brew-one-figure): bugfix for large bass figures * scm/new-markup.scm (brew-new-markup-molecule): robustness: don't crash when processing '() markup * input/regression/breathing-sign.ly (texidoc): add caesura example. * lily/breathing-sign.cc (railtracks): another caesura. * mf/feta-schrift.mf: caesura symbol. 2003-03-04 Han-Wen Nienhuys * scripts/convert-ly.py (FatalConversionError.conv): add ly:molecule-XXX conversions. * lily/molecule-scheme.cc: change names to ly:molecule-XXX * input/regression/multi-measure-rest-text.ly: new file. * scm/music-functions.scm (glue-mm-rest-texts): automatically convert MMREST-TEXT to MultiMeasureRestNumber settings. * ly/engraver-init.ly (ScoreContext): move tablature settings to ScoreContext * scm/new-markup.scm (center-markup): \center markup. * scm/music-functions.scm: remove pitchify scripts. * lily/music.cc (print_smob): display music name if available 2003-03-02 Han-Wen Nienhuys * Documentation/user/refman.itely (Instrument names): remove \turnOff doco. 2003-03-01 Han-Wen Nienhuys * lily/score.cc (mark_smob): bugfix. * input/regression/rehearsal-mark.ly: new file. * lily/my-lily-parser.cc (here_input): revert reporting of errors: report error at the current token again. 2003-02-26 Jan Nieuwenhuizen * cygwin/mknetrel: Exit if doc build fails. * lily/GNUmakefile: Add hack for .deps and --srcdir build. 2003-02-27 Han-Wen Nienhuys * scm/music-types.scm (music-descriptions): add doc strings 2003-02-25 Jan Nieuwenhuizen * lily/lexer.ll: * lily/include/my-lily-lexer.hh: * lily/include/includable-lexer.hh: Add flex kludge. * config.hh.in: * config.make.in: * stepmake/aclocal.m4 (STEPMAKE_DATADIR, STEPMAKE_LIBDIR): Junk cruft. * stepmake/aclocal.m4 (STEPMAKE_LIBDIR): Fix casual cut and paste code. 2003-02-24 Jan Nieuwenhuizen * ly/spanners-init.ly (cresc, dim): Update to new markup text. * lily/parser.yy (new_chord): Compile fix. 2003-02-23 Han-Wen Nienhuys * Documentation/user/refman.itely (Tuning groups of objects): remove documentation for \turnOff. * lily/percent-repeat-engraver.cc (try_music): add correct processing moments for double-measure percents as well. * input/regression/percent-repeat-skipbars.ly (texidoc): new file * lily/lily-guile.cc (ly:dimension?): add dimension as separate grob prop type. * Documentation/user/refman.itely (Printing named chords): add chord name tweak doco. * input/template/gregorian-transcription.ly: new file. 2003-02-22 Han-Wen Nienhuys * VERSION: 1.7.13 released * input/test/*: lots of cleanups/comment-outs/removals in chord examples * input/regression/*: lots of cleanups/comment-outs/removals in chord examples * scripts/lilypond-book.py (check_texidoc): add no-texidoc to options * lily/new-chord-name-engraver.cc (process_music): give original inversion pitch to chord name routine. * input/tutorial/os-score.ly: update to new markup * Documentation/user/appendices.itely: simply include chords-ignatzek. * Documentation/user/refman.itely (Chords mode): add documentation for chord mode. * scm/chord-entry.scm (construct-chord): mark inversion as bass if not present in chord. (construct-chord): add inversion and bass support. * lily/chord.cc: junk contents. 2003-02-17 Heikki Junes * Documentation/user/refman.itely: * Documentation/user/music-glossary.tely: fix. 2003-02-16 Han-Wen Nienhuys * scm/chord-entry.scm (construct-chord): move chord construction to Scheme. * lily/parser.yy (new_chord): new setup for chord entry. 2003-02-16 Heikki Junes * lilypond.words: * Documentation/user/music-glossary.tely: add ambitus. 2003-02-15 Han-Wen Nienhuys * scm/chords-ignatzek.scm (ignatzek-chord-names): robustness fix. * lily/include/*.hh: string() -> to_string() * scm/chords-ignatzek.scm: new file. * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): define standard chord name exceptions. * scm/translator-property-description.scm (chordNameSeparator): add property. (majorSevenSymbol): add property * lily/translator-scheme.cc (ly:context-properties): new function (ly:context-parent): new function. (print_smob): print context name. * lily/music.cc (ly:get-music-length): new function (print_smob): don't print properties. * lily/duration.cc (duration * scm/double-plus-new-chord-name.scm (ignatzek-chord-names): classify pitches for jazz chords. 2003-02-13 Han-Wen Nienhuys * lily/pitch.cc (LY_DEFINE): add ly:pitch-steps 2003-02-05 Heikki Junes * lilypond.words: add 1 2003-02-04 Heikki Junes * Documentation/topdocs/AUTHORS.texi: refine. 2003-01-25 Heikki Junes * lilypond-font-lock.el: lyrics-mode update for multiple stanza. * lilypond.words: add one. 2003-01-23 Heikki Junes * lilypond-font-lock.el: Fontify post-notated slurs [-^_][()]. Fontify bass note in chords, e.g., e in c1/e. 2003-01-19 Jan Nieuwenhuizen * Documentation/user/music-glossary.tely: Dutch updates and additions (Arent Storm). 2003-01-19 Han-Wen Nienhuys * input/regression/ambitus.ly: move file. * lily/include/pitch.hh (class Pitch): make Pitch objects immutable. * lily/event.cc (transpose): add tonic property to Key_change_req and to Key_engraver. 2003-01-17 Heikki Junes * Documentation/user/refman.itely: fix typo. * lilypond.words: removed wrong identifiers. 2003-01-16 Han-Wen Nienhuys * mf/feta-toevallig.mf: make flat stem shorter 2003-01-16 Heikki Junes * lilypond-font-lock.el: Fontify post-notated slurs -( and -). * lilypond.words: add from Phrasing slur. 2003-01-15 Heikki Junes * lilypond-mode.el: allow launching multiple ViewPS processes. * lilypond.words: add from Text markup. 2003-01-14 Han-Wen Nienhuys * input/test/ossia.ly (texidoc): add comment. * input/regression/voice-follower.ly: new file. * mf/feta-toevallig.mf: make flat heavier. * lily/cluster-engraver.cc: clean up Cluster engraver * lily/cluster.cc (brew_molecule): cleaned up Cluster code and Engraver. Use Note_column to compute Y positions and deal with line break stuff. 2003-01-13 Han-Wen Nienhuys * lily/stem.cc: move french-beaming to stem. 2003-01-13 Heikki Junes * lilypond-font-lock.el: fontify all durations in chords. * lilypond.words: add from lily/my-lily-lexer.cc 2003-01-12 Han-Wen Nienhuys * VERSION: release 1.7.12 * lily/vaticana-ligature-engraver.cc (finish_primitive): compile fixes. * lily/gregorian-ligature.cc: new file * lily/*: the Great 2003 search & replace. * Documentation/user/refman.itely (Manual repeat commands): add note about font selection. 2003-01-12 Heikki Junes * lilypond-mode.el: propose recompiling midi while invoking playing, not while stopping playing. 2003-01-11 Heikki Junes * lilypond.words: add one. * lilypond-font-lock.el: add colour groups for horizontal, vertical and expressional note grouping. Fontify chord modes. 2003-01-09 Heikki Junes * Documentation/user/music-glossary.tely (Top): translate melisma. 2003-01-09 Han-Wen Nienhuys * Documentation/user/music-glossary.tely (Top): add melisma. 2002-01-08 Juergen Reuter * lily/gregorian-ligature-engraver.cc: bugfix: added missing interfaces for (abstract) grob GregorianLigature * lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc: renamed head* -> glyph_name*, x-shift* -> x-offset* * scm/grob-property-description.scm: bugfix: added missing descriptions 2003-01-07 Jan Nieuwenhuizen * input/test/chord-names-dpnj.ly: New file. * scm/double-plus-new-chord-name.scm: Implement full and partial exceptions. * lily/lexer.ll: : Allow dash and hyphen in markup command. * scm/double-plus-new-chord-name.scm (double-plus-new-chord->markup): Fix sub->markup. 2003-01-07 Juergen Reuter * lily/custos-engraver.cc: added TODO; editorial changes * lily/ligature-bracket-engraver.cc: added typeset_ligature () for consistency with other ligature engravers; removed access on (now) private variable _ligature of Ligature_engraver * lily/include/ligature-engraver.hh, lily/ligature-engraver.cc: renamed last_bound -> last_bound_; issue programming_error on abstract method calls; moved primitives code from Mensural_bracket_engraver to here (because almost ligature engravers will need it); renamed try_stop_ligature () -> typeset_ligature (); bugfix: store primitives of finished ligature in separate variable finished_primitives_ to avoid clash on input like "\] \["; added current_ligature () to enable access on private variable _ligature * lily/mensural-ligature-engraver.cc: removed primitives_ code (now in super class); renamed try_stop_ligature () -> typeset_ligature () * lily/mensural-ligature.cc: issue programming_error on abstract method calls * lily/note-heads-engraver.cc: added TODO comment upon bool in_ligature * mf/parmesan-heads.mf: fixed some of set_char_box() * scm/grob-description.scm: added VaticanaLigature * scm/grob-property-description.scm: added neume prefix properties * ly/gregorian-init.ly, lily/gregorian-ligature-engraver.cc, lily/include/gregorian-ligature-engraver.hh, lily/include/gregorian-ligature.hh: new files; framework for gregorian ligature engravers such as vaticana * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc, lily/include/vaticana-ligature.hh, input/test/vaticana.ly: vaticana style ligature implementation (still somewhat uncomplete) 2003-01-07 Han-Wen Nienhuys * VERSION: release 1.7.11 * scripts/convert-ly.py: add ly:pitch-transpose rule 2003-01-06 Jan Nieuwenhuizen * input/test/dpncnt.ly: New file. * lily/my-lily-lexer.cc: Add chordnames keyword. * lily/parser.yy (chordnames_block): Parse chord name exception lists, see input/test/dpncnt.ly. * scm/chord-name.scm (set-double-plus-new-chord-name-style): New function. * scm/lily.scm (filter-out-list): Bugfix: filter rest using filter-out too. * lily/pitch.cc (ly_pitch_transpose): Scheme name now ly:pitch-transpose (was ly:transpose-pitch), in conformance with pitch functions (except for ly:make-pitch, but that's apparently some sort of scheme naming standard?). * scm/lily.scm (!=): define-public. * scm/new-markup.scm (make-markup-maker): define-public make-markups. 2003-01-05 Jan Nieuwenhuizen * scm/double-plus-new-chord-name.scm (double-plus-new-chord-name->markup): New file. 2003-01-05 Han-Wen Nienhuys * python/lilylib.py (make_preview): don't suppress progress for bbox extraction. 2003-01-04 Han-Wen Nienhuys * Documentation/user/appendices.itely (scheme): update for new syntax. * input/regression/chord-name-styles.ly: new file * lily/instrument-name-engraver.cc: create instrument names without barline too. Allows instrument name on ChordNames * scm/new-markup.scm (interpret-markup): allow simple strings as markup too. 2003-01-04 Jan Nieuwenhuizen * scm/chord-name.scm: Super/raise changes and fixes for Banter. (step->markup-accidental): Fix: add accidental. (chord::inner-name-american): (chord::inner-name-jazz): Ugly fix from inner-name-banter: do not append stray '/' if last superscript addition was 'o'. * scm/new-markup.scm (normal-size-sub-markup) (normal-size-super-markup): New function. * lily/source-file.cc (Source_file): Add warning for possibly intentional but suspicious initialization. * scm/chord-name.scm: Small rewrites, layout fixes. Identify and add comments about cut-and-paste programming. * flower/rational.cc (lcm): Not used; comment out. 2003-01-04 Han-Wen Nienhuys * lily/new-fingering-engraver.cc (position_scripts): use fingerHorizontalDirection to determine fingering horizontal directions. * lily/accidental-engraver.cc (acknowledge_grob): add accidental to fingering support. * scripts/convert-ly.py (FatalConversionError.conv): add style conversion rule. * scm/chord-name.scm (set-chord-name-style): new function. (new-chord-name-brew-molecule): revise to interpret markup only (new-chord->markup): cleanuppish rewrite. To be called from the new engraver. * lily/new-chord-name-engraver.cc: new engraver: call Chord -> Markup earlier, during interpreting. * input/test/{banter,jazz,american}-chords.ly (scheme): update style settings. Rename to chord-names-*.ly 2003-01-03 Jan Nieuwenhuizen * scm/chord-name.scm: Painful merge of Amy's patch to old-style markup code and update to new markup. Most probably broke some of it. 2002-12-30 Juergen Reuter * Documentation/user/refman.itely: added docu for ambitus and clusters * lily/lookup.cc, scm/tex.scm: cleanup: avoid nasty double ly_quote_scm() in lookup.cc * mf/parmesan-clefs.mf: set_char_box fix * lily/cluster-engraver.cc: junk implicit protection; use Protected_scm instead 2002-12-29 Jan Nieuwenhuizen * scm/chord-name.scm: Junk "`(," constructs, use make-FOO-markup throughout. * scm/new-markup.scm: Turn-off error-triggering test code. 2002-12-29 Han-Wen Nienhuys * scm/new-markup.scm (markup-thrower-typecheck) (markup-typecheck?): add full typechecking functions. (make-markup-maker): add make-FOO-markup functions. (markup-argument-list-error): nice error checking messages. (make-markup): better function: less quoting escapades. 2002-12-29 Jan Nieuwenhuizen * scm/chord-name.scm: Remove fixme's. Jazz chords still broken. 2002-12-28 Jan Nieuwenhuizen * cygwin/lilypond.hint (requires): Add cygwin. * .cvsignore: Remove stepmake (huh!?!), add lib. * GNUmakefile.in: Add libdir links for builddir runs. * scripts/midi2ly.py: Add [lilypond_]libdir/python to path, instead of datadir. * make/substitute.make (ATVARIABLES): Add lilypond_libdir, local_lilypond_libdir. * config.make.in (lilypond_libdir): Add. * stepmake/stepmake/substitute-rules.make: * stepmake/stepmake/script-rules.make: * stepmake/stepmake/python-module-rules.make: * stepmake/aclocal.m4 (STEPMAKE_LIBDIR): Fixes from lilypond-python-module patch. 2002-12-27 Han-Wen Nienhuys * Documentation/user/refman.itely (Graphical interfaces): add note about xml2ly. 2002-12-25 Han-Wen Nienhuys * scripts/ly2dvi.py (run_dvips): remove trailing newline 2002-12-24 Han-Wen Nienhuys * VERSION: released 1.7.10 * scripts/musedata2ly.py (): idem * scripts/midi2ly.py (dump_chord): idem * scripts/etf2ly.py (version): idem * scripts/pmx2ly.py (Slur.calculate): new chord syntax * scripts/mup2ly.py (pre_processor_commands): new chord syntax * scm/tex.scm (tex-output-expression): remove eval compat glut. Other output files too. * scm/chord-name.scm: don't export anything from chord module. * input/test/american-chords.ly: idem * input/test/banter-chords.ly (texidoc): idem * input/test/Cc-chords.ly: add breakage notes. * Documentation/user/refman.itely (Text markup): rewrite manual section. * lily/parser.yy (scalar): allow \markup { } as property value. * scm/chord-name.scm: complete new markup usage * scm/grob-description.scm (all-grob-descriptions): use new markup texts by default 2002-12-20 Han-Wen Nienhuys * scm/chord-name.scm: partial move to new markup texts. 2002-12-18 Han-Wen Nienhuys * scm/grob-description.scm (all-grob-descriptions): small bass figures. * scm/bass-figure.scm (brew-bass-figure): make stack direction settable. 2002-12-18 Heikki Junes * lilypond-mode.el (LilyPond-command): propose 2midi if midi is invoked for old midi, wait for killing. 2002-12-16 Heikki Junes * Documentation/user/music-glossary.tely: Finnishing. 2002-12-15 Han-Wen Nienhuys * mf/feta-nummer-code.mf: some kerning pairs. 2002-12-14 Rune Zedeler * scm/output-lib.scm (set-bar-number-visibility): Context-function Added. * Documentation/user/refman.itely (Bar numbers): set-bar-number-visibility added, modulo-bar-number removed again (sorry). 2002-12-14 Heikki Junes * scm/output-lib.scm (modulo-bar-number-visible): add function. * Documentation/user/refman.itely: add modulo-bar-number-visible. * Documentation/user/music-glossary.tely: translate into Finnish. 2002-12-10 Heikki Junes * lilypond-mode.el: add shortcut for 2midi * lilypond-font-lock.el: fontify lyrics 2002-12-10 Rune Zedeler * scm/drums.scm : use 1.7.x names. * input/regression/drums.ly : Don't use << chords >> 2002-12-10 Heikki Junes * lilypond-mode.el: tidy, add TODO * make/lilypond.mandrake.spec.in: install-info quietly. 2002-12-09 Han-Wen Nienhuys * input/test/markup.ly: use new syntax. 2002-12-08 Han-Wen Nienhuys * ly/params-init.ly (interscoreline): add word-space * input/test/metronome.ly (eighthNote): idem. * input/test/script-priority.ly: use new markup * lily/parser.yy (markup): allow HEAD markup0 markup1 * lily/molecule-scheme.cc (ly:molecule-translate): new function. * lily/parser.yy (gen_text_def): bugfix. (full_markup): allow markup identifier. 2002-12-09 Heikki Junes * lilypond-mode.el (LilyPond-kill-job): Kill all LilyPond compiling jobs at the same time. Add horizontal lines to Command menu. Allow one compiling job -- propose killing others before a new one. * lilypond.words: add markup, teeny, etc. 2002-12-08 Heikki Junes * lilypond-mode.el: Use LilyPond-command-alist for Midi and MidiAll. Allow only one type of midi process; launching Midi either stops midis or plays the current midi and launching MidiAll stops midis and starts timidity with "-ia", i.e., XAW-interface. Bind C-c C-return to MidiAll. Choose "timidity-[1-9].ly" etc. files to MidiAll. 2002-12-07 Han-Wen Nienhuys * lily/text-engraver.cc (process_acknowledged_grobs): use new markup for new markup texts. * lily/mark-engraver.cc (process_music): idem * lily/instrument-name-engraver.cc (create_text): idem * scm/new-markup.scm (magnify-markup): new function. * scm/molecule.scm (stack-lines): bugfix. * lily/font-interface.cc (get_font): take font-magnification from alist chain. 2002-12-06 Han-Wen Nienhuys * lily/molecule-scheme.cc: move scheme functions to separate file. * lily/font-metric.cc (ly_get_glyph): new function. * scm/new-markup.scm (column-markup): use baseline-skip for columns. (italic-markup, dynamic-markup): new functions (font-markup): new function * lily/molecule.cc (ly_molecule_combined_at_edge): optional padding and minimum 2002-12-07 Rune Zedeler * lily/accidental-engraver.cc: Bugfix: Also print forced accidentals when autoAccidentals = \turnOff 2002-12-06 Heikki Junes * lilypond.vim: * lilypond-font-lock.el: Put \longa as duration. Accept only [a-zA-Z] for user defined identifiers. Separate note cases with and without a duration (allow cis\longaX). * lilypond.words: Add words from Info. 2002-12-06 Mats Bengtsson * stepmake/stepmake/c++-rules.make: Compile fix (bison 1.28) 2002-12-05 Heikki Junes * lilypond-mode.el: Propose reverting buffer before a command if it was edited with an another editor. 2002-12-05 Han-Wen Nienhuys * lily/molecule.cc (ly_translate_molecule): new function * python/GNUmakefile (INSTALLATION_DIR1): install Python module into libdir * autogen.sh (srcdir): copy aclocal.m4 if newer. * stepmake/aclocal.m4: STEPMAKE_LIBDIR. 2002-12-04 Heikki Junes * lilypond.words: take \words from Info-index. 2002-12-04 Jan Nieuwenhuizen * scm/sodipodi.scm: Add instruction for generating pfa fonts. 2002-12-02 Heikki Junes * make/lilypond.mandrake.spec.in: use %make and %makeinstall. 2002-12-01 Heikki Junes * make/lilypond.mandrake.spec.in: set menu-items to lilypond-info and lilypond-documentation. 2002-12-02 Jan Nieuwenhuizen * lily/parser.yy: Compile fix (bison 1.75). 2002-12-01 Han-Wen Nienhuys * VERSION: 1.7.9 released * scm/music-functions.scm (shift-one-duration-log): refactor. Use music-map. * input/regression/chord-tremolo.ly (texidoc): add dot test. * NEWS: update. * lily/font-interface.cc (get-font): take alist chain i.s.o. alist argument * scm/music-functions.scm (display-music): new function (music-map): change arg order. * input/regression/new-markup-syntax.scm: new file * lily/parser.yy (markup): add \markup { .. } syntax. * scm/new-markup.scm (override-markup): new function (lookup-markup): new function (music-markup): new function (lookup-markup-command): use markup-signature to store argument format for parser. * lily/lexer.ll: preliminary \markup syntax. 2002-11-30 Heikki Junes * make/lilypond.mandrake.spec.in: remove extra %changelog entries, add pre/post-dependencies and menus with icons from source. * Documentation/pictures/lilypond-48x48.xpm: * Documentation/pictures/lilypond-32x32.xpm: * Documentation/pictures/lilypond-16x16.xpm: new files, background transparent. * stepmake/stepmake/generic-targets.make: * stepmake/stepmake/toplevel-targets.make: Add make rpm-mandrake. 2002-11-29 Han-Wen Nienhuys * input/regression/music-map.ly (texidoc): new file. * scm/music-functions.scm (music-map): new function 2002-11-28 Han-Wen Nienhuys * lily/ligature-engraver.cc (create_ligature_spanner): fix fixes. 2002-11-28 Heikki Junes * input/test/to-xml.ly: * lily/ligature-engraver.cc: Fixes documentation. * lilypond.mandrake.spec.in: * lilypond.redhat.spec.in: Add lilypond.words. * Documentation/user/refman.itely: Mention Info inside emacs. * lilypond.suse.spec.in: * lilypond.redhat.spec.in: * lilypond.mandrake.spec.in: Set root-owner for doc (tobbe@nyvalls.se). 2002-11-27 Jan Nieuwenhuizen * scripts/ly2dvi.py (run_dvips): Use ly.read_pipe () instead of os.popen.read (). 2002-11-27 Han-Wen Nienhuys * scripts/ly2dvi.py (include_path): print warning if failing anything. * python/lilylib.py (error): add space 2002-11-25 Han-Wen Nienhuys * GNUmakefile.in (EXTRA_DIST_FILES): add lilypond.words for distribution. 2002-11-24 Han-Wen Nienhuys * lily/paper-outputter.cc (Paper_outputter): close port when finishing score. 2002-11-26 Jan Nieuwenhuizen * scm/sodipodi.scm: Fixes. 2002-11-26 Heikki Junes * lilypond-mode.el: Look shortcuts in menu from keymap, if possible. * buildscripts/make-font-dir.py: Fix. 2002-11-25 Heikki Junes * lilypond-mode.el: Add support for Info inside Emacs. 2002-11-24 Jan Nieuwenhuizen * buildscripts/make-font-dir.py: * mf/GNUmakefile: Make sodipodi font map. * scm/sodipodi.scm: Add more output functions. * mf/feta-nummer.mf: * mf/feta-beugel.mf: Add font_coding_scheme. * lily/paper-outputter.cc (output_header): Fix creator string. 2002-11-23 Heikki Junes * lilypond-mode.el (LilyPond-autocompletion): invoked with [S-iso-lefttab], fixes at bol and eol, descriptive variable names. * lilypond.words: add two (Everybody can add/remove words now!). * debian/rules: * make/lilypond.suse.spec.in: * make/lilypond.mandrake.spec.in: * make/lilypond.redhat.spec.in: Add lilypond.words for emacs-files. * Documentation/user/refman.itely: Mention autocompletion. 2002-11-23 Jan Nieuwenhuizen * scripts/ly2dvi.py: Add paper sizes. * lily/timing-engraver.cc: * lily/time-signature.cc: * lily/span-bar.cc: * lily/grob-scheme.cc: Code formatting fixes. * scm/sodipodi.scm: * scm/sketch.scm: * buildscripts/mf-to-table.py: * buildscripts/make-font-dir.py: Font testing. 2002-11-23 Heikki Junes * lilypond-mode.el (LilyPond-autocompletion): deletes end-of-word, inserts try-completion and shows all-completions. * lilypond.words: '\' -> '\\' * lilypond-mode.el: load libraries in the end, lilypond.words defines LilyPond-keywords, LilyPond-identifiers and LilyPond-reserved-words. * lilypond-font-lock.el: Use LilyPond-keywords, LilyPond-identifiers and LilyPond-reserved-words. 2002-11-22 Heikki Junes * lilypond-mode.el (LilyPond-words-filename): find lilypond.words from load-path. * lilypond-mode.el (LilyPond-autocompletion): shows completions in the mini-buffer with Control-Shift-c. 2002-11-21 Han-Wen Nienhuys * lily/parser.yy (tempo_event): use tempo-unit for \tempo duration. This fixes \tempo taking time. 2002-11-21 Mats Bengtsson * lily/volta-engraver.cc (process_acknowledged_grobs): Allow for text markup in repeatCommands. 2002-11-21 Heikki Junes * lilypond-mode.el (LilyPond-insert-string): new function, use it in LilyPond-insert-tag-notes. LilyPond-insert-between, new function. Get rid of skeleton.el-dependency. * Documentation/topdocs/INSTALL.texi: tell how to get syntax-highlight. 2002-11-20 Han-Wen Nienhuys * lily/beam-engraver.cc (stop_translation_timestep): reset now_stop_ev_ * lily/scm-option.cc: add parse-protect to ly:set-option * lily/lexer.ll: set errorlevel if GUILE fails during parse. 2002-11-19 Han-Wen Nienhuys * lily/include/ligature-bracket.hh: removed * lily/ligature-bracket.cc: removed * lilypond-mode.el (LilyPond-expand-alist): set LaTeX extension to .tex * lily/beam.cc (set_beaming): don't change beam count on rests. (brew_molecule): always set flag-width > 0. 2002-11-19 Heikki Junes * lilypond-mode.el: LilyPond-imenu-generic-re: only alphabetic chars, remove instructions; instead, refer to lilypond-init.el and Documentation/topdocs/INSTALL.texi. * lilypond.words: add identifiers and reserved words. * Documentation/topdocs/INSTALL.texi: separate sections for installing files and adding a load-path. * lilypond-init.el: Instructions, extracted from Documentation/topdocs/INSTALL.texi. 2002-11-19 Han-Wen Nienhuys * VERSION: 1.7.8 released * lily/grob.cc (warning): better robustness fix. 2002-11-19 Juergen Reuter * lily/cluster-engraver.cc: bugfix: use protected scm upon columns * lily/cluster-engraver.cc: stick better to variable naming conventions * lily/cluster-engraver.cc: bugfix: delay typesetting of cluster until stop_translation_timestep() * lily/cluster-engraver.cc, lily/cluster.cc: design fix: pass min/max coordinates to backend, but no musical info such as pitches * lily/cluster.cc: robustness fix: do not crash upon empty cluster * lily/grob.cc: robustness fix: warning(): do not crash if cause is not set * lily/ligature-bracket-engraver.cc, scm/grob-description.scm: use the much more elaborated tuplet brackets than the very naive and simple ligature bracket grob 2002-11-19 Han-Wen Nienhuys * Documentation/user/refman.itely (Analysis brackets): add horizontal bracket doco. * ly/property-init.ly (setMmRestFermata): added. * Documentation/user/refman.itely (Multi measure rests): fermatas on mm rests. * input/regression/apply-context.ly (texidoc): new file * lily/parser.yy (Simple_music): \applycontext #FUNCTION allows code to be executed during interpretation. Possible applications: smart octavation, more advanced bar checks. * lily/apply-context-iterator.cc: new file. 2002-11-18 Han-Wen Nienhuys * input/test/new-markup.ly: new file. * lily/text-item.cc (text_to_molecule): new function * scm/new-markup.scm (lambda): new file * lily/function-documentation.cc (ly_add_function_documentation): add proc property as well 2002-11-17 Han-Wen Nienhuys * Documentation/user/music-glossary.tely (Top): add custos. 2002-11-18 Heikki Junes * Documentation/topdocs/INSTALL.texi: advise how to include source path to Emacs load-path and improve language. 2002-11-16 Jan Nieuwenhuizen * GNUmakefile.in: config.h message fix. * autogen.sh: * aclocal.m4: Regenerate. * configure.in: * config.make.in: * stepmake/config.make.in: * stepmake/configure.in: * stepmake/autogen.sh: * stepmake/aclocal.m4: Update for autoconf 2.56. 2002-11-16 Heikki Junes * Documentation/topdocs/INSTALL.texi: instructions for an user how to install Emacs-mode. Instructions how to use vim-mode. 2002-11-14 Han-Wen Nienhuys * scm/music-types.scm (music-descriptions): no length for tempo event. * input/*.ly: add \version everywhere. * input/*.ly: update syntax to 1.7 + new-chords. * VERSION: 1.7.7 released. * Documentation/user/*.tely: new chord syntax. * input/regression/[bc]*.ly (texidoc): syntax updates. 2002-11-13 Heikki Junes * lilypond.words: add vocabulary to be used in auto-completion * vimrc: autocompletion in Insert/Replace-mode with * lilypond.vim: allow note name at EOF 2002-11-13 Han-Wen Nienhuys * buildscripts/new-chords.py (edit): -e option: inline editing. * input/regression/a*.ly (texidoc): syntax updates. * Documentation/user/lilypond-book.itely (Integrating La@TeX{} and music): elucidations. 2002-11-11 Juergen Reuter * lily/include/lily-proto.hh, ly/engraver-init.ly, ly/spanners-init.ly, scm/grob-description.scm, scm/grob-property-description.scm, scm/music-types.scm, lily/cluster-engraver.cc, lily/cluster.cc, lily/include/cluster.hh, input/test/cluster.ly: cluster implementation * lily/include/lookup.hh, lily/lookup.cc, scm/pdf.scm ps/music-drawing-routines.ps, scm/ascii-script.scm, scm/ps.scm, scm/sketch.scm, scm/tex.scm: support for dots and polygons added * lily/lookup.cc: bugfix: fixed infinite loop in frame () * mf/parmesan-heads.mf: bugfix: vaticana punctum set_char_box * scm/grob-description.scm: bugfix: by default, use default note head style when engraving ligatures * lily/note-heads-engraver.cc: bugfix: do not steal ligature events * lily/mensural-ligature-engraver.cc: bugfix: accept ligature events * lily/ligature-bracket-engraver.cc: bugfix: accept ligature events * input/test/ancient-font.ly: bugfix: style -> flag-style * lily/ligature-engraver.cc: indentation fix * lily/parser.yy: indentation fixes 2002-11-09 Han-Wen Nienhuys * input/regression/measure-grouping.ly: more elaborate example. * lily/moment.cc: ly:add-moment, ly:mul-moment, ly:div-moment. New functions * scm/music-functions.scm (set-time-signature): new function, allow inline time sig settings with measure grouping. * lily/parser.yy (command_element): move time sig construction into Scheme. * lily/side-position-interface.cc (out_of_staff): new function, like padding, but keep minimum distance from staff. Easier than linespanners (dynamics, pedals), but roughly the same effect. 2002-11-10 Heikki Junes * emacs-mode.el: Added spanish-note-replacements (Carlos Betancourt, ). * vimrc: (Un)commenting with <(S-)F12>, tidy. 2002-11-08 Heikki Junes * lilypond.vim: Do not fontify cises, desis, etc. * vimrc: view dvi with 2002-11-08 Han-Wen Nienhuys * lily/lookup.cc (triangle): new function. * input/regression/measure-grouping.ly (texidoc): new file: show triangles and brackets for beat groups of 3 and 2. * lily/include/measure-grouping-spanner.hh (class Measure_grouping): new file. * lily/measure-grouping-spanner.cc (brew_molecule): new file * lily/measure-grouping-engraver.cc (class Measure_grouping_engraver): new file. 2002-11-06 Jan Nieuwenhuizen * Merge from stable: cvs update -jlilypond_1_6_6 -jlilypond_1_6_6_1 * ly/paper16-init.ly (paperSixteen): Bugfix: set fonts instead of stylesheet. * ly/paper19.ly: Include paper19-init.ly. * ly/paper19-init.ly: New file. * Documentation/user/tutorial.itely (First steps): Fix first example for font test. * input/tutorial/brahms-tweaked.ly: Fix by hand for font test. * ChangeLog: Add 1.7.6 release marker (see below). * stepmake/stepmake/python-module-vars.make (EXTRA_DIST_FILES): Add .py files. 2002-11-06 Han-Wen Nienhuys * input/tutorial/sammartini.ly (bassvoices): to new syntax. * input/tutorial/*.ly: update to new syntax. * lily/parser.yy (Composite_music): new transpose syntax, \transpose FROM TO MUSIC. 2002-11-04 Jan Nieuwenhuizen * scripts/lilypond-book.py: * scripts/ly2dvi.py: Fix: redirect latex progress/error output to stderr (by default this goes to stdout). Show lilypond progress, even when not verbose. * python/lilylib.py (system): New optional parameter to control showing of progress. * scm/backend-documentation-lib.scm (check-dangling-properties): Fix error message. * lily/text-item.cc (ADD_INTERFACE): Remove align, magnify. Add axis, extent. * scm/grob-property-description.scm (magnify): Remove. (extent, axis): Add. 2002-11-03 Han-Wen Nienhuys * VERSION: Release 1.7.6. * scripts/convert-ly.py: more uniformization substitutions. * buildscripts/new-chords.py (sub_chords): new file. 2002-11-03 Jan Nieuwenhuizen * mf/GNUmakefile: Bugfix: Use actual fontname (.AFM FontName) for lilypond.map. Include sauter fonts too. Cleanups. 2002-11-02 Han-Wen Nienhuys * Documentation/user/tutorial.itely (First steps): change to new chord/tie/slur/beam notation. * lily/parser.yy (event_that_take_dir): allow postfix notation for ties. * lily/new-tie-engraver.cc (process_acknowledged_grobs): new engraver. Process ties in postfix notation, i.e. c8-~ c * lilypond-mode.el (LilyPond-command-alist): run LaTeX by default. * input/regression/beam-postfix-notation.ly (texidoc): new file. * lily/parser.yy (event_that_take_dir): allows c8-[ for beams. * lily/beam-engraver.cc (try_music): accept new-beam-events * input/regression/chord-scripts.ly (texidoc): new file * lily/new-fingering-engraver.cc (acknowledge_grob): also handle script-events. * scm/script.scm (default-script-alist): cleanup. * lily/script-engraver.cc (make_script_from_event): cleanup. * lily/lyric-combine-music-iterator.cc (Lyric_combine_music_iterator): remove superfluous events. (melisma_busy): new function. Fix broken melismas. 2002-10-31 Heikki Junes * vimrc: Add shortcuts for compiling, midi-playing and PS-viewing. Remove nonvalid settings. Use descriptive key names. Use to indicate the pressing of that key. 2002-10-30 Jan Nieuwenhuizen * scripts/lilypond-book.py (option_definitions): Typo. * scripts/ly2dvi.py: Updates. * python/lilylib.py (setup_environment, print_environment) (get_bbox, make_preview): Merge and remove from ly2dvi and lilypond-book. * scripts/lilypond-book.py: Use lilylib. Cleanups. * .cvsignore: Remove some cruft. * make/lilypond-vars.make (PYTHONPATH): Add python's outdir to path. * scripts/ly2dvi.py: Use lilylib as module. Fail gracefully if kpsexpand, kpsewhich, ps2pdf exit with error. Cleanups and fixes throughout. * python/lilylib.py (quiet_system): Junk (system): Display error log upon failure. (read_pipe): New function. Cleanups and fixes. * python/*.py: Rename from *.py.in. * make/substitute.make (ATVARIABLES): Add lilypond_datadir. * GNUmakefile.in (SUBDIRS): Move python before scripts. 2002-10-30 Jan Nieuwenhuizen * python/GNUmakefile: Bugfix: handle modules. * stepmake/stepmake/python-module-targets.make (default): Add compiled modules. * stepmake/stepmake/python-module-rules.make: Add rule for byte compiling modules. * stepmake/stepmake/python-module-vars.make (OUT_PY_MODULES): Bugfix. (OUT_PYC_MODULES): Add. 2002-10-30 Heikki Junes * make/lilypond.mandrake.spec.in: Repair info. Comment out menu. Use default paths. Refresh description. 2002-10-28 Han-Wen Nienhuys * VERSION: 1.7.5 released * input/regression/finger-chords.ly (texidoc): new file. * lily/script-engraver.cc (process_music): remove scriptHorizontal support * lily/fingering-engraver.cc (process_music): remove kludgy scriptHorizontal stuff. * lily/script.cc: remove staff-support property. * lily/new-fingering-engraver.cc (add_fingering): new file. Fingering engraver for new style chords. 2002-10-27 Han-Wen Nienhuys * lily/parser.yy (bare_number): allow 4 \cm (without decimal dot). (should backport to 1.6?) * ly/declarations-init.ly: use Scheme for dimension defs. * lily/parser.yy (TODO): remove hard coded dimensions, add REAL NUMBER_IDENTIFIER production. * lily/rest-collision.cc (force_shift_callback): rewrite using -done property. * scm/grob-property-description.scm (rest-collision-done): add property. * lilypond.vim: add file () 2002-10-23 Han-Wen Nienhuys * input/regression/multi-measure-rest-center.ly: new file. * lily/multi-measure-rest.cc (big_rest): multi measure rest was off horizontally by 0.05 ss. Fixed. 2002-10-22 Jan Nieuwenhuizen * scm/pdftex.scm: Rename ly-number to ly:number->string. * Documentation/topdocs/index.tely: Remove duplicate from merge. 2002-10-22 Han-Wen Nienhuys * lily/tie.cc (get_control_points): also avoid staff lines on the just outside the outer staff lines 2002-10-21 Jan Nieuwenhuizen * ly/params-init.ly: Just define style-alist, no need to define-public. * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly: Fix style override (thanks Han-Wen). * mf/GNUmakefile (FONT_FILES): Add feta-nummer. (FET_FILES): = FONT_FILES. * Merge from stable: cvs update -jlilypond_1_6_5 -jlilypond_1_6_6 2002-10-21 Han-Wen Nienhuys * VERSION: 1.7.4 released. * scm/generate-documentation.scm (string-append): add macro definitions. * lily/text-item.cc (lookup_text): don't use virtual fonts for normal texts. * lily/multi-measure-rest-engraver.cc: make separate MultiMeasureRestNumber grob. Introduce restNumberThreshold. * lily/multi-measure-rest.cc: remove text handling. Remove number-threshold. 2002-10-20 Han-Wen Nienhuys * scm/music-types.scm: doc patch by Graham Percival 2002-10-19 Jan Nieuwenhuizen * buildscripts/make-font-dir.py (sketch_p): Bugfix: only write encoding part. (Font_info.set_defaults): pixelsize now also defauts to '0'. (sketch_p): Sketch wants only first four elements of X11 font spec. * buildscripts/mf-to-table.py (parse_logfile): Bugfix. * mf/feta-autometric.mf: Write foundry and family to log. * mf/GNUmakefile: Fixes for pfx builds. Also write sketch font translation table. * buildscripts/mf-to-table.py: Better font info into afm. * buildscripts/make-font-dir.py: Use font info from afm. Mftrace 1.0.9 required. * configure.in: Whine for mftrace 1.0.9. 2002-10-19 Han-Wen Nienhuys * lily/parser.yy (chord_body): allow <>4 notation. * lily/main.cc (main_prog): don't try to load init.EXT when processing foo.EXT. 2002-10-15 Rune Zedeler * scm/tex.scm (zigzig-line): added. * scm/ps.scm (zigzag-line): added. * ps/music-drawing-routines.ps (subvec): added. (draw_zigzag_line): added. * lily/line-spanner.cc: Add support for #'type = #'zigzag. reading grob properties zigzag-width and zigzag-length. * input/regression/glissando.ly: Add some zig-zagged glissandi. 2002-10-15 Jan Nieuwenhuizen * scm/sodipodi.scm: Some fixes. Sketch also groks this bare-bones svg output, including font. 2002-10-14 Jan Nieuwenhuizen * scm/lily.scm: Register sodipodi output module. * scm/sodipodi.scm: New file. * lily/afm.cc (read_afm_file): Read TfmCheckSum from comment. * buildscripts/mf-to-table.py (base): Write TfmChecksum in comment, after header. (parse_logfile): Remove invalid key FontFamily. Add mandatory key FullName. Fix FontName key. 2002-10-14 Rune Zedeler * lily/rest.cc (after_line_breaking): bugfix: dots after half and breve rests. * input/test/blank-notes.ly: bugfix * lily/rest.cc (after_line_breaking): bugfix: dots after whole rests. (Kim Shrier) * input/test/rest-dot-positions.ly: Added. (Kim Shrier) 2002-10-14 Jan Nieuwenhuizen * scm/tex.scm: * scm/ps.scm: Cleanup and remove obsolete junk. * Documentation/user/internals.itely: * Documentation/user/refman.itely: Run texinfo-all-menus-update. * lily/parser.yy: Identify shift/reduce problems. * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly: Rename make-style-sheet. Too specific for convert-ly? 2002-10-14 Han-Wen Nienhuys * po/cs.po: added czech translation, courtesy Tomas Kopecek. * input/test/*.ly: various fixes. * lily/music.cc (name): bugfix * lily/piano-pedal-engraver.cc (try_music): fix pedals. * lily/input-file-results.cc (code): set-point-and-click! -> set-point-and-click 2002-10-13 Han-Wen Nienhuys * Use uniform ly: prefix for exported scheme primitive functions. * scm/music-types.scm: junk compat glue * scripts/convert-ly.py: add rules for stuff below, junk compatibility glue for spanrequest. * lily/parser.yy (verbose_event): remove \spanrequest, \commandspanrequest, \script. * lily/identifier-smob.cc (LY_DEFINE): change name to ly-export * lily/parser.yy: remove arpeggio keyword; use identifier. Idem for \penalty, \glissando. * VERSION: release 1.7.3 2002-10-13 Rune Zedeler * lily/accidental-engraver.cc: Fix grace-in-the-beginning-of-measure bug caused by the resent partial-measure fix. * lily/stem.cc: reversed noteheads overlap half of the stem. (Full overlap looks too crowded) 2002-10-13 Han-Wen Nienhuys * lily/parser.yy (assignment): allow SCM expression as assignment. * lily/include/music-output-def.hh (class Music_output_def): * lily/music-output-def.cc: * lily/paper-def.cc: * scm/font.scm (markup-to-properties): * lily/parser.yy (music_output_def_body): remove style_sheet_ 2002-10-12 Han-Wen Nienhuys * ly/grace-init.ly (startGraceMusic): shorten default grace stem length. * input/regression/spacing-to-grace.ly: new file. * input/regression/spacing-end-of-line.ly: new file. * lily/note-spacing.cc (get_spacing): take into account breakable stuff sticking out at the left (time sig change at line break). * lily/spacing-spanner.cc (breakable_column_spacing): junk weird raggedright code. * scm/music-functions.scm (make-voice-props-set): add staff-position for mm rests. * lily/spacing-spanner.cc (musical_column_spacing): shrink space before grace notes a little. * lily/parser.yy (sup_quotes): use '\'' for sup_quotes. * lily/break-align-interface.cc (do_alignment): right-edge spacing key adds space at the end of line. 2002-10-11 Jan Nieuwenhuizen * scm/sketch.scm: Fix beams. * buildscripts/mf-to-table.py: Add EncodingScheme. * scm/sketch.scm: Resurrect. 2002-10-11 Han-Wen Nienhuys * lily/multi-measure-rest.cc: use breve rests for measure lengths longer than 4/4. Patch courtesy Kim Shrier . 2002-10-10 Jan Nieuwenhuizen * stepmake/stepmake/c++-rules.make: Fixes for bison 1.50. * lily/lexer.ll (My_lily_lexer): Avoid silly flex induced gcc warnings. 2002-10-11 Han-Wen Nienhuys * lily/my-lily-lexer.cc (prepare_for_next_token): use previous token for origin information. * lily/parser.yy (My_lily_lexer): do identifier location and cloning from lexer. * scm/music-functions.scm (make-multi-measure-rest): move mmrest logic out of the parser. Add bar checks on both ends. * Documentation/user/refman.itely (Multi measure rests): add more notes about mm rests. 2002-10-10 Jan Nieuwenhuizen * input/regression/bar-scripts.ly: Re-enable. * lily/parser.yy: * stepmake/stepmake/c++-rules.make: Fixes for bison 1.51 to be released rsn. Bison 1.50 has a crucial bug and won't work. * lily/lexer.ll (My_lily_lexer): Avoid silly flex induced gcc warnings. 2002-10-07 Jan Nieuwenhuizen * input/regression/bar-scripts.ly: Blunt documentation build fix. 2002-10-05 Jan Nieuwenhuizen * Actually merge changes since 1.6.4 besides ChangeLog, and resolve conflicts. Lots of updates, hope all is well. * cygwin/lilypond.hint (requires): Add ghostscript. * scm: Update some (c). 2002-10-07 Han-Wen Nienhuys * input/test/{various}.ly: add \header fields and texidoc strings. 2002-10-05 Werner Lemberg * scripts/lilypond-book.py (output_dict) : `output_tex' renamed to `output_latex_quoted'. Added `output_latex_noquote'. (schedule_lilypond_block): Implement `noquote' option for LaTeX mode. 2002-11-03 Jan Nieuwenhuizen * ChangeLog: Add 1.6.6 release marker. See below. * stepmake/stepmake/po-targets.make: Remove --c++ option. * scripts/midi2ly.py: Fix global syntax warnings. * GNUmakefile.in: Generate builddir locale tree too. * scripts/ly2dvi.py: * scripts/midi2ly.py: * scripts/mup2ly.py: * scripts/update-lily.py: * lily/main.cc (setup_paths): Fix for locales setup. 2002-10-29 Jan Nieuwenhuizen * Documentation/windows/installing.texi: Soften wording about necessity of becoming Administrator. tommie@iae.nl reports this does not seem to be necessary for his flavour of Windows 2000. Explicitely discourage text mode mounts. 2002-10-27 Han-Wen Nienhuys * lily/rest.cc (after_line_breaking): backport dot position fix. * lily/rest-collision.cc (do_shift): also remove dots for suicided rests. Thanks to Klaus Zimmermann for finding this bug. 2002-10-24 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi: Correction for broken /bin/sh. 2002-10-24 Han-Wen Nienhuys * Documentation/user/music-glossary.tely: fix links. 2002-10-21 Werner Lemberg * tex/lily-ps-defs.tex (\lilypondsetdimen): Define ID macro. (\lilypondpostscript): Define PS macros `lyscaleXXX' (`XXX' is the scaling factor) only once and use them in the definition of \embeddedps. * ps/music-drawing-routines.ps (skeel): Removed. 2002-10-21 Jan Nieuwenhuizen * stepmake/aclocal.m4: Changed 6 instances of $( ) to ` `, for Solaris7, as we don't use nested $( ) constructs. 2002-10-21 Han-Wen Nienhuys * VERSION: Release 1.6.6. 2002-10-21 Jan Nieuwenhuizen * Documentation/topdocs/INSTALL.texi: Add note about using ksh for as workaround for /bin/sh problems on Solaris7. 2002-10-19 Werner Lemberg * GNUmakefile.in (web-doc): Fix typos. * tex/lilyponddefs.tex (\lilypondspecial): Don't scan `music-drawing-routines.ps' but emit \special{header=...} once. * scm/tex.scm (header-end): Updated. 2002-10-19 Han-Wen Nienhuys * lily/stem-engraver.cc (acknowledge_grob): don't crash on undefined tremolo. 2002-10-15 Werner Lemberg * scripts/lilypond-book.py (g_make_html): New global variable. (schedule_lilypond_block): Don't compute EPS and PNG for `texi' if `g_make_html' isn't set. [main]: Add format `texi-html'. (option_definitions): Updated. * Documentation/user/lilypond-book.itely: Updated. * make/lilypond-vars.make (LILYPOND_BOOK_FORMAT): New variable. * make/ly-rules.make (%.texi, %.nexi): Use it. * stepmake/stepmake/www-targets.make (web): Pass `tex-html' as format to lilypond-book. * GNUmakefile.in (web-doc): Ditto. 2002-10-14 Werner Lemberg Further improve TeX output. The produced files are about 40% smaller. `lilyponddefs.tex' is now read only once. * tex/lilyponddefs.tex: Remove footer stuff. (\ifundefined): Renamed to... (\lilypondundefined): This. Use LaTeX's definition to make it nestable and make it global. (\lilypondstart, \lilypondend): New macro to initialize LilyPond output. (\lilypondspecial): New macro to read `music-drawing-routines.ps'. (\fetasixteen, \fetafont, \fetachar, \botalign, \leftalign): Make them global. (\placebox): Renamed to... (\lyitem): This. Make it global and call \outputscale by itself. (\lybox, \lyvrule): New macros to reduce input data. (\lilypondfirst, \lilypondsecond, \lilypondloop, \lilyponditerate): New auxiliary macros. (\SkipLilydefs, \EndLilyPondOutput): Removed. * tex/lily-pdf-defs.tex, tex/lily-ps-defs.tex (\lilySpace): Renamed to... (\lilypondspace): This and made it global. (\turnOnPostScript): Renamed to... (\lilypondpostscript): This and made it global. (\turnOnExperimentalFeatures): Renamed to... (\lilypondexperimentalfeatures): This and made it global. * tex/lily-ps-defs.tex (\PSsetTeXdimen): Renamed to... (\lilypondsetdimen): This and made it global. * tex/lilypond-latex.tex, tex/lilypond-plaintex.tex: Removed. * tex/GNUmakefile (TEX_FILES): Add `music-drawing-routines.ps' (all, $(outdir)/music-drawing-routines.ps): New rules. * buildscripts/mf-to-table.py (write_tex_defs): Use \gdef. * scm/pdftex.scm, scm/tex.scm (end-output, header-end, placebox, start-system, stop-system, stop-last-system, filledbox): Updated to use the changed macros from lilyponddefs.tex. * scripts/lilypond-book.ly (output_dict) : Ditto. 2002-10-07 Jan Nieuwenhuizen * Documentation/windows/installing.texi: Update. 2002-09-30 Han-Wen Nienhuys * VERSION: 1.6.5 released * scripts/lilypond-book.py (make_pixmap): don't produce empty pages. 2002-09-28 Han-Wen Nienhuys * scm/translator-property-description.scm (voltaOnThisStaff): add property. 2002-09-28 Werner Lemberg * scm/tex.scm (header-end): Suppress page numbering. * scripts/lilypond-book.py (output_dict) : Fix quotation for HTML output. 2002-09-28 Graham Percival * Documentation/user/refman.itely: grammar and phrasing fixes to "Note Entry" section. Also adds a few new examples. 2002-09-27 Han-Wen Nienhuys * flower/include/string-data.icc: include string.h 2002-09-25 Han-Wen Nienhuys * scm/chord-name.scm (chord::inner-name-banter): remove space. 2002-09-27 Jan Nieuwenhuizen * Documentation/user/GNUmakefile (extra-local-help): Add. * stepmake/stepmake/www-targets.make (local-help): Add. 2002-09-26 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): recommend binary packages. * Documentation/topdocs/README.texi (Top): building documentation (not website.) 2002-09-26 Jan Nieuwenhuizen * Documentation/user/refman.itely: * Documentation/user/tutorial.itely: * Documentation/user/music-glossary.tely: Merge changes. * Documentation/user/glossary.html.in: * Documentation/index.texi: * Documentation/header.html.in: Accomodate renaming of glossary. * Documentation/user/tutorial.itely: Add some glossary references. * Documentation/user/refman.itely: Minor fixes. * Documentation/user/lilypond.tely: Add glossary do direntry. * Documentation/user/music-glossary.tely: Rename (previously: glossary.tely). Fix anchor placement. * Documentation/user/GNUmakefile: Make music-glossary.info too. 2002-09-23 Werner Lemberg * scripts/lilypond-book.py (output_dict): Fix handling of various environments by avoid extraneous newlines. Rename `output-all' regexp for html to `output-html'. Replace `output-all' regexp for texi with `output-texi-quote' and `output-texi-noquote'. (compose_full_body): Don't override `linewidth' user option for `singleline'. (schedule_lilypond_block): Don't indent text specified with `intertext' option. Add new option `noquote'. (compile_all_files): Use latex instead of tex to compile ly files directly. * Documentation/user/lilypond-book.itely: Updated and revised. Improve layout. * Documentation/user/glossary.tely, Documentation/user/introduction.itely, Documentation/user/tutorial.itely, Documentation/user/refman.itely, Documentation/user/appendices.itely: Fix overfull LilyPond boxes caused by the new lilypond-book code. Other minor fixes. * Documentation/user/macros.itexi (@texiflat): Don't emit trailing space. * scm/tex.scm (end-output, header-end): Add preamble and postamble to make lilypond output directly compilable with latex. 2002-09-23 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): bugfix for RH RPM instructions. 2002-09-25 Jan Nieuwenhuizen * Documentation/user/glossary.tely: Add titling and hyperlinks. 2002-09-24 Han-Wen Nienhuys * lily/beam.cc (connect_beams): don't crash if there are quarter notes in beams. 2002-09-24 Juergen Reuter * Documentation/user/refman.itely: corrected ancient clef docu; added docu on ligatures 2002-09-21 Juergen Reuter * Documentation/user/glossary.tely, Documentation/user/refman.itely, input/les-nereides.ly, input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly, input/test/bagpipe.ly, lily/stem.cc, ly/grace-init.ly, scm/grob-property-description.scm, scripts/convert-ly.py: renamed Stem properties: flag-style -> stroke-style, style -> flag-style. 2002-09-22 Werner Lemberg * scripts/lilypond-book.py: Add option `notime' to suppress printing of a time signature. Specify default indentation of 0pt if single line fragment. Don't emit redundant `\paper{ }'. * Documentation/user/lilypond-book.itely: Updated. * Documentation/user/glossary.tely: Completely reformatting. 2002-09-23 Han-Wen Nienhuys * GNUmakefile.in (top-web): generate (possibly empty) examples.html 2002-09-22 Jan Nieuwenhuizen * Documentation/user/tutorial.itely: Fix links. * Documentation/topdocs/index.tely: * Documentation/index.texi: * Documentation/header.html.in: Small website fixes and updates. * debian/: Debian patch by Anthony Fok. 2002-09-21 Jan Nieuwenhuizen * Documentation/footer.html.in: How time flies: It's already 2002! * Documentation/topdocs/index.tely: Stable/development fix. Use more descriptive link names than 'here'. 2002-09-21 Han-Wen Nienhuys * VERSION: 1.7.2 released * VERSION: 1.6.4 released * scm/tex.scm (header-end): enclose lily output in begingroup/endgroup. * scripts/convert-ly.py (FatalConversionError.conv): add rule for (ly-make-music "Foo_bar") -> (make-music-by-name 'FooBarEvent). * mf/feta-din.mf (test): add x-height and space. * lily/dynamic-engraver.cc (process_music): take dynamic direction from ^_ for crescendi. Idem for slurs and phrasing slurs. * ly/grace-init.ly: add-to-grace-init: function to portably add settings to \grace. * lily/dynamic-engraver.cc (process_music): finish (de)crescendo if we get an absolute dynamic event. * lily/time-signature-engraver.cc (process_music): warn for \time 5/5 * lily/source-file.cc (get_line): oops. All line numbers were off by 2. Fix that. * lily/parser.yy (event_that_take_dir): allow () \< \> \! \( \) to be after the note, combined with -_^, i.e. c4-(-\)-\> * ly/params-init.ly (ledgerlinethickness): use Scheme expressions. * lily/parser.yy (number_factor): remove (number) as number expression. ("Let them eat Lisp"). 2002-10-05 Han-Wen Nienhuys * lily/horizontal-bracket.cc: new file. * lily/horizontal-bracket-engraver.cc: new file. * input/regression/note-group-bracket.ly: new file. Support horizontal note brackets for music analysis. * lily/stem.cc (flag): new flag-style: no-flag. * input/test/stem-cross-staff.ly: new file * Documentation/user/internals.itely: Improved formatting, fixing typos. Added a section `Output details' to describe how the TeX code looks like. * lily/include/midi-stream.hh: use stdio.h iso. iostream.h * lily/parser.yy: remove \dynamicscript. * ly/dynamic-scripts-init.ly: redo the dynamic scripts definitions. * python/midi.c (midi_error): take two arguments. * Merge 1.6.5 changes: 2002-10-04 Jan Nieuwenhuizen * scm/grob-description.scm (minimum-beam-collision-distance): 0.75 staff-space. Previous 1.5 was probably meant as half-spaces. (cautionary-style): parentheses (was: smaller). This is what doco says, and it seems more logical. * Documentation/user/refman.itely (Chromatic alterations): Bugfix for 2nd sentence. 2002-10-04 Han-Wen Nienhuys * make/lilypond.redhat.spec.in: various fixes for RedHat 8.0 2002-10-03 Jan Nieuwenhuizen * lily/beam.cc (rest_collision_callback): Fixed: partial rewrite. 2002-09-30 Han-Wen Nienhuys * scripts/lilypond-book.py (make_pixmap): don't produce empty pages. 2002-09-28 Han-Wen Nienhuys * scm/translator-property-description.scm (voltaOnThisStaff): add property. 2002-09-28 Werner Lemberg * scm/tex.scm (header-end): Suppress page numbering. * scripts/lilypond-book.py (output_dict) : Fix quotation for HTML output. 2002-09-28 Graham Percival * Documentation/user/refman.itely: grammar and phrasing fixes to "Note Entry" section. Also adds a few new examples. 2002-09-27 Han-Wen Nienhuys * flower/include/string-data.icc: include string.h 2002-09-25 Han-Wen Nienhuys * scm/chord-name.scm (chord::inner-name-banter): remove space. 2002-09-27 Jan Nieuwenhuizen * Documentation/user/GNUmakefile (extra-local-help): Add. * stepmake/stepmake/www-targets.make (local-help): Add. 2002-09-26 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): recommend binary packages. * Documentation/topdocs/README.texi (Top): building documentation (not website.) 2002-09-26 Jan Nieuwenhuizen * Documentation/user/refman.itely: * Documentation/user/tutorial.itely: * Documentation/user/music-glossary.tely: Merge changes. * Documentation/user/glossary.html.in: * Documentation/index.texi: * Documentation/header.html.in: Accomodate renaming of glossary. * Documentation/user/tutorial.itely: Add some glossary references. * Documentation/user/refman.itely: Minor fixes. * Documentation/user/lilypond.tely: Add glossary do direntry. * Documentation/user/music-glossary.tely: Rename (previously: glossary.tely). Fix anchor placement. * Documentation/user/GNUmakefile: Make music-glossary.info too. 2002-09-23 Werner Lemberg * scripts/lilypond-book.py (output_dict): Fix handling of various environments by avoid extraneous newlines. Rename `output-all' regexp for html to `output-html'. Replace `output-all' regexp for texi with `output-texi-quote' and `output-texi-noquote'. (compose_full_body): Don't override `linewidth' user option for `singleline'. (schedule_lilypond_block): Don't indent text specified with `intertext' option. Add new option `noquote'. (compile_all_files): Use latex instead of tex to compile ly files directly. * Documentation/user/lilypond-book.itely: Updated and revised. Improve layout. * Documentation/user/glossary.tely, Documentation/user/introduction.itely, Documentation/user/tutorial.itely, Documentation/user/refman.itely, Documentation/user/appendices.itely: Fix overfull LilyPond boxes caused by the new lilypond-book code. Other minor fixes. * Documentation/user/macros.itexi (@texiflat): Don't emit trailing space. * scm/tex.scm (end-output, header-end): Add preamble and postamble to make lilypond output directly compilable with latex. 2002-09-23 Han-Wen Nienhuys * Documentation/topdocs/INSTALL.texi (Top): bugfix for RH RPM instructions. 2002-09-25 Jan Nieuwenhuizen * Documentation/user/glossary.tely: Add titling and hyperlinks. 2002-09-24 Han-Wen Nienhuys * lily/beam.cc (connect_beams): don't crash if there are quarter notes in beams. 2002-09-24 Juergen Reuter * Documentation/user/refman.itely: corrected ancient clef docu; added docu on ligatures 2002-09-21 Juergen Reuter * Documentation/user/glossary.tely, Documentation/user/refman.itely, input/les-nereides.ly, input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly, input/test/bagpipe.ly, lily/stem.cc, ly/grace-init.ly, scm/grob-property-description.scm, scripts/convert-ly.py: renamed Stem properties: flag-style -> stroke-style, style -> flag-style. 2002-09-22 Werner Lemberg * scripts/lilypond-book.py: Add option `notime' to suppress printing of a time signature. Specify default indentation of 0pt if single line fragment. Don't emit redundant `\paper{ }'. * Documentation/user/lilypond-book.itely: Updated. * Documentation/user/glossary.tely: Completely reformatting. 2002-09-23 Han-Wen Nienhuys * GNUmakefile.in (top-web): generate (possibly empty) examples.html 2002-09-22 Jan Nieuwenhuizen * Documentation/user/tutorial.itely: Fix links. * Documentation/topdocs/index.tely: * Documentation/index.texi: * Documentation/header.html.in: Small website fixes and updates. * debian/: Debian patch by Anthony Fok. 2002-09-21 Jan Nieuwenhuizen * Documentation/footer.html.in: How time flies: It's already 2002! * Documentation/topdocs/index.tely: Stable/development fix. Use more descriptive link names than 'here'. 2002-10-03 Jan Nieuwenhuizen * lily/beam.cc (rest_collision_callback): Fixed: partial rewrite. 2002-10-02 Han-Wen Nienhuys * lily/part-combine-music-iterator.cc (get_state): cleanup (get_music_info): cleanup. 2002-10-01 Han-Wen Nienhuys * scm/backend-documentation-lib.scm (interface-doc-string): crosslinks between interfaces and grobs. Headings for interfaces in grob explanation. 2002-09-30 Jan Nieuwenhuizen * scm/to-xml.scm: Fixes. input/trip.ly now parses as xml (without dtd). Add preliminary dtd. (re-sub-alist): Robustify. 2002-09-29 Han-Wen Nienhuys * lily/include/event-chord-iterator.hh, lily/context-specced-music-iterator.cc, lily/event.cc, lily/event-chord-iterator.cc: add 2002-09-29 Jan Nieuwenhuizen * lily/: some (c) header fixes. * lily/request-chord.cc: Remove. * lily/include/event-chord-iterator.hh: * lily/include/event.hh: * lily/event-chord.cc: New file. * lily/stem-engraver.cc (acknowledge_grob): rename evented back to requested. 2002-09-28 Han-Wen Nienhuys * lily/ : rename Request to Event * lily/parser.yy (command_element): move clef stuff into Scheme. * lily/: rename length_mom () to get_length() * lily/part-combine-music.cc: removed file and class. * lily/context-specced-music-iterator.cc (class Context_specced_music_iterator): new file. Obsoletes the Context_specced_music type. * scm/music-types.scm (make-repeated-music): put different kinds of repeated music into music-type table. * VERSION: 1.7.1 released. * scm/to-xml.scm: new file. * input/test/to-xml.ly (fooBar): demo of what is possible with the new Input representation: dump music as XML. * scm/engraver-documentation-lib.scm (engraver-accepts-music-types?): add links from music to engraver, from music-type to engraver. * lily/include/command-request.hh: removed lily/include/musical-request.hh: removed. Removed all _req classes except Key_change_req. Changes throughout. 2002-09-28 Jan Nieuwenhuizen * lily/tuplet-engraver.cc (try_music): Compile kludge. 2002-09-28 Han-Wen Nienhuys * lily/*.cc: specify accepts for many engravers. * scm/music-documentation-lib.scm: dump music expressions and music subtypes. * scm/documentation-lib.scm: complete revision. Use GOOPS objects to store document tree explicitly. Cleaned up and sped up doco generation a lot. 2002-09-27 Han-Wen Nienhuys * input/trip.ly (fugaIILeft): add arpeggio * lily/translator-group.cc (try_music_on_nongroup_children): oops. The name symbol is in the cdr of the assoc handle. * lily/: remove Arpeggio_req, Breathing_sign_req, Extender_req, Hyphen_req, Glissando_req, Break_req, Mark_req 2002-09-26 Han-Wen Nienhuys * lily/musical-request.cc (music-duration-length, music-duration-compress): new functions. * lily/ : Remove Note_req, Rest_req, Busy_playing_req. Changes throughout. Warning doesn't work yet. * lily/translator-group.cc (try_music_on_nongroup_children): new implementation: store candidate acceptors in a hashTable. 2002-09-25 Han-Wen Nienhuys * scm/music-types.scm (music-descriptions): change name to internal-class-name * scm/chord-name.scm (chord::inner-name-banter): remove space. 2002-09-24 Han-Wen Nienhuys * lily/beam.cc (connect_beams): don't crash if there are quarter notes in beams. 2002-09-24 Juergen Reuter * Documentation/user/refman.itely: corrected ancient clef docu; added docu on ligatures 2002-09-21 Juergen Reuter * Documentation/user/glossary.tely, Documentation/user/refman.itely, input/les-nereides.ly, input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly, input/test/bagpipe.ly, lily/stem.cc, ly/grace-init.ly, scm/grob-property-description.scm, scripts/convert-ly.py: renamed Stem properties: flag-style -> stroke-style, style -> flag-style. 2002-09-24 Han-Wen Nienhuys * scm/music-functions.scm (music-separator?): don't use name music property. 2002-09-24 Jan Nieuwenhuizen * stepmake/stepmake/generic-targets.make (help): Document check target. * lily/new-accidental-engraver.cc: Compile fix. 2002-09-23 Jan Nieuwenhuizen * scripts/convert-ly.py: Add rule. * input/test/music-creation.ly: * input/test/add-staccato.ly: * input/test/add-text-script.ly: ly-make-music. * scm/drums.scm (make-head-type-elem, make-articulation-script): More ly-make-music renamings. * lily/command-request.cc: ADD_MUSIC: arpeggio_req. * lily/music-constructor.cc (make_music): Add debugging info. * scm/music-functions.scm (make-simultaneous-music, (make-sequential-music, context-spec-music): * scm/music-types.scm (music-descriptions): Get lily to run. 2002-09-23 Han-Wen Nienhuys * lily/command-request.cc (transpose_key_alist): new function. * lily/key-performer.cc (create_audio_elements): cleanup. 2002-09-22 Han-Wen Nienhuys * lily/parser.yy: remove TYPED_MAKE_MUSIC(). * lily/include/translator.hh (ENTER_DESCRIPTION): add events-accepted field. * scm/music-types.scm: new file. * lily/parser.yy: put music type initialization into scheme, similar to grob initialization. Changes throughout. 2002-09-22 Jan Nieuwenhuizen * Documentation/user/tutorial.itely: Fix links. * Documentation/index.texi: * Documentation/header.html.in: * Documentation/topdocs/index.tely: Small website fixes and updates. * debian/: Debian patch by Anthony Fok. 2002-09-21 Jan Nieuwenhuizen * Documentation/footer.html.in: How time flies: It's already 2002! * Documentation/topdocs/index.tely: Stable/development fix. Use more descriptive link names than 'here'. * ROADMAP: Remove test stuff. * scripts/update-lily.py: Allow auto-building of stable and development versions. Bugfixes. 2002-09-21 Han-Wen Nienhuys * VERSION: released 1.7.0 * scm/tex.scm (header-end): enclose lily output in begingroup/endgroup. * tex/lilyponddefs.tex: set hsize for plain tex, but only for positive line widths. 2002-09-20 Jan Nieuwenhuizen * tex/lilyponddefs.tex: Handle \scoreshift and \outputscale in one go. Fix comments. * cygwin: Cygwin updates. 2002-09-19 Han-Wen Nienhuys * Documentation/windows/installing.texi (Top): version for python, urls for ghostscript (thanks to John Potelle) * lily/simultaneous-music-iterator.cc (Simultaneous_music_iterator): init children_list_ before triggering GC. * lily/*-iterator.cc: be even more careful with smobbed copy constructors. * lily/break-align-engraver.cc (acknowledge_grob): also typeset LeftEdge item. 2002-09-15 Werner Lemberg Improving LilyPond's output to make them ordinary TeX boxes with predictable dimensions. System boxes are now vertically centered on the baseline; this offset can be further controlled with \lilypondscoreshift. * lily/system.cc (System::post_processing): Pass length of current system to `start-system' (including any horizontal indentation). * scm/tex.scm, scm/pdftex.scm: Make output of various functions prettier. (lily-def): Append `%'. (start-system): Add parameter `wd'. Output more TeX code to specify box dimensions. (stop-system, stop-last-system): Complement changes in `start-system'. * scm/sketch.scm, scm/ps.scm, scm/pdf.scm, scm/ascii-script.scm: Updated. * scripts/ly2dvi.py (global_latex_definition): Set \parindent to 0. * buildscripts/mf-to-table.py (write_tex_defs): Append `%'. Write final `\endinput'. * tex/lily-ps-defs.tex, tex/lily-pdf-defs.tex, tex/lilypond-plaintex.tex, tex/lilypond-latex.tex, tex/lilyponddefs.tex, tex/titledefs.tex: Reformat code. Assure that files and macro definitions don't produce spurious spaces and paragraphs (using \endlinechar). * tex/lilyponddefs.tex: New dimension `\scoreshift'. * Documentation/user/internals.itely: Improved formatting, fixing typos. Added a section `Output details' to describe how the TeX code looks like. 2002-09-17 Rune Zedeler * lily/accidental-engraver.cc: Also work with partial measures. 2002-09-17 Han-Wen Nienhuys * lily/text-spanner-engraver.cc: whoops. Set bound in the correct spanner. 2002-09-21 Han-Wen Nienhuys * lily/identifier-smob.cc (unpack_identifier): new file. * lily/lexer.ll (identifier_type): new function. use ly-id to pass off scheme expressions as music identifiers. * scm/lily.scm: reorganisation, cleanups. * lily/main.cc: small cleanups. 2002-09-20 Han-Wen Nienhuys * lily/ly-module.{cc,hh}: new file. 2002-09-17 Rune Zedeler * lily/accidental-engraver.cc: Also work with partial measures. 2002-09-16 Jan Nieuwenhuizen * VERSION (PACKAGE_NAME): Remove HEAD trap leftover. 2002-09-16 Han-Wen Nienhuys * lily/my-lily-lexer.cc: use SCM module in stead of Scheme_hash_table. Changes throughout. 2002-09-15 Han-Wen Nienhuys * VERSION (MY_PATCH_LEVEL): make 1.7.0