-%% Do not edit this file; it is automatically
+%% DO NOT EDIT this file manually; it is automatically
%% generated from LSR http://lsr.dsi.unimi.it
+%% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
+%% and then run scripts/auxiliar/makelsr.py
+%%
%% This file is in the public domain.
-\version "2.13.4"
+\version "2.14.0"
\header {
+%% Translation of GIT committish: COMMITTISH
+ texidocit = "
+Questo esempio usa del codice Scheme per imporre delle modifiche
+enarmoniche alle note che permettano di avere il numero minimo di
+alterazioni. In questo caso si applica la seguente regola:
+
+Le doppie alterazioni devono essere eliminate
+
+
+Si diesis -> Do
+
+
+Mi diesis -> Fa
+
+
+Do bemolle -> Si
+
+
+Fa bemolle -> Mi
+
+
+In questo modo vengono scelti i suoni enarmonici più semplici.
+
+"
+ doctitleit = "Trasposizione delle altezze con numero minimo di alterazioni"
+
lsrtags = "pitches"
-%% Translation of GIT committish: b2d4318d6c53df8469dfa4da09b27c15a374d0ca
+
+%% Translation of GIT committish: 6977ddc9a3b63ea810eaecb864269c7d847ccf98
doctitlees = "Transportar música con el menor número de alteraciones"
texidoces = "
Este ejemplo utiliza código de Scheme para forzar las
"
-%% Translation of GIT committish: d96023d8792c8af202c7cb8508010c0d3648899d
+%% Translation of GIT committish: 0a868be38a775ecb1ef935b079000cebbc64de40
doctitlede = "Noten mit minimaler Anzahl an Versetzungszeichen transponieren."
texidocde = "Dieses Beispiel benutzt Scheme-Code, um enharmonische
Verwechslungen für Noten zu erzwingen, damit nur eine minimale Anzahl
"
-%% Translation of GIT committish: 59968a089729d7400f8ece38d5bc98dbb3656a2b
+%% Translation of GIT committish: 3b125956b08d27ef39cd48bfa3a2f1e1bb2ae8b4
texidocfr = "
Cet exemple, grâce à un peu de code Scheme, donne la priorité aux
-enharmoniques afin de limiter le nombre d'altérations supplémentaires.
-La règle appliquable est :
+enharmoniques afin de limiter le nombre d'altérations supplémentaires.
+La règle appliquable est@tie{}:
@itemize
@item
Cette façon de procéder aboutit à plus d'enharmoniques naturelles.
"
-
- doctitlefr = "Transposition et réduction du nombrer d'altérations accidentelles"
+ doctitlefr = "Transposition et réduction du nombre d'altérations accidentelles"
texidoc = "
This example uses some Scheme code to enforce enharmonic modifications
F flat -> E
-In this manner, the most natural enharmonic notes are chosen.
+In this manner, the most natural enharmonic notes are chosen.
"
doctitle = "Transposing pitches with minimum accidentals (\"Smart\" transpose)"
} % begin verbatim
#(define (naturalize-pitch p)
- (let ((o (ly:pitch-octave p))
- (a (* 4 (ly:pitch-alteration p)))
- ;; alteration, a, in quarter tone steps,
- ;; for historical reasons
- (n (ly:pitch-notename p)))
- (cond
- ((and (> a 1) (or (eq? n 6) (eq? n 2)))
- (set! a (- a 2))
- (set! n (+ n 1)))
- ((and (< a -1) (or (eq? n 0) (eq? n 3)))
- (set! a (+ a 2))
- (set! n (- n 1))))
- (cond
- ((> a 2) (set! a (- a 4)) (set! n (+ n 1)))
- ((< a -2) (set! a (+ a 4)) (set! n (- n 1))))
- (if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7))))
- (if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7))))
- (ly:make-pitch o n (/ a 4))))
+ (let ((o (ly:pitch-octave p))
+ (a (* 4 (ly:pitch-alteration p)))
+ ;; alteration, a, in quarter tone steps,
+ ;; for historical reasons
+ (n (ly:pitch-notename p)))
+ (cond
+ ((and (> a 1) (or (eq? n 6) (eq? n 2)))
+ (set! a (- a 2))
+ (set! n (+ n 1)))
+ ((and (< a -1) (or (eq? n 0) (eq? n 3)))
+ (set! a (+ a 2))
+ (set! n (- n 1))))
+ (cond
+ ((> a 2) (set! a (- a 4)) (set! n (+ n 1)))
+ ((< a -2) (set! a (+ a 4)) (set! n (- n 1))))
+ (if (< n 0) (begin (set! o (- o 1)) (set! n (+ n 7))))
+ (if (> n 6) (begin (set! o (+ o 1)) (set! n (- n 7))))
+ (ly:make-pitch o n (/ a 4))))
#(define (naturalize music)
- (let ((es (ly:music-property music 'elements))
- (e (ly:music-property music 'element))
- (p (ly:music-property music 'pitch)))
- (if (pair? es)
- (ly:music-set-property!
- music 'elements
- (map (lambda (x) (naturalize x)) es)))
- (if (ly:music? e)
- (ly:music-set-property!
- music 'element
- (naturalize e)))
- (if (ly:pitch? p)
- (begin
- (set! p (naturalize-pitch p))
- (ly:music-set-property! music 'pitch p)))
- music))
+ (let ((es (ly:music-property music 'elements))
+ (e (ly:music-property music 'element))
+ (p (ly:music-property music 'pitch)))
+ (if (pair? es)
+ (ly:music-set-property!
+ music 'elements
+ (map (lambda (x) (naturalize x)) es)))
+ (if (ly:music? e)
+ (ly:music-set-property!
+ music 'element
+ (naturalize e)))
+ (if (ly:pitch? p)
+ (begin
+ (set! p (naturalize-pitch p))
+ (ly:music-set-property! music 'pitch p)))
+ music))
naturalizeMusic =
#(define-music-function (parser location m)
- (ly:music?)
- (naturalize m))
+ (ly:music?)
+ (naturalize m))
music = \relative c' { c4 d e g }
}
\layout { }
}
+