]> git.donarmstrong.com Git - lilypond.git/blobdiff - ly/engraver-init.ly
Add glyphs and basic support for Kievan Notation
[lilypond.git] / ly / engraver-init.ly
index 67c3522a1506d6d86d4f90ed8d3b050a5d217f7a..6335ab65b1fcd0fb168e0098cfa8efa57ecabe0f 100644 (file)
@@ -559,6 +559,7 @@ automatically when an output definition (a @code{\score} or
   \accepts "PetrucciStaff"
   \accepts "StaffGroup"
   \accepts "DrumStaff"
+  \accepts "KievanStaff"
   \accepts "Lyrics"
   \accepts "ChordNames"
   \accepts "GrandStaff"
@@ -568,7 +569,6 @@ automatically when an output definition (a @code{\score} or
   \accepts "NoteNames"
   \accepts "FiguredBass"
 
-
   noteToFretFunction = #determine-frets
   predefinedDiagramTable = ##f
   soloText = #"Solo"
@@ -1114,6 +1114,54 @@ accommodated for typesetting a piece in Petrucci style."
   printKeyCancellation = ##f
 }
 
+\context {
+ \Voice
+ \name "KievanVoice"
+ \alias "Voice"
+ \description "Same as @code{Voice} context, except that it is
+accommodated for typesetting a piece in Kievan style."
+
+% \override Stem #'stencil = ##f
+
+ %% Set glyph styles.
+ \override NoteHead #'style = #'kievan
+ \override Rest #'style = #'mensural
+ \override Accidental #'glyph-name-alist = #alteration-kievan-glyph-name-alist
+ \override Dots #'style = #'kievan
+ \override Slur #'stencil = ##f
+
+ %% There are beams in Kievan notation, but they are invoked manually
+ autoBeaming = ##f
+ \override Beam #'beam-thickness = #0.32
+ \override Beam #'length-fraction = #0.62
+}
+
+\context {
+ \Staff
+ \name "KievanStaff"
+ \alias "Staff"
+ \denies "Voice"
+ \defaultchild "KievanVoice"
+ \accepts "KievanVoice"
+ \description "Same as @code{Staff} context, except that it is
+accommodated for typesetting a piece in Kievan style."
+
+ %% Choose Kievan tsefaut clef
+ clefGlyph = #"clefs.kievan.do"
+ middleCClefPosition = #0
+ middleCPosition = #0
+ clefPosition = #0
+ clefOctavation = #0
+
+ %% Accidentals are valid only once (if the following note is different)
+ extraNatural = ##f
+ autoAccidentals = #`(Staff ,(make-accidental-rule 'same-octave 0)
+                            ,neo-modern-accidental-rule)
+ autoCautionaries = #'()
+ printKeyCancellation = ##f
+
+}
+
 %% Keep the old definitions in here for compatibility (they erase previous
 %% settings to the corresponding context!).
 %% For new scores, one should simply insert the \RemoveEmptyStaves settings