view release on metacpan or search on metacpan
lib/ChordPro.pm view on Meta::CPAN
$options->{generate} ||= "PDF";
# Register backend name and load its Configurator, if any.
my $pkg = "ChordPro::Output::".$options->{generate};
$options->{backend} = $pkg;
eval "require $pkg"."::Configurator";
warn("Warning: No configurator for ", $options->{generate}, "\n$@")
if $options->{trace} && $@;
# One configurator to bind them all.
# This will also call the backend Configurator, if any.
use ChordPro::Config;
$config = ChordPro::Config::configurator({});
# Now load the real backend. Note that the actual module name
# may be changed by config.
if ( exists($config->{lc($options->{generate})})
&& exists($config->{lc($options->{generate})}->{module}) ) {
$options->{generate} = $config->{lc($options->{generate})}->{module};
}
lib/ChordPro/A2Crd.pm view on Meta::CPAN
use ChordPro::Config;
my $local_debug;
# API: Main entry point.
sub a2crd {
my ($opts) = @_;
$options = { %$options, %$opts } if $opts;
# One configurator to bind them all.
$config = ChordPro::Config::configurator({});
$local_debug = $config->{debug}->{a2crd};
# Process input.
my $lines = $opts->{lines}
? delete($opts->{lines})
: fs_load( @ARGV ? $ARGV[0] : \*STDIN);
return [ a2cho($lines) ];
}
lib/ChordPro/res/abc/abc2svg/MIDI-1.js view on Meta::CPAN
}, // set_vp()
do_pscom: function(of, text) {
if (text.slice(0, 5) == "MIDI ")
abc2svg.MIDI.do_midi.call(this, text)
else
of(text)
},
set_hooks: function(abc) {
abc.do_pscom = abc2svg.MIDI.do_pscom.bind(abc, abc.do_pscom);
abc.set_vp = abc2svg.MIDI.set_vp.bind(abc, abc.set_vp)
}
} // MIDI
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.MIDI = abc2svg.MIDI.set_hooks
lib/ChordPro/res/abc/abc2svg/ambitus-1.js view on Meta::CPAN
set_width: function(of, s) {
if (s.clef_type != undefined && s.nhd > 0) {
s.wl = 40;
s.wr = 12
} else {
of(s)
}
},
set_hooks: function(abc) {
abc.draw_symbols = abc2svg.ambitus.draw_symbols.bind(abc, abc.draw_symbols);
abc.set_pitch = abc2svg.ambitus.set_pitch.bind(abc, abc.set_pitch);
abc.set_format = abc2svg.ambitus.set_fmt.bind(abc, abc.set_format);
abc.set_sym_glue = abc2svg.ambitus.set_glue.bind(abc, abc.set_sym_glue)
abc.set_width = abc2svg.ambitus.set_width.bind(abc, abc.set_width)
}
} // ambitus
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.ambitus = abc2svg.ambitus.set_hooks
lib/ChordPro/res/abc/abc2svg/break-1.js view on Meta::CPAN
of(text)
},
set_bar_num: function(of) {
of()
if (this.cfmt().break)
abc2svg.break.do_break.call(this)
},
set_hooks: function(abc) {
abc.do_pscom = abc2svg.break.do_pscom.bind(abc, abc.do_pscom);
abc.set_bar_num = abc2svg.break.set_bar_num.bind(abc, abc.set_bar_num)
}
} // break
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.break = abc2svg.break.set_hooks
lib/ChordPro/res/abc/abc2svg/capo-1.js view on Meta::CPAN
this.syntax(1, "Bad fret number in %%capo")
else
p_v.capo = v
break
}
}
of(a)
}, // set_vp()
set_hooks: function(abc) {
abc.gch_build = abc2svg.capo.gch_build.bind(abc, abc.gch_build);
abc.set_format = abc2svg.capo.set_fmt.bind(abc, abc.set_format)
abc.set_vp = abc2svg.capo.set_vp.bind(abc, abc.set_vp)
}
} // capo
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.capo = abc2svg.capo.set_hooks
lib/ChordPro/res/abc/abc2svg/chordnames-1.js view on Meta::CPAN
re.push(v)
}
}
cfmt.chordnames = {re: new RegExp(re.join('|'), 'g'), o: o}
return
}
of(cmd, parm)
}, // set_fmt()
set_hooks: function(abc) {
abc.gch_build = abc2svg.chordnames.gch_build.bind(abc, abc.gch_build)
abc.set_format = abc2svg.chordnames.set_fmt.bind(abc, abc.set_format)
} // set_hooks()
} // chordnames
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.chordnames = abc2svg.chordnames.set_hooks
lib/ChordPro/res/abc/abc2svg/clair-1.js view on Meta::CPAN
set_width: function(of, s) {
if (s.k_sf && s.p_v && s.p_v.clair) {
s.wl = 8;
s.wr = 10
} else {
of(s)
}
},
set_hooks: function(abc) {
abc.draw_hl = abc2svg.clair.draw_hl.bind(abc, abc.draw_hl);
abc.draw_keysig = abc2svg.clair.draw_keysig.bind(abc, abc.draw_keysig);
abc.output_music = abc2svg.clair.output_music.bind(abc, abc.output_music);
abc.set_format = abc2svg.clair.set_fmt.bind(abc, abc.set_format);
abc.set_pitch = abc2svg.clair.set_pitch.bind(abc, abc.set_pitch);
abc.set_vp = abc2svg.clair.set_vp.bind(abc, abc.set_vp);
abc.set_width = abc2svg.clair.set_width.bind(abc, abc.set_width)
}
} // clair
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.clair = abc2svg.clair.set_hooks
lib/ChordPro/res/abc/abc2svg/clip-1.js view on Meta::CPAN
of(text)
},
set_bar_num: function(of) {
of()
if (this.cfmt().clip)
abc2svg.clip.do_clip.call(this)
},
set_hooks: function(abc) {
abc.do_pscom = abc2svg.clip.do_pscom.bind(abc, abc.do_pscom);
abc.set_bar_num = abc2svg.clip.set_bar_num.bind(abc, abc.set_bar_num)
}
} // clip
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.clip = abc2svg.clip.set_hooks
lib/ChordPro/res/abc/abc2svg/combine-1.js view on Meta::CPAN
for (i = 0; i < a.length; i++) {
if (a[i] == "combine=") { // %%voicecombine
curvoice.combine = a[i + 1]
break
}
}
of(a)
},
set_hooks: function(abc) {
abc.do_pscom = abc2svg.combine.do_pscom.bind(abc, abc.do_pscom);
abc.new_note = abc2svg.combine.new_note.bind(abc, abc.new_note);
abc.set_stem_dir = abc2svg.combine.set_stem_dir.bind(abc, abc.set_stem_dir);
abc.set_vp = abc2svg.combine.set_vp.bind(abc, abc.set_vp)
}
} // combine
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.combine = abc2svg.combine.set_hooks
lib/ChordPro/res/abc/abc2svg/diag-1.js view on Meta::CPAN
return
}
}
this.syntax(1, this.errs.bad_val, "%%setdiag")
return
}
of(cmd, param)
},
set_hooks: function(abc) {
abc.draw_gchord = abc2svg.diag.draw_gchord.bind(abc,abc.draw_gchord)
abc.set_format = abc2svg.diag.set_fmt.bind(abc, abc.set_format)
}
} // diag
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.diag = abc2svg.diag.set_hooks
lib/ChordPro/res/abc/abc2svg/equalbars-1.js view on Meta::CPAN
s2 = s2.ts_next
if (!s2 || s2.seqst)
break
}
if (!s2)
break
}
}, // set_sym_glue()
set_hooks: function(abc) {
abc.output_music = abc2svg.equalbars.output_music.bind(abc, abc.output_music);
abc.set_format = abc2svg.equalbars.set_fmt.bind(abc, abc.set_format);
abc.set_sym_glue = abc2svg.equalbars.set_sym_glue.bind(abc, abc.set_sym_glue)
}
} // equalbars
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.equalbars = abc2svg.equalbars.set_hooks
lib/ChordPro/res/abc/abc2svg/fit2box-1.js view on Meta::CPAN
var cfmt = this.cfmt(),
parse = this.get_parse(),
f = parse.file
cfmt.fit2box = parm.split(/\s+/)
// if no tune yet, change the generation function
if (f.indexOf("X:") < 0) {
if (!abc2svg.fit2box.otosvg) {
abc2svg.fit2box.otosvg = this.tosvg
this.tosvg = abc2svg.fit2box.tosvg.bind(this, this.tosvg)
}
return
}
// do the fit2box generation now
parse.file = parse.file.slice(parse.eol)
parse.eol = 0
abc2svg.fit2box.do_fit(this)
parse.file = f
parse.eol = parse.file.length - 2 // stop the current parsing in tosvg()
}, // set_fmt()
set_hooks: function(abc) {
abc.set_format = abc2svg.fit2box.set_fmt.bind(abc, abc.set_format)
} // set_hooks()
} // fit2box
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.fit2box = abc2svg.fit2box.set_hooks
lib/ChordPro/res/abc/abc2svg/gamelan-1.js view on Meta::CPAN
switch (s.type) {
case C.CLEF:
case C.KEY:
case C.METER:
s.wl = s.wr = .1 // (must not be null)
break
}
}, // set_width()
set_hooks: function(abc) {
abc.do_pscom = abc2svg.gamelan.do_pscom.bind(abc, abc.do_pscom)
abc.draw_symbols = abc2svg.gamelan.draw_symbols.bind(abc, abc.draw_symbols)
abc.output_music = abc2svg.gamelan.output_music.bind(abc, abc.output_music)
abc.set_format = abc2svg.gamelan.set_fmt.bind(abc, abc.set_format)
abc.set_pitch = abc2svg.gamelan.set_pitch.bind(abc, abc.set_pitch)
abc.set_width = abc2svg.gamelan.set_width.bind(abc, abc.set_width)
// big staccato dot
abc.get_glyphs().gstc = '<circle id="gstc" cx="0" cy="-3" r="2"/>'
abc.get_decos().gstc = "0 gstc 5 1 1"
abc.add_style("\n.bn {font-family:sans-serif; font-size:16px}")
} // set_hooks()
} // gamelan
if (!abc2svg.mhooks)
lib/ChordPro/res/abc/abc2svg/grid-1.js view on Meta::CPAN
else if (item.slice(0, 8) == "include=")
grid.ls = item.slice(8).split(',')
}
this.cfmt().grid = grid
return
}
of(cmd, parm)
},
set_hooks: function(abc) {
abc.block_gen = abc2svg.grid.block_gen.bind(abc, abc.block_gen)
abc.set_stems = abc2svg.grid.set_stems.bind(abc, abc.set_stems)
abc.set_format = abc2svg.grid.set_fmt.bind(abc, abc.set_format)
}
} // grid
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.grid = abc2svg.grid.set_hooks
lib/ChordPro/res/abc/abc2svg/grid2-1.js view on Meta::CPAN
if (curvoice)
curvoice.grid2 = v
else
this.cfmt().grid2 = v
return
}
of(cmd, param)
},
set_hooks: function(abc) {
abc.draw_gchord = abc2svg.grid2.draw_gchord.bind(abc, abc.draw_gchord);
abc.output_music = abc2svg.grid2.output_music.bind(abc, abc.output_music);
abc.set_format = abc2svg.grid2.set_fmt.bind(abc, abc.set_format)
abc.set_width = abc2svg.grid2.set_w.bind(abc, abc.set_width)
}
} // grid2
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.grid2 = abc2svg.grid2.set_hooks
lib/ChordPro/res/abc/abc2svg/grid3-1.js view on Meta::CPAN
} else {
cs.push(cl)
}
}
}
}
of()
}, // output_music()
set_hooks: function(abc) {
abc.block_gen = abc2svg.grid3.block_gen.bind(abc, abc.block_gen)
abc.do_begin_end = abc2svg.grid3.do_begin_end.bind(abc, abc.do_begin_end)
abc.output_music = abc2svg.grid3.output_music.bind(abc, abc.output_music)
}
} // grid3
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.grid3 = abc2svg.grid3.set_hooks
lib/ChordPro/res/abc/abc2svg/jazzchord-1.js view on Meta::CPAN
}
cfmt.jzRE = new RegExp(cfmt.jzreg, 'g')
}
}
return
}
of(cmd, parm)
}, // set_fmt()
set_hooks: function(abc) {
abc.gch_build = abc2svg.jazzchord.gch_build.bind(abc, abc.gch_build)
abc.set_format = abc2svg.jazzchord.set_fmt.bind(abc, abc.set_format)
abc.add_style("\
\n.jc7{font-size:90%}\
\n.jc8{baseline-shift:25%;font-size:75%;letter-spacing:-0.05em}\
\n.jc9{font-size:75%;letter-spacing:-0.05em}\
")
abc.param_set_font("setfont-7", "* * class=jc7")
abc.param_set_font("setfont-8", "* * class=jc8")
abc.param_set_font("setfont-9", "* * class=jc9")
} // set_hooks()
lib/ChordPro/res/abc/abc2svg/jianpu-1.js view on Meta::CPAN
for (m = 0; m <= s.nhd; m++) {
note = s.notes[m]
if (note.acc && s.wl < 14) // room for the accidental
s.wl = 14
}
break
}
}, // set_width()
set_hooks: function(abc) {
abc.calculate_beam = abc2svg.jianpu.calc_beam.bind(abc, abc.calculate_beam)
abc.draw_symbols = abc2svg.jianpu.draw_symbols.bind(abc, abc.draw_symbols)
abc.output_music = abc2svg.jianpu.output_music.bind(abc, abc.output_music)
abc.set_format = abc2svg.jianpu.set_fmt.bind(abc, abc.set_format)
abc.set_pitch = abc2svg.jianpu.set_pitch.bind(abc, abc.set_pitch)
abc.set_vp = abc2svg.jianpu.set_vp.bind(abc, abc.set_vp)
abc.set_width = abc2svg.jianpu.set_width.bind(abc, abc.set_width)
// big staccato dot
abc.get_glyphs().gstc = '<circle id="gstc" cx="0" cy="-3" r="2"/>'
abc.get_decos().gstc = "0 gstc 5 1 1"
abc.add_style("\n.fj{font:15px sans-serif}")
} // set_hooks()
} // jianpu
if (!abc2svg.mhooks)
lib/ChordPro/res/abc/abc2svg/mdnn-1.js view on Meta::CPAN
var C = abc2svg.C,
s = this.get_tsfirst()
if (s && s.next && s.next.type == C.KEY)
//fixme:nsk
delete s.next.k_a_acc
// s.next.a_gch = null
}, // set_pitch()
set_hooks: function(abc) {
abc.output_music = abc2svg.mdnn.output_music.bind(abc, abc.output_music)
abc.set_format = abc2svg.mdnn.set_fmt.bind(abc, abc.set_format)
abc.set_pitch = abc2svg.mdnn.set_pitch.bind(abc, abc.set_pitch)
Object.assign(abc.get_glyphs(), abc2svg.mdnn.glyphs)
Object.assign(abc.get_decos(), abc2svg.mdnn.decos)
abc.add_style("\n.bn {font-family:sans-serif; font-size:15px}")
}
} // mdnn
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.mdnn = abc2svg.mdnn.set_hooks
lib/ChordPro/res/abc/abc2svg/nns-1.js view on Meta::CPAN
else if (item.slice(0, -1) == "roman=")
nns.roman = item.slice(-1) == "1" ? 1 : 2
}
this.cfmt().nns = nns
return
}
of(cmd, parm)
},
set_hooks: function(abc) {
abc.block_gen = abc2svg.nns.block_gen.bind(abc, abc.block_gen)
abc.set_stems = abc2svg.nns.set_stems.bind(abc, abc.set_stems)
abc.set_format = abc2svg.nns.set_fmt.bind(abc, abc.set_format)
}
} // nns
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.nns = abc2svg.nns.set_hooks
lib/ChordPro/res/abc/abc2svg/page-1.js view on Meta::CPAN
if (cfmt.oneperpage)
page.oneperpage = this.get_bool(cfmt.oneperpage)
if (!cfmt.dateformat)
cfmt.dateformat = "%b %e, %Y %H:%M"
// set the hooks
if (!abc2svg.page.user_out) {
abc2svg.page.user_out = user.img_out
abc2svg.page.abc_end_o = abc2svg.abc_end
}
abc2svg.abc_end = abc2svg.page.abc_end.bind(this,
abc2svg.abc_end)
user.img_out = abc2svg.page.img_in.bind(this)
}
return
}
if (page) {
switch (cmd) {
case "header":
case "footer":
case "header1":
case "header2":
case "footer2":
lib/ChordPro/res/abc/abc2svg/page-1.js view on Meta::CPAN
case "oneperpage":
page[cmd] = this.get_bool(parm)
return
}
}
of(cmd, parm)
}, // set_fmt()
set_hooks: function(abc) {
abc.set_format("page-format", 1) // do page formatting
abc.set_format = abc2svg.page.set_fmt.bind(abc, abc.set_format)
abc.set_pagef()
}
} // page
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.page = abc2svg.page.set_hooks
lib/ChordPro/res/abc/abc2svg/pedline-1.js view on Meta::CPAN
}, // out_lped()
set_fmt: function(of, cmd, param) {
if (cmd == "pedline")
this.cfmt().pedline = this.get_bool(param)
else
of(cmd, param)
}, // set_fmt()
set_hooks: function(abc) {
abc.draw_all_deco = abc2svg.pedline.draw_all_deco.bind(abc, abc.draw_all_deco)
abc.out_lped = abc2svg.pedline.out_lped.bind(abc, abc.out_lped)
abc.set_format = abc2svg.pedline.set_fmt.bind(abc, abc.set_format)
} // set_hooks()
} // pedline
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.pedline = abc2svg.pedline.set_hooks
lib/ChordPro/res/abc/abc2svg/perc-1.js view on Meta::CPAN
else
of(text)
},
set_vp: function(of, a) {
abc2svg.perc.set_perc.call(this, a);
of(a)
},
set_hooks: function(abc) {
abc.do_pscom = abc2svg.perc.do_pscom.bind(abc, abc.do_pscom);
abc.set_vp = abc2svg.perc.set_vp.bind(abc, abc.set_vp)
}
} // perc
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.perc = abc2svg.perc.set_hooks
lib/ChordPro/res/abc/abc2svg/psvg-1.js view on Meta::CPAN
PsParser.prototype.token = token;
return this;
}
function Ps0(Os, Ds, Es) {
function run(X, Z) {
if(isSymbol(X) && !isQuoted(X)) { // executable name
var K = symbolName(X);
var D = inDs(Ds, K);
if(!D)
throw new Error("bind error '" + K + "'");
Es.push([false, D[K]]);
} else if(Z && isArray(X) && isQuoted(X)) { // proc from Es
if(0 < X.length) {
var F = X[0];
var R = quote(X.slice(1));
if(0 < R.length) Es.push([false, R]);
run(F, false);
}
} else if("function" == typeof X) X(); // operator
else Os.push(X);
lib/ChordPro/res/abc/abc2svg/psvg-1.js view on Meta::CPAN
else throw new Error("Undefined type '" + A + "'");
Os.push(X);
// filetype
// packedarraytype (LanguageLevel 2)
// fonttype
// gstatetype (LanguageLevel 2)
// savetype
};
var Sb = true;
Sd[".strictBind"] = function() {Sb = true === Os.pop();};
Sd["bind"] = function() {Os.push(bind(Os.pop()));};
function bind(X) {
if(isSymbol(X) && !isQuoted(X)) {
//jfm++
// var K = symbolName(X);
// var D = inDs(Ds, K);
// if(Sb) {
// if(!D)
// throw new Error("bind error '" + K + "'");
// return bind(D[K]);
// } else return !D ? X : bind(D[K]);
return X
//jfm--
} else if(isArray(X) && isQuoted(X)) {
var N = X.length;
var A = [];
for(var I = 0; I < N; I++) {
var Xi = X[I];
var Xb = bind(Xi);
if(isArray(Xi))
A = A.concat(isQuoted(Xi) ? quote([Xb]) : [Xb]);
else
A = A.concat(Xb);
}
return quote(A);
}
return X;
}
// debugging
lib/ChordPro/res/abc/abc2svg/psvg-1.js view on Meta::CPAN
/counttomark cvx\n\
/array cvx\n\
/astore cvx\n\
/exch cvx\n\
/pop cvx\n\
5 array astore cvx put\n\
systemdict/}/] cvx/cvx cvx 2 array astore cvx put\n\
systemdict/def{currentdict 2 index 2 index put pop pop}put\n\
\n\
/maxlength 1000 def % TODO\n\
/.bdef{bind def}bind def\n\
/.xdef{exch def}.bdef\n\
/dup{0 index}.bdef\n\
/load{dup where pop exch get}.bdef\n\
/.ldef{load def}.bdef\n\
/if{{}ifelse}.bdef\n\
/cleartomark{array pop}.bdef\n\
/known{exch begin where{currentdict eq}{false}if end}.bdef\n\
/store{1 index where{3 1 roll put}{def}ifelse}.bdef\n\
/not{{false}{true}ifelse}.bdef\n\
%/.logand{{{true}{false}ifelse}{pop false}ifelse}.bdef\n\
lib/ChordPro/res/abc/abc2svg/psvg-1.js view on Meta::CPAN
/setdash{.svg(setdash)2 .call0}.bdef\n\
/setlinewidth{.svg(setlinewidth)1 .call0}.bdef\n\
/setrgbcolor{.svg(setrgbcolor)3 .call0}.bdef\n\
/show{.svg(show)1 .call0}.bdef\n\
/stroke{.svg(stroke)0 .call0}.bdef\n\
/stringwidth{.svg(strw)1 .call 1}.bdef %fixme: height KO\n\
/translate{.svg(translate)2 .call0}.bdef\n\
\n\
/setgray{255 mul dup dup setrgbcolor}.bdef\n\
% abcm2ps syms.c\n\
/!{bind def}bind def\n\
/T/translate load def\n\
/M/moveto load def\n\
/RM/rmoveto load def\n\
/L/lineto load def\n\
/RL/rlineto load def\n\
/C/curveto load def\n\
/RC/rcurveto load def\n\
/SLW/setlinewidth load def\n\
/defl 0 def\n\
/dlw{0.7 SLW}!\n\
lib/ChordPro/res/abc/abc2svg/psvg-1.js view on Meta::CPAN
return false
return this.psvg.psdeco.call(this.psvg, x, y, de)
},
psxygl: function(of, x, y, gl) {
if (!this.psvg)
return false
return this.psvg.psxygl.call(this.psvg, x, y, gl)
},
set_hooks: function(abc) {
abc.do_begin_end = abc2svg.psvg.do_begin_end.bind(abc, abc.do_begin_end);
abc.psdeco = abc2svg.psvg.psdeco.bind(abc, abc.psdeco);
abc.psxygl = abc2svg.psvg.psxygl.bind(abc, abc.psxygl)
}
} // psvg
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.psvg = abc2svg.psvg.set_hooks
lib/ChordPro/res/abc/abc2svg/roman-1.js view on Meta::CPAN
if (isNaN(ty))
this.syntax(1, this.errs.bad_val, "%%roman")
else
cfmt.roman = ty
return
}
of(cmd, parm)
}, // set_fmt()
set_hooks: function(abc) {
abc.gch_build = abc2svg.roman.gch_build.bind(abc, abc.gch_build)
abc.output_music = abc2svg.roman.o_mus.bind(abc, abc.output_music)
abc.set_format = abc2svg.roman.set_fmt.bind(abc, abc.set_format)
} // set_hooks()
} // roman
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.roman = abc2svg.roman.set_hooks
lib/ChordPro/res/abc/abc2svg/soloffs-1.js view on Meta::CPAN
if (s.time != tsfirst.time)
break
if (soloffs[s.type] != undefined)
s.x = soloffs[s.type]
if (s.part && soloffs[abc2svg.C.PART] != undefined)
s.part.x = soloffs[abc2svg.C.PART]
}
}, // set_sym_glue()
set_hooks: function(abc) {
abc.set_sym_glue = abc2svg.soloffs.set_sym_glue.bind(abc, abc.set_sym_glue);
abc.set_format = abc2svg.soloffs.set_fmt.bind(abc, abc.set_format)
}
} // soloffs
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.soloffs = abc2svg.soloffs.set_hooks
lib/ChordPro/res/abc/abc2svg/sth-1.js view on Meta::CPAN
}
of(cmd, param)
},
set_stems: function(of) {
of();
abc2svg.sth.set_sth.call(this)
},
set_hooks: function(abc) {
abc.calculate_beam = abc2svg.sth.calculate_beam.bind(abc, abc.calculate_beam);
abc.new_note = abc2svg.sth.new_note.bind(abc, abc.new_note);
abc.set_format = abc2svg.sth.set_fmt.bind(abc, abc.set_format);
abc.set_stems = abc2svg.sth.set_stems.bind(abc, abc.set_stems)
}
} // sth
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.sth = abc2svg.sth.set_hooks
lib/ChordPro/res/abc/abc2svg/strtab-1.js view on Meta::CPAN
a.push("stafflines=")
a.push("|||||||||".slice(0, tab.length))
p_v.staffscale = 1.6
// p_v.scale = .6
// p_v.straightflags = true
}
of(a)
}, // set_vp()
set_hooks: function(abc) {
abc.draw_symbols = abc2svg.strtab.draw_symbols.bind(abc, abc.draw_symbols)
abc.gch_build = abc2svg.strtab.csan_bld.bind(abc, abc.gch_build)
abc.set_format = abc2svg.strtab.set_fmt.bind(abc, abc.set_format);
abc.set_stems = abc2svg.strtab.set_stems.bind(abc, abc.set_stems)
abc.set_sym_glue = abc2svg.strtab.set_glue.bind(abc, abc.set_sym_glue)
abc.set_vp = abc2svg.strtab.set_vp.bind(abc, abc.set_vp)
// define specific decorations used to force the string number
var decos = abc.get_decos()
decos["1s"] = "3 nil 0 0 0"
decos["2s"] = "3 nil 0 0 0"
decos["3s"] = "3 nil 0 0 0"
decos["4s"] = "3 nil 0 0 0"
decos["5s"] = "3 nil 0 0 0"
decos["6s"] = "3 nil 0 0 0"
lib/ChordPro/res/abc/abc2svg/swing-1.js view on Meta::CPAN
curvoice.swing = 1 //true
} else {
this.cfmt().swing = sw
}
return
}
of(cmd, parm)
}, // set_fmt()
set_hooks: function(abc) {
abc.set_format = abc2svg.swing.set_fmt.bind(abc, abc.set_format)
}
} // swing
if (!abc2svg.mhooks)
abc2svg.mhooks = {}
abc2svg.mhooks.swing = abc2svg.swing.set_hooks