X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Flily.scm;h=203a449c8f00f1e9d9c7108cb7a8cd045077777f;hb=dcca081b1904b4db09658657631d919f280c06d2;hp=0a7e4d0d13135efe204005907cb1017ff503237d;hpb=60fc32ec59fd97456218332612b87b821968da84;p=lilypond.git diff --git a/scm/lily.scm b/scm/lily.scm index 0a7e4d0d13..203a449c8f 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -1,6 +1,6 @@ ;;;; This file is part of LilyPond, the GNU music typesetter. ;;;; -;;;; Copyright (C) 1998--2010 Jan Nieuwenhuizen +;;;; Copyright (C) 1998--2011 Jan Nieuwenhuizen ;;;; Han-Wen Nienhuys ;;;; ;;;; LilyPond is free software: you can redistribute it and/or modify @@ -28,7 +28,6 @@ (defmacro-public _i (x) x) (read-enable 'positions) -(debug-enable 'debug) (define-public PLATFORM (string->symbol @@ -214,13 +213,23 @@ messages into errors.") (scm coverage)) (define-public _ gettext) -;;; TODO: -;; There are new modules defined in Guile V2.0 which we need to use, e.g. -;; the modules and scheme files loaded by lily.scm use currying. -;; In Guile V2 this needs (ice-9 curried-definitions) which is not -;; present in Guile V1.8 +;;; There are new modules defined in Guile V2.0 which we need to use. ;; -;; TODO add in modules for V1.8,7 deprecated in V2.0 and integrated +;; Modules and scheme files loaded by lily.scm use currying +;; in Guile V2 this needs a module which is not present in Guile V1.8 +;; + +(cond + ((guile-v2) + (if (ly:get-option 'verbose) + (ly:message (_ "Using (ice-9 curried-definitions) module\n"))) + (use-modules (ice-9 curried-definitions))) + (else + (if (ly:get-option 'verbose) + (ly:message + (_ "Guile 1.8\n"))))) + +;; TODO add in modules for V1.8.7 deprecated in V2.0 and integrated ;; into Guile base code, like (ice-9 syncase). ;; @@ -228,7 +237,7 @@ messages into errors.") format) (define-public (ergonomic-simple-format dest . rest) - "Like ice-9 format, but without the memory consumption." + "Like ice-9's @code{format}, but without the memory consumption." (if (string? dest) (apply simple-format (cons #f (cons dest rest))) (apply simple-format (cons dest rest)))) @@ -258,7 +267,6 @@ messages into errors.") (ly:get-option 'trace-scheme-coverage)) (begin (ly:set-option 'protected-scheme-parsing #f) - (debug-enable 'debug) (debug-enable 'backtrace) (read-enable 'positions))) @@ -280,7 +288,7 @@ messages into errors.") (ly:progress "[~A" file-name)) (if (not file-name) (ly:error (_ "cannot find: ~A") x)) - (primitive-load file-name) + (primitive-load-path file-name) ;; to support Guile V2 autocompile (if (ly:get-option 'verbose) (ly:progress "]\n")))) @@ -395,6 +403,7 @@ LilyPond safe mode. The syntax is the same as `define*-public'." "define-event-classes.scm" "define-music-callbacks.scm" "define-music-types.scm" + "define-note-names.scm" "output-lib.scm" "c++.scm" "chord-ignatzek-names.scm" @@ -402,18 +411,22 @@ LilyPond safe mode. The syntax is the same as `define*-public'." "chord-generic-names.scm" "stencil.scm" "markup.scm" + "modal-transforms.scm" "music-functions.scm" "part-combiner.scm" "autochange.scm" "define-music-properties.scm" "time-signature-settings.scm" "auto-beam.scm" - "chord-name.scm" "bezier-tools.scm" "parser-ly-from-scheme.scm" "ly-syntax-constructors.scm" "define-context-properties.scm" + ;; guile 1.9 wants markups defined before referenced + "define-markup-commands.scm" + + "chord-name.scm" "translation-functions.scm" "script.scm" "midi.scm" @@ -425,11 +438,11 @@ LilyPond safe mode. The syntax is the same as `define*-public'." "flag-styles.scm" "fret-diagrams.scm" + "tablature.scm" "harp-pedals.scm" "define-woodwind-diagrams.scm" "display-woodwind-diagrams.scm" "predefined-fretboards.scm" - "define-markup-commands.scm" "define-grob-properties.scm" "define-grobs.scm" "define-grob-interfaces.scm" @@ -439,7 +452,6 @@ LilyPond safe mode. The syntax is the same as `define*-public'." "paper.scm" "backend-library.scm" "x11-color.scm" - "tablature.scm" ;; must be after everything has been defined "safe-lily.scm")) @@ -502,6 +514,7 @@ LilyPond safe mode. The syntax is the same as `define*-public'." (,markup-list? . "markup list") (,moment-pair? . "pair of moment objects") (,number-or-grob? . "number or grob") + (,number-or-pair? . "number or pair") (,number-or-string? . "number or string") (,number-pair? . "pair of numbers") (,rhythmic-location? . "rhythmic location")