mirror of
https://github.com/urbit/shrub.git
synced 2024-12-11 11:02:25 +03:00
72 lines
2.0 KiB
Plaintext
72 lines
2.0 KiB
Plaintext
::
|
|
:::: /hoon/info/publish/mar
|
|
::
|
|
/- *publish
|
|
!:
|
|
|_ info=notebook-info
|
|
::
|
|
::
|
|
++ grow
|
|
|%
|
|
++ mime
|
|
:- /text/x-publish-info
|
|
(as-octs:mimes:html (of-wain:format txt))
|
|
++ txt
|
|
^- wain
|
|
:~ (cat 3 'title: ' title.info)
|
|
(cat 3 'description: ' description.info)
|
|
(cat 3 'comments: ' ?:(comments.info 'on' 'off'))
|
|
(cat 3 'writers: ' (spat writers.info))
|
|
(cat 3 'subscribers: ' (spat subscribers.info))
|
|
==
|
|
--
|
|
++ grab
|
|
|%
|
|
++ mime
|
|
|= [mite p=octs]
|
|
|^ (rash q.p both-parser)
|
|
++ key-val
|
|
|* [key=rule val=rule]
|
|
;~(sfix ;~(pfix key val) gaq)
|
|
++ old-parser
|
|
;~ plug
|
|
(key-val (jest 'owner: ~') fed:ag)
|
|
(key-val (jest 'title: ') (cook crip (star prn)))
|
|
(key-val (jest 'filename: ') sym)
|
|
%+ key-val (jest 'comments: ')
|
|
;~(pose (jest %open) (jest %closed) (jest %none))
|
|
%+ key-val (jest 'allow-edit: ')
|
|
;~(pose (jest %post) (jest %comment) (jest %all) (jest %none))
|
|
(key-val (jest 'date-created: ~') (cook year when:so))
|
|
;~ pose
|
|
(key-val (jest 'last-modified: ~') (cook year when:so))
|
|
;~(pfix (jest 'last-modified: ~') (cook year when:so))
|
|
==
|
|
==
|
|
++ new-parser
|
|
;~ plug
|
|
(key-val (jest 'title: ') (cook crip (star prn)))
|
|
(key-val (jest 'description: ') (cook crip (star prn)))
|
|
%+ key-val (jest 'comments: ')
|
|
(cook |=(a=@ =(%on a)) ;~(pose (jest %on) (jest %off)))
|
|
(key-val (jest 'writers: ') ;~(pfix net (more net urs:ab)))
|
|
;~ pose
|
|
(key-val (jest 'subscribers: ') ;~(pfix net (more net urs:ab)))
|
|
;~(pfix (jest 'subscribers: ') ;~(pfix net (more net urs:ab)))
|
|
==
|
|
==
|
|
++ both-parser
|
|
;~ pose
|
|
new-parser
|
|
%+ cook
|
|
|= [@ title=@t @ comments=@ *]
|
|
^- notebook-info
|
|
[title '' =('open' comments) / /]
|
|
old-parser
|
|
==
|
|
--
|
|
++ noun notebook-info
|
|
--
|
|
++ grad %mime
|
|
--
|