From 6bcfd08bb12577811283ed829c555af4e3b05d1b Mon Sep 17 00:00:00 2001 From: Thibaut Date: Sun, 27 Jul 2014 15:58:24 -0400 Subject: [PATCH] Add Markdown documentation --- assets/images/icons.png | Bin 21597 -> 21824 bytes assets/images/icons@2x.png | Bin 55874 -> 56027 bytes .../templates/pages/about_tmpl.coffee | 5 +++++ .../templates/pages/news_tmpl.coffee | 5 ++++- assets/stylesheets/application.css.scss | 1 + assets/stylesheets/global/_icons.scss | 1 + assets/stylesheets/pages/_markdown.scss | 7 +++++++ lib/docs/filters/markdown/clean_html.rb | 17 ++++++++++++++++ lib/docs/filters/markdown/entries.rb | 19 ++++++++++++++++++ lib/docs/scrapers/markdown.rb | 17 ++++++++++++++++ public/icons/docs/markdown/16.png | Bin 0 -> 247 bytes public/icons/docs/markdown/16@2x.png | Bin 0 -> 245 bytes public/icons/docs/markdown/SOURCE | 1 + 13 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 assets/stylesheets/pages/_markdown.scss create mode 100644 lib/docs/filters/markdown/clean_html.rb create mode 100644 lib/docs/filters/markdown/entries.rb create mode 100644 lib/docs/scrapers/markdown.rb create mode 100755 public/icons/docs/markdown/16.png create mode 100755 public/icons/docs/markdown/16@2x.png create mode 100644 public/icons/docs/markdown/SOURCE diff --git a/assets/images/icons.png b/assets/images/icons.png index 70f1bcbee5964044d05cdc2db9b059cca9e1ce66..6dc96fadf0c00244a89400f5d094f33f1acc6456 100644 GIT binary patch literal 21824 zcmV)cK&ZcoP)YNZ$APp7-SWd*{x~(d^H2=FD8~%KXp%yKErp1S$MaUTuTi&9#hm*>)I{dru}&ykR5+@bh|{*EW9=9KbVAvp!coN>g>(Aa z^?!(RNA>;w$fNMyqh>W5vqDvJ#s~ky@P?pbP|%8^$(%Oe4MD{~>lTed|JDsSdWTwp z>dbtb9q0HNw=zD9Gw$=3u(;gW$gu8=Xg~6J@Ul@~_&!e!>IomjPAx|s4_-Fv3m>=| z)DtemwjvRlDGQ~=v~Ovs=k3f%qEXnMIVIj>ToN8JJML*RtmOWTOZ+;j9<}1X3UF5|ey*H3=B8y*h7G8N?Eoxe zoDvF~3;S=;@%D?zGt>aSv?Ve^^+!GZh9dF|HGnT|iHuPFQBS!=q=UCHJnP3P7P)+B zAB8&94B}#@BTaA{^OAsTw*0*Kj&01#W@}z8>czKgV;-W8(2expx1K2eb!!dZ2V$d^ z{6ib*=)bv6&nUmRn-rOt-`=BOEi?pPPIE(QnUBMlDT0sRB&e#*{Rz&TWS&z|BOqar55qBGyFe>p`+!`A z&k$e~&UwIC`-t;8F;W@(z+XEIAOK9?x^-(27ZPd5#Khbu;_r8McFqTYNq-mKyLazA z06=sS>&Cu`+am*Y+}*oQa0<7cv@t|YlXY{%B-ZupiL6MN$huxXk#$3TqSKAJcm>kO zyKcXEjDW$YV=-uaYaTQy9Of5$A;ch5eP_FXI~bvUD0h1T0B!hTm)gB!un!^%-kFd8Q)`*R)Fh6b%m# zKiz!Jl`B`y@y{VX0tMmw;89cCc=dzEreIKBf7OiJr@kRrPkm$1Cyk9kz?HgV&@vT= zYewpSTmh<$S3zS_P!)+bjH(QV&oG5gk$z0)i!@bRu?|b&dGqGg^26D^d-w9@a}FLn zxRQSk@ge=B5RiKUiNN|Ecod*xK)Kq600bCdro7QdT;0)snTDg^7^(GsgEck=994Dn zufRE=>KKs4uvkKB8~nZ0)(2E$A3_bR#%L>}DZ4a4_G_eh_eXdy8sP>eGWI^Iq`N6( zKSN=A|D_!QFgZCn($CK?ec{4|pUH={va%9*bcACuWX#gi@(YX0U0tw+|p@0??Tff=ge%$jL++hIs?AhbWzg1bVU_mwa zp0v4Dn8?-Dbqn!n4Wb~t_D#{|n4f~pQQ*ni9TaU2Z)SAdyUN)f-Jr1a$QQ*W?w(3E zt}+VNM?lWT{V31bHeej5@&c8e{{gJPKQL_=&bMJ~{l<1=8c)UQ`!Fgh>H)UbT)1%I z9v2vCW8bFW;NTR_I6afL2Jz&{lTW_~9*sn+13q$A2S9ES3a|2u_p;=zSiR+}_CJud z+TYl>aNm9@^8@4M79G4o)=Yt-fDy=r$SE#+Xu9HhNVYcw7%3c`?E~)N2E4IQt_g!S zHFipyY7SrmN`t6BkL6wo+!S9b?U$Dv6}boSsO}Ww}etV~uRbot}*wqbx8MBeH_KHX_(;)FHa} z>qvW{Cn=q8Bo5y%u?FHVxhY+GjN>EtUWqwAYG^E!lSiwwwBWCZ;h4)ZBlruV{^i+v zh852Z-&8y|g6|Ug5MPEE0x4?^)cYl41@v}-BmtPua14QzwFc@pmofpVZ7)QC89e{C zAWd~O5zv%<2HyH;a$7ft2k`w1qap(2uZZ|E#0m_>vnjAy(oir@sfj99sWg?n z90HVpd_%Dm9>DdFvk5HejgLTaYi1Lf9Qe>gI=d@CeR~l|IHsq3J^N}^ehodIxKohs8aP@9M6D2&YrOGR70AlMeR>8O}xd<$yObFKRxxX+PN!d_N-KUu{Y`wVC_r`A3>Gf}ml?ANK+kOpD6}W>S0VoFCaTOB z-zM_iYeNCDYz$mG5a8$|6yVyK6yO`*6TCIB+TCORE*16}HwBn)JZ1@}h_thYv7y{%EELTe0|iFnmb^94 zA$8lV6{_=$A?}(MtX`%L8&+w+gBv6sBG&6m44!1#{)0VxmVT>ay7yTwu|uMd)7!i%&iS zg)NW4XnzGb2Y#gf4`0>MjWh*lmqz`YZ>Bv`&rpB{=gfHk=i-`3EaLf19zdpJRTzbXV7(!2M~0a zt~`Lab>XdHZ;Aof4ZyXUgsbpwktCf5{BJtxJnzZ{h+7w)e{l(>JsWs-BfSPDIhB%m z=nkD)0%#rU(CR*LP5d^PdeEp%fRQKHwz>x1_1@VYKuk>|`10BqKIIyL<$M)biz!@J zXhQpU`1=_pHL6h}{9OL-> z1&?!DCuY;F%=H&hkn=v5Zea{AED$`#2?C_@*lbQKa861Lyf1o1EASa-EABC_Re)6( zbtGNS9{UY)lJ&vZU_5MIrvYiVbYR!kiBOnsK#B>C#A_F)BUC`@GbPJ=#(kg52@4U>g zti7Y0o5LKsg>kVnsBZxvP1UGCEKn*6prN5it{8PQASqG@ew(5Q6Eqb-O-%vj%u<0@ z4-IIvGF*FQB(?~nFdD0C4L`tA3kfKmgWDEkaX`pl$Pq4If3&#(K!>zNV;nN05n2sD zK-FypAiwDaIl7T2FkkQ*`Kx29fd7PT)2ubNPY-JbkZzhM?bPGlBfP)~EN!di{wzCP zD<@mSE6o7X&Gp_@vv~K;cKRVsc3Rea085&ua7L^yTsb=pl5gtJsKiu7VEPbpX*z^o zo&g1E2HYxK!Zf!x3kHc6>i=SZppL&b5YNds9{udKk(hg~!6=<%1En5JJ2uGSji`h} zrh(Xo$H&DT(sS^b_e^YEhWn`189GWfA?V+}O=M|Vs)<4=lsMw@a7+QYt_UAIptZTl29Gt< z^q%CT>SV)1oyP)7)q4Wz22UYPpN`XOs%|!<=w{^*U*;dO%h}mKU5SaY433Jj2*!4s zlZA#!?G_oW0n7-wRA#80erxl(oBPf0X5sU^=kIaQWv=(K=Hm|M8Bym4;@e!3##FjI zlmwpep7fJ(0f1VWuaaHTq2@^)e95eV%G8fgnbN4Lv`_Hr=4(jtPlLzTo$T7&ps&4aRL=HmnI^8WQ@!qbD0**FD-58)myhL zBCZ7a#kskcq^@y*s5R>#4BKG=0Rf@6ZY>OX{CI>Qz!9>n&c7-HSHi>OgP388vb+hV zUTR$}yrV^}!$EX$FzOlz&pB_+i#Qh3*(rI9y-Skh8v?8~IVDLJlX+x5*Ee17860=; zfJ?rYASpSCbKt{Y@xP1Sm*AkAE1bJ<4*UZB;eGjgxS#X@&RskQKD+!OL;o4jzc>d6 z(Jx=V!~ojiOVOaR@DOM&aR<$%U!`Joh>j5>bBPb}_4f82bTu+^L3mJ*f83FyB^d}T zSKk;4q!l24og+jpTm;vpWZ|Zc9z?EK31J5hz6G`tBw<|nxlp`r5i zv^_|?R_IsNJ>BP@IV!p|6nfgnKv%PipF7XLP$s%Gj0ceQV2rj?lEhO2=vzhR6F=gg zs+SE;3tZsH(IYTz+BCqQ=mDF}rpnFD1+P=5VDjY2psubCckkW>HXdnS=DdWk!x1E< zDZsO5&uS3lcT!(~jOh+gwLH+0=vV^IA#;fj@x2leu`B^Rrw` zw@E9Z$LtdzBBKvoXKV$Lg#iJgtjB}9n_md-X&=o4h(JD~;4kQ7BfuwMskRW-u3HN> z*4E_B2l)K?GoVp`rKP2inwkn385z*f&;XT{m5`g43%OBwkgT0a0V4Dnbfcb_1v0ao zVVv2n7KLMU4l&|G(>6BNBxBVYC>$#Xd5X$ZuchSRjpIfr`|trGA|oMmz6HXQg>ZyN zB_RcoOROO%I@;tbz>$g|)Niy`x0T6LdMxxy?O}TpdRY2kN{@%mL!~hy$HXvQx+wRs zx*FDVc|1Qr_^TrR83xZ_ul0VocmE!RRZ~*~T&u6Ihh|1kIN8s#;lsl!UIco2dQJnh z$iz$-YqS{@O<64p$LJhl#E1A^Oh_1iZ_BoZ0vW|dfC}RwZ=5Prq@+Sg!Qw0tDP0iJ-~CB+$u;O{7X?@>-eStGUT z7=;m-&S5O)iW@IpG_HXnGn`nWi-Q2yHU#Ha*Uc(qH)DFeFaPF6XpoqD=Mf5+<`N)0 zS`)e`&a>$NfHZ}lggk}Y@wb6kU0oeiS69QQPoJQ?yj%caPEHP7^6`cotj^T;$&*U} z?7ADblR;L0ElBCE0cpLpEeglz95R>q5a0a(qS42WzbsHzC(%ds{!Ri^WM;xEEj_rQ zIT1pS9)nO^n`sovD!>heaS-b2`tm&Y<$-RN{w$iZvyOnUcQad z*4K~pFgXle#3w`N5wajWM5OO&3uXu3T=>i`=ex!yy&Ks^&!=-UWz{smSK zyBO#))$yay;L*@ng-5?(hDzIawF+L}#VY6n77mQia7lTG$bPh4%!*DFj&(9}MM<4RA0>6ujhKd(2pm^B|cx`JBH|ETPuvw-w0z*AK zXaq)K6~1=)vJdg)0qnUf7P`&9e4d=7m?09$U6rk%htUB{)w$5k=pb}k92(PQS;BbX zq0(U@qtrSKV20r{xQ!8LU}ONxmoKM91fv6deSIM*DTynZ(p+=LEl-GBI6N|X4h))y z2R?U43y--EKda0K@d*oC6pqn3#E1{Wv5=6Ey|0XCK{2j*RltVQ1FrB|Y%IJ)pf||6 zH)br2zL2OWx)w(38$n2L@LmCcJuEJqVz%Us>SlH+R@C}B^jPQ*okxyqOxY2#0XTKA z@Nk)64#1As#?T1NxRMD@F3x0cM&1OY5VNzhAuB5jQc_aj>C>ll3q$M!rq&-D{{Vdn zL&!9KK>>PsdC_f5Skzq@B4-Sv)yz=yn#qie(K*D355uvmH*YR~j)kMdaxuI;=mz;1 zVfk28USd(XA*V>AE?h|&!t8&C@VRDid*x~fMxQ1C$ti|c&3HCm;x{~HiTQZZh?t0 zeaW5f_g=kv1^5av-BhE|Hl{Q^p^WRT3>k)v5x8;VMvdy~FOXkU3R6sehmlG%VU+T0 ze$hT0qjShy;=_x;n>R;<2L@iezjgZwa8`{P4vI1|yKxuVms6sS?qx(V*!0$fFk@4n7IdU8eKYAT( zmf6taka#Z>pcbTF&$IhtF*M_b5K|e z{3N9XBjxq^Mf=DYnM39hAAz%QLW0_LJoDb)vb8QBVZFi>jwHu8Z31q4P3V;?-k}d4 zDlyHioB8?OWOFQH;qypj-bE9pHTy|vJ~Le5IeqXjT((0VCZyv0x&G({dNko6GTjgPPNvdPmHT50jfM*DD# z-jhdPX$IN<=;JH~pp#!*oL*Rbyf*VsT9Jj;ra}vCcHshT;Htnv8;UG-$d#%P+l^y* zU8oC1OAN73yP;stq)pP&(xJnK4P&F=JH;lxOe-cOB{f(=LL!HVw3&a)6cx2E3>qXm z5c9PM(eUA_nh!hgHO=XUczvumino5M@T2PGeikBKf zf%!CeZ8*MR`t<1^@jEEwyD8r#;zN9y7EDG)rjNY5e6E(377&p(>1#FEJiCmC6Wy%f zc(+A@5?%xzqJlcwZ7P^D!VIwi1EhZ7fDx9GnsRHxPeUI67@hv36S4=6w73UAh0LeU~U z1ZYIZUmJ{vqeqWsA`JFl0LUi3EiEy!va(Ngb#=kQ!h(vlNgo*#fOlL(7EX#(!=K%t zO?h@D;_DM(gGVo2X7FG+sUbrY()#t28`=m{UTo~xDYqphCp{i9LS&C3CPt9kkeO4clZqJ=t;KX(ee)*lCG zmZ%_9$agA;_%`FwRZdRsk&ccI0mp?++oX?-k)wYTfG4`@6Cmx%t0%y9698W++NLnQ zM9B}whIPk?TZu3dhYcGaK4OIOUc8?=aG-+PkRghaB>FI=RR#@GoI7x!y!oh6>L+oo zKLWf-`sn&*N!PbVcxKa}blVE3FDn6J_2p&oB{?1%K2_2CcZXdd-$)hmP$UAGjx!-l z)g(+=et7&4x#^rl=C%m%(k}qsVgToV;*T~e3a-8epzaGml-XB+B=QCiR@{$pG!V)} z0%g!3`PE`#6TGFRr#_I9n)(2*_Zz_}F2^~uaIX4*0kRViq*DNQA#;gO6M$a5 z0N!N+)P4lWJkbOoZAZ>+d`qLD4!~cL_EUhw5X5baHb8yGb`~lE*Sgbqe+cD<&<$al7)|+l_$Wws926qZx`Nk0toB6~6qruLwQnKRl@tOr)I%w2 zB?43=@TfYX3L}u~Q>RYlhu0=VGMD%?0eA}2vivDf%kmNgh=3`$n1ukRe-r@dPk?-{ z&`*b?VgasaZ&q1A(NZH!-{ru@qY|-CvElI6c{SALKBxDeV7eFfk!S)4 zA5o<}c<>;B2!H&T$`6>#B|gL#0gB<4q@IFGSPQ(@$qHf`t8SPMz_W{A`=9Wo_pz=9 z%*c^y53uSQHm0&-^f$sg%iBoL(u4vOsm3MitZ>hFf))=n8j)`i*c*FODBJCbFyo=- zStbl}%&)c_z#MB4o8Bbm!9BDfibliltSAT;WV;wh{at>QU= z_h=fe2)!ImGX0tU{UwKt8l`a;;Z<$T~L|Aax(6 zYAyysH9$ixz^7u2ywh}xL+8*H_?itIn@{1&>@D;@(mE6p(;?21fq#L zl&oJ2)mfE&*^I`tK7>gC{z+%P1UlRH@ zi5|We*P*<4WZsfFi_2CmjjZ%Knp?8ZDLZv!->mpPT^{-VD3W-zkLX5+L4!n1dj6#8 zGEge*;Lmb!=ofi7Jz*l8{cSRw!55mmCQbye2}F~rJXJN}PtA#NQf&ep8#@m650`=e zJU|5Tcf@ea&(u_y6K&lKj=LXxtf`Qb`ty&FIhcX0f!(3<(iupcV+xl$GjO(FH}DwP z6Lt;j>$GEtbb*KXxCVDICH6&WRrX~$b#{c=O!nO!tJ&Fpr`WgFS+L_b+p_cH!r8H# z7P7Bfo3KM|%-BBDeq+0jR$w#4IA4*6Z>tsI97m20Rqh*L;EZ&okj=L=gBGYQfR5TgEACwOMCjjC*D_pe;5UmpjUjO*tG_FPT>kI+CnfjmsLJgq< zgdnn?5G0Ns1W#s9hBUbW@Iaz}{pCTT)%*MRf?fT4rtd?5ZsJOC3E^FmR)Y}zxo}BJ z72?-#fx6FM02<#_M1XZr_9PWv$Am!{Ld^>Fg(ET?fI_x`Ma=;k{h0H-D|!PS19Ab5~41c@+^WH_CDS3`jv+LM8> zfg%vzuXEk0z9Qh<_lLw?BV@o!N|{6-Ld0FftvE<@*-e1);FV-Nf^(V^AnC|q$UOHa zWS;hf>$Y>?n2I_AwDB9!QkvRbFK8Fw9}g=NI{+Ym#0daIwHcWVTAcmj)mMM+1LylN zb(aSTfp7m#5I9&E{JJx6T}BdKp7yHu>D#-(`-e_&{zoCU=MO^lfA;DE$9jl_9vmqL z-m+?NdAufgt51Ln+{^DS)K>fYu}M;Rn~h3y=#7#e?=eeRm@7{B&AkWcG<4 zn1<5>g&Hmm=mb7PgyHg!4EXlz1BKpR@HWD?&Z}qlhO<2wINeJK4)^L@f2gMjoE8?k zfR&d--Mvor&ojEbyF8Q-$!ao79E~KCFJqhq~*`X>A&*q#sSiT{ml}R*#>}jKjJM(AY z#j;7ru{IR%QIi%05x`)nhS*F1!<#lh9LEK(rxK3oLhI7B(>S$wDFkI@KrMh-yAyC| ziZvp-Ya^_44}^B=jw3V2<4*K4gby7e;RxK-YJhVO&f@{@%UXkK3%{FEFTmwDb5;JQ z0e(o1J9EBUYl)v!1MzwSD(Jt zBw9Qd-nvy&zWn%CS&8&TOR$p`&ary>h|%edNG)B2cj<{!%d8P?W-Q_O7go>QEZu3d zTYJ;P7GMg$Iuz;m3=w~G>^CNm(pU!I-x>q!w(E<_8#C~x@Wv&)KD0;l{>%~a`?D#u zOi>W+Xv|4=$u<`4ZuP4;S?U)_LaSdzK9qSrG7MlN@m|Wr(=C6S>8aiW-W_NhG#w5R z0sAZiMIxMcU4s-`JM8MmPcQ_sFLn-~Wsc`8#IiB4+WH?d9$|FI98BYnnqfxja5x;F z7ENotUSHF+W5uohNq}`{*ShWc;?iUqJICUga7fnXonBji|G&*SN#o*PJ;UUwZ+`nu;y5_4dE=Hzl*+Kc= zkgczdM}5^L$5f=n;msQ%q9un=0vOP;AvVyA8{DD^l3O)HkW3SayVNh(*SdLGamO~p zg7t^t#rey)=o9c&fOjGykUoC_5{C>$g3%BHX@tWL6R>~A7=#)a{teLJ!0;or;Taq< zf1?-r{aRATq-;y^rPi{dYid;9icKX^3XR?r_Gml6jV2NIc3L>&zYP+xm_e%%yU)LJ1^453 z;lP+NNHQ@&qKPpQ29cTxe6vkSty>{R_BSLqZH9!F%@N!3 z7le~Sr5htjra96STH?HlG;Xw&$D@v|@v?_H&Uco7o~S9?&8=-uiAP5r$)$*BiGUW( z!dhZuV#S+c92`GJl3+Mk60b8*65pf0gw~CcxSsvQ?ybA!{;%H7a(6$wWNV8S3Q=w4 z{X^7c?(O>Rx7wI3xF8sz zc=CP!@1N1czLy|1VAneSMz!w~t@xNrdxAC?xpE3@By?99W2x#H}&5t8$hM&i(0Z%4LkR}?mOEH zIyN5YXSW{nHpL(?FUdIZF$777Fc-7=@KC|x`n1P|rQNh?Q^EaKrXviZ45 zmXrUSGD7kZo&|2svcMe&3uMkQ!~J=~Be}2Hunp<2jNFdCG+c9}n1{D28T!i-&}Z>3 z=q-%?@FSU5V%nld)d;y&4Bn4GWR}HoviCU7@P%CCjX4U<9_07xR4IrG2hNAgcW(Dvva@>HRBWKWO=6dMa`IG#hYfpXl zn_=nXgDrd0(8tybeQY*j@5zg|s^OI_ABnORBT%-=66MYoD0elxfUV|DE>E}Ic8%cO zvik@x%h4S7=bIt>kKuUYWd7x&tnvC2UR1hU3|$Xz8RWcgi~jPD@N^f(KzrVf(r>~W z%(Z5jS2;qlsMJhGtI|S#c9n%f%C{h5a4(IQUDX{6`gT83EbR{;*hEbJN?NnnpqUPeIpi8v$aVe6TcRA11qQ zhn9^u`p)ua;7GpEu?r;mV_859Y`o)nxPkjluH<~P15Lnug990`JP#5>YWZ_ z&*N0OM`7rC5Cd25Lq7&@Nj!A_h()jYk?83dR*J&8CrLoT?9+flquQDGS=m}DW>oi) zKf6AN**!Hf3p%UfjhPVyS$81@+s6=!{#w0Qa;Fi8d#W)!0ywR z5pv{D=-38e|HV7$TrDeKWj?Un*({gAt8h0(rMro+(q(9e+A)uvOr3dn%S`cN#qc7| z%F7PnkF*U2G)9ITI*FOCf6 zTx=ZvY&pSOIShHLhQ8oTy-%Gr;o+qayu%nsGcKK&@DZL<91pK2gEuFP6uJ)iGhgH7 z6d-pT@XYd5ZFqH6X{oTe%0gxe8xtwUSzxK~t}etg?Uj!nP?txPl9VJ#p#{#;nl6LZ zYq^#~QL-lvZ-WEysEa!8bW+DDD&gI#vWRXiEl$%=0%hXC$N5EJeP?YXcw5km%GGc0 z8T5DXf$pqLSP`@rL+m#~hsMDEv({nT(F-tJS7ipAGTVNq_=7buw8Xj5 zNv$xeYg=6IsD^_YiilB@Lp%XZRceK+N-c0zT^2{$$Rk!+2640)KHg3Vw>lG0%EYtn zTMOTQD7CS6i>Lv(?Z5@}we_T|^TnDS2Qk2ojepzdehU@`Ct}iaZ){0S#kpJAiCjHa z;bG!dv3>|DH;{Y`pYQ;E2W6G}4tkTfa_G~1XJfo_HI}?`HPPXQdZdbYcr@eor{&75 zfCvv7<4%ykt6&b0Zv(uX3gnIl)fez&81UE-$nFES*846%);3cd&XEZ$Ww+P#(`Ts+ z-z2HZ5)5StgL0GL9H;EsMGzUxXcZakQIo})4$8>r(iS&5x4}^jMe!c;$1BS`c=P7{ zWdHb7f)@ZCDq%k=Ptye(p-(gI_M_*ZZM%sk3}5OG!hkuOk#OoVj$gQ1Sym>{trwu@ zP!As7#=#_`2mCPPKPamzU;rvM_bVz~JM_hC_n~;dZiqfdYrQlBmxKITkIv|LjKX>Q zYT*5459G}NpLMw`>&$_ip}?a7z(XD2Ue`ZM2DDJ52_x%!04dwbt1RWNRrj&7XA{qj zPU`2<+qFilii{+Vpd4$fh#Lg*F6q3c3NCh3<-z?)8M;qR9?{CuNKliNT<)kM$?B^9 zCx8~$vL0OTZ|6mmNC1W}^ue(|@4WU1Pk0-2AQgRRY15aVNVY+jGIVp|Q9RGh4dK3F z1n)S3L#3}FD*Xl><^gUQkW>}W?~Wi)AC+7CzIx|5am=Zjeb^5>qEg(zN9e1=8IkNg7mYFG7l$*BFr?F4M?(4$i z$j-E5W0{(SK#ESaQa9xg?*HP7YX1w5&>i59`=*(az|D1te9rp>-fbpZ%ayyG9N#E=({T!6PIs?9?j0$vndm)f6s}_SQ8NS;lQ!9 zOGQO*EbGD(MCaSy@(gEgP^2lojS1osAkEGYFcyvKESOKeQX?yT*z zIR2rYQ;a_f>|Y`Oci_bo;Q3hKsf8DEjJ@z^pcfwMd2#g^gGl3BW;G;Q3l`K}#?*z! zY`2Qc`Mm_~L|aA5HWl3J(nfSyQ&oIWU0%YV#gZs1CD%KtiK)EB=h`dtV`99DOzCcA znVL*0dQ&>>VEWa=MQ`7Zx_K}Ax?fCU<&g_lDy>~3`QtUT=J?V?;)9(0SBY=SMPn<0 z_Fuq@?a^DfLnludMMG1#enI7?0Uxm5SgCf5aJ&8*L8u-CVLA{-^veDM1oEw4;e{3O zY!tyW1%U&B%ftOndB|#;$6|gIA{*~m8P^AoS!!E(;IL&1Zgx@= zU8k(PK_YmPQ&i^rsdN)nr6284k=}Z+jm*H)8X8|c){K7Lu3Plx-Ru_y1q)}m$3fd+ z8)cv`jOGNO=xy1W&w#}C@)AaCZ5BrBo)kvwNQ9AnAlSjw58^O`5FFENQnjV;MqyxI ze?f5HSYfDMg&;zQ`g=hbrIqp}z~|!%X?X%XF|LLO-0KA1vNU+&KLxQayn5`q9@mJ* zIHLp=nVaIx~K(@H1HHo4{lf$Vz6EqqAwDJP}y$R!{6|Gl=`-Iua2Y`3rCZ}FX-&vKt=M=(proYYvt4$AM=%IXWN%Vm2pPPHeqnGM z+_WmZ{}e%(A*wL*)oN#6YGP=tS%I`R;>0N?xZ5W zUqf2D_RbC8{}Yya<#w*wJReMP3C5+2$H{g3MbUaf8uLnpJNjf$=0ym?_4Sxv95!gK zAl%@CAaqEXAap3n=&EQ(uUA#k+Q+M6ds%VS7Cv$O^hm1-h@5DJ$Vn3sHF*-ENikC= zBY~7uttpeScM7{s!rsXfkxa3BCr+HseQDaHK+*$JDHCfmAK&+bHq-5NQ-|=3)l96- z{eNIZWko9cZ~KLAJ!gOA*}HqXyfbX{D1?m}jj++95o~FRkWr(so%a7jMvg?>_;J`x zaGCZ@7>`{PyK~eC>=`!(3FF5iVeA-ie_JC`FiA`TNkqzG`qaj!zF&Ci71LY zS%q_=vN0?4E zygaDQe5{Yf%!|6WEGr9*{|SIEy%+Azp4<&N4muyyLb_)~?Lb4+@dF z^g*ucAmsZRqj0-9ieg8hIB7iIru_b{lFIjV)~d{dH)bN~nl<7sPeIuE2{@M>>C3ry z)WrQ0CqTx-o1>utPYVlFRaBth@na;cT#3rk5{Lu>Bs;H$YuC=$prZ|cou1gD-Gjji zB7ror-U;?gv;5=_{50l??ZYx)6LJS>8AYhJ7sVBL@wx)l7IW?yH0CGcmnjk8CWni^ zamXM@0@6MLsq;OE#fP@9dA7X2_~rV+COh**hNZQYPcWX=}XB+;s9;Val@f zjM+GLdlvRyn}OI%lf}=9u2^y|YN~j2?i`o}+1g@;tQ_K9T)?a#=P^o(iy;79?ct}{4xeUN5vkcv0A#Tu_SsJWD_DuH-tz!eLiXi0u=mPeAU_;; zWFr2;OKdoB8;bUE;3kHFBY>oeZv(8++l?DHuJ!Ztlm8aPvis*pyxuwQVqutt`1S6w zcza|LKAf>e*)?0_UR@-9{p#w>KOZaHY)H@Q^u!dN)}hYp&ox0sk9p4Ov=9C z6VJe`;9Vu=MrMI!<*@ZvQK3G7sHL9<`09NXto$yZtu_c6PE4hm4=Oy0)8h=QIf|bMLA59m#bC6_5XhCM@!f>@e!zk zd0VyP6dDX!i^eAISiC(A8xP%u@@&e)$r1l>3DNRyqRDKQxK>`1t5@ z|3&jleVA+;a|`nm?qS8D$GDZ3JNJvAxk`$dt)zq*l!0-pSA*GspdgGOprfUwa4d8? zm_<9U!kDIwF_lW$TDlc%<*D>llximqM;OHKz&k|ZGxxK{z`?FdxnUlK+%PW!=>|Q=a5!!`MmkFEFy6=d_!yIQ zOF2%j5%({e<%Z)KeVmVAsMkr13OEm^J$JJCS+}mabn1xJ9XnzbU6-_Phj|2UL5KGE zgYFm88gV5pSu)d(qpm%@aUH9v?<%9_8p8t`6KV&q$Jx+TaXa zd9gP0u|7WLU$)1u-fODb?-X~KpMYM=55T}ZRdDS|@vyH3ukWP=Pm+hW7Tif|Nv@=US^C`< z=Bl*jB#7v_D5?1P-TX222K(ykPxtMw4;OugL%KL7w|r zvkT8qqMZ+4hltEl$LMUZE4yd@pZRCTn;G1-pJnrI{P=N&I^8T7q(@87?_W}UUx zbW$FE-tyRIYpTD8Vh0m#`Tgd4iXnpsa}7;;Dz!J&QkZ3;tr%+BQ(lkxSRacSs;Btx z3E!|G6c+0Z zw?)6hY369y+S(4P9bX6DPeZIpSY4$IGhIdTBm*@GwJU~cD;U}_p^Q$=NNg{2w(Y5qK&d*((%+( z1O;w|>w@V>rwQo7nUl0Y-;9e%n=sgL(8@Xh|0Cl*8QbbN*HJ94O6(4+fhv`2CwF{* zU{!b8N$QTZQ#+PT9H?5w`pk8difex@Al#s00`InEOp*=iHCNJSz8d+oDU^7tC0BX1 z?p6!lZEM;lsv%yde4IFD)kZPo}l_n4HTXLSL`Oe<7?a|uroRN5|XG*-=03`leBaNCX>2sf#`ul2# z1n^ENWfg1*j{Dwhe5eqj+QhYfJ5eQ+z&$w|`Yy-u+srt&rBqt8z-!rjwUNHoUkTfs zk+x?W(vm{qwaf-fo#x|c^af-e4@1WBaHK?eVnDxs3+e+%$Mry8U!Ol3quQv=AId`C z_tp!LGHm@(m%l+BckPbK#BLwkYyS2haqf$`Bsu>th623krz#S6uCf`IYexP$>|DjNeM19(bF^yG)Gn zzk+@)N6=tu1f*w1BkF86q-Vu`^?_bNMta+gBf+?v8iw1)wj+yW9<|RTY(@&fWB@lT zw*!R^`qmie;o-qbmc8>Hv=Q*#G0@(m?fWSEu2?-|2!CXT$5gGFtn-+r#rsxS4+e{I zFlk%D)iSY*oTJ1|1t5vnwvMXyW3AE^=A#US&{^4#`AV1l)|$mKVQuTbY5>}9|M)#b zwR!G;jOp91LvQguG?}&o-1zM*>v(t%^53y*eLEu3vnHB7eRMjS2gpM_5snDo71*-D z8TZn{vBPHxD6Z?b0J6PEGcz-c8a0ajYUsNF=L~CGz~Gec?!jlMmn5>cO|mnVz6;P?U$)hJ^LBR$(AOr98hG<9G;WXTEZ>r= zWpGx?fU7c?SUK}$?W(LNaZ%!Z5*PW*8raVA?#$05c2V%E83U#|^4SvHj`!K*DEV2uBAP)x6H0kpTb zM|yfXKl?g5I(`=**)PL&)ienbpLJPV`Rx1H-om#TK(@r`T>DQ#3YK!eNmeU}C97Kl z&hk}R-MPlhj}?lJlGTdjBTy^kBCF#?D`irck4fY#J(l~lA6H@>cmtj7W6|3&g5Z_b z`bJFr_Y7HDfj)ByoVgFd;~|#R1F(VJWb=Z@XJftqm`$bay?mC4VwCFxNaq1y`SRtc zHg?Vky+rYw0A1%;9h*JDz^fYI;nfTpiM3aKyzZRc4U484ZgF+AI##m|Tq13VRf^!X zQsHV%rY%>9{OBjJD`Xt2{a7jYx;nmmPBT^BIn3?E^j2dxS8>K3;0)KG_na`K-+V$7 ziU?$M6|#HY&l#-&H*7uIYOmtPZ<}5pz}ZtR3v%iJWRuBb%F5*nY|*@>l>OHL(vcVJ zd^!H~nrdSuJaFJZb}Uf+0Ow79wc26q`;B%3gE*zCi3;b)w8K! zF)a3PfKmxqq5vk*BI)0m@0AtT0!yUCSRw~3lB&$I`dHRgf3%oHJ_e7)9^k$(J^JB{ zsmCnJupG{G0|Uk~j=!>d=4btU+&4@?fuFHvt(-UGT}qrkc6d9%$#&dp4Ryt64YGgZ zQO>fbl#IjJK^aS|O+`L4yAiOO4CLF)w`7K?gvGGf>d(PRHdFG4R2fs1Q{%3DSubok z08Y}pPvRtfuBO}<$gF2R{2^0@1yU>OCt$o@i8Jx^rA#Z~hHn77vU}eD6Q^$>!5(cie=3BIbqq)W%7Q_8tG63%X!FHA#SI5}4 z)uchHiyen+WUrstv5F*EV9_pj`rtMzSReOKn=sUWh+v7`l`5y1`GQ3@x%Fy+b*^Cc z#9V>H#N4VmQ}P8)HrJ38XTWwg*dInRvE3Q|XQ)=xrYrYfupx0pormly@*leM^>vbn ziM5%J^>IIFlQ~YqQ%-K*dO5lMQ#r2vPyVMWlD3gvGJR?*d^K3Ga_&t5Z95U9`n7Nd zgzJ_<7#RrB@k0<_y#Vp;>yYF=J;r^*@RQ|Y99O)UV3m_lkIGpL_YI?knVg%H%*teY zyZo0||HO-{SFqo~zQ99P)|L7czXR?!(i+l-n3xz$nly=5Y-}u;?^ECBM{0-;B>Y90 z^=*K2CP8#45nz9zmAnhW@PLm%H@ZC7tHx<1x8*E%x8aPl2Gi`dfHQ&jR`_R}+`v2)Dmdo=P-Wy`EO z;2M$~Nd@dYJ1Z+I_5@U0ypQ#f{q-sK<8UCUtjraxTL!`0DfI*VV+I6Hw)lVToq13c zS02Zo$F4efki?k9xKX1?b)(UEVAP05Rzecw z@&JM&s3=Ap5L8e`LAex1Iuex9kY>MsCB6q6lF*aM2YNF^cV~+*pRL702Fzhb%o2ASJgvc6 zxyyA<-HwkkY;XrO=i79o`7Xqjabvl7o1eQGBBeAFF^|%9L!XCZGD9~xt#vhUC=w*6 z4dxmH3eyflw|ggy*Dgb9FyZ9Z@086?J)SVXUAspGydk8*y?gh9{*kQ!c5Cs^@Xzuw zd@Pf5v-QgPGvu-f1Zmo>A^Owxm4Q$y%HdcVK=3Bh`49DsVs}p#a_C`(_=lMBs5cvg z0CtK)Bo`hfN4EQ4E*unTdRokL;Mx)thWcUuY*uv59inq!r11&vye<9u9lUWi7cvxB ztqrR4%1&iN8ySw=gk6Xq=Yt)6dc#n50YD=Rx@>HE{@Ek}uzvC4#T?Eb5+B3I(q7nX zJuGH8!#6?ld#`zT^FM6Tj4^P=ghSTl67Y%S!YO(VC%G@{yr&n-OY1`}^kN5`v)BmC zWma+{$b}1l@ojLVT^}6MbVs_zOVyDM4nH@UDoW11+R z(fJCTur^r8d3IbndJu;K7oxHLI%K6D)fdlT`#qkxeBvl1J2}*9M8xnRImC~rE(da3 z;=v@}v3h4>ER-A93DOK+FjQEgcu;CjQo*X4I~9(vK7(SYhEkXhrL;)z`ujox&4G!% zn4LQ@>H!vj&)7;VV!&)l<&|v*;G{;2QyM$88XFh&6=*$<5{Qc~ASb8#{}+~ZkvHUm zE?jEcbv|p_C+;rf--~t+0W6ed2W*XISWFd&9XS;G(^}XGmL%2U(y@csHRLTc)LetD zz8X%O2|Gp&=WD|De;Ob`(UYK5SE?0Onm!7&R3W{m&U=n;g5iw)339d;%JnKJH6|!m z%b;A-Lry!OrtmH?DaSp;R;Bc2GEe1SpHW?yp+fX!dy(162RR7U%hA+yT}Oq^cV=dUUZ&&T}~Gpo{(y(F0yXgSis+ z`U;q?p2y+kfv7y64!h+ttTiQ&8_E$qYS=mM-ailUlSz7M%5XR~tpco#aD4wQoVy~_ zG*wInD0Q_eIQdit95LYp^vkCCZ%F{;;)0t2QZ@diCv$QaMs#H}v4DjlfXO6aI`cLa6KPVT?wqFi=;xxmP-V1@EroUX|>+DZ#SHYyC{vT!9#Ud=C5!@{{ROS z4z;*^+?2)yoL6PFs5tjTsB<7sv8?dp>Fl1}W zP~-uWkhC7>2tskQDIEMPcODmS-!g^&!I)>%=;4L3qm~?KK*r+F@Pnp3Ds(j85h$yv z2$Gp#))sSks+`o{F=FtYNnu5j^dNA~WP>EuOQiXA~M5PpzcaK zY{p#3jTdp_)P96M_tZYuGA1}U_z%P5WB6D`RaPw`s=LJ82B!mZd^8o3@xOsapI3{F z3Vr?8dYbpVNTnHl8DhJ$RJ%W$#6fZQ5xhlA1iA2ge6B*3DXm`vSR071$>lC=ZXtbj zj1O0{3u*2?CSn0&JvTnuduP`AC9y7Pg8^oZJwk zgg*B7_&M#^BLd)1QqgTJq>K1iCN>dVDXKz~5A6eNRye+xrOtUOw3*|Z?ukQ|LZ)i1 zR9+*{&I(G|@#MZVDjrD*z1d5u`vTYz0=7*oqFa+%;bYbfvso-%OQYi#i~?Y-?%=Il zYXUiL$Iv%)#lLKYV$Orocn(eiCz*0kvUeLIhYiT5A3X6--pWA#X|ZKgw}!XORolZ7XNwc0B;S za=BQqNOrX?7wGiT_6>UbBEJgBZ$hpkcRGkO(FR zNiIZnbu~e(RsXa|E_{sLjo$!_A|WsT0{j;QV_oQWI2{h~2wJupUXQo)&@DgF!K7Z8MnOIBj`qNNz*^8x<$ z*h}d5rVorp6Y4Ey(0n+OR%WIuV&R(aF#6L# zygtYW--k!QP+f_vtSs}16DPhFX~~1PK}r#BOBVe#;<|_Ef9nRgu0;T(N*ix6n{ifm z4m17c;oqt02tSpFDbr_T^r(rLux2w>9M*!hy&v0u+<{9a#Yj(2KdIGf-*p4{CCN^z zBI!ugqQ8XHj?`21zY#9Ix5WUY3cJc^G$6mA06spG@MUy7RvpQ}Ki(XPr=RJMw}WUd zj7vcW4==>*+Jn5ax%|d-SjHOM^ zag%0X#F+P~I?q=hcuYx7<~tG-8HIq*Mih%+w^tZii~j2*S9p^&Ev|?Z6cl*rbUNhZ zBo?mn25NzIQ|gi3u3s9)I&gIqJVgc zqx&+Zi>Sn%+?Fvm);rcl*cAT(Ak7^2F!e3A00000NkvXXu0mjfiJc{= literal 21597 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 gyai10%{No7NRIkqzyCk-gj+gxO3+j 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 e0U6QEZ2t{^I?n33uWOS40000 result app.news = [ - [ 1404518400000, # July 5, 2014 + [ 1406419200000, # July 27, 2014 + """ New Markdown documentation """, + ], [ + 1404518400000, # July 5, 2014 """ New Cordova documentation """, ], [ 1404172800000, # July 1, 2014 diff --git a/assets/stylesheets/application.css.scss b/assets/stylesheets/application.css.scss index 4350bf6c..dfcb704f 100644 --- a/assets/stylesheets/application.css.scss +++ b/assets/stylesheets/application.css.scss @@ -45,6 +45,7 @@ 'pages/laravel', 'pages/less', 'pages/lodash', + 'pages/markdown', 'pages/maxcdn', 'pages/mdn', 'pages/moment', diff --git a/assets/stylesheets/global/_icons.scss b/assets/stylesheets/global/_icons.scss index 1b9ffebb..775e1e47 100644 --- a/assets/stylesheets/global/_icons.scss +++ b/assets/stylesheets/global/_icons.scss @@ -62,3 +62,4 @@ ._icon-chai:before { background-position: -3rem -9rem; } ._icon-sinon:before { background-position: -4rem -9rem; } ._icon-cordova:before { background-position: 0 -10rem; } +._icon-markdown:before { background-position: -1rem -10rem; } diff --git a/assets/stylesheets/pages/_markdown.scss b/assets/stylesheets/pages/_markdown.scss new file mode 100644 index 00000000..63c7e3d6 --- /dev/null +++ b/assets/stylesheets/pages/_markdown.scss @@ -0,0 +1,7 @@ +._markdown { + padding-left: 1rem; + + h1, h2, h3, h1 + ul { margin-left: -1rem; } + h2 { @extend %block-heading; } + h3 { @extend %block-label, %label-blue; } +} diff --git a/lib/docs/filters/markdown/clean_html.rb b/lib/docs/filters/markdown/clean_html.rb new file mode 100644 index 00000000..84fcb901 --- /dev/null +++ b/lib/docs/filters/markdown/clean_html.rb @@ -0,0 +1,17 @@ +module Docs + class Markdown + class CleanHtmlFilter < Filter + def call + at_css('h1').content = 'Markdown' + + css('#ProjectSubmenu', 'hr').remove + + css('pre > code').each do |node| + node.before(node.children).remove + end + + doc + end + end + end +end diff --git a/lib/docs/filters/markdown/entries.rb b/lib/docs/filters/markdown/entries.rb new file mode 100644 index 00000000..eb68ff27 --- /dev/null +++ b/lib/docs/filters/markdown/entries.rb @@ -0,0 +1,19 @@ +module Docs + class Markdown + class EntriesFilter < Docs::EntriesFilter + def additional_entries + type = nil + + doc.children.each_with_object [] do |node, entries| + if node.name == 'h2' + type = node.content.strip + elsif node.name == 'h3' + next if type == 'Overview' + name = node.content.strip + entries << [name, node['id'], type] + end + end + end + end + end +end diff --git a/lib/docs/scrapers/markdown.rb b/lib/docs/scrapers/markdown.rb new file mode 100644 index 00000000..6dc7b020 --- /dev/null +++ b/lib/docs/scrapers/markdown.rb @@ -0,0 +1,17 @@ +module Docs + class Markdown < UrlScraper + self.name = 'Markdown' + self.type = 'markdown' + self.base_url = 'http://daringfireball.net/projects/markdown/syntax' + + html_filters.push 'markdown/clean_html', 'markdown/entries' + + options[:container] = '.article' + options[:skip_links] = true + + options[:attribution] = <<-HTML + © 2004 John Gruber
+ Licensed under the BSD License. + HTML + end +end diff --git a/public/icons/docs/markdown/16.png b/public/icons/docs/markdown/16.png new file mode 100755 index 0000000000000000000000000000000000000000..097460ad07f43cce677d11007eddee184f3ff070 GIT binary patch literal 247 zcmV%MMp)e@ai|4HMhJ&Na01LE3K9gT-~^y5$8|>klrox-@)IwgebkaK zUDOD*VG{ZbYkCU>MyAHdO_V6Yxt>Pu(prUCxIz(L2ArxLxOeMYMu#VZk@INqf*YMzdnOV|Ze=Y)7G8m+F=CRP xg&d`mh}^_fp$zACd`OZmYJ}Rb(Mq<_<{yc{N1VVmaA*Jk002ovPDHLkV1h0tVv7I( literal 0 HcmV?d00001 diff --git a/public/icons/docs/markdown/16@2x.png b/public/icons/docs/markdown/16@2x.png new file mode 100755 index 0000000000000000000000000000000000000000..9dcf39d551ab7a82dc176e456298b72758f1ec3e GIT binary patch literal 245 zcmV7K`RsG&T4v_)n<=z5%fo zk{pQrnVt>+;j2K*3B^~j$kW^bAUq$6|I^z6i?CR@h@K8W4|Win2Zsf{1PY#BavT6l zc;C