X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fprogram-option-scheme.cc;h=4ec898092e09af3933cbe951c291624cfc920c14;hb=c398161609e7175cf4bac54951d470b4aabe01d5;hp=4b47d9b5b9016938a0e72c369ee11712bd3ea197;hpb=92918346012f79ef9109ef0c391947af2d3165ca;p=lilypond.git diff --git a/lily/program-option-scheme.cc b/lily/program-option-scheme.cc index 4b47d9b5b9..4ec898092e 100644 --- a/lily/program-option-scheme.cc +++ b/lily/program-option-scheme.cc @@ -20,6 +20,8 @@ using namespace std; #include "warn.hh" bool debug_skylines; +bool debug_property_callbacks; +bool debug_page_breaking_scoring; /* Backwards compatibility. @@ -37,8 +39,6 @@ static SCM option_hash; void internal_set_option (SCM var, SCM val) { - scm_hashq_set_x (option_hash, var, val); - if (0) ; else if (var == ly_symbol2scm ("profile-property-accesses")) @@ -88,20 +88,30 @@ void internal_set_option (SCM var, SCM val) debug_skylines = to_boolean (val); val = scm_from_bool (to_boolean (val)); } -} - + else if (var == ly_symbol2scm ("debug-property-callbacks")) + { + debug_property_callbacks = to_boolean (val); + val = scm_from_bool (to_boolean (val)); + } + else if (var == ly_symbol2scm ("debug-page-breaking-scoring")) + { + debug_page_breaking_scoring = to_boolean (val); + val = scm_from_bool (to_boolean (val)); + } + else if (var == ly_symbol2scm ("datadir")) + { + /* ignore input value. */ + val = ly_string2scm (lilypond_datadir); + } + scm_hashq_set_x (option_hash, var, val); -bool -get_program_option (const char *s) -{ - SCM sym = ly_symbol2scm (s); - return to_boolean (ly_get_option (sym)); } + ssize const HELP_INDENT = 30; ssize const INDENT = 2; ssize const SEPARATION = 5; @@ -158,7 +168,7 @@ get_help_string () LY_DEFINE (ly_option_usage, "ly:option-usage", 0, 0, 0, (), - "Print @code{ly:set-option} usage") + "Print @code{ly:set-option} usage.") { string help = get_help_string (); progress_indication (help); @@ -174,8 +184,8 @@ LY_DEFINE (ly_add_option, "ly:add-option", 3, 0, 0, { option_hash = scm_permanent_object (scm_c_make_hash_table (11)); } - LY_ASSERT_FIRST_TYPE (ly_is_symbol, sym); - LY_ASSERT_TYPE (scm_is_string, 3); + LY_ASSERT_TYPE (ly_is_symbol, sym, 1); + LY_ASSERT_TYPE (scm_is_string, description, 3); internal_set_option (sym, val); @@ -188,7 +198,7 @@ LY_DEFINE (ly_add_option, "ly:add-option", 3, 0, 0, LY_DEFINE (ly_set_option, "ly:set-option", 1, 1, 0, (SCM var, SCM val), "Set a program option.") { - LY_ASSERT_FIRST_TYPE(ly_is_symbol, var); + LY_ASSERT_TYPE (ly_is_symbol, var, 1); if (val == SCM_UNDEFINED) val = SCM_BOOL_T; @@ -209,19 +219,19 @@ LY_DEFINE (ly_set_option, "ly:set-option", 1, 1, 0, (SCM var, SCM val), } LY_DEFINE (ly_command_line_options, "ly:command-line-options", 0, 0, 0, (), - "The Scheme specified on command-line with @samp{-d}.") + "The Scheme options specified on command-line with @option{-d}.") { return ly_string2scm (init_scheme_variables_global); } LY_DEFINE (ly_command_line_code, "ly:command-line-code", 0, 0, 0, (), - "The Scheme specified on command-line with @samp{-e}.") + "The Scheme code specified on command-line with @option{-e}.") { return ly_string2scm (init_scheme_code_global); } LY_DEFINE (ly_command_line_verbose_p, "ly:command-line-verbose?", 0, 0, 0, (), - "Was be_verbose_global set?") + "Was @code{be_verbose_global} set?") { return scm_from_bool (be_verbose_global); } @@ -239,6 +249,8 @@ LY_DEFINE (ly_all_options, "ly:all-options", LY_DEFINE (ly_get_option, "ly:get-option", 1, 0, 0, (SCM var), "Get a global option setting.") { - LY_ASSERT_FIRST_TYPE(ly_is_symbol, var); + LY_ASSERT_TYPE (ly_is_symbol, var, 1); return scm_hashq_ref (option_hash, var, SCM_BOOL_F); } + +