|
From: | Nick Georgopoulos |
Subject: | Re: Customizing staff to display Bohlen-Pierce scale? |
Date: | Sun, 1 Mar 2015 21:55:46 -0800 |
Paul,I used your example and made a couple changes:\version "2.18.2"#(ly:set-default-scale(ly:make-scale'#(0 1 3/2 2 3 7/2 9/2 5 6)))myPitchNames =#`((do . ,(ly:make-pitch -1 0 NATURAL))(di . ,(ly:make-pitch -1 0 SHARP))(re . ,(ly:make-pitch -1 1 NATURAL))(mi . ,(ly:make-pitch -1 2 NATURAL))(fa . ,(ly:make-pitch -1 3 NATURAL))(fi . ,(ly:make-pitch -1 3 SHARP))(so . ,(ly:make-pitch -1 4 NATURAL))(ho . ,(ly:make-pitch -1 5 NATURAL))(hi . ,(ly:make-pitch -1 5 SHARP))(jo . ,(ly:make-pitch -1 6 NATURAL))(la . ,(ly:make-pitch -1 7 NATURAL))(li . ,(ly:make-pitch -1 7 SHARP))(ti . ,(ly:make-pitch -1 8 NATURAL)))#(ly:parser-set-note-names parser myPitchNames)% EXAMPLE%{\score {{do' di' re' mi'fa' fi' so' ho'hi' jo' la' li'ti' do''}\midi{}\layout{}}%}Everything looks great, and the MIDI comes out correct within the octave, with each semitone up the scale going up a MIDI number. EXCEPT, because this is a 13-note scale, but MIDI octaves repeat every 12 numbers, I'm back at square one.On Sun, Mar 1, 2015 at 3:15 PM, Paul Morris [via Lilypond] <[hidden email]> wrote:Renaming notes (for input purposes) is something I don't know very well, but I believe you should be able to edit the names to correspond with the notes of your default scale. Something along these lines (this would be for a default chromatic scale, for instance):
%%%%%%%%%%%%
\version "2.18.2"
#(ly:set-default-scale
(ly:make-scale
'#(0 1/2 1 3/2 2 5/2 3 7/2 4 9/2 5 11/2)))
myPitchNames =
#`((do . ,(ly:make-pitch -1 0 NATURAL))
(di . ,(ly:make-pitch -1 1 SHARP)) ; sharp is just for demonstration
(re . ,(ly:make-pitch -1 2 NATURAL))
(me . ,(ly:make-pitch -1 3 FLAT)) ; flat is just for demonstration
(mi . ,(ly:make-pitch -1 4 NATURAL))
(fa . ,(ly:make-pitch -1 5 NATURAL))
(fi . ,(ly:make-pitch -1 6 NATURAL))
(so . ,(ly:make-pitch -1 7 NATURAL))
(lu . ,(ly:make-pitch -1 8 NATURAL))
(la . ,(ly:make-pitch -1 9 NATURAL))
(se . ,(ly:make-pitch -1 10 NATURAL))
(si . ,(ly:make-pitch -1 11 NATURAL)))
#(ly:parser-set-note-names parser myPitchNames)
% EXAMPLE
\relative {
do' di re me
mi fa fi so
lu la se si
do di re me
}
%%%%%%%%%%%%
For more examples, here are four snippets that use ly:parser-set-note-names that may help:
http://lsr.di.unimi.it/LSR/Search?q=parser+set+note+names
This one looks particularly promising for what you want to do:
http://lsr.di.unimi.it/LSR/Item?id=786
Hope that helps!
-Paul
If you reply to this email, your message will be added to the discussion below:http://lilypond.1069038.n5.nabble.com/Customizing-staff-to-display-Bohlen-Pierce-scale-tp172424p172480.html
View this message in context: Re: Customizing staff to display Bohlen-Pierce scale?
_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user
[Prev in Thread] | Current Thread | [Next in Thread] |