+1.3.47.mb2
+===========
+
+* Corrected glossary.tely
+
+* Corrected \mark font handling. feta-nummer font only of the
+ string is all numeric.
+
+* Implemented noteHeadStyle lookup in Guile. Reintroduced the style
+ "harmonic" and added "baroque" (normal note shapes except for
+ brevis and longa which are square).
+
+1.3.47.mb1
+===========
+
+* Simplified ly2dvi using the power of the geometry package.
+
+* Improved heuristic size calculation of TeX macros. Handles e.g.
+ "\\u{a}", "\\"{o}" and "\\^{u}" correctly.
+
+1.3.47.hwn1
+===========
+
+* Bugfix: don't hang on zero-duration.
+
+1.3.47
+======
+
1.3.46.jcn2
===========
* Added Bar_number_engraver to standard Score context
* Construct octavation scripts in the clef-engraver; this fixes the
-hara + clef8 problem
+hara-kiri + clef8 problem
1.3.46
======
violin = \notes\relative c''{
\specialkey \keysignature f' fis'' g' gis'';
\time 2/2;
+ \clef "treble";
\key;
a4. b8 c4 fis |
s1 | \mark "A";
s1 | \mark ;
s1 | \mark "12";
+ s1 | \mark "A2";
s1
}
one = \notes \relative c {
- c''1 c c c
+ c''1 c c c c
}
\score { \notes \relative c{
-c''4 c2 c8 c16 c16 c1
+c''4 c2 c8 c16 c16 c1 c\breve
\property Voice.noteHeadStyle = "diamond"
-c4 c2 c8 c16 c16 c1
+c4 c2 c8 c16 c16 c1 c\breve
\property Voice.noteHeadStyle = "transparent"
-c4 c2 c8 c16 c16 c1
+c4 c2 c8 c16 c16 c1 c\breve
\property Voice.noteHeadStyle = "cross"
-c4 c2 c8 c16 c16 c1
+c4 c2 c8 c16 c16 c1 c\breve
\property Voice.noteHeadStyle = "mensural"
-c4 c2 c8 c16 c16 c1
+c4 c2 c8 c16 c16 c1 c\breve c\longa
+\property Voice.noteHeadStyle = "harmonic"
+c4 c2 c8 c16 c16 c1 c\breve
+\property Voice.noteHeadStyle = "baroque"
+c4 c2 c8 c16 c16 c1 c\breve c\longa
\context Voice <
\context Thread = TA
#include "staff-symbol-referencer.hh"
#include "staff-symbol.hh"
#include "text-item.hh"
-
+#include <ctype.h>
/**
put stuff over or next to bars. Examples: bar numbers, marginal notes,
rehearsal marks.
text_p_->set_elt_property ("text",
ly_str02scm ( t.ch_C()));
- SCM st = ly_str02scm ((t.index_any_i ("0123456789") >= 0 )
- ? "mark" : "large");
+
+ String style = "mark";
+ for (int i=0; i < t.length_i(); i++)
+ {
+ if (!isdigit(t[i]))
+ {
+ style = "large";
+ break;
+ }
+ }
+ SCM st = ly_str02scm (style.ch_C());
text_p_->set_elt_property ("style", st);
}
}
Note_head::before_line_breaking ()
{
// 8 ball looks the same as 4 ball:
- String type;
- SCM style = get_elt_property ("style");
- if (gh_string_p (style))
- {
- type = ly_scm2string (style);
- }
-
- if (balltype_i () > 2 || type == "harmonic" || type == "cross")
+ if (balltype_i () > 2)
set_elt_property ("duration-log", gh_int2scm (2));
if (Dots *d = dots_l ())
? 0
: (abs((int)p) - sz) /2;
- String type;
SCM style = get_elt_property ("style");
- if (gh_string_p (style))
+ if (style == SCM_UNDEFINED)
{
- type = ly_scm2string (style);
+ style = ly_str02scm("");
}
- Molecule out = lookup_l()->afm_find (String ("noteheads-") + to_str (balltype_i ()) + type);
+ Molecule out = lookup_l()->afm_find (String ("noteheads-") +
+ ly_scm2string (scm_eval (gh_list (ly_symbol2scm("noteheadsymbol"),
+ gh_int2scm(balltype_i ()),
+ style,
+ SCM_UNDEFINED))));
Box ledgerless = out.dim_;
endincipit = \notes{
\partial 16; s16 % Hack to handle e.g. \bar ".|"; \endincipit
\property Staff.clefStyle = #"fullSizeChanges"
- \nobreak \bar "";
+ \bar "";
}
autoBeamOff = \property Voice.noAutoBeaming = ##t
'(minimum-space 0.0)))))
+(define (noteheadsymbol duration style)
+ (cond
+ ((equal? style "cross") "2cross")
+ ((equal? style "harmonic") "0mensural")
+ ((equal? style "baroque")
+ (string-append (number->string duration)
+ (if (< duration 0) "mensural" "")))
+ (else
+ (string-append (number->string duration) style))))
+
;;;;;;;; TeX
\def#1{\hbox{\char#2}}}
\fetdef\sharp{16}
+\fetdef\natural{17}
\fetdef\flat{18}
\font\fetasixteenfont=feta16
\def\fetafont{\fetasixteenfont}
\def\textflat{{\fetafont\raise 1ex\hbox{\flat}}}
+\def\textnatural{{\fetafont\raise 1ex\hbox{\natural}}}
\def\textsharp{{\fetafont\raise1ex\hbox{\sharp}}}
\endinput