f = 1000;
tup = (charmetric['code'],
- charmetric['width'] + charmetric['breapth'],
+ (charmetric['width'] + charmetric['breapth'])*f,
charmetric['name'],
-charmetric['breapth'] *f,
-charmetric['depth']*f,
--- /dev/null
+
+\header {
+texidoc = "Scripts may b4e stacked."
+}
+\score { \notes { c''->-. } }
{
AFM_CharMetricInfo * c = fi->cmi + i;
- ascii_to_metric_idx_[c->code] = i;
+ /*
+ Some TeX afm files contain code = -1. We don't know why, let's
+ ignore it.
+
+ */
+ if (c->code >= 0)
+ ascii_to_metric_idx_[c->code] = i;
name_to_metric_dict_[c->name] = i;
}
}
public:
void set_direction (Direction d);
Direction get_direction () const;
-
VIRTUAL_COPY_CONS (Music);
Script_req ();
};
{
}
-
void
Melodic_req::transpose (Pitch delta)
{
}
-
-
-
bool
Span_req::do_equal_b (Request const*r) const
{
{
Articulation_req const* a = dynamic_cast<Articulation_req const*> (r);
- return a; // && articulation_str_ == a->articulation_str_;
+ return a && gh_equal_p (get_mus_property ("articulation-type"),
+ r->get_mus_property ("articulation-type"));
}
-
-
-
-
-
-
-
-
#include "request.hh"
#include "debug.hh"
-
-
bool
Request::equal_b (Request const* r) const
{
return true;
}
-
Request::Request ()
: Music (SCM_EOL)
{
set_mus_property ("type", ly_symbol2scm ("request"));
}
-
-
Script_req::Script_req ()
{
set_direction (CENTER);
return (isdir_b (d)) ? to_dir (d) : CENTER;
}
-
Direction
Span_req::get_span_dir () const
{
+
+
(c) 1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
-
#include "script.hh"
#include "side-position-interface.hh"
#include "musical-request.hh"
#include "rhythmic-head.hh"
#include "engraver.hh"
-class Script_engraver : public Engraver {
+class Script_engraver : public Engraver
+{
Link_array<Grob> script_p_arr_;
Link_array<Articulation_req> script_req_l_arr_;
virtual void acknowledge_grob (Grob_info);
};
-
void
Script_engraver::initialize ()
{
// todo -> use result of articulation-to-scriptdef directly as basic prop list.
Grob *p =new Item (get_property ("Script"));
art = gh_cdr (art);
- p->set_grob_property ("molecule",
- gh_car (art));
+ p->set_grob_property ("molecule", gh_car (art));
art = gh_cdr (art);
bool follow_staff = gh_scm2bool (gh_car (art));
art = gh_cdr (art);
SCM priority = gh_car (art);
-
if (isdir_b (force_dir) && to_dir (force_dir))
p->set_grob_property ("direction", force_dir);
else if (to_dir (relative_stem_dir))
p->set_grob_property ("side-relative-direction", relative_stem_dir);
-
/*