]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/lily.scm
Doc: updated doc-translation-list.
[lilypond.git] / scm / lily.scm
index 17063a9aef80eaccafd5cc31f49a083a6f534f28..c680b0ff0a4859fcc75bd9de94697d9546e398ac 100644 (file)
@@ -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 <janneke@gnu.org>
+;;;; Copyright (C) 1998--2010 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
 ;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;;
+;;;; 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 <http://www.gnu.org/licenses/>.
 
 ;; Internationalisation: (_i "to be translated") gets an entry in the
 ;; POT file; (gettext ...) must be invoked explicitly to do the actual
 
 ;; 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.")
 "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.")
     (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.")
                         "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.")
     (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
     (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
     (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)
                                        ;(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)
 
 (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 '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-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)))
 
 (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"
     "part-combiner.scm"
     "autochange.scm"
     "define-music-properties.scm"
+    "beam-settings.scm"
     "auto-beam.scm"
     "chord-name.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"
     "paper.scm"
     "backend-library.scm"
     "x11-color.scm"
+    "tablature.scm"
 
     ;; must be after everything has been defined
     "safe-lily.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")
        (,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")
        (,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: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")
        (,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")
        (,output-port? . "output port")
        (,pair? . "pair")
        (,procedure? . "procedure")
+       (,real? . "real number")
        (,rhythmic-location? . "rhythmic location")
        (,scheme? . "any type")
        (,string? . "string")
        (,rhythmic-location? . "rhythmic location")
        (,scheme? . "any type")
        (,string? . "string")
+       (,string-or-pair? . "string or pair")
        (,symbol? . "symbol")
        (,vector? . "vector")))
 
        (,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))
         (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")))
 
 (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
                   (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)
                   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)
         (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.
      files)
 
     ;; we want the failed-files notice in the aggregrate logfile.