X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=scm%2Flily.scm;h=c680b0ff0a4859fcc75bd9de94697d9546e398ac;hb=18814340a005de7f96803efaa632f1fea1e83a57;hp=17063a9aef80eaccafd5cc31f49a083a6f534f28;hpb=3d8089a42af6304edb8dad56220e845c84832bb2;p=lilypond.git diff --git a/scm/lily.scm b/scm/lily.scm index 17063a9aef..c680b0ff0a 100644 --- a/scm/lily.scm +++ b/scm/lily.scm @@ -1,9 +1,20 @@ -;;;; lily.scm -- top-level Scheme stuff +;;;; This file is part of LilyPond, the GNU music typesetter. ;;;; -;;;; source file of the GNU LilyPond music typesetter -;;;; -;;;; (c) 1998--2009 Jan Nieuwenhuizen +;;;; Copyright (C) 1998--2010 Jan Nieuwenhuizen ;;;; Han-Wen Nienhuys +;;;; +;;;; LilyPond is free software: you can redistribute it and/or modify +;;;; it under the terms of the GNU General Public License as published by +;;;; the Free Software Foundation, either version 3 of the License, or +;;;; (at your option) any later version. +;;;; +;;;; LilyPond is distributed in the hope that it will be useful, +;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;;; GNU General Public License for more details. +;;;; +;;;; You should have received a copy of the GNU General Public License +;;;; along with LilyPond. If not, see . ;; Internationalisation: (_i "to be translated") gets an entry in the ;; POT file; (gettext ...) must be invoked explicitly to do the actual @@ -38,6 +49,9 @@ "Render at higher resolution (using given factor) and scale down result to prevent jaggies in PNG images.") + (aux-files #t +"Create .tex, .texi, .count files in the +EPS backend.") (backend ps "Select backend. Possible values: 'eps, 'null, 'ps, 'scm, 'socket, 'svg.") @@ -101,6 +115,9 @@ output to log file `FOO.log'.") "midi") "Set the default file extension for MIDI output file to given string.") + (music-strings-to-paths #f +"Convert text strings to paths when glyphs belong +to a music font.") (old-relative #f "Make \\relative mode for simultaneous music work similar to chord syntax.") @@ -111,7 +128,7 @@ similar to chord syntax.") (pixmap-format "png16m" "Set GhostScript's output format for pixel images.") (preview #f -"Create PNG and EPS preview images also.") +"Create preview images also.") (print-pages #t "Print pages in the normal way.") (protected-scheme-parsing #t @@ -176,17 +193,17 @@ messages into errors.") ;(set-debug-cell-accesses! 1000) (use-modules (ice-9 regex) - (ice-9 safe) - (ice-9 format) - (ice-9 rdelim) - (ice-9 optargs) - (oop goops) - (srfi srfi-1) - (srfi srfi-13) - (srfi srfi-14) - (scm clip-region) - (scm memory-trace) - (scm coverage)) + (ice-9 safe) + (ice-9 format) + (ice-9 rdelim) + (ice-9 optargs) + (oop goops) + (srfi srfi-1) + (srfi srfi-13) + (srfi srfi-14) + (scm clip-region) + (scm memory-trace) + (scm coverage)) (define-public fancy-format format) @@ -229,18 +246,15 @@ messages into errors.") (if (ly:get-option 'trace-scheme-coverage) (coverage:enable)) -(if (ly:get-option 'warning-as-error) - (begin - (set! ly:warning ly:error) - (set! ly:programming-error ly:error))) - (define-public parser #f) +(define music-string-to-path-backends + '(svg)) -;; gettext wrapper for guile < 1.7.2 -(if (defined? 'gettext) - (define-public _ gettext) - (define-public _ ly:gettext)) +(if (memq (ly:get-option 'backend) music-string-to-path-backends) + (ly:set-option 'music-strings-to-paths #t)) + +(define-public _ gettext) (define-public (ly:load x) (let* ((file-name (%search-load-path x))) @@ -366,6 +380,7 @@ LilyPond safe mode. The syntax is the same as `define*-public'." "part-combiner.scm" "autochange.scm" "define-music-properties.scm" + "beam-settings.scm" "auto-beam.scm" "chord-name.scm" @@ -396,6 +411,7 @@ 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")) @@ -411,6 +427,7 @@ LilyPond safe mode. The syntax is the same as `define*-public'." (,input-port? . "input port") (,integer? . "integer") (,list? . "list") + (,list-or-symbol? . "list or symbol") (,ly:context? . "context") (,ly:dimension? . "dimension, in staff space") (,ly:dir? . "direction") @@ -425,6 +442,7 @@ LilyPond safe mode. The syntax is the same as `define*-public'." (,ly:music-output? . "music output") (,ly:pitch? . "pitch") (,ly:translator? . "translator") + (,ly:score? . "score") (,ly:simple-closure? . "simple closure") (,ly:skyline-pair? . "pair of skylines") (,ly:stencil? . "stencil") @@ -437,9 +455,11 @@ LilyPond safe mode. The syntax is the same as `define*-public'." (,output-port? . "output port") (,pair? . "pair") (,procedure? . "procedure") + (,real? . "real number") (,rhythmic-location? . "rhythmic location") (,scheme? . "any type") (,string? . "string") + (,string-or-pair? . "string or pair") (,symbol? . "symbol") (,vector? . "vector"))) @@ -451,8 +471,8 @@ LilyPond safe mode. The syntax is the same as `define*-public'." (stats (gc-stats))) (list (- (+ (tms:cutime t) (tms:utime t)) - (ly:assoc-get 'gc-time-taken stats)) - (ly:assoc-get 'total-cells-allocated stats 0)))) + (assoc-get 'gc-time-taken stats)) + (assoc-get 'total-cells-allocated stats 0)))) (define (dump-profile base last this) (let* ((outname (format "~a.profile" (dir-basename base ".ly"))) @@ -533,10 +553,8 @@ LilyPond safe mode. The syntax is the same as `define*-public'." (format "~a ~a ~a\n" gc-protect-stat-count sym - (let ((sym-stat (assoc sym stats))) - (if sym-stat - (cdr sym-stat) - "?"))) + (assoc-get sym stats "?")) + outfile)) '(protected-objects bytes-malloced cell-heap-size))) (set! gc-dumping #f) @@ -708,8 +726,7 @@ PIDs or the number of the process." (ly:set-option 'debug-gc-assert-parsed-dead #f) (if (ly:get-option 'debug-gc) (dump-gc-protects) - (if (= (random 40) 1) - (ly:reset-all-fonts))))) + (ly:reset-all-fonts)))) files) ;; we want the failed-files notice in the aggregrate logfile.