]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 4874/2: Turn pitch-related settings into session variables
authorDavid Kastrup <dak@gnu.org>
Thu, 2 Jun 2016 12:17:18 +0000 (14:17 +0200)
committerDavid Kastrup <dak@gnu.org>
Thu, 9 Jun 2016 07:33:10 +0000 (09:33 +0200)
This concerns pitchnames, default-language, previous-pitchnames,
drumPitchNames, and chordmodifiers.

scm/chord-entry.scm
scm/define-music-display-methods.scm
scm/define-note-names.scm

index 1d41c973e80330876afc9de25d5e090e4bc223ef..23601a8deaba4e54a3014c0b2fcdc8dd9c324dd1 100644 (file)
@@ -18,6 +18,8 @@
 ;; for define-safe-public when byte-compiling using Guile V2
 (use-modules (scm safe-utility-defs) (ice-9 receive))
 
+(define-session-public chordmodifiers '())
+
 (define-public (construct-chord-elements root duration modifications)
   "Build a chord on root using modifiers in @var{modifications}.
 @code{NoteEvents} have duration @var{duration}.
index 10aecbd1db6794f29b3ee54f9cb99bdef23e47b4..a3b620469deeffea22a97c6b06acd35805c29324 100644 (file)
@@ -89,8 +89,7 @@ expression."
   (define (pitch= pitch1 pitch2)
     (and (= (ly:pitch-notename pitch1) (ly:pitch-notename pitch2))
          (= (ly:pitch-alteration pitch1) (ly:pitch-alteration pitch2))))
-  (let* ((pitches (ly:parser-lookup 'pitchnames))
-         (result (rassoc ly-pitch pitches pitch=)))
+  (let* ((result (rassoc ly-pitch pitchnames pitch=)))
     (and result (car result))))
 
 (define-public (octave->lily-string pitch)
index 5825967428d9a3e14036480acd83b32d3d7ba627..e7d208a5119c6230372d0981ea780af70c4cb562 100644 (file)
 
 
 ;;; Variable declaration
-(define-public pitchnames '())
-(define-public default-language "")
-(define-public previous-pitchnames #f)
+(define-session-public pitchnames '())
+(define-session-public default-language "")
+(define-session-public previous-pitchnames #f)
 
-(define-public language-pitch-names
+;;; A bit out of place, but we don't have a good place elsewhere in
+;;; scm since it is only filled in ly/drumpitch-init.ly and we need it
+;;; in (scm lily) in order to access it in ly/parser.yy.
+(define-session-public drumPitchNames '())
+
+(define-session-public language-pitch-names
   `(
     ;; Language: Nederlands --------------------------------------------;
     ;;  Dutch note names -- LilyPond's default language.