X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Flily.scm;h=f3767ca9f5fb04e8231a2387ab2cf405272cfc70;hb=6f664e0e318a1651f6fe9317a842bf9c7f476f08;hp=79b060ec7056236d2fcd0ef0c06b0ed3217cef4e;hpb=96c1174c6b33d11a986703958b74510cf10a2b78;p=lilypond.git diff --git a/scm/lily.scm b/scm/lily.scm index 79b060ec70..f3767ca9f5 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -3,46 +3,68 @@ ;;;; source file of the GNU LilyPond music typesetter ;;;; ;;;; (c) 1998--2006 Jan Nieuwenhuizen -;;;; Han-Wen Nienhuys +;;;; Han-Wen Nienhuys (define (define-scheme-options) (for-each (lambda (x) (ly:add-option (car x) (cadr x) (caddr x))) - `((point-and-click #t "use point & click") - (paper-size "a4" "the default paper size") - (midi-debug #f "generate human readable MIDI") - (dump-signatures #f "dump output signatures of each system (EPS backend)") - (internal-type-checking #f "check every property assignment for types") - (parse-protect #t "continue when finding errors in inline -scheme are caught in the parser. If off, halt -on errors, and print a stack trace.") - (profile-property-accesses #f "keep statistics of get_property() calls.") + `( + + ;; NAMING: either + + ;; - [subject-]object-object-verb +"ing" + ;; - [subject-]-verb-object-object + + (anti-alias-factor 1 "render at higher resolution and scale down result\nto prevent jaggies in PNG") + (check-internal-types #f "check every property assignment for types") + (clip-systems #f "Generate cut-out snippets of a score") + (debug-gc #f "dump memory debugging statistics") + (debug-gc-assert-parsed-dead + #f "for memory debugging: ensure that all refs to parsed objects are dead.") + (debug-lexer #f "debug the flex lexer") + (debug-midi #f "generate human readable MIDI") + (debug-parser #f "debug the bison parser") + (debug-skylines #f "debug skylines") + (delete-intermediate-files #f + "delete unusable PostScript files") + (dump-signatures #f "dump output signatures of each system") + (dump-tweaks #f "dump page layout and tweaks for each score having the tweak-key layout property set.") + (gs-load-fonts #f + "load fonts via Ghostscript.") + (include-book-title-preview #t "include book-titles in preview images.") + (include-eps-fonts #t "Include fonts in separate-system EPS files.") + + (eps-box-padding #f "Pad EPS bounding box left edge by this much to guarantee alignment between systems") + + (gui #f "running from gui; redirect stderr to log file") + (old-relative #f "relative for simultaneous music works similar to chord syntax") (object-keys #f "experimental mechanism for remembering tweaks") - (resolution 101 "resolution for generating bitmaps") - (anti-alias-factor 1 "render at higher resolution and scale down result\nto prevent jaggies in PNG") - (book-title-preview #t "include book-titles in preview images.") - (eps-font-include #f "Include fonts in separate-system EPS files.") - (gs-font-load #f - "load fonts via Ghostscript.") - (gui #f "running from gui; redirect stderr to log file") - (delete-intermediate-files #f - "delete unusable PostScript files") + (point-and-click #t "use point & click") + (paper-size "a4" "the default paper size") + (protected-scheme-parsing #t "continue when finding errors in inline +scheme are caught in the parser. If off, halt +on errors, and print a stack trace.") + (profile-property-accesses #f "keep statistics of get_property() calls.") + + (resolution 101 "resolution for generating PNG bitmaps") + (read-file-list #f "Read files to be processed from command line arguments") + (safe #f "Run safely") - (verbose ,(ly:command-line-verbose?) "value for the --verbose flag") (strict-infinity-checking #f "If yes, crash on encountering Inf/NaN") + (ttf-verbosity 0 "how much verbosity for TTF font embedding?") - (debug-gc #f - "dump GC protection info") + (show-available-fonts #f "List font names available.") - (read-file-list #f "Read files to be processed from command line arguments") + + (verbose ,(ly:command-line-verbose?) "value for the --verbose flag") ))) @@ -51,6 +73,8 @@ similar to chord syntax") ;; (define-scheme-options) +(debug-set! stack 0) + (if (defined? 'set-debug-cell-accesses!) (set-debug-cell-accesses! #f)) @@ -62,7 +86,10 @@ similar to chord syntax") (oop goops) (srfi srfi-1) (srfi srfi-13) - (srfi srfi-14)) + (srfi srfi-14) + (scm clip-region) + + ) ;; my display @@ -221,7 +248,13 @@ The syntax is the same as `define*-public'." safe-objects)) ,safe-symbol))) +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; init pitch system + +(ly:set-default-scale (ly:make-scale #(0 2 4 5 7 9 11))) + + ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; other files. @@ -305,7 +338,8 @@ The syntax is the same as `define*-public'." (,number? . "number") (,output-port? . "output port") (,pair? . "pair") - (,procedure? . "procedure") + (,procedure? . "procedure") + (,rhythmic-location? . "rhythmic location") (,scheme? . "any type") (,string? . "string") (,symbol? . "symbol") @@ -353,6 +387,8 @@ The syntax is the same as `define*-public'." (display "Live object statistics: GC'ing\n") (gc) (gc) + (ly:set-option 'debug-gc-assert-parsed-dead #t) + (gc) (set! stats (gc-live-object-stats)) (display "Dumping live object statistics.\n") @@ -386,6 +422,7 @@ The syntax is the same as `define*-public'." (ly:error (_ "failed files: ~S") (string-join failed)) (exit 1)) (begin + (ly:do-atexit) ;; HACK: be sure to exit with single newline (ly:message "") (exit 0))))) @@ -412,6 +449,7 @@ The syntax is the same as `define*-public'." (for-each (lambda (x) + (ly:set-option 'debug-gc-assert-parsed-dead #f) (lilypond-file handler x) (ly:clear-anonymous-modules) (if (ly:get-option 'debug-gc)