+;;;; (c) 1998--2006 Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+
+(define (define-scheme-options)
+ (for-each (lambda (x)
+ (ly:add-option (car x) (cadr x) (caddr x)))
+
+ `(
+
+ ;; 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")
+ (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")
+ (strict-infinity-checking #f "If yes, crash on encountering Inf/NaN")
+
+ (ttf-verbosity 0
+ "how much verbosity for TTF font embedding?")
+
+ (show-available-fonts #f
+ "List font names available.")
+
+ (verbose ,(ly:command-line-verbose?) "value for the --verbose flag")
+ )))
+
+
+;; need to do this in the beginning. Other parts of the
+;; Scheme init depend on these options.
+;;
+(define-scheme-options)