| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Recent changes have rendered them trivial. This does not review their
accessibility status: in general, they should be protected since they
can be reused by derived classes but aren't needed externally. However,
where they are indeed called from static member functions of derived
classes, the associated trampoline instantiation appears to require
public access. This might warrant some more investigation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was done by running the following Bash script:
git grep '^ADD_TRANSLATOR (' lily|sed 's/^\([^:]*\):ADD_TRANSLATOR ( *\([a-zA-Z_]\+\),.*$/\1 \2/' |
while read file translator
do
lines="$(git grep -h '^\(ADD_ACKNOWLEDGER\|ADD_END_ACKNOWLEDGER\|IMPLEMENT_TRANSLATOR_LISTENER\) ('$translator, $file)"
sed -i "$(echo "$lines"|sed 's+^..*$+/&/d+')" $file
sed -i "/^ADD_TRANSLATOR ($translator,/i\\
void\\
$translator::boot ()\\
{\\
$(echo "$lines"|sed 's/IMPLEMENT_TRANSLATOR_LISTENER/ADD_LISTENER/;s/^./ &/;s/$/\\/')
}\\
" $file
done
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit replaces the most straightforward situations
where two SCM objects are compared. Here are the basic
replacements used:
x == y -------> scm_is_eq (x,y)
x == SCM_BOOL_T -------> to_boolean (x)
x == SCM_BOOL_F -------> scm_is_false (x)
x != SCM_BOOL_T -------> scm_is_true (x)
x == SCM_UNDEFINED -------> SCM_UNBNDP (x)
x == SCM_EOL -------> scm_is_null (x)
(scm_exact_p (x) == SCM_BOOL_T) -------> ly_is_rational (x)
(scm_integer_p (x) == SCM_BOOL_T) -------> scm_is_integer (x)
(scm_list_p (x) == SCM_BOOL_T) -------> ly_is_list (x)
(scm_port_p (x) == SCM_BOOL_T) -------> ly_is_port (x)
(scm_equal_p (x, y) == SCM_BOOL_T) -------> ly_is_equal (x,y)
Finally, I replaced (!cached) with (!SCM_UNPACK (cached)) in
lily-guile-macros.hh, as has been suggested once by David.
Please note that this commit does not handle some situations
I’m less comfortable with (namely those involving scm_c_memq,
scm_assq or scm_hashq_get_handle), and some scm_*_p checks
for which there isn’t a ly_is_* replacement yet (to wit,
scm_hash_table_p, scm_promise_p, and scm_variable_bound_p).
Those should be dealt with later (another patch is in the works).
|
| |
|
|
|
|
| |
Run make grand-replace to update all coopyright statements
|
|
|
|
| |
defined and stream.hh
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Apologies for the inconvenience in patch handling, but getting
this done at once will cause less long-term problems than trying
to do this piecemeal.
Note for future git historians: this patch was created by running
scripts/auxiliar/fixcc.py \
$(find flower lily -name '*cc' -o -name '*hh' | grep -v /out)
with astyle 2.02 installed. No manual changes were made.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Signed-off-by: Han-Wen Nienhuys <hanwen@xs4all.nl>
Signed-off-by: Jan Nieuwenhuizen <janneke@gnu.org>
Signed-off-by: John Mandereau <john.mandereau@gmail.com>
Signed-off-by: Graham Percival <graham@percival-music.ca>
Signed-off-by: Reinhold Kainhofer <reinhold@kainhofer.com>
Signed-off-by: Joe Neeman <joeneeman@gmail.com>
Signed-off-by: Heikki Johannes Junes <hjunes@gmail.com>
Signed-off-by: Neil Puttock <n.puttock@gmail.com>
Signed-off-by: Carl D. Sorensen <c_sorensen@byu.edu>
Signed-off-by: Mats Bengtsson <mats.bengtsson@s3.kth.se>
Signed-off-by: Werner Lemberg <wl@gnu.org>
Signed-off-by: Patrick McCarty <pnorcks@gmail.com>
Signed-off-by: Nicolas Sceaux <nicolas.sceaux@free.fr>
|
| |
|
| |
|
|
|
|
| |
Obviously, I can't remember my own formatting rules...
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
macros ADD_TRANSLATOR, DECLARE_SMOBS and DECLARE_SIMPLE_SMOBS
|
|
|
|
|
|
|
|
|
|
| |
smaller pieces.
* lily/score-engraver.cc, lily/score-performer.cc,
scm/define-context-properties.scm: Make paper/midi output
accessable as a context property.
* lily/score-translator.cc, lily/score-context.cc: Removed.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
smaller pieces.
* lily/score-engraver.cc, lily/score-performer.cc,
scm/define-context-properties.scm: Make paper/midi output
accessable as a context property.
* lily/score-translator.cc, lily/score-context.cc: Removed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* scm/define-grob-properties.scm:
* scm/define-grobs.scm:
* scm/define-music-display-methods.scm:
* scm/define-music-properties.scm:
* scm/define-music-types.scm:
* scm/music-functions.scm:
* ly/declarations-init.ly:
* lily/include/constrained-breaking.hh:
* lily/system.cc:
* lily/spaceable-grob.cc:
* lily/simple-spacer.cc:
* lily/paper-score.cc:
* lily/paper-column.cc:
* lily/paper-column-engraver.cc:
* lily/item.cc:
* lily/gourlay-breaking.cc:
* lily/constrained-breaking.cc:
* python/convertrules.py:
Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
"page-break-penalty" and "line-break-permission".
Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
* lily/bar-engraver.cc:
* lily/beam-engraver.cc:
* lily/forbid-break-engraver.cc:
* lily/ligature-engraver.cc:
* lily/paper-column-engraver.cc:
* lily/percent-repeat-engraver.cc:
* lily/score-engraver.cc:
* lily/score-engraver.hh:
* lily/paper-column-engraver.hh:
Inter-engraver communication regarding line breaks is done through context
properties (Score.forbidBreak) instead of function calls.
|
|
|
|
|
|
|
|
| |
* flower/include/std-vector.hh: Finish std:: conversion; move
flower extensions from std:: namespace. Update users.
* lily/include/lily-proto.hh: Replace Link_array__*_ macros by
their expansion to vector<*>. Update users.
|
| |
|
| |
|
| |
|
|
|
|
| |
Update cut and paste code from Slur_engraver.
|
|
|
|
|
|
|
|
|
|
| |
PRECOMPUTED_VIRTUAL everywhere.
* lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
* lily/context.cc (now_mom): non-recursive now_mom()
* lily/grob.cc (Grob): look properties up directly.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
where_defined().
* lily/bezier.cc (get_other_coordinate): use curve_coordinate
(curve_coordinate): new function
* flower/include/parray.hh (binsearch): add lo,hi range to arguments.
* lily/simple-spacer.cc (add_columns): only add rods between
column i and begin/end if keep-inside-line is set (this repleces
allow-outside-line as default)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* lily/paper-column-engraver.cc (process_music): new
file. Separate Paper_column factory from Score_engraver.
* lily/vertically-spaced-context-engraver.cc: administer
spaceable-staves property of System.
* lily/translator-group-ctors.cc: new file.
* lily/context-property.cc (make_grob_from_properties): construct
the right Grob class programmatically, looking at the class entry
for the meta property.
* lily/break-align-engraver.cc (stop_translation_timestep): call
Break_align_interface::add_element() directly.
* lily/context.cc (measure_position): measure_position() is now a
normal function.
* lily/include/translator.hh (class Translator): rename
process_acknowledged_grobs() to process_acknowledged() and move to
Translator.
* scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
field for each grob description.
* lily/include/translator-group.hh (class Translator_group):
change to base class. Separate class from Translator. This gets
rid of virtual inheritance for Engravers/Performers.
* lily/staff-performer.cc (class Staff_performer): derive
Staff_performer from Performer, not Performer_group_performer
* Lily/translator-group.cc (precomputed_recurse_over_translators):
new function.
(precompute_method_bindings): new function. Precompute lists of
Translators, so we only call methods (process_music,
start_translation_timestep, etc.) for Translators needing
it. Also: dispose of pointer-to-member-function calls.
* lily/engraver-group-engraver.cc: remove engraver_each,
recurse_down_engravers ()
* lily/note-head.cc (internal_print): only call
glyph-name-procedure if style != default. 3 % speed increase (wtk2-fugue1).
|
|
|
|
|
| |
* lily
* kpath-guile: Nitpick run: buildscripts/fixcc.py.
|
| |
|
| |
|
|
|
|
| |
lyric spacing on the penultimate column.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Debian lmodern support.
* scm/framework-tex.scm (font-load-command): TeX font name
mangling for latin1 encoded cork-lm fonts.
(convert-to-ps): Load lm.map if available.
* ly/paper-defaults.ly: Use cork-lm encoding if ec is not
available.
* scm/encoding.scm (coding-alist): Add cork-lm encoding.
* scm/font.scm: Add header. Autoload cork-lm and ec fonts if
available.
* lily/kpath.cc (ly_kpathsea_find_file): Rename. Do not use
path for absolute file name, that is silly.
* lily/score-engraver.cc (initialize):
|
|
|
|
| |
* lily/lily-guile.cc: remove ly_scm2str0.
|
|
|
|
|
|
|
|
|
|
| |
* scm/lily.scm (ly:all-output-backend-commands): New function.
* scm/safe-lily.scm (safe-objects): Add them.
* scm/framework-gnome.scm (<gnome-outputter>): New class.
* scm/output-gnome.scm: Move non-stencil evaluators to framework.
|
|
|
|
| |
{Engraver,Score_engraver}::typeset_grob(), remove all calls.
|
| |
|
|
|
|
|
| |
* lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go
higher for finding Voice. (backportme)
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Michael Welsh Duggan
* lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan
* lily/scaled-font-metric.cc (derived_mark): idem.
* lily/scaled-font-metric.cc (derived_mark): is a const method.
(Modified_font_metric): make alist for coding_description_
(LY_DEFINE): remove coding-name.
* lily/scaled-font-metric.cc (ly_font_encoding): return vector
* lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr
use.
|
| |
|
|
|
|
|
| |
music/context/grob property functions. Internally, use
get_property() and set_property() for both.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
| |
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)
|