From 6434b181926856dc833bb3b97b41d7a1109aa29d Mon Sep 17 00:00:00 2001 From: Joshua Granick Date: Fri, 21 Feb 2014 18:01:32 -0800 Subject: [PATCH] Add sidebar support to documentation generator --- run.n | Bin 124754 -> 125219 bytes script/src/RunScript.hx | 134 +++++++++++++++++++++++++--------------- 2 files changed, 84 insertions(+), 50 deletions(-) diff --git a/run.n b/run.n index 3e3ed35b75b926de9efb2d6386e8cb950ca2fc1e..2fd34d55df79d6de2627ae1359f4df7ee5d9bc4d 100644 GIT binary patch delta 24681 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 bBO>Av4C8|jp|<0)R^vy2k1@YTB=r9Q-USdF delta 24442 zcmcJ12V7J~*Y`b_suZaU>=js8sz?9jFS5Jld7dx6?-zeL_dn;HIdkSrxifQTS$WCk(m5N)w#{0% z>t@MulX;G-tJ>=L+A@*24?Yhw4!L^m)I+S)UY~-j!Gk%zWgrK9P9PfQxrlJIsx#d$cYv<@b(|%Cw;2{{m&oz_#Y7GZZjLpq z#6jOul(@)aprOHIenrISv|DdcFm7@fS(*Lv!(GhuZwB=3F zrdDiR?f5!%8#Qjyv{@q7G>SioGCr&`Dpci$77R$q%FW2j%)&B8U|;Fd8OuyXVqq)x zb4rLDOzA08Qr$w@`nz=yu8zACelB7Xb%*47<-8zrR&*DI$yk$33@D)2a2Nys0L1Ytzxh zru5~@)&jJ|0F8h+AH zR5*tc{sED8G3G;AJ46^i4q3%ASfnpVJThGBk6U|-`~Q^E!lZPGFd^7vuH&?iew zw#?>N4Z~4Y1#x0tK~`EuU;YXStv!*`Y2cwGch_8i)KwYVPG%<{iI{-NI3o3lG$GQ7 z1XU(tjera0yG+E?*F;WFk-}N(KWPs3$&+)DF?pW&+A~lS%&YbOM zp;=2&2VX7`^yY|&e&UcslV68};M)R^`)8uwa*j`Q5;NWR?~$&+3hO!f*!l3bJDgFL=yt=L-V&VRd3 zED{p=iUgTONKX$7)wE8-T7B$|@AW+QqPOxjT z6N`Gj3!M!Y*L&A&)P6SymNC(>@v(Jk)sBsih~g}xYuAY)z&q|m-Di8T-~-=Cc6*XX zH8uQGO!B$=kPO}@divDlhwl>;ee!Hx?!$Lt^Mm4EpG@^92eD7gJctEtA##n9{2?^x zD<=4k;9DLNxBK?5KI9M@*?|PZn3+?+KcjT}!$@)ti}f}B4aX4{i4+kjMS`id4X+?_90~FZh+n`zC02yERHJcjc@*KqqnPQBqv%HFG4Z@6Ts8F=8k|RD z?=cjqjw8xBF1q;nt7Z{iMC9Oca`^%b_%)MPKlxZF+pcfVcthbupV`2Eh7yte82K`r_tc}(Vo=RZGRyfA1c6xR(=SFx?D0&b|iwS~B~ky~+I^d`P}-x$s%Rl_aZ zq*Dj1n3AwX!|D8Eb-Ew~K0|89?hXoASEHtSzAvX+r_-&_P2Uj_ptFvxG0B&6X;G7# zuB%a}Cg(DyhBz%YI3&LYr#|7s>E^XfZ>4KHTGv*0e~QjUgL!o|Vs-fR+3CZ%IC+b= zVgsx>Z%+N(PqdC3#CrybBjWrDqk_2!wcnE+=maLLV`C(`O{en-ARiowR&AEcv`D)DBttCwkTPE4=H+smledf=;JvwQ2hFb-HbB zW1OmEP)51n!)NL|ol8K~>jLLeN6qP$&eKiM=>l}Cb-JY4vvoREfLclLwQqr*=x*b#c>2xs%Jke@R7kv2C?~1i0nYgRALtzUq6wGnKhtI065drF* z9^AU6I^F6ix^fSc1i0YCC)OuGJx0at+ZPmow!TuKplJd=e1@P${!X$YK75)^j|d1t zO_wMYmpn`zg6LOwZnmyf!H$Gjog-ow{HN0;>k{$b1l=~VS$u>e`Z^&gdGyk3-HLtN za>W+0ejZp*qOKMG!*(T-9`oFpQ@0S;#0NTuIB*Gl9l3-r66Pdycjk2Si|@n_gOI)m zv6(9Vs~upR($#KZ!?~QW=3L6fQFS*!xfq&|+v0gGPS+~k=R_?oJLo_y&ZWeqZ!G7c ziRE-1(?{p(I^sY4&)+kaQ%^#jBpn4*r?Vb|y4`DW9g}LeN90+nxGdp~s;~xjZ^!u@ zXN_H4dSbtop4e-pCw5usi5*jVVy~2**bnHbv&N<-5P{7t2~s`f=Nb?BiIJ7~7)R-e zF_E5FH^=$*STa^nVssY!c5GhLvli#`ts_$F4Mf#gIeO}>u|g7ifRuEpkB{P;9S_^{ zp0&iUQvN7jkvhpj%+Ks?o0Xe6xLeMUzT%n8#a08;hGg_D?vphfY7R&nJftOUb=qZf z5<4ri;%Ugr9#Vlj=Je@1r1)9(8E1a}`QmSeUvU+~r*DH5;@#=XVU;*;#-~XCH6t5} z#H^W(;cIct%xAEcZKwlYDA+bD57vqPvm;=w*kN`9STD|)y$CjnPG`Kue=%3Fr|9Ik z$)JuiXj3nA;?g?HYR+!yvaOO;l3uOcpe`0i&1r$9`!Ju- zwUt7HdX+(&JaWg)BtF{%)k;i6qW#>}j_5(9FRR1@b3+_=n6lo?9SWu5-P3CEw-wbK z&tzM0>P6c5TOM69s3o>VntG>rU|t;T6yMAX{svuY=L@oq#m;O&bSn0@4OH>|eJL{c76yrR7DPGiuB=u`c0ctVY?5ek z?E)3-6%Q=Xz&GN(1zEBCjFhCv?l)%~FlQVTM=osScgUQ5*ocuGtg;l}EeW$sPE{Xa z&RxJm^j{PT+hv%s$OpEG(Yw6FMT>M|w}sx~n?*IFjvM8dJTdAAa-$pd7i5S#7iwH3 z#Zx9Z#jA@n))N1$xPEbno3Y*O;82RuIgC-T=L!s@vB_+FE2Ho{dM4Ni623rK%vcft z=P8T0d5JY#pa4Ut=zCaW6DVoPA+NF22`-9bm#W1sOMM)%vs8AoJ;)A#%i`*#%^a^7 z3$BXoS9^(VR=SJ9%VJ=Mn6#`dToczW6MQySs%4dr$+oghtLTKG2K7eq{<1poohW?e zi?rTX^<&mosvFchjT1N^Vq1iSC0P_$C0msjSasx+_h7|uU}nLJLU02O_`yx_$FJgC zZ&l_j$u@*%$Ek0NgOTV#Ic9JfeQ7WKEhBV^x$K_SB&MPnqVesmH5dGxuxYuQK=pe?Ks@p}?)P+5sFYg^Uf8C@1l z?c$oX{$kl$wcWoeh2pcds`}xR3<8IBtz=Jnp9v$VWG^>pcY0);*xJ!1W!+!o2v=a! z(Mn8MpD)jr)>$gvAn@Yp^~&^VRg&F6un@PL(cs(4U73KpZg4HMG$|_$v*B1VnQ5jX z<8-AvB^ia-hR8c%%u549-^Ky`S@1aNA2VTG&aN%@=${7E(X7r+RA=%0W>0j-T8ZW3 zk8#S(t{h7j^0CAJ+Q$!UYqrIRL$`Q}{kGXj{W9|-Ja(fniu_hztaXQjzW+FqZXb9> zku2HjX_ayU#}~%auWp}OsPqxOdB{!d`B6>mVdj{v)WpAT^NjrnPt>v}!uz47ZrP{v zM^?(rFR6=&9ZQ6N+(AC5;RlwfgWN3<{&AzKKd?kof)9<_YAFsll}Za_!57tV+EI&z zrFOWOqXpjTQumMUiW;daZr6rG=Ue(XRE{M*Q^+~sMXvcpDcQF+Dwj{+n%-EA~! z{%=AQDn**Qky?!S=Hmk;ccUM6e{7)sz6&kd<7GJoR~yuK;x_)*zGE6}S^(6<_KW?; zBeABbA%R|0(KZ$PQ+nke{up1(tkN75-TD8(kkbc-HQS=CQogrP0{1Z^C|v6Jd%pSD z_6+~PCwfB-+~+0!dC(c6M8`v6c%1Ke$lEPgh%wWR26ny?;1XQD1W!Yb?0K2Q|AWax zd~oppXl%qv)5pHU(x@mb`iPc_Gpku`vvj;!x{g^I&;Khn4C3xHp_aIZs4LDoQb%4a z6>j38s$Z!*Fj{87;>I4>ULVYpuczxH4l?(imK3=#Vk&b=nBn}s_4Ww;O`SF^d z6K|jP7Gq9$f?jNWqI$FUhXiT3SBb5(VNky^PE@Le8iajZiW0bO^?|?P(7%NP+wO zv@5hBWNlDc8-%tBv@r_QMUN;9pYy>`s_)*J>g-Go2MKoQR{>R;gG<@3x z^2C|n2E(A@o!>SB7$PYNaj{f48xl60G=24MuD0*mB+6*%1u(QvWsswa#T zf4v&-_9mXpZO7sJ6% zymQ;#av`M#X+T?}T-zz91x_B=Usj*`<+ahV@uNpLNRZum-`3~IUL`iY(-u#G#XAK^ zt;@c`Bk-@wn!<+Sr)3WS+v~!;Gw@1Wa=#P>T^>Z+-PA6=T6CELas}%cV3t;iS0BW} zb*c8g599G*uG_=Ih|6_$`AWR8Rd09k@%*TpQSv@IAr~M;s3$zE5~bxQ!j+2ZU2b<^$q~ zgkvri|AhDv;c?Fg9x5*~gvznU6EG~h>X2*o>n8D(5SNsDS$>O(QWF*5E?>*z1UB)< zSd1?nZe94%6P`$s`|HQH_@RP$sZYHSjeOd`{YT7LIU-Ba@gQAzDxP^-6ORUedm8Ng zvx(dwJS&d=sRZz>kb3R!Kl|eflTh?CH+Wf`_$&zE7jfWof7l?-e4d6v-Ak2d`{ED& zS74F1AV3U#=?1?cH_+>M6U!xr@G;ri@@!Y(4>DLh^JN6!+3)^W&Gm_It>Yr{9{*u}Keu*++%PQiLq5r>EZ{bx-onxon7JpdDOO}8sC7e z#2asF;Lxyo8;|Xj_Eu#VtFq5lOHT4){%cR$WKSu9U$b6&iu2yOfhD5q;_3NX?C^_MMHVYbas02&?$#z=-~nodk2USJ>vpW*zQ_)j3b8TO zlZDcOsgj|#r7f!9g5FhZ@S7w5PKte%@NAuwy^2)e++Ur<(XSmbxb_vE*pa{j<3ufp z>J8-5#NU65#y*O%vQ4g`u-g3YA+yBMzt_ReNi{t4yHO*~dEbb#x#IXg4ue?}7*wtX zZP|bx7q(MNyZ@!d&QqN5*Jd7mDSq;wJQ3_5eq5c$`k(VkuT@}fsVg}R2_s|uR`tmDso?ZDsnZ|oHC?+pd8R67XyTP2J4 zNue|D(`3$zCfR4+}mhr<9hORGAAvD4?bSf(h zaiQ6Wp%-Z+8|?(%@H<=V1Xm!M6*$8TsKs~}NW@1=7ud+hN=?G-T)`a+@pFY{DCy%0 zY4|wl3N3uWCP(#P6 zdO{sHQ!DhEYa&-E#}j%%Q+CV~I{b}NGg(RJ1sh;J`_T*XpgHS_A42(-vLsjlbxqTt zmZWRTaegs%JL5419$!^E*gyfAV63+a5Z%n^TgA@os#LMapx!g9Z45<(Hd>q7NZ&^W zDks2_bo^!}7+7$12qjGRiAQ$cbng@!N|ua=Xka>`LorLi^M;H^$a=1&Ed zMak+=1AZZD@^Vkz?JuY?GFX{6tb=Se#RsCG58Hze=f09QUu6FR-!8bI%VB@|zuTU85964-7MfS7n0ls2Qx8liouGxe^2*q?G%^s{0p4RM41xsg zal3<{46iUOo94ly@I}LR1cM7oPX?pbd-fn$U%Da$2P-UOKZHVm%-5v`Jch-rK^O$X z5;isrJglto)xMOV4%H8YL4AO)*k3gv*nI_7qOw;>>+R;i&Ln~#OA3eY-By{(X`@rb zYDPj`ucG8o!7MjTC>6PnN8q6P`fqZVV(#wXzRpx6O;AOp3!>mJ-ffeqj0)Y%*3|;7 zyO~7AOQQR=U=?g-=Nf@W>C#vnV)b@>Xra`EH7PCGN7!k?GDy}+ORLw0EMB=z;)sg| z`D1k!w(vf-whmPPJ07fJ&+Fhkx{5j0g*bdPt&5G{lub^+N%D1FaDxM^Y68^c5AtkE z0>rR>3E(5k>%l7)eT#0cl$IrcFTjz~clE%AI)Z$mh50pr`YuMFyGzpj%MHSDme&BX z;Y8`x1~98q+xYqm^J@rr|AnPA#Ex;Aoo)!Dt7C=a-DbK9XOy)@ZLeO%vKoN_&Ql;g zEt7+U3xvEqE}DcX%>%!dzB34y7~dE~xWeW&hPrT=U1$umVI9k80-GI;ztITSn5HT0 zu)~7yFSa;~%dhL~UQ^IwkgS?PxaD_foxO7dPu8{>6uLAvc}XSP3yoM=Gl+yHtXd)l z_y!A41W)&yCNAN3SL_G3*y%*@XQL89fZOZ^s=*z$H4!6QMv_2<$(kkNy5UA5xU!nf z;S}6sZ?VrhKQyt3t3|e~1!NR{Z^r&Nrwp^#>}Y=SmPC!0}FhZsx8E^ zer>?z-`rGTJKKOBdo5n-sm|QmLKeIrQz|yIEfnDT9&K0!;PKFFX6Ow;INI(dfd|X! z01j+WJD9F|V;V7)9rmS)S*&(@xcHw;EczgKRioVXI>H6`joEjCTzu=}BZ{r>1RA$L z%u2K{2*AoZ!FVX4TEwyiouL8$7tgMD#$ZdlL6i*Z29d0|3r;Y`un%WEFdo4Bhw*z&=aC`NEB*q(F6WXQSw$qLhklPQgCt!FHrT1U??6;JVa(9{4*gj+~^O4>E((it0dp7wsPCjw$i)@&P%X>1yBCd5Bm z%8vwD?Ar(XNnszbg8DL}7cr=W(&K$#47^_~rLgunxZz1=gL2@WyQfKQO42o0ZvWCg z{opLP3^S48%i|MPbs&zqVFO^C%cthTQKcx{WDP4zcMXPp0GpWM69{I@hQcQ@?#L4I zkuh@^?2#F}6rIxW;jji=51Lpk$?h#2V&x;CEvzez9|@=K*XRQyZ&vs0uQYA z(JJtTm{OO!6@P>Dh!~`UD+SUangU;a!Jm|&ZaC_fkvS;R9e)XB(%wWm z&QjQPnx#NG{8AvDkD*aon@YP?gTD8)AqN!bvdB%RK-yWOUM>u>A#y!G*uKrPnR?i2}dn0{sr+E)@dSWbH*ae)Y$ZayNOPWZ-?Tqrkidb)Fo zycxuE{i~ll;+cd`w%AX>okjS~_nqSq&qnO0&lxe4oEJ$@ZO!7}5ziq!KBtu0bS_&s z3A7q=v!ed<2-86uhAG3KPMBm67`reTR6)C&oc)oUIA(D7!o2fIQEAl$gz1L7Fo}6h z1|e!8GEi5SZW`>yn2$tCVHE`|f_dxlwK{wCFgU9VtER46Vb zPXb_>Hl* z_6PB5!t})i@z;cD&5d{s;kHd${fT%j;Xb`~9!I>6@TjP#-qZ~@QsQRgcGMF#5vD8t zm37)IRX&40(@1{dcA{cDtkUBTv{>14=*hcuq z^>J@23o2&GU*cA(gpI=ozg>>`o-Z-xJJ=~=l}fCT@6MDQK?^&{LW^Pt>L#yIK+OO3f27%Q;xUwtJA1ILO9`on($G=Qym+-vAa`o;n`vuICejd zJh}}W>DnUix9OK{puVt(Cx}uPg-`NCJ8DUnICgJoVNUE0QmBY)^yaHQ{*Ib$GVG>FFZ}Jrn;J zN#E1nkZkMiHTbboc*~y7z2M2tiSCr<+`p<+0(JsWwyfVNZm0bznzCWC% zX?Mb!AAY2FrU&7H8_&^u#FKqD6C%9mf`L*kK}}exgTOSiz%Q820M(J&U5jR%#U(h& zH}fmQB~;lQ)p>Ss18DjxY+q6fYX9PxlJ=wYbFXI=X)UGgp7pGy$O9=o+GAR*k`AVH z%aO;AD(O&4t5#MysHDT#^I70q7)9*XkGoP^#t?q$lKL2N9O0i1YaI~RCv4m9$SK4P z39I+szJoZCu-uqJ3&O=Wo*h7bCgB;jJ4ru_Fr8>3?niiT{u^&9e5< z^k?&DL$1R>k}HwR#a~Q8d&py%BFuzA?6n9D914sS1~dH}NOTxNEae?Il+B(4Z3Bl9 zt3^&UO_-k$9=b~OLpk`-O%acCo;J7-9 ztuIlmzxYScFJ`u<@@&RB$#&R$2#c9UYW-fWqvh9h!f{;+9TCqUJo-2F4~Sy($eWMp$Y6 z`E14lNH1JKtmSWO<_7je8`aLfCg+qi#roMQJ_%Pwlp#ij< zI7(RFZV1N+=e+Q>MgB>`r^=epyW}wq!zwXw0|KHZPm()^sjyyrNK;ZiIo|1oL))45^e}jq($gBU#~Lc{Yku| z-^9@j_KtA&`nL}eSH<17Y|0=w5dQpK`v~Ma6HYldSPGI~-w`3`IBU2Rx)i#Q#NPcP zE^%(f4^(WNDP|JWLw zb2l0x3g-jIMwltImP0Bj)CL2a zUxW?Th9adjSX*|v2;YtESmHU0?$ zQy;p?4WuZ1t9|~`Org8nK#Ib~wejW_ddLl=DD+ERSkufxlH5Rw!pwmq%`Nm~9&0PB zx%kzY1Tzc0!BKC$+#!sY#A34?jvDmz2nc*ahXt&v#$laI2qhqk17wNIXs74{q{jm z+UE8nth^Zq5bk`h3hgZh64tIg`ZMBONk2CWXW|Nrd2*Q{8?elL85=f$ZQvkMz2$vZ zkJ$N!c~M9SedhU?Y679k7!Rcwr#Bl;V&wpC z1mRJ8Jm`HflJL*fno&(YBiyz1*Ys`}O}L5ccjc8H7s@eUqc-Ahc#Q1wvW;L1W7(RG zxau88S(F9e=Y*97-xsXmW}LRQo4^mo%h`Ht!dg#YcemhYi^5H4Zlc6@*AIORprh9m;wua5F9|CP>#0;kbAFoQ;nK}$a=K)`+Tw{(xXP-Cx?GN` zqMR8<<;=8@SK_KIkmNJVsG!-E1#!B3^iE{cw?GG&Lj?rDT*-BnzHxRfT1(C|GRYK^ zEw@6B!+a7b;aR};Z-r#M13?j}_GO%bt8{UZ#B}St@)oUt7aN&dB1huOZ7|w>De?R7 znMCV?WrXQGl(pZC0gWvNKmIEv6a$Je6wBqP&nU(ZAu9+6Ijl0WTg1LChWZYxiKT3b zzGmJfxQ$vPWpvVyeq77Q!?m)x)g{=7>m=;1zw#h}2F7|Lvm01h3511hL>Bha-gq>p zEpYC55|_!Obkn1cql7BE>PG6S!K~MIaP`_uI!a4#A*{6YR+hUHcU}&qV9ScPLlD1B zsp#|VSkYoRpmV;>#Pw@Mo0mu~s`O7|9DLBl?PN{qTRW5n>bnDSyh=%+G|*1MO8?#U zzQ_pJEmysLDOPUXFPwI`KCG-(;pgDh3sp*-WSkq(d=1wg9_`F?6Psm=?-GyGA zWG#th=G7@Or&RhhW4oZE-x*{Xe@s1VmOe+{NPSqyZt#fyZ@TBr@?K#1yCLqs7IB_6 z+zsCBv)$kyO#K137G{RbojT8c--S+%-i>!6lJ-D-=MOTl_GEJ3QTzlrbuZZ4v^%v( zhjv*iu`lmN_Wq-o8D-8kKh~O5|Glj49%Ps7K?St#!NT`KRhtlPJr7fbHk271_GG{9 z1v^meTJ6Q}lI_01@2?7@=U!BM?*#kGNYo!oe(!_54NchTN73^~@#fW2Qb;$8WEyikfRU3bUuQo!Kq<4^2WqzX0D78_ z47PDUo?G4~;y}E=_JdP&S2HVJ%+j6A(w*79{TSykED8%4un!`uL~Hloxp)Qt^b6ad zl;@42y~btRSkkJPMIMBPweT{7naxDAbThMbQykgM4nVXGZE+|u?f}%FIM_6oI6|12i5h0U->ZfV)}D$?6`eV0z!1<*zVrAA(5xDDCnCR`v?V z{V+s(NPp8p%4R%%f0BDg)DbM?2iE2=#M-<}op~2CvPqPvaq{zv-D)M z^c0>Aq9GY|4BlJA-%F0;S=vzuwcT*kF{ZNcy~c&xvpdJYy21lye-y`FFZ?v{*8mcpSYua|AqWlUDs^CHXS{ zI7Vs13B0P?klCKV`?@&XZ0zZHR!ax7xGQH-C-Jt1hNYf_aEy&V8*>snK||L01l~Zn zdlDyzhHS?93E>|~>A2;WFoXJ-ar;zZ9nONEmHHW;RFGOk zML^MQJNEoEuGpHK27k+WczPiloN5ppS=t$Vxm1%G6X+Ve`giNI=;Z4#>nT7PYr^KZ9R+Ewmn$HIlTYlc@ErhzC|1= zc+q!qiO$h4`l24EMyJ#=j}@H53GmHX^ltMx^gjHYj9l28b9mjzn=LmA(44sl#wsXyo9Tsj_;GFF5#?6R|M$zDuP0&aV{^4 zr{8Z$HwTCv`JO$3*mQk>*wMt6I+2a_NJ*dlehI>?Kap|RWeBtV6fthlMzI%{!LCd9+ zZ~C}BA$|h8|1I7^t4IAsQ(Er|Tm~2Xu8$v$-v2o%fdOlD9;2Uk4cz&~_-mtc*dEj84px?{umo{onIN-v zpavXd&Noo|DP`TO*wKE6i9`v$1^9ZHVHm|%6j!+v)81{yl9ux)RG3NQ0YuIO)qmCH@DSUgr-8+H@#mDOhv zw{Ym}you|B1~Pt1SSMr6EyQ}lwQwGjR43hn>V*+z@4iU0bd*`TQAOLyf6-2eHj_6t zm8(}6H(nD{q0rP)W8C@hm#tPw-iAnCy^;05gBSBUu@!glw%wx&@TFsa7vo=A25Q{W zUwnwI{}M6t+K;ya?>xj#6@C{**|MlFVz%#YMSojGqD)y-MxrYFQB?L2dzktjit=Pp zmwR}`IY!2F5%ah!m-_Nm5=>yrzef)|?js&AD|I70QO3+1PnY#QAD|)JJWGapJir-# zjx1P4c&?oJA>oBGzs5tvi)5Vt5DWN<&3p(AaifW~*5e-2`4K+Wu@3ZD%VyDI4ZHXV ze^OH-TdVy&1km11DsmJiaPNk`H^W_(R0Z3|$l5LIwjr$KoBbF|J0bHg5jNt}4oR}t a3EwEV5qe#Yv6zFHKduO_kl+{zBK`;AQI8`4 diff --git a/script/src/RunScript.hx b/script/src/RunScript.hx index 95a23e0c1..06a6a7dfe 100644 --- a/script/src/RunScript.hx +++ b/script/src/RunScript.hx @@ -23,6 +23,8 @@ class RunScript { private static var isMac:Bool; private static var isWindows:Bool; private static var limeDirectory:String; + private static var wikiLinks:EReg = ~/\[\[(.+)\]\]/g; + //private static var nmeFilters:Array = [ "obj", ".git", ".gitignore", ".svn", ".DS_Store", "all_objs", "Export", "tools", "project" ]; @@ -626,9 +628,9 @@ class RunScript { } - var links = ~/\[\[(.+)\]\]/g; - - for (i in 0...sourcePaths.length) { + for (i in 0...targetPaths.length) { + + if (names[i] == "_sidebar") continue; var sourcePath = sourcePaths[i]; var targetPath = targetPaths[i]; @@ -639,60 +641,39 @@ class RunScript { PathHelper.mkdir (Path.directory (outputPath)); var content = File.getContent (sourcePath); - - while (links.match (content)) { - - var link = links.matched (0); - link = link.substr (2, link.length - 4); - var components = link.split ("|"); - - var title = ""; - var target = ""; - - if (components.length > 1) { - - title = components[0]; - target = components[1]; - - } else { - - title = target = components[0]; - - } - - if (StringTools.endsWith (target, ".md")) { - - target = target.substr (0, target.length - 3); - - } - - var replacement = "[" + title + "](/documentation/)"; - - for (i in 0...names.length) { - - if (target == names[i]) { - - var path = targetPaths[i]; - path = path.substr (0, path.lastIndexOf ("/")); - - replacement = "[" + title + "](/documentation/" + path + ")"; - break; - - } - - } - - content = links.matchedLeft () + replacement + links.matchedRight (); - - } + content = replaceWikiLinks (content, names, targetPaths); var output = File.write (outputPath, false); output.writeString ("---\n"); - output.writeString ("layout: default\n"); + output.writeString ("layout: documentation\n"); output.writeString ("title: " + title + "\n"); output.writeString ("---\n\n"); output.writeString ("# " + title + "\n\n"); output.writeString (content); + + var components = sourcePath.split ("/"); + var foundSidebar = false; + + while (!foundSidebar && components.length > 1) { + + components.pop (); + var sidebarPath = components.copy ().join ("/") + "/_sidebar.md"; + + if (FileSystem.exists (sidebarPath)) { + + foundSidebar = true; + output.writeString ("\n\n{% sidebar %}"); + + var sidebar = File.getContent (sidebarPath); + sidebar = replaceWikiLinks (sidebar, names, targetPaths); + + output.writeString (sidebar); + output.writeString ("{% endsidebar %}"); + + } + + } + output.close (); } @@ -1032,6 +1013,59 @@ class RunScript { } + + private static function replaceWikiLinks (content:String, names:Array, targetPaths:Array):String { + + while (wikiLinks.match (content)) { + + var link = wikiLinks.matched (0); + link = link.substr (2, link.length - 4); + var components = link.split ("|"); + + var title = ""; + var target = ""; + + if (components.length > 1) { + + title = components[0]; + target = components[1]; + + } else { + + title = target = components[0]; + + } + + if (StringTools.endsWith (target, ".md")) { + + target = target.substr (0, target.length - 3); + + } + + var replacement = "[" + title + "](/documentation/)"; + + for (i in 0...names.length) { + + if (target == names[i]) { + + var path = targetPaths[i]; + path = path.substr (0, path.lastIndexOf ("/")); + + replacement = "[" + title + "](/documentation/" + path + ")"; + break; + + } + + } + + content = wikiLinks.matchedLeft () + replacement + wikiLinks.matchedRight (); + + } + + return content; + + } + public static function runCommand (path:String, command:String, args:Array, throwErrors:Bool = true):Int {