lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Feature Request: Chromatic note names


From: address@hidden
Subject: Re: Feature Request: Chromatic note names
Date: Fri, 17 May 2013 11:48:36 -0700 (PDT)

>  This makes it easier to input and read, and then when using your music on
> a traditional staff, you can just set these variables to an empty music
> expression, and they will have no effect on the music. 
> 
> extendStaffUp = {} 
> 
> That way you only have to make the change in one place instead of at every
> occurrence. 

This will do the trick for now.




> I'm also not sure I understand the issue you describe about internal and
> external ledger lines.  It sounds like you are thinking of the lines of
> the extended staff as ledger lines, when they are (temporary) staff lines,
> so when they are in effect they change what counts as internal/external
> ledgers.  But I'm not sure how relevant that is to what you're trying to
> do. 

Thats it. If the dashed ledger line was just a ledger line with another
graphic, when a fi was displayed up there, the re and mi ledger lines would
also be displayed. The idea is have just the dashed one.
It is not really relevant, but it would make things look better (i mean,
look in the way i would do it with pen and paper). By manually changing the
staff layout, it happens the way i want, but it would be better to get it
automatically.

About the internal ledger lines:
A re should have the lower ledger line, a mi should have only the higher
ledger line.
But a me should have both.
If you let lilypond automatically fill the gaps, things work fine for re and
mi, but the me will get only the line below it.

Now, if you use the (-4 -2) thing:

/\override StaffSymbol #'ledger-positions = #'( -6 (-4 -2) 0 (2 4) 6 )/

You can get both ledger lines for all me, but you also get both ledger lines
for all re and mi.
It isn't that much relevant, too. But again, would make things look better.

So, here is an all manually set exemple of how /*exactly*/ things should
work.
It is not really tiny, or it wouldnt show all the aspects i tried to tell
you before.
I use the english language and note names so you dont have to set up your
define-note-names.scm to see it. Also, the MNP-scripts.ly is unmodified. 

Just paste and engrave this:


/%%%%%%%%%%%%%%%%%%%%%

\version "2.16.0"
\language english
\include "MNP-scripts.ly"
  

% set the nominals to be 12-equal
#(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)))

% Set the pitches to 12-equal with enharmonic equivalences
% keep the original pitch names.
% all tritones go downwards on \relative, unless specified otherwise.
% Preserves quartertones as half-sharps.
dodecaPitchNames = #(map (lambda (pitchname)
             (let* (
                     (pitch (cdr pitchname))
                     (nominal-steps (vector-ref '#(0 2 4 5 7 9 11)
                                 (ly:pitch-notename pitch)))
                     (fractional-steps
                         (+ nominal-steps (* 2 (ly:pitch-alteration
pitch))))
                     (steps (inexact->exact (floor fractional-steps)))
                    )
                 (cons (car pitchname)
                     (ly:make-pitch
                         (ly:pitch-octave pitch)
                         steps
                         (/ (- fractional-steps steps) 2)))))
         pitchnames)

#(ly:parser-set-note-names parser dodecaPitchNames)

   
% Staffs used:

thumlineOne = { 
    \stopStaff \startStaff
  \override Staff.StaffSymbol #'line-positions = #'( -6 0 6 )
  \dashedStaffSymbolLines #'(0.5 . 0.7) #'( #f #t #f ) }

thumlineOneTritoneUp = { 
  \stopStaff \startStaff
  \override Staff.StaffSymbol #'line-positions = #'( -6 0 6 12 )
  \dashedStaffSymbolLines #'(0.5 . 0.7) #'( #f #t #f #t ) }

thumlineTwoUp = { \stopStaff \startStaff
  \override Staff.StaffSymbol #'line-positions = #'( -6 0 6 12 18 )
  \dashedStaffSymbolLines #'(0.5 . 0.7) #'( #f #t #f #t #f ) }

thumlineTwoTritoneUp = { \stopStaff \startStaff
  \override Staff.StaffSymbol #'line-positions = #'( -6 0 6 12 18 24 )
  \dashedStaffSymbolLines #'(0.5 . 0.7) #'( #f #t #f #t #f #t ) }

% Ledger lines configs used:

ledgerMe = { \stopStaff \startStaff
             \override Staff.StaffSymbol #'ledger-positions = #'( -6 (-4 -2)
0 (2 4) 6 ) }

ledgerReMi = { \stopStaff \startStaff
             \override Staff.StaffSymbol #'ledger-positions = #'( -6 -4 -2 0
2 4 6 ) }


%the notes written, staff changes within, still compatible with traditional
staff, all tritones go down.

 theMusic = { \relative c' {
     \thumlineOne d e \ledgerMe ef \ledgerReMi gs |
     \ledgerMe a \ledgerReMi as d ds |
     e \thumlineOneTritoneUp f a as |
     \thumlineTwoUp b <fs as cs> \ledgerMe \thumlineTwoTritoneUp <fs a cs
fs> \thumlineOneTritoneUp g |
     f \thumlineOne \ledgerReMi e d c | fs2 c } }

   \new Staff  { \theMusic }

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
/


So, \theMusic is still compatible with traditional notation, except for the
tritone issue. You can see in the last bar, the interval is engraved in the
"augmented fourth" way.
I set the staff variables empty, as you told me, and did not include the
dodecaPitchNames snippet in the file.



/%%%%%%%%%%%%%%%%%%%%%%%%%%%

\version "2.16.0"
\language english

%the notes written, staff changes within, still compatible with traditional
staff.
%tritones DO NOT go always down.

thumlineOne = { }
thumlineOneTritoneUp = { }
thumlineTwoUp = { }
thumlineTwoTritoneUp = { }
ledgerMe = { }
ledgerReMi = { }

 theMusic = { \relative c' {
     \thumlineOne d e \ledgerMe ef \ledgerReMi gs |
     \ledgerMe a \ledgerReMi as d ds |
     e \thumlineOneTritoneUp f a as |
     \thumlineTwoUp b <fs as cs> \ledgerMe \thumlineTwoTritoneUp <fs a cs
fs> \thumlineOneTritoneUp g |
     f \thumlineOne \ledgerReMi e d c | fs2 c } }

   \new Staff { \theMusic }

%%%%%%%%%%%%%%%%%%%%%%%%%%/


So, I still didnt understand how the dodecaPichName snippet works. It would
be great to make it set back the diatonic scale, but still keep doing this:

% keep the original pitch names.
% all tritones go downwards on \relative, unless specified otherwise.

Then i could use that snippet in the beginning of the second file, and the
augmented fourth thing would not happen.


I also couldnt make both staffs to be in the same file. I mean, if you just
paste

/thumlineOne = { }
thumlineOneTritoneUp = { }
thumlineTwoUp = { }
thumlineTwoTritoneUp = { }
ledgerMe = { }
ledgerReMi = { }/

in the end of first file and create a new staff, you get the chromatic one
again. I couldnt figure out how to override the variable functions.
I also would need the reversed dodecaPitchName snippet to paste in this
point, so it cancels out the first too, otherwise you may get the 5 line
staff, but note spacing is still chromatic.



--
View this message in context: 
http://lilypond.1069038.n5.nabble.com/Feature-Request-Chromatic-note-names-tp145984p146054.html
Sent from the User mailing list archive at Nabble.com.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]