Lines Matching refs:x

103 function y_get(st,up,x,w){var y,p_staff=staff_tb[st],i=(x/realwidth*YSTEP)|0,j=((x+w)/realwidth*YSTEP)|0
115 function y_set(st,up,x,w,y){var p_staff=staff_tb[st],i=(x/realwidth*YSTEP)|0,j=((x+w)/realwidth*YSTEP)|0
141 h=m;de.has_val=true;de.val=h;de.x-=xc;de.y=3*(s.notes[0].pit-18)-3}
144 var s,dd,dd2,up,x,dx,x2,i,s2=de.s,de2=de.start,de2_prev,de_next;s=de2.s;x=s.x+3;i=de2.ix
150 if(f_staff[dd2.func]){x2=de2_prev.x+de2_prev.val+4
151 if(x2>x)
152 x=x2}}
153 if(de.defl.noen){dx=de.x-x
154 if(dx<20){x=de.x-20-3;dx=20}}else{x2=s2.x;de_next=a_de[de.ix+1]
158 dx=x2-x-4
159 if(dx<20){x-=(20-dx)*.5;dx=20}}
160 de.val=dx;de.x=x;de.y=y_get(de.st,up,x,dx)
180 de.x+=s.notes[s.stem>=0?0:s.nhd].shhd
182 de.x+=3.5}else{if(s.stem<0)
183 de.x-=3.5}}}
184 function d_pf(de){var dd2,x2,x,up,s=de.s,dd=de.dd,de_prev;if(de.ldst)
190 de.up=true;x=s.x-dd.wl
193 if(f_staff[dd2.func]){x2=de_prev.x+de_prev.val+4;if(x2>x)
194 x=x2}}}
195 de.x=x;de.y=y_get(s.st,up,x,de.val)
206 de.x-=xc;de.y=3*(yc-18)}
209 var up,y,w,tmp,dd=de.dd,de2=de.prev,s2=de.s,st=s2.st,s=de.start.s,x=s.x
210 if(de2){x=de2.s.x+de.dd.wl+2
219 if(de.defl.noen){w=de.x-x
220 if(w<20){x=de.x-20-3;w=20}}else{w=s2.x-x-6
223 if(w<10){x-=10-w
225 dd=de.dd;y=y_get(st,up,x-dd.wl-5,w)
235 de.lden=false;de.has_val=true;de.val=w;de.x=x;de.y=y
237 y+=dd.h;y_set(st,up,x,w,y)
246 var yc,up,inv,s=de.s,dd=de.dd,x=de.x,w=dd.wl+dd.wr,stafft=staff_tb[s.st].topbar+2,staffb=staff_tb[s.st].botbar-2
248 x+=s.notes[s.stem>=0?0:s.nhd].shhd;up=-1
253 switch(dd.glyph){case"accent":case"roll":if(!up||(up<0&&(s.multi<0||(!s.multi&&s.stem>0)))){yc=y_get(s.st,false,s.x-dd.wl,w)-2
255 yc=staffb;yc-=dd.h;y_set(s.st,false,s.x,0,yc);inv=true;s.ymn=yc}else{yc=y_get(s.st,true,s.x-dd.wl,w)+2
257 yc=stafft;y_set(s.st,true,s.x-dd.wl,w,yc+dd.h);s.ymx=yc+dd.h}
265 x+=((s?s.x:realwidth)-x)*.45
269 if(dd.name!="invertedfermata"&&(up>0||(up<0&&s.multi>=0))){yc=y_get(s.st,true,s.x-dd.wl,w)+2+dd.hd
271 yc=stafft;y_set(s.st,true,s.x-dd.wl,w,yc+dd.h);s.ymx=yc+dd.h}else{yc=y_get(s.st,false,s.x-dd.wl,w)-3+dd.hd
273 yc=staffb;yc-=dd.h;y_set(s.st,false,s.x-dd.wl,w,yc-dd.hd)
278 de.x=x;de.y=yc}
404 de.x+=dx}}
422 var de,de2,dd,s,note,f,st,x,y,y2,ym,uf,i,str,a,new_de=[],ymid=[]
444 x=de.x;y=de.y+staff_tb[st].y
446 x+=note.shhd*stv_g.scale}else if(f_staff[dd.func]&&!cfmt.dynalign&&((de.up&&st>0)||(!de.up&&st<nstaff))){if(de.up)
450 if((de.up&&y<ym)||(!de.up&&y>ym)){y2=y_get(st,!de.up,de.x,de.val)
456 if(uf&&typeof(uf)=="function"){uf(x,y,de)
458 if(self.psdeco(f,x,y,de))
461 if(de.inv){g_open(x,y,0,1,-1);x=y=0}
463 out_deco_val(x,y,f,de.val/stv_g.scale,de.defl)
465 out_deco_val(x,y,f,de.val,de.defl)
468 if(str[0]=='@'){a=str.match(/^@([0-9.-]+),([0-9.-]+);?/);x+=Number(a[1]);y+=Number(a[2]);str=str.replace(a[0],"")}
469 out_deco_str(x,y,f,str)}else if(de.lden){out_deco_long(x,y,de)}else{xygl(x,y,f)}
474 function ldeco_update(s){var i,de,x=s.x-s.wl,nd=a_de.length
475 for(i=0;i<nd;i++){de=a_de[i];de.ix=i;de.s.x=de.x=x;de.defl.nost=true}}
476 function create_deco(s){var dd,k,l,pos,de,x,nd=s.a_dd.length
488 de={s:s,dd:dd,st:s.st,ix:a_de.length,defl:{},x:s.x,y:s.y,}
490 de.x-=s.wl/2-2
512 de={s:s,dd:dd,st:s.st,m:m,ix:0,defl:{},x:s.x,y:3*(note.pit-18),}
530 if(j==n_de){de2={s:s,st:de.st,dd:dd2,ix:a_de.length-1,x:realwidth-6,y:s.y,lden:true,defl:{noen:true}}
531 if(de2.x<s.x+10)
532 de2.x=s.x+10
542 de.x=de.s.x
561 function draw_repbra(p_voice){var s,s1,x,y,y2,i,p,w,wh,first_repeat;y=staff_tb[p_voice.st].topbar+25
575 y2=y_get(p_voice.st,true,s1.x,s.x-s1.x)
578 if(s1.text){wh=strwh(s1.text);y2=y_get(p_voice.st,true,s1.x+4,wh[0])+
598 x=s1.x
600 x+=6
601 if(s.type!=C.BAR){w=s.rbstop?0:s.x-realwidth+4}else if((s.bar_type.length>1&&s.bar_type!="[]")||s.bar_type=="]"){if(s1.st>0&&!(cur_sy.staves[s1.st-1].flags&STOP_BAR))
609 w=(s.x-x-w)
614 xy_str(x+4,y2-gene.curfont.size-3,s1.text);xypath(x,y2);if(s1.rbstart==2)
617 output+='v20';output+='"/>\n';y_set(s1.st,true,x,w,y+2)
643 y+=dd.h;y_set(de.st,de.up,de.x,de.val,y)}
649 function draw_measnb(){var s,st,bar_num,x,y,w,any_nb,font_size,w0,sy=cur_sy
668 x=s.x+s.wr+1
669 y=y_get(st,true,x,w)
672 xy_str(x,y,bar_num.toString())
674 y_set(st,true,x,w,y)}}}
693 x=s.x-w*(s.text?.6:.4)
694 y=y_get(st,true,x,w)
701 xy_str(x,y,bar_num.toString())
703 y_set(st,true,x,w,y)}
708 var ymin=staff_tb[st].topbar+8,dosh=0,shift=1,x=-100
713 if(s.time==0&&s.x>40)
714 s.x=40;y=y_get(st,true,s.x-16,w)
717 if(x>=s.x-16&&!(dosh&(shift>>1)))
718 dosh|=shift;shift<<=1;x=s.x-16+w}
727 writempo(s,s.x-16,(dosh&1)?h:y);anno_stop(s);dosh>>=1
735 w=strwh(s.text)[0];y=y_get(st,true,s.x-10,w+3)
743 s.x-=10;if(user.anno_start||user.anno_stop){w=strwh(s.text)[0];s.wl=0;s.wr=w;s.ymn=-ht-h;s.ymx=s.ymn+h;anno_start(s)}
744 xy_str(s.x,2-ht-h,s.text);anno_stop(s)
774 Abc.prototype.calculate_beam=function(bm,s1){var s,s2,g,notes,nflags,st,v,two_staves,two_dir,x,y,ys,a,b,stem_err,max_stem_err,p_min,p_max,s_closest,stem_xoff,scale,visible,dy
775 if(!s1.beam_st){s=sym_dup(s1);lkvsym(s,s1);lktsym(s,s1);s.x-=12
776 if(s.x>s1.prev.x+12)
777 s.x=s1.prev.x+12;s.beam_st=true
799 delete s.sls;s.x+=12
800 if(s.x<realwidth-12)
801 s.x=realwidth-12;s2=s;notes++
813 if(s.stem>=0){x=stem_xoff+s.notes[0].shhd
814 if(s.notes[s.nhd].pit>p_max){p_max=s.notes[s.nhd].pit;s_closest=s}}else{x=-stem_xoff+s.notes[s.nhd].shhd
816 s.xs=s.x+x*scale;if(s==s2)
835 while(s.ts_prev&&s.ts_prev.type==C.NOTE&&s.ts_prev.time==s.time&&s.ts_prev.x>s1.xs)
838 x=s.v==v?s.xs:s.x;ys=a*x+b-staff_tb[s.st].y
877 case C.CLEF:y=a*s.x+b
888 case C.GRACE:for(g=s.extra;g;g=g.next){y=a*g.x+b
905 if(s.ts_prev&&s.ts_prev.stem>0&&s.ts_prev.st==s.st&&s.ts_prev.ymn<s.ymx&&s.ts_prev.x==s.x&&s.notes[0].shhd==0){s.ts_prev.x-=3;s.ts_prev.xs-=3}}else{s.ymn=s.ys-2.5}
907 case C.REST:y=a*s.x+b-staff_tb[s.st].y
932 if(s.trem2&&n>nflags){if(s.dur>=C.BLEN/2){x1=s.x+6;x2=bm.s2.x-6}else if(s.dur<C.BLEN/4){x1+=5;x2-=6}}
959 if(s.trem1&&i>s.nflags-s.ntrem){x1=(s.dur>=C.BLEN/2)?s.x:s.xs;draw_beam(x1-5,x1+5,(shift+2.5)*beam_dir,bh,bm,i)
993 function draw_lstaff(x){var i,j,yb,h,fl,nst=cur_sy.nstaff,l=0
994 function draw_sysbra(x,st,flag){var i,st_end,yt,yb
1006 out_brace(x,yb,yt-yb)
1008 out_bracket(x,yt,yt-yb)}
1022 yb=staff_tb[j].y+staff_tb[j].botbar*staff_tb[j].staffscale;h=staff_tb[i].y+staff_tb[i].topbar*staff_tb[i].staffscale-yb;xypath(x,yb);output+="v"+(-h).toFixed(1)+'"/>\n'
1025 draw_sysbra(x,i,CLOSE_BRACE)
1027 draw_sysbra(x,i,CLOSE_BRACKET)
1029 draw_sysbra(x-6,i,CLOSE_BRACE2)
1031 draw_sysbra(x-6,i,CLOSE_BRACKET2)}}
1034 var dx,i,j,meter,x,st=s.st,p_staff=staff_tb[st],y=p_staff.y;if(p_staff.stafflines!='|||||')
1036 for(i=0;i<s.a_meter.length;i++){meter=s.a_meter[i];x=s.x+s.x_meter[i]
1041 </g>\n',x,y+6,m_gl(meter.top),m_gl(meter.bot))}else{out_XYAB('\
1042 <text x="X" y="Y" text-anchor="middle">A</text>\n',x,y+12,m_gl(meter.top))}}}
1044 function draw_acc(x,y,a){if(typeof a!="number"){var c,n=a[0],d=a[1]
1053 xygl(x,y,"acc"+a)}
1054 function set_hl(p_st,n,x,dx1,dx2){var i,hl
1060 for(i=0;i<hl.length;i++){if(x>=hl[i][0])
1062 if(i==hl.length){hl.push([x,dx1,dx2])}else if(x>hl[i][0]){hl.splice(++i,0,[x,dx1,dx2])}else{if(dx1<hl[i][1])
1085 set_hl(p_staff,hlp>>1,s.x,dx1,dx2)}
1089 set_hl(p_staff,yl,s.x,dx1,dx2)
1091 set_hl(p_staff,yu,s.x,dx1,dx2)
1100 set_hl(p_staff,i,s.x,dx1,dx2)}}
1102 Abc.prototype.draw_keysig=function(x,s){if(s.k_none||s.k_play)
1110 for(i=0;i<old_sf;i++){xygl(x,staffb+shift,"acc3");shift+=p_seq[i];x+=5.5}
1112 for(i=0;i>old_sf;i--){xygl(x,staffb+shift,"acc3");shift+=p_seq[-i];x+=5.5}
1114 x+=3}}
1116 for(i=0;i<s.k_sf;i++){xygl(x,staffb+shift,"acc1");shift+=p_seq[i];x+=5.5}
1117 if(cfmt.cancelkey&&i<old_sf){x+=2
1118 for(;i<old_sf;i++){xygl(x,staffb+shift,"acc3");shift+=p_seq[i];x+=5.5}}}
1120 for(i=0;i>s.k_sf;i--){xygl(x,staffb+shift,"acc-1");shift+=p_seq[-i];x+=5.5}
1121 if(cfmt.cancelkey&&i>old_sf){x+=2
1122 for(;i>old_sf;i--){xygl(x,staffb+shift,"acc3");shift+=p_seq[-i];x+=5.5}}}}else if(s.k_a_acc.length){var acc,last_acc=s.k_a_acc[0].acc,last_shift=100,s2={st:st,nhd:0,notes:[{}]}
1126 x-=5.5
1128 x+=3;last_acc=acc.acc;s2.x=x
1130 last_shift=shift;draw_acc(x,staffb+shift,acc.acc)
1131 x+=5.5}}}
1137 function nrep_out(x,y,n){y-=3
1138 if(n<10){xygl(x-4,y,"mtr"+n)}else{xygl(x-10,y,"mtr"+((n/10)|0))
1139 xygl(x-2,y,"mtr"+(n%10))}}
1141 function draw_rest(s){var s2,i,j,x,y,yb,bx,p_staff=staff_tb[s.st]
1150 x=s2.x-s2.wl
1153 s2=s2.ts_prev;s2=s2.ts_prev;x=(x+s2.x+s2.wr)/2
1155 deco_update(s,x-s.x);s.x=x}else{x=s.x
1157 x+=s.notes[0].shhd*stv_g.scale}
1165 if(s.rep_nb<0){xygl(x,yb,"srep")}else{xygl(x,yb,"mrep")
1167 nrep_out(x,yb+p_staff.topbar,s.rep_nb)}
1175 xygl(x,y+yb,rest_tb[i])
1178 default:set_hl(p_staff,j+1,x,-7,7)
1185 default:set_hl(p_staff,j,x,-7,7)
1187 if(s.dots){x+=8;y+=yb+3
1190 while(j-->0){xygl(x,y,(i&(1<<j))?"dot":"dot+")
1191 x+=3.5}}
1205 if(!g.next){x1=9;y1=g.stem>0?5:-5}else{x1=(g.next.x-g.x)*.5+4;y1=(g.ys+g.next.ys)*.5-g.y
1216 x0=last.x;y0=last.y-5
1218 s=s.next;x3=s.x-1
1223 if(y0>y3+7){x0=last.x-1;y0+=.5;y3+=6.5;x3=s.x-5.5;dy1=(y0-y3)*.8;dy2=(y0-y3)*.2;bet1=0}else if(y3>y0+4){y3=y0+4;x0=last.x+2;y0=last.y-4}}else{yy=-127
1225 x0=last.x;y0=last.y+5
1227 s=s.next;x3=s.x-1
1232 if(y0<y3-7){x0=last.x-1;y0-=.5;y3-=6.5;x3=s.x-5.5;dy1=(y0-y3)*.8;dy2=(y0-y3)*.2;bet1=0}else if(y3<y0-4){y3=y0-4;x0=last.x+2;y0=last.y+4}}
1249 function x_head(s,note){return s.x+note.shhd*stv_g.scale}
1251 function draw_basic_note(x,s,m,y_tb){var i,p,yy,dotx,doty,inv,old_color=false,note=s.notes[m],staffb=staff_tb[s.st].y,y=3*(note.pit-18),shhd=note.shhd*stv_g.scale,x_note=x+shhd,y_note=y+staffb
1281 if(dots){dotx=x+(7.7+s.xmx)*stv_g.scale
1289 if(note.acc){x-=note.shac*stv_g.scale
1290 if(!s.grace){draw_acc(x,y+staffb,note.acc)}else{g_open(x,y+staffb,0,.75);draw_acc(0,0,note.acc)
1294 function draw_note(s,fl){var s2,i,m,y,staffb,slen,c,nflags,x,y,note,y_tb=new Array(s.nhd+1)
1297 note=s.notes[s.stem<0?s.nhd:0];x=x_head(s,note)
1308 out_stem(x,y,slen,s.grace)}else{out_stem(x,y,slen,s.grace,nflags,cfmt.straightflags)}}else if(s.xstem){s2=s.ts_prev;slen=(s2.stem>0?s2.y:s2.ys)-s.y;slen+=staff_tb[s2.st].y-staffb;out_stem(x,y,slen)}
1309 if(fl&&s.trem1){var ntrem=s.ntrem||0,x1=x;slen=3*(s.notes[s.stem>0?s.nhd:0].pit-18)
1319 x=s.x
1321 draw_basic_note(x,s,m,y_tb)}
1394 if(two_staves)error(2,k1,"*** multi-staves slurs not treated yet");x1=k1.x
1396 x1+=k1.notes[0].shhd;x2=k2.x
1411 if(k1.type!=C.NOTE){y1=y2+1.2*dir;x1=k1.x+k1.wr*.5
1419 x2=k2.x-k2.wl*.3}
1421 if(k.type!=C.BAR&&k.x<x1+48){if(dir>0){y=k.ymx-2
1427 if(k.type!=C.BAR&&k.x>x2-48){if(dir>0){y=k.ymx-2
1448 x1=k1.x-GSTEM_XOFF*.5
1450 x2=k2.x+GSTEM_XOFF*1.5;h=0;a=(y2-y1)/(x2-x1)
1457 y=k.ymx;y-=a*k.x+addy
1461 y=k.ymn;y-=a*k.x+addy
1467 y=g.ymx;y-=a*g.x+addy
1471 y=g.ymn;y-=a*g.x+addy
1501 y=a*k.x+addy
1509 y-=height/3}else{dx=path[i+1].x}
1511 x1=k.x
1630 xm=(s2.x+s1.x)/2
1644 for(s3=s1;;s3=s3.next){if(s3.x>=xm)
1651 x1=s1.x-4
1655 x2=s3?s3.x-s3.wl-5:realwidth-6}else{x2=s2.x+4
1662 if(s1.st==upstaff){for(s3=s1;!s3.dur;s3=s3.next);ym=y_get(upstaff,1,s3.x-4,8)
1667 if(s2.st==upstaff){for(s3=s2;!s3.dur;s3=s3.prev);ym=y_get(upstaff,1,s3.x-4,8)
1684 yy=ym+(s3.x-xm)*a;yx=y_get(upstaff,1,s3.x-4,8)+2
1690 for(s3=s1;;s3=s3.next){if(s3.st==upstaff){yy=ym+(s3.x-xm)*a
1695 y_set(upstaff,true,s3.x,s3.next.x-s3.x,yy)}else if(s3==s2){break}}}else{if(s1.stem<0)
1697 if(s1.st==upstaff){for(s3=s1;!s3.dur;s3=s3.next);y1=y_get(upstaff,0,s3.x-4,8)}else{y1=0}
1698 if(s2.st==upstaff){for(s3=s2;!s3.dur;s3=s3.prev);y2=y_get(upstaff,0,s3.x-4,8)}else{y2=0}
1713 yy=ym+(s3.x-xm)*a;yx=y_get(upstaff,0,s3.x-4,8)
1722 yy=ym+(s3.x-xm)*a
1724 s3.ymn=yy;y_set(upstaff,false,s3.x,s3.next.x-s3.x,yy)}
1732 function draw_note_ties(not1,job){var m,x1,x2,s,y,h,time,not2=not1.tie_n,p=job==2?not1.pit:not2.pit,dir=(not1.tie_ty&0x07)==C.SL_ABOVE?1:-1,s1=not1.s,st=s1.st,s2=not2.s,x2=s2.x,sh=not1.shhd
1741 x1=s1.x+sh
1755 case 1:x1=s1.x
1767 x2=s?s.x:realwidth}
1820 function draw_all_ties(p_voice){var s,s1,s2,clef_chg,time,x,dx,s_next,m
1826 s.x=s1.x
1863 if(clef_chg||s1.st!=s2.st){clef_chg=false;dx=(s2.x-s1.x)*.4;x=s2.x;s2.x-=dx
1864 if(s2.x>s1.x+32.)
1865 s2.x=s1.x+32.;draw_ties_g(s1,s2,2);s2.x=x;x=s1.x;s1.x+=dx
1866 if(s1.x<s2.x-24.)
1867 s1.x=s2.x-24.;draw_ties(s1,s2,3);s1.x=x
1870 function draw_sym_near(){var p_voice,p_st,s,v,st,y,g,w,i,st,dx,top,bot,ymn,output_sav=output;function set_yab(s1,s2){var y,k=realwidth/YSTEP,i=(s1.x/k)|0,j=(s2.x/k)|0,a=(s1.ys-s2.ys)/(s1.xs-s2.xs),b=s1.ys-s1.xs*a,p_st=staff_tb[s1.st]
1897 switch(s.type){case C.GRACE:for(g=s.extra;g;g=g.next){y_set(s.st,true,g.x-2,4,g.ymx+1);y_set(s.st,false,g.x-2,4,g.ymn-5)}
1899 case C.MREST:y_set(s.st,true,s.x+16,32,s.ymx+2)
1901 default:y_set(s.st,true,s.x-s.wl,s.wl+s.wr,s.ymx+2);y_set(s.st,false,s.x-s.wl,s.wl+s.wr,s.ymn-2)
1905 y_set(s.st,true,s.x+dx,w,s.ymx);ymn=s.ymn
1908 y_set(s.st,false,s.x-s.wl,s.wl+s.wr,ymn)}else{y_set(s.st,true,s.x-s.wl,s.wl+s.wr,s.ymx);if(s.stemless){dx=-5;w=10}else if(s.beam_st){dx=-6;w=s.beam_end?4:10}else{dx=-8;w=s.beam_end?5:16}
1909 dx+=s.notes[0].shhd;y_set(s.st,false,s.x+dx,w,s.ymn)}
1912 s.ymx=y;y_set(s.st,true,s.x,0,y)}
1919 s.ymn=y;y_set(s.st,false,s.x,0,y)}}
2044 function draw_systems(indent){var s,s2,st,x,x2,res,sy,staves_bar,bar_force,xstaff=[],stl=[],bar_bot=[],bar_height=[],ba=[],sb=[],thb=[]
2076 function draw_bar(s,bot,h){var i,s2,yb,w,bar_type=s.bar_type,st=s.st,p_staff=staff_tb[st],x=s.x
2083 if(s.bar_mrep==1){for(s2=s.prev;s2.type!=C.REST;s2=s2.prev);xygl(s2.x,yb,"mrep")}else{xygl(x,yb,"mrep2")
2085 nrep_out(x,yb+p_staff.topbar,s.bar_mrep)}}
2088 for(i=bar_type.length;--i>=0;){switch(bar_type[i]){case"|":if(s.bar_dotted){set_sscale(-1);w=(5*p_staff.staffscale).toFixed(1);out_XYAB('<path class="bW" stroke-dasharray="A,A" d="MX Yv-G"/>\n',x,bot,w,h)}else if(s.color){out_XYAB('<path class="bW" d="MX Yv-F"/>\n',x,bot,h)}else{sb.push(new Float32Array([x,bot,h]))}
2090 default:x-=3;if(s.color)
2091 out_XYAB('<path class="bthW" d="MX Yv-F"/>\n',x+1.5,bot,h)
2093 thb.push(new Float32Array([x+1.5,bot,h]))
2095 case":":x-=2;set_sscale(st);xygl(x+1,yb-12,"rdots")
2097 x-=3}
2121 switch(s.type){case C.STAVES:staves_bar=s.ts_prev.type==C.BAR?s.ts_prev.x:0
2124 switch(s2.type){case C.BAR:case C.CLEF:case C.KEY:case C.METER:staves_bar=s2.x
2130 for(st=0;st<=nstaff;st++){x=xstaff[st]
2131 if(x<0){if(sy.st_print[st]){xstaff[st]=staves_bar?staves_bar:(s.x-s.wl-2)
2136 if(staves_bar){x2=staves_bar;bar_force=s.time}else{x2=s.x-s.wl-2;xstaff[st]=-1}
2137 draw_staff(st,x,x2)
2153 draw_lstaff(s.x)}}
2154 st=s.st;x=xstaff[st]
2155 if(x>=0){s2=s.prev
2158 x2=s2.type==C.BAR?s2.x:s.x-s.xmx
2159 if(x>=x2)
2161 draw_staff(st,x,x2)
2162 xstaff[st]=s.x}
2166 x=xstaff[st]
2167 if(x<0||x>=realwidth)
2169 draw_staff(st,x,realwidth)}
2172 Abc.prototype.draw_symbols=function(p_voice){var bm={},s,g,x,y,st;for(s=p_voice.sym;s;s=s.next){if(s.invis){switch(s.type){case C.KEY:p_voice.ckey=s
2176 x=s.x;set_color(s.color)
2194 xygl(x,y+s.y,s.clef_name)
2196 xygl(x,y+s.y,s.clef_type+"clef")
2198 xygl(x,y+s.y,"s"+s.clef_type+"clef")
2204 xygl(x-2,y,"oct")}
2215 set_color();set_sscale(s.st);anno_start(s);self.draw_keysig(x,s);anno_a.push(s)
2217 case C.MREST:set_scale(s);x+=32;anno_start(s);xygl(x,staff_tb[s.st].y+12,"mrest");out_XYAB('<text style="font:bold 15px serif"\n\
2218 x ="X" y="Y" text-anchor="middle">A</text>\n',x,staff_tb[s.st].y+28,s.nmes);anno_a.push(s)
2258 if(p_voice.sym&&p_voice.sym.x!=undefined){self.draw_symbols(p_voice)
2333 dx=s2.x-s.x-10}else{dx=realwidth-s.x-10}
2344 s2.ymx=y;y_set(s.st,true,s.x+5,dx,y)}
2349 s2.ymn=y;y_set(s.st,false,s.x+5,dx,y)}}}}
3052 case'u':j=Number("0x"+src.slice(i+1,i+5));if(isNaN(j)||j<0x20){dst+=src[++i]+"\u0306"
3584 function set_graceoffs(s){var next,m,dx,x,gspleft=cfmt.gracespace[0],gspinside=cfmt.gracespace[1],gspright=cfmt.gracespace[2],g=s.extra;if(s.prev&&s.prev.type==C.BAR)
3585 gspleft-=3;x=gspleft;g.beam_st=true
3590 x+=dx;g.x=x
3597 if(g.beam_end){next.beam_st=true;x+=gspinside/4}
3599 x+=gspinside/4
3601 x-=1.5
3602 x+=gspinside}
3608 x+=gspright;return x}
3609 function set_w_chs(s){var i,ch,w0,s0,dw,x=0,n=0
3610 for(;s;s=s.ts_next){if(s.shrink){x+=s.shrink;n++}
3616 if(w0){if(w0>x+ch.x){if(s.prev&&s.prev.type==C.BAR)
3618 dw=(w0-x-ch.x)/n
3624 s0=s;w0=ch.text.wh[0];n=0;x=0
4158 s.x=w}
4163 function set_lines(s,next,lwidth,indent){var first,s2,s3,x,xmin,xmid,xmax,wwidth,shrink,space,ws,nlines,last=next?next.ts_prev:null
4175 s2=first=s;xmin=s.x-s.shrink-indent;xmax=xmin+lwidth;xmid=xmin+wwidth/nlines;xmin+=wwidth/nlines*cfmt.breaklimit;for(s=s.ts_next;s!=next;s=s.ts_next){if(!s.x)
4179 if(s.x>=xmin)
4185 for(;s!=next;s=s.ts_next){x=s.x
4186 if(!x)
4188 if(x>xmax)
4192 if(x<xmid){s3=s
4194 if(!s3||x-xmid<xmid-s3.x)
4201 x=s.x
4202 if(!x)
4204 if(x+s.wr>=xmax)
4210 if(!s3||s.x<xmid){s3=s
4214 if(xmid-s3.x<s.x-xmid)
4219 for(;s!=next;s=s.ts_next){x=s.x
4220 if(!x)
4222 if(s.x<xmid){s3=s
4226 if(xmid-s3.x<s.x-xmid)
4235 for(s=s.ts_next;s!=next;s=s.ts_next){if(!s.x)
4242 wwidth-=s.x-first.x;indent=0}
5435 Abc.prototype.set_sym_glue=function(width){var s,g,ll,some_grace,spf,xmin=0,xx=0,x=0,xs=0,xse=0
5444 error(1,s,"Line too much shrunk $1 $2 $3",xmin.toFixed(1),xx.toFixed(1),width.toFixed(1));x=0
5446 x+=s.shrink;s.x=x}
5449 for(var cnt=4;--cnt>=0;){spf=(width-xs-xse)/(xx-xse);xx=0;xse=0;x=0
5450 for(s=tsfirst;s;s=s.ts_next){if(s.seqst){if(s.space){if(s.space*spf<=s.shrink){xse+=s.shrink;xx+=s.shrink;x+=s.shrink}else{xx+=s.space;x+=s.space*spf}}else{x+=s.shrink}}
5451 s.x=x}
5452 if(Math.abs(x-width)<0.1)
5458 x+=s.space*spf<=s.shrink?s.shrink:s.space*spf
5459 s.x=x}}
5460 realwidth=x
5464 x=s.prev.x+s.prev.wr
5466 x=s.x-s.wl
5468 g.x+=x}}
6357 case'x':s.invis=true
6871 function xy_str(x,y,str,action,w,wh){if(!wh)
6875 output+='" lengthAdjust="'+gene.curfont.wadj+'" textLength="'+wh[0].toFixed(1);output+='" x="';out_sxsy(x,'" y="',y+wh[1]*.2)
6876 switch(action){case'c':x-=wh[0]/2;output+='" text-anchor="middle">'
6880 case'r':x-=wh[0];output+='" text-anchor="end">'
6913 function put_inf2r(x,y,str1,str2,action){if(!str1){if(!str2)
6917 xy_str(x,y,str1,action)
6919 xy_str(x,y,str1+' ('+str2+')',action)}
6922 set_page();var wh,font,o,strlw=get_lwidth(),sz=gene.curfont.size,lineskip=sz*cfmt.lineskipfac,parskip=sz*cfmt.parskipfac,i,j,x,words,w,k,ww,str;switch(action){default:font=gene.curfont
6923 switch(action){case'c':x=strlw/2;break
6924 case'r':x=strlw-font.pad;break
6925 default:x=font.pad;break}
6930 xy_str(x,font.pad,str,action)
6938 xy_str(x,font.pad,str,action)}
6967 function put_wline(p,x){var i=0,j,k
6977 xy_str(x,0,p.slice(j,k),'r')
6979 xy_str(x+5,0,p.slice(i),'l')}
7030 function write_headform(lwidth){var c,font,font_name,align,x,y,sz,info_val={},info_font=clone(info_font_init),info_sz={A:cfmt.infospace,C:cfmt.composerspace,O:cfmt.composerspace,R:cfmt.infospace},info_nb={}
7096 sz+=info_sz[c];set_font(font);x=xa[align];y=ya[align]+sz
7101 w*=.5;x-=w}
7102 writempo(glovar.tempo,x,-y)}}else if(str){if(c=='T')
7104 xy_str(x,-y,str,align)}
7109 while(info_val[c].length>0){y+=sz;str=info_val[c].shift();xy_str(x,-y,str,align)}}
7168 var tgls={"mtr ":{x:0,y:0,c:"\u0020"},brace:{x:0,y:0,c:"\ue000"},lphr:{x:0,y:24,c:"\ue030"},mphr:{x:0,y:24,c:"\ue038"},sphr:{x:0,y:27,c:"\ue039"},rdots:{x:-1,y:0,c:"\ue043"},dsgn:{x:-4,y:-4,c:"\ue045"},dcap:{x:-4,y:-4,c:"\ue046"},sgno:{x:-6,y:0,c:"\ue047"},coda:{x:-12,y:-6,c:"\ue048"},tclef:{x:-8,y:0,c:"\ue050"},cclef:{x:-8,y:0,c:"\ue05c"},bclef:{x:-8,y:0,c:"\ue062"},pclef:{x:-6,y:0,c:"\ue069"},spclef:{x:-6,y:0,c:"\ue069"},stclef:{x:-8,y:0,c:"\ue07a"},scclef:{x:-8,y:0,c:"\ue07b"},sbclef:{x:-7,y:0,c:"\ue07c"},oct:{x:0,y:2,c:"\ue07d"},mtr0:{x:0,y:0,c:"\ue080"},mtr1:{x:0,y:0,c:"\ue081"},mtr2:{x:0,y:0,c:"\ue082"},mtr3:{x:0,y:0,c:"\ue083"},mtr4:{x:0,y:0,c:"\ue084"},mtr5:{x:0,y:0,c:"\ue085"},mtr6:{x:0,y:0,c:"\ue086"},mtr7:{x:0,y:0,c:"\ue087"},mtr8:{x:0,y:0,c:"\ue088"},mtr9:{x:0,y:0,c:"\ue089"},mtrC:{x:0,y:0,c:"\ue08a"},"mtr+":{x:0,y:0,c:"\ue08c"},"mtr(":{x:0,y:0,c:"\ue094"},"mtr)":{x:0,y:0,c:"\ue095"},HDD:{x:-7,y:0,c:"\ue0a0"},breve:{x:-7,y:0,c:"\ue0a1"},HD:{x:-5.2,y:0,c:"\ue0a2"},Hd:{x:-3.8,y:0,c:"\ue0a3"},hd:{x:-3.7,y:0,c:"\ue0a4"},ghd:{x:2,y:0,c:"\ue0a4",sc:.66},pshhd:{x:-3.7,y:0,c:"\ue0a9"},pfthd:{x:-3.7,y:0,c:"\ue0b3"},x:{x:-3.7,y:0,c:"\ue0a9"},"circle-x":{x:-3.7,y:0,c:"\ue0b3"},srep:{x:-5,y:0,c:"\ue101"},"dot+":{x:-5,y:0,sc:.7,c:"\ue101"},diamond:{x:-4,y:0,c:"\ue1b9"},triangle:{x:-4,y:0,c:"\ue1bb"},dot:{x:-1,y:0,c:"\ue1e7"},flu1:{x:-.3,y:0,c:"\ue240"},fld1:{x:-.3,y:0,c:"\ue241"},flu2:{x:-.3,y:0,c:"\ue242"},fld2:{x:-.3,y:0,c:"\ue243"},flu3:{x:-.3,y:3.5,c:"\ue244"},fld3:{x:-.3,y:-4,c:"\ue245"},flu4:{x:-.3,y:8,c:"\ue246"},fld4:{x:-.3,y:-9,c:"\ue247"},flu5:{x:-.3,y:12.5,c:"\ue248"},fld5:{x:-.3,y:-14,c:"\ue249"},"acc-1":{x:-1,y:0,c:"\ue260"},"cacc-1":{x:-18,y:0,c:"\ue26a\ue260\ue26b"},"sacc-1":{x:-1,y:0,sc:.7,c:"\ue260"},acc3:{x:-1,y:0,c:"\ue261"},"cacc3":{x:-18,y:0,c:"\ue26a\ue261\ue26b"},sacc3:{x:-1,y:0,sc:.7,c:"\ue261"},acc1:{x:-2,y:0,c:"\ue262"},"cacc1":{x:-18,y:0,c:"\ue26a\ue262\ue26b"},sacc1:{x:-2,y:0,sc:.7,c:"\ue262"},acc2:{x:-3,y:0,c:"\ue263"},"acc-2":{x:-3,y:0,c:"\ue264"},"acc-1_2":{x:-2,y:0,c:"\ue280"},"acc-3_2":{x:-3,y:0,c:"\ue281"},acc1_2:{x:-1,y:0,c:"\ue282"},acc3_2:{x:-3,y:0,c:"\ue283"},accent:{x:-3,y:0,c:"\ue4a0"},stc:{x:-1,y:-2,c:"\ue4a2"},emb:{x:-4,y:-2,c:"\ue4a4"},wedge:{x:-1,y:0,c:"\ue4a8"},marcato:{x:-3,y:0,c:"\ue4ac"},hld:{x:-7,y:0,c:"\ue4c0"},brth:{x:0,y:0,c:"\ue4ce"},r00:{x:-1.5,y:0,c:"\ue4e1"},r0:{x:-1.5,y:0,c:"\ue4e2"},r1:{x:-3.5,y:-6,c:"\ue4e3"},r2:{x:-3.2,y:0,c:"\ue4e4"},r4:{x:-3,y:0,c:"\ue4e5"},r8:{x:-3,y:0,c:"\ue4e6"},r16:{x:-4,y:0,c:"\ue4e7"},r32:{x:-4,y:0,c:"\ue4e8"},r64:{x:-4,y:0,c:"\ue4e9"},r128:{x:-4,y:0,c:"\ue4ea"},mrest:{x:-10,y:0,c:"\ue4ee"},mrep:{x:-6,y:0,c:"\ue500"},mrep2:{x:-9,y:0,c:"\ue501"},p:{x:-4,y:-6,c:"\ue520"},f:{x:-4,y:-6,c:"\ue522"},pppp:{x:-4,y:-6,c:"\ue529"},ppp:{x:-4,y:-6,c:"\ue52a"},pp:{x:-4,y:-6,c:"\ue52b"},mp:{x:-4,y:-6,c:"\ue52c"},mf:{x:-4,y:-6,c:"\ue52d"},ff:{x:-4,y:-6,c:"\ue52f"},fff:{x:-4,y:-6,c:"\ue530"},ffff:{x:-4,y:-6,c:"\ue531"},sfz:{x:-4,y:-6,c:"\ue539"},trl:{x:-4,y:-4,c:"\ue566"},turn:{x:-5,y:-4,c:"\ue567"},turnx:{x:-5,y:-4,c:"\ue569"},umrd:{x:-7,y:-2,c:"\ue56c"},lmrd:{x:-7,y:-2,c:"\ue56d"},dplus:{x:-4,y:10,c:"\ue582"},sld:{x:-8,y:12,c:"\ue5d0"},grm:{x:-2,y:0,c:"\ue5e2"},dnb:{x:-4,y:0,c:"\ue610"},upb:{x:-3,y:0,c:"\ue612"},opend:{x:-2,y:0,c:"\ue614"},roll:{x:0,y:0,c:"\ue618"},thumb:{x:0,y:0,c:"\ue624"},snap:{x:-2,y:0,c:"\ue630"},ped:{x:-10,y:0,c:"\ue650"},pedoff:{x:-5,y:0,c:"\ue655"},mtro:{x:0,y:0,c:"\ue911"},mtrc:{x:0,y:0,c:"\ue915"},"mtr.":{x:0,y:0,c:"\ue920"},"mtr|":{x:0,y:0,c:"\ue925"},longa:{x:-4.7,y:0,c:"\ue95d"},custos:{x:-4,y:3,c:"\uea02"},ltr:{x:2,y:6,c:"\ueaa4"}}
7262 f(t||abc2svg.sym_name[type],s.istart,s.iend,s.x-wl-2,staff_tb[s.st].y+s.ymn+h-2,wl+wr+4,h,s)}
7276 function out_XYAB(str,x,y,a,b){x=sx(x);y=sy(y);output+=str.replace(/X|Y|A|B|F|G/g,function(c){switch(c){case'X':return x.toFixed(1)
7282 function g_open(x,y,rot,sx,sy){glout()
7283 out_XYAB('<g transform="translate(X,Y',x,y);if(rot)
7293 function sx(x){if(stv_g.g)
7294 return x
7295 return(x+posx)/stv_g.scale}
7307 Abc.prototype.ax=function(x){return x+posx}
7314 function out_sxsy(x,sep,y){x=sx(x);y=sy(y);output+=x.toFixed(1)+sep+y.toFixed(1)}
7316 function xypath(x,y,fill){if(fill)
7317 out_XYAB('<path d="mX Y',x,y)
7319 out_XYAB('<path class="stroke" d="mX Y',x,y)}
7327 output+='<text x="'+v.join(',')
7344 function xygl(x,y,gl){if(glyphs[gl]){def_use(gl)
7345 out_XYAB('<use x="X" y="Y" xlink:href="#A"/>\n',x,y,gl)}else{var tgl=tgls[gl]
7346 if(tgl){x+=tgl.x*stv_g.scale;y-=tgl.y
7347 if(tgl.sc){out_XYAB('<text transform="translate(X,Y) scale(A)">B</text>\n',x,y,tgl.sc,tgl.c)}else{gla[0].push(sx(x))
7350 function out_acciac(x,y,dx,dy,up){if(up){x-=1;y+=4}else{x-=5;y-=4}
7351 out_XYAB('<path class="stroke" d="mX YlF G"/>\n',x,y,dx,-dy)}
7352 function out_brace(x,y,h){x+=posx-6;y=posy-y;h/=24;output+='<text transform="translate('+
7353 x.toFixed(1)+','+y.toFixed(1)+') scale(2.5,'+h.toFixed(2)+')">'+tgls.brace.c+'</text>\n'}
7354 function out_bracket(x,y,h){x+=posx-5;y=posy-y-3;h+=2;output+='<path d="m'+x.toFixed(1)+' '+y.toFixed(1)+'\n\
7358 function out_hyph(x,y,w){var n,a_y,d=25+((w/20)|0)*3
7362 n=0;x+=(w-d*n-5)/2;out_XYAB('<path class="stroke" stroke-width="1.2"\n\
7364 d="mX YhB"/>\n',x,y+6,Math.round((d-5)/stv_g.scale),d*n+5)}
7365 function out_stem(x,y,h,grace,nflags,straight){var dx=grace?GSTEM_XOFF:3.5,slen=-h
7367 dx=-dx;x+=dx*stv_g.scale
7369 slen/=voice_tb[stv_g.v].scale;gla[3].push(sx(x))
7375 if(h>0){if(!straight){if(!grace){xygl(x,y,"flu"+nflags)
7378 1.2 -4.4 -1.4 -7 -3 -7\n',x,y)}else{while(--nflags>=0){out_XYAB('MX Yc1 3.2 5.6 2.8 3.2 8\n\
7379 1.4 -4.8 -2.4 -5.4 -3.2 -5.2\n',x,y);y-=3.5}}}}else{output+='<path d="'
7380 if(!grace){while(--nflags>=0){out_XYAB('MX Yl7 3.2 0 3.2 -7 -3.2z\n',x,y);y-=5.4}}else{while(--nflags>=0){out_XYAB('MX Yl3 1.5 0 2 -3 -1.5z\n',x,y);y-=3}}}}else{if(!straight){if(!grace){xygl(x,y,"fld"+nflags)
7383 1.2 4.4 -1.4 7 -3 7\n',x,y)}else{while(--nflags>=0){out_XYAB('MX Yc1 -3.2 5.6 -2.8 3.2 -8\n\
7384 1.4 4.8 -2.4 5.4 -3.2 5.2\n',x,y);y+=3.5}}}}else{output+='<path d="'
7385 if(!grace){while(--nflags>=0){out_XYAB('MX Yl7 -3.2 0 -3.2 -7 3.2z\n',x,y);y+=5.4}}}}
7387 function out_trem(x,y,ntrem){out_XYAB('<path d="mX Y\n\t',x-4.5,y)
7393 function out_tubr(x,y,dx,dy,up){var h=up?-3:3;y+=h;dx/=stv_g.scale;output+='<path class="stroke" d="m';out_sxsy(x,' ',y);output+='v'+h.toFixed(1)+'l'+dx.toFixed(1)+' '+(-dy).toFixed(1)+'v'+(-h).toFixed()+'"/>\n'}
7394 function out_tubrn(x,y,dx,dy,up,str){var sw=str.length*10,h=up?-3:3;set_font("tuplet")
7395 xy_str(x+dx/2,y+dy/2-gene.curfont.size*.5+2,str,'c')
7398 y+=6;output+='<path class="stroke" d="m';out_sxsy(x,' ',y);output+='v'+h.toFixed(1)+'m'+dx.toFixed(1)+' '+(-dy).toFixed(1)+'v'+(-h).toFixed(1)+'"/>\n'+'<path class="stroke" stroke-dasharray="'+
7399 ((dx-sw)/2).toFixed(1)+' '+sw.toFixed(1)+'" d="m';out_sxsy(x,' ',y-h);output+='l'+dx.toFixed(1)+' '+(-dy).toFixed(1)+'"/>\n'}
7400 function out_wln(x,y,w){out_XYAB('<path class="stroke" stroke-width="0.8" d="mX YhF"/>\n',x,y+3,w)}
7402 function out_deco_str(x,y,name,str){var a,f,a_deco=deco_str_style[name]
7403 if(!a_deco){xygl(x,y,name)
7405 x+=a_deco.dx;y+=a_deco.dy;if(!a_deco.def){style+="\n."+name+" {"+a_deco.style+"}";a_deco.def=true}
7406 out_XYAB('<text x="X" y="Y" class="A"B>',x,y,name,a_deco.anchor||"");set_font("annotation");out_str(str);output+='</text>\n'}
7407 function out_arp(x,y,val){g_open(x,y,270);x=0;val=Math.ceil(val/6)
7408 while(--val>=0){xygl(x,6,"ltr");x+=6}
7410 function out_cresc(x,y,val,defl){x+=val;val=-val;out_XYAB('<path class="stroke"\n\
7411 d="mX YlA ',x,y+5,val)
7416 function out_dim(x,y,val,defl){out_XYAB('<path class="stroke"\n\
7417 d="mX YlA ',x,y+5,val)
7422 function out_ltr(x,y,val){y+=4;val=Math.ceil(val/6)
7423 while(--val>=0){xygl(x,y,"ltr");x+=6}}
7424 Abc.prototype.out_lped=function(x,y,val,defl){y+=4;if(!defl.nost)
7425 xygl(x,y,"ped");if(!defl.noen)
7426 xygl(x+val+6,y,"pedoff")}
7427 function out_8va(x,y,val,defl){if(!defl.nost){out_XYAB('<text x="X" y="Y" \
7429 <tspan dy="-4" style="font-size:10px">va</tspan></text>\n',x-8,y);x+=12;val-=12}else{val-=5}
7430 y+=6;out_XYAB('<path class="stroke" stroke-dasharray="6,6" d="mX YhF"/>\n',x,y,val)
7432 out_XYAB('<path class="stroke" d="mX Yv6"/>\n',x+val,y)}
7433 function out_8vb(x,y,val,defl){if(!defl.nost){out_XYAB('<text x="X" y="Y" \
7435 <tspan dy="-4" style="font-size:10px">vb</tspan></text>\n',x-8,y);x+=4;val-=4}else{val-=5}
7436 out_XYAB('<path class="stroke" stroke-dasharray="6,6" d="mX YhF"/>\n',x,y,val)
7438 out_XYAB('<path class="stroke" d="mX Yv-6"/>\n',x+val,y)}
7439 function out_15ma(x,y,val,defl){if(!defl.nost){out_XYAB('<text x="X" y="Y" \
7441 <tspan dy="-4" style="font-size:10px">ma</tspan></text>\n',x-10,y);x+=20;val-=20}else{val-=5}
7442 y+=6;out_XYAB('<path class="stroke" stroke-dasharray="6,6" d="mX YhF"/>\n',x,y,val)
7444 out_XYAB('<path class="stroke" d="mX Yv6"/>\n',x+val,y)}
7445 function out_15mb(x,y,val,defl){if(!defl.nost){out_XYAB('<text x="X" y="Y" \
7447 <tspan dy="-4" style="font-size:10px">mb</tspan></text>\n',x-10,y);x+=7;val-=7}else{val-=5}
7448 out_XYAB('<path class="stroke" stroke-dasharray="6,6" d="mX YhF"/>\n',x,y,val)
7450 out_XYAB('<path class="stroke" d="mX Yv-6"/>\n',x+val,y)}
7451 var deco_val_tb={arp:out_arp,cresc:out_cresc,dim:out_dim,ltr:out_ltr,lped:function(x,y,val,defl){self.out_lped(x,y,val,defl)},"8va":out_8va,"8vb":out_8vb,"15ma":out_15ma,"15mb":out_15mb}
7452 function out_deco_val(x,y,name,val,defl){if(deco_val_tb[name])
7453 deco_val_tb[name](x,y,val,defl)
7456 function out_glisq(x2,y2,de){var de1=de.start,x1=de1.x,y1=de1.y+staff_tb[de1.st].y,ar=Math.atan2(y1-y2,x2-x1),a=ar/Math.PI*180,len=(x2-x1)/Math.cos(ar);g_open(x1,y1,a);x1=de1.s.dots?13+de1.s.xmx:8;len=(len-x1-6)/6|0
7461 function out_gliss(x2,y2,de){var de1=de.start,x1=de1.x,y1=de1.y+staff_tb[de1.st].y,ar=-Math.atan2(y2-y1,x2-x1),a=ar/Math.PI*180,len=(x2-x1)/Math.cos(ar);g_open(x1,y1,a);x1=de1.s.dots?13+de1.s.xmx:8;len-=x1+8;xypath(x1,0);output+='h'+len.toFixed(1)+'" stroke-width="1"/>\n';g_close()}
7463 function out_deco_long(x,y,de){var name=de.dd.glyph
7465 deco_l_tb[name](x,y,de)
7526 function writempo(s,x,y){var bx
7529 bx=x}
7530 output+='<text class="'+font_class(gene.curfont)+'" x="'
7531 out_sxsy(x,'" y="',y+gene.curfont.size*.2)
7534 bh=gene.curfont.size+4;output+='<rect class="stroke" x="'
8012 if(parse.state>=2){s=new_block(cmd);s.x=(lwidth-len)/2/cfmt.scale;s.l=len/cfmt.scale;s.sk1=h1;s.sk2=h2
8599 lastx=s.prev?s.prev.x:tsfirst.x;x0=0
8604 if(!ly){switch(s.type){case C.REST:case C.MREST:if(lflag){out_wln(lastx+3,y,x0-lastx);lflag=false;lastx=s.x+s.wr}}
8608 if(hyflag){if(p=="_\n"){p="-\n"}else if(p!="-\n"){out_hyph(lastx,y,s.x-shift-lastx);hyflag=false;lastx=s.x+s.wr}}
8609 if(lflag&&p!="_\n"){out_wln(lastx+3,y,x0-lastx+3);lflag=false;lastx=s.x+s.wr}
8610 if(p=="-\n"||p=="_\n"){if(x0==0&&lastx>s.x-18)
8611 lastx=s.x-18
8615 lflag=true;x0=s.x-shift
8617 x0=s.x-shift;if(p.slice(-1)=='\n'){p=p.slice(0,-1);hyflag=true}
8618 if(user.anno_start||user.anno_stop){s2={st:s.st,istart:ly.istart,iend:ly.iend,x:x0,y:y,ymn:y,ymx:y+gene.curfont.size,wl:0,wr:w}
8645 function draw_all_lyrics(){var p_voice,s,v,nly,i,x,y,w,a_ly,ly,lyst_tb=new Array(nstaff+1),nv=voice_tb.length,h_tb=new Array(nv),nly_tb=new Array(nv),above_tb=new Array(nv),rv_tb=new Array(nv),top=0,bot=0,st=-1
8656 x=s.x;w=10
8658 if(ly){x-=ly.shift;w=ly.wh[0]
8660 y=y_get(p_voice.st,1,x,w)
8662 top=y;y=y_get(p_voice.st,0,x,w)
8707 for(s=p_voice.sym.next;s;s=s.next){if(s.a_ly){y_set(st,1,s.x-2,10,top)}}}
8709 if(nly_tb[p_voice.v]>0){for(s=p_voice.sym.next;s;s=s.next){if(s.a_ly){y_set(st,0,s.x-2,10,bot)}}}else{y_set(st,0,0,realwidth,bot)}}}}
8735 if(c!=','){syntax(1,"',' lacking in annotation '@x,y'");y_abs=0}else{y_abs=get_float()
8738 gch.x=x_abs;gch.y=y_abs-h_ann/2
8744 case'@':gch.x=x_abs;y_abs-=h_ann;gch.y=y_abs-h_ann/2
8796 if(gch.type=='g'){gch.text=gch.text.replace(/##|#|=|bb|b| /g,function(x){switch(x){case'##':return"&#x1d12a;"
8811 xspc=8;gch.x=-xspc;break
8814 xspc=8;gch.x=-xspc;break
8815 case'<':gch.x=-(wh[0]+6);y_left-=wh[1];gch.y=y_left+wh[1]/2
8817 case'>':gch.x=6;y_right-=wh[1];gch.y=y_right+wh[1]/2
8821 xspc=8;gch.x=-xspc;break}}
8828 Abc.prototype.draw_gchord=function(i,s,x,y){var y2,an=s.a_gch[i],h=an.font.size,pad=an.font.pad,w=an.text.wh[0]+pad*2
8830 y_set(s.st,0,x,w,y-pad)
8832 case'^':y=y_get(s.st,1,x,w)
8834 y_set(s.st,1,x,w,y+h+pad)
8837 x-=s.notes[0].shac
8838 x-=pad}else{if(s.xmx)
8839 x+=s.xmx
8841 x+=1.5+3.5*s.dots
8842 x+=pad}
8848 y_set(s.st,1,x,w,y+h+pad)}else{y-=h+pad
8849 y_set(s.st,0,x,w,y-pad)}
8864 user.anno_start("annot",an.istart,an.iend,x-2,y+h+2,w+4,h+4,s)
8865 xy_str(x,y,an.text)
8867 user.anno_stop("annot",an.istart,an.iend,x-2,y+h+2,w+4,h+4,s)}
8871 function set_an_yu(j){var an,i,s,x,y,w
8879 if((an.type=='g'&&pos>0)||an.type=='^'){x=s.x+an.x
8881 if(w&&x+w>realwidth)
8882 x=realwidth-w
8883 y=y_get(s.st,1,x,w)
8885 y=minmax[s.st].yup}else if((an.type=='g'&&pos<=0)||an.type=='_'){continue}else{x=s.x+an.x
8887 self.draw_gchord(i,s,x,y)}}
8888 function set_an_yl(i){var an,x,y,w
8895 x=s.x+an.x
8897 if(w&&x+w>realwidth)
8898 x=realwidth-w
8899 y=y_get(s.st,0,x,w)
8902 self.draw_gchord(i,s,x,y)}}
8915 if(pos>0){y=y_get(s.st,true,s.x,w)
8917 minmax[s.st].yup=y}else if(pos<0){y=y_get(s.st,false,s.x,w)