2015-12-08 04:46:18 +03:00
|
|
|
:: File writer module
|
|
|
|
::
|
|
|
|
:::: /hoon/write/lib
|
|
|
|
::
|
|
|
|
|%
|
|
|
|
++ part ,[%write %0 pith] :: no state
|
|
|
|
++ pith ,~
|
|
|
|
--
|
|
|
|
::
|
|
|
|
::::
|
|
|
|
::
|
|
|
|
|%
|
|
|
|
++ data $%([%json json] [%mime mime])
|
|
|
|
++ card $% [%exec wire @p ~ [beak silk]]
|
|
|
|
[%info wire @p toro]
|
|
|
|
==
|
|
|
|
--
|
|
|
|
::
|
|
|
|
::::
|
|
|
|
::
|
|
|
|
|= [bowl part]
|
|
|
|
=* par +<+
|
|
|
|
|_ moz=(list ,[bone card])
|
|
|
|
++ abet [(flop moz) `part`par]
|
|
|
|
++ emit |=(a=card %_(+> moz :_(moz [ost a])))
|
|
|
|
++ beak-now byk(r [%da now])
|
|
|
|
:: ++ poke-json
|
|
|
|
:: |= jon=json
|
|
|
|
:: =- (poke--data (need (- jon.+)))
|
|
|
|
:: => jo
|
|
|
|
:: %- ot :~
|
|
|
|
:: pax/(cu deft (su fel:stab))
|
|
|
|
:: dat/(of json/some mime/(pe / (cu taco so)) ~) :: XX mite
|
|
|
|
:: ==
|
2015-12-11 01:04:59 +03:00
|
|
|
++ poke-wipe
|
|
|
|
|= sup=spur ^+ abet :: XX determine extension, beak
|
|
|
|
=+ ext=%md
|
|
|
|
?~ (file (tope beak-now [ext sup]))
|
|
|
|
~|(not-found/[ext `path`(flop sup)] !!)
|
|
|
|
=- abet:(emit %info write/~ our -)
|
|
|
|
(fray (tope beak-now [ext sup]))
|
|
|
|
::
|
2015-12-10 01:12:59 +03:00
|
|
|
++ poke-tree
|
2015-12-11 01:04:59 +03:00
|
|
|
|= [sup=spur mim=mime] ^+ abet :: XX determine extension, beak
|
|
|
|
(poke--data [`%md (flop sup)] %mime mim)
|
2015-12-08 04:46:18 +03:00
|
|
|
::
|
|
|
|
++ poke-paste
|
|
|
|
|= [typ=?(%hoon %md %txt) txt=@t] ^+ abet
|
|
|
|
(poke--data [`typ /web/paste/(scot %da now)] %mime / (taco txt))
|
|
|
|
::
|
2016-02-04 04:46:14 +03:00
|
|
|
++ poke-comment
|
|
|
|
|= [pax=path txt=@t] ^+ abet
|
|
|
|
=. pax [%web (welp pax /(scot %da now))]
|
|
|
|
=. txt (rap 3 (scot %p src) ': ' txt ~)
|
|
|
|
(poke--data [`%comment-md pax] %mime / (taco txt))
|
|
|
|
::
|
2015-12-08 04:46:18 +03:00
|
|
|
++ poke--data
|
|
|
|
|= [[ext=(unit ,@t) pax=path] dat=data] ^+ abet
|
|
|
|
?~ ext $(ext [~ -.dat])
|
|
|
|
=+ cay=?-(-.dat %json [-.dat !>(+.dat)], %mime [-.dat !>(+.dat)])
|
|
|
|
?: =(u.ext -.dat) (made pax ~ `cay)
|
|
|
|
=< abet
|
|
|
|
%^ emit %exec write/pax :: XX defer %nice
|
|
|
|
[our ~ beak-now %cast u.ext `cay]
|
|
|
|
::
|
|
|
|
++ made
|
|
|
|
|= [pax=wire @ res=gage] ^+ abet
|
2016-02-04 04:46:14 +03:00
|
|
|
:: ?. =(our src)
|
|
|
|
:: ~|(foreign-write/[our=our src=src] !!)
|
2015-12-08 04:46:18 +03:00
|
|
|
?+ -.res ~|(gage/-.res !!)
|
|
|
|
%| (mean p.res)
|
|
|
|
%& =- abet:(emit %info write/~ our -)
|
|
|
|
(foal :(welp (tope beak-now ~) pax /[-.p.res]) p.res)
|
|
|
|
==
|
|
|
|
--
|