@[_d;`V`H`L`B;:;_ci'(179;196 205;195 198;192 212)]; tree_:{[p]:[5=t:4:p;group[0;dict p];($,p),group[0;:[t=4;dict@. p;dir p]]]} dir:{[p]:[@c:!p;();,/(file'c)fuse'_f'(p,"/"),/:c]} file:{[c]H[&3],c} dict:{[d]:[5=4:d;,/(var[d].',/+(+(0;!d);+(1;~!d)))fuse'_f',/+(d[];d[.]);()]} var:{[d;k;c]:[~k;H[&3],$c;#!d c;H[3#1],$c;""]} fuse:{[p;c]:[#p;(,p),group[3;c];()]} group:{[n;c]:[#c;(n#" "),/:(bar[e].&:'H=\:e:*:'c),'c;c]} bar:{[e;i;j](-#e)$1!B[H[1]=*|e _dv" "],-1_@[@[(1+|/i,j)#V;i;:;*L];j;:;L 1]} tree:`0:,/"\n",'tree_@ \ tree@.` / render line-drawing characters as ascii +---k ¦ +---V ¦ +---H ¦ +---L ¦ +---B ¦ +---dict ¦ +---group ¦ +---dir ¦ +---tree_ ¦ +---file ¦ +---fuse ¦ +---var ¦ +---bar ¦ +---tree +---t tree"." . +---addagram ¦ +---w.k ¦ +---w.txt +---box.k +---calculator.k +---ck ¦ +---k20.dll ¦ +---life.ck ¦ +---pt.ck ¦ +---q.ck ¦ +---resolve.ck ¦ +---set.ck ¦ +---sw.ck ¦ +---sw2.ck ¦ +---t.ck ¦ +---tc.ck ¦ +---tt.ck +---ck.k +---connect.k +---counters.k +---drilldown.k +---excel ¦ +---excel2.k ¦ +---k.xls ¦ +---SD.l ¦ +---SS.l ¦ +---W.l +---excel.k +---explode.k +---hanoi.k +---instant ¦ +---client.k ¦ +---server.k +---kparse.k +---life.k +---nine9s.k +---order.k +---parse ¦ +---parse.k ¦ +---table.k +---push.k +---puzzle15.k +---q.k +---q8.k +---quine.k +---resolve.k +---resolve2.k +---rollup.k +---s ¦ +---s.k ¦ +---s_minus.k ¦ +---s_plus.k +---solitaire.k +---t.k +---tree.k +---trees.k +---tt.k +---view.k